@d19n/youfibre-odin-sdk 1.0.282-beta.1 → 1.0.282-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/EntityRegistry.d.ts +2 -0
- package/dist/EntityRegistry.js +2 -0
- package/dist/OdinApiClient.d.ts +4 -0
- package/dist/OdinApiClient.js +8 -0
- package/dist/OdinDbClient.d.ts +4 -0
- package/dist/OdinDbClient.js +8 -0
- package/dist/accessors-v2/RewardAccessor.d.ts +111 -0
- package/dist/accessors-v2/RewardAccessor.js +190 -0
- package/dist/accessors-v2/index.d.ts +1 -0
- package/dist/accessors-v2/index.js +3 -1
- package/dist/actions-v2/CreateCashbackRewardDto.d.ts +58 -0
- package/dist/actions-v2/CreateCashbackRewardDto.js +52 -0
- package/dist/db-accessors-v2/RewardDbAccessor.d.ts +103 -0
- package/dist/db-accessors-v2/RewardDbAccessor.js +181 -0
- package/dist/db-accessors-v2/index.d.ts +1 -0
- package/dist/db-accessors-v2/index.js +3 -1
- package/dist/entities-v2/CashbackReward.d.ts +8 -8
- package/dist/entities-v2/CashbackReward.js +2 -2
- package/dist/entities-v2/Reward.d.ts +8 -8
- package/dist/entities-v2/Reward.js +2 -2
- package/dist/records-v2/ContactRecord.d.ts +20 -0
- package/dist/records-v2/ContactRecord.js +33 -0
- package/dist/records-v2/PaymentMethodRefundRecord.d.ts +20 -0
- package/dist/records-v2/PaymentMethodRefundRecord.js +33 -0
- package/dist/records-v2/RewardRecord.d.ts +151 -0
- package/dist/records-v2/RewardRecord.js +225 -0
- package/dist/records-v2/index.d.ts +1 -0
- package/dist/records-v2/index.js +6 -3
- package/package.json +1 -1
package/dist/EntityRegistry.d.ts
CHANGED
|
@@ -84,6 +84,7 @@ import { ReferralAccessor } from './accessors-v2/ReferralAccessor';
|
|
|
84
84
|
import { RemediationOutcomeFormAccessor } from './accessors-v2/RemediationOutcomeFormAccessor';
|
|
85
85
|
import { RemediationRequiredReasonAccessor } from './accessors-v2/RemediationRequiredReasonAccessor';
|
|
86
86
|
import { ReturnsAccessor } from './accessors-v2/ReturnsAccessor';
|
|
87
|
+
import { RewardAccessor } from './accessors-v2/RewardAccessor';
|
|
87
88
|
import { SalesTerritoryAccessor } from './accessors-v2/SalesTerritoryAccessor';
|
|
88
89
|
import { ScheduleSlotAccessor } from './accessors-v2/ScheduleSlotAccessor';
|
|
89
90
|
import { ServiceAccessor } from './accessors-v2/ServiceAccessor';
|
|
@@ -182,6 +183,7 @@ export declare const EntityRegistry: {
|
|
|
182
183
|
readonly RemediationOutcomeForm: typeof RemediationOutcomeFormAccessor;
|
|
183
184
|
readonly RemediationRequiredReason: typeof RemediationRequiredReasonAccessor;
|
|
184
185
|
readonly Returns: typeof ReturnsAccessor;
|
|
186
|
+
readonly Reward: typeof RewardAccessor;
|
|
185
187
|
readonly SalesTerritory: typeof SalesTerritoryAccessor;
|
|
186
188
|
readonly ScheduleSlot: typeof ScheduleSlotAccessor;
|
|
187
189
|
readonly Service: typeof ServiceAccessor;
|
package/dist/EntityRegistry.js
CHANGED
|
@@ -87,6 +87,7 @@ const ReferralAccessor_1 = require("./accessors-v2/ReferralAccessor");
|
|
|
87
87
|
const RemediationOutcomeFormAccessor_1 = require("./accessors-v2/RemediationOutcomeFormAccessor");
|
|
88
88
|
const RemediationRequiredReasonAccessor_1 = require("./accessors-v2/RemediationRequiredReasonAccessor");
|
|
89
89
|
const ReturnsAccessor_1 = require("./accessors-v2/ReturnsAccessor");
|
|
90
|
+
const RewardAccessor_1 = require("./accessors-v2/RewardAccessor");
|
|
90
91
|
const SalesTerritoryAccessor_1 = require("./accessors-v2/SalesTerritoryAccessor");
|
|
91
92
|
const ScheduleSlotAccessor_1 = require("./accessors-v2/ScheduleSlotAccessor");
|
|
92
93
|
const ServiceAccessor_1 = require("./accessors-v2/ServiceAccessor");
|
|
@@ -185,6 +186,7 @@ exports.EntityRegistry = {
|
|
|
185
186
|
'RemediationOutcomeForm': RemediationOutcomeFormAccessor_1.RemediationOutcomeFormAccessor,
|
|
186
187
|
'RemediationRequiredReason': RemediationRequiredReasonAccessor_1.RemediationRequiredReasonAccessor,
|
|
187
188
|
'Returns': ReturnsAccessor_1.ReturnsAccessor,
|
|
189
|
+
'Reward': RewardAccessor_1.RewardAccessor,
|
|
188
190
|
'SalesTerritory': SalesTerritoryAccessor_1.SalesTerritoryAccessor,
|
|
189
191
|
'ScheduleSlot': ScheduleSlotAccessor_1.ScheduleSlotAccessor,
|
|
190
192
|
'Service': ServiceAccessor_1.ServiceAccessor,
|
package/dist/OdinApiClient.d.ts
CHANGED
|
@@ -94,6 +94,7 @@ import { ReferralAccessor } from './accessors-v2/ReferralAccessor';
|
|
|
94
94
|
import { RemediationOutcomeFormAccessor } from './accessors-v2/RemediationOutcomeFormAccessor';
|
|
95
95
|
import { RemediationRequiredReasonAccessor } from './accessors-v2/RemediationRequiredReasonAccessor';
|
|
96
96
|
import { ReturnsAccessor } from './accessors-v2/ReturnsAccessor';
|
|
97
|
+
import { RewardAccessor } from './accessors-v2/RewardAccessor';
|
|
97
98
|
import { SalesTerritoryAccessor } from './accessors-v2/SalesTerritoryAccessor';
|
|
98
99
|
import { ScheduleSlotAccessor } from './accessors-v2/ScheduleSlotAccessor';
|
|
99
100
|
import { ServiceAccessor } from './accessors-v2/ServiceAccessor';
|
|
@@ -201,6 +202,7 @@ export declare class OdinApiClient {
|
|
|
201
202
|
private _remediationOutcomeForms?;
|
|
202
203
|
private _remediationRequiredReasons?;
|
|
203
204
|
private _returnses?;
|
|
205
|
+
private _rewards?;
|
|
204
206
|
private _salesTerritories?;
|
|
205
207
|
private _scheduleSlots?;
|
|
206
208
|
private _services?;
|
|
@@ -382,6 +384,8 @@ export declare class OdinApiClient {
|
|
|
382
384
|
get remediationRequiredReasons(): RemediationRequiredReasonAccessor;
|
|
383
385
|
/** Access Returns records */
|
|
384
386
|
get returnses(): ReturnsAccessor;
|
|
387
|
+
/** Access Reward records */
|
|
388
|
+
get rewards(): RewardAccessor;
|
|
385
389
|
/** Access SalesTerritory records */
|
|
386
390
|
get salesTerritories(): SalesTerritoryAccessor;
|
|
387
391
|
/** Access ScheduleSlot records */
|
package/dist/OdinApiClient.js
CHANGED
|
@@ -105,6 +105,7 @@ const ReferralAccessor_1 = require("./accessors-v2/ReferralAccessor");
|
|
|
105
105
|
const RemediationOutcomeFormAccessor_1 = require("./accessors-v2/RemediationOutcomeFormAccessor");
|
|
106
106
|
const RemediationRequiredReasonAccessor_1 = require("./accessors-v2/RemediationRequiredReasonAccessor");
|
|
107
107
|
const ReturnsAccessor_1 = require("./accessors-v2/ReturnsAccessor");
|
|
108
|
+
const RewardAccessor_1 = require("./accessors-v2/RewardAccessor");
|
|
108
109
|
const SalesTerritoryAccessor_1 = require("./accessors-v2/SalesTerritoryAccessor");
|
|
109
110
|
const ScheduleSlotAccessor_1 = require("./accessors-v2/ScheduleSlotAccessor");
|
|
110
111
|
const ServiceAccessor_1 = require("./accessors-v2/ServiceAccessor");
|
|
@@ -668,6 +669,13 @@ class OdinApiClient {
|
|
|
668
669
|
}
|
|
669
670
|
return this._returnses;
|
|
670
671
|
}
|
|
672
|
+
/** Access Reward records */
|
|
673
|
+
get rewards() {
|
|
674
|
+
if (!this._rewards) {
|
|
675
|
+
this._rewards = new RewardAccessor_1.RewardAccessor(this._provider);
|
|
676
|
+
}
|
|
677
|
+
return this._rewards;
|
|
678
|
+
}
|
|
671
679
|
/** Access SalesTerritory records */
|
|
672
680
|
get salesTerritories() {
|
|
673
681
|
if (!this._salesTerritories) {
|
package/dist/OdinDbClient.d.ts
CHANGED
|
@@ -90,6 +90,7 @@ import { ReferralDbAccessor } from './db-accessors-v2/ReferralDbAccessor';
|
|
|
90
90
|
import { RemediationOutcomeFormDbAccessor } from './db-accessors-v2/RemediationOutcomeFormDbAccessor';
|
|
91
91
|
import { RemediationRequiredReasonDbAccessor } from './db-accessors-v2/RemediationRequiredReasonDbAccessor';
|
|
92
92
|
import { ReturnsDbAccessor } from './db-accessors-v2/ReturnsDbAccessor';
|
|
93
|
+
import { RewardDbAccessor } from './db-accessors-v2/RewardDbAccessor';
|
|
93
94
|
import { SalesTerritoryDbAccessor } from './db-accessors-v2/SalesTerritoryDbAccessor';
|
|
94
95
|
import { ScheduleSlotDbAccessor } from './db-accessors-v2/ScheduleSlotDbAccessor';
|
|
95
96
|
import { ServiceAppointmentConfigDbAccessor } from './db-accessors-v2/ServiceAppointmentConfigDbAccessor';
|
|
@@ -190,6 +191,7 @@ export declare class OdinDbClient {
|
|
|
190
191
|
private _remediationOutcomeForms?;
|
|
191
192
|
private _remediationRequiredReasons?;
|
|
192
193
|
private _returnses?;
|
|
194
|
+
private _rewards?;
|
|
193
195
|
private _salesTerritories?;
|
|
194
196
|
private _scheduleSlots?;
|
|
195
197
|
private _serviceAppointmentConfigs?;
|
|
@@ -367,6 +369,8 @@ export declare class OdinDbClient {
|
|
|
367
369
|
get remediationRequiredReasons(): RemediationRequiredReasonDbAccessor;
|
|
368
370
|
/** Access Returns records */
|
|
369
371
|
get returnses(): ReturnsDbAccessor;
|
|
372
|
+
/** Access Reward records */
|
|
373
|
+
get rewards(): RewardDbAccessor;
|
|
370
374
|
/** Access SalesTerritory records */
|
|
371
375
|
get salesTerritories(): SalesTerritoryDbAccessor;
|
|
372
376
|
/** Access ScheduleSlot records */
|
package/dist/OdinDbClient.js
CHANGED
|
@@ -93,6 +93,7 @@ const ReferralDbAccessor_1 = require("./db-accessors-v2/ReferralDbAccessor");
|
|
|
93
93
|
const RemediationOutcomeFormDbAccessor_1 = require("./db-accessors-v2/RemediationOutcomeFormDbAccessor");
|
|
94
94
|
const RemediationRequiredReasonDbAccessor_1 = require("./db-accessors-v2/RemediationRequiredReasonDbAccessor");
|
|
95
95
|
const ReturnsDbAccessor_1 = require("./db-accessors-v2/ReturnsDbAccessor");
|
|
96
|
+
const RewardDbAccessor_1 = require("./db-accessors-v2/RewardDbAccessor");
|
|
96
97
|
const SalesTerritoryDbAccessor_1 = require("./db-accessors-v2/SalesTerritoryDbAccessor");
|
|
97
98
|
const ScheduleSlotDbAccessor_1 = require("./db-accessors-v2/ScheduleSlotDbAccessor");
|
|
98
99
|
const ServiceAppointmentConfigDbAccessor_1 = require("./db-accessors-v2/ServiceAppointmentConfigDbAccessor");
|
|
@@ -645,6 +646,13 @@ class OdinDbClient {
|
|
|
645
646
|
}
|
|
646
647
|
return this._returnses;
|
|
647
648
|
}
|
|
649
|
+
/** Access Reward records */
|
|
650
|
+
get rewards() {
|
|
651
|
+
if (!this._rewards) {
|
|
652
|
+
this._rewards = new RewardDbAccessor_1.RewardDbAccessor(this._principal, this._dbService);
|
|
653
|
+
}
|
|
654
|
+
return this._rewards;
|
|
655
|
+
}
|
|
648
656
|
/** Access SalesTerritory records */
|
|
649
657
|
get salesTerritories() {
|
|
650
658
|
if (!this._salesTerritories) {
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reward Accessor
|
|
3
|
+
*
|
|
4
|
+
* Provides typed access to Reward records via API.
|
|
5
|
+
* Returns wrapped records with typed action methods.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* // Get existing record
|
|
10
|
+
* const record = await accessor.get(id);
|
|
11
|
+
* await record.updateReward({ ... });
|
|
12
|
+
*
|
|
13
|
+
* // Create new record
|
|
14
|
+
* const newRecord = accessor.new();
|
|
15
|
+
* await newRecord.createReward({ ... });
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
19
|
+
*/
|
|
20
|
+
import { OdinSearchV2 } from '@d19n/odin-types/dist/core';
|
|
21
|
+
import { ApiProvider } from '@d19n/odin-sdk-generator/dist/api.provider';
|
|
22
|
+
import { OauthParams } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
|
|
23
|
+
import { QueryBuilder } from '@d19n/odin-sdk-generator/dist/query-builder';
|
|
24
|
+
import { RewardProperties } from '../entities-v2/Reward';
|
|
25
|
+
import { RewardRecord } from '../records-v2/RewardRecord';
|
|
26
|
+
/** List response with wrapped records */
|
|
27
|
+
export interface RewardListResponse {
|
|
28
|
+
data: RewardRecord[];
|
|
29
|
+
hasMore: boolean;
|
|
30
|
+
totalRecords: number;
|
|
31
|
+
}
|
|
32
|
+
/** Search response with wrapped records */
|
|
33
|
+
export interface RewardSearchResponse {
|
|
34
|
+
records: RewardRecord[];
|
|
35
|
+
totalRecords: number;
|
|
36
|
+
hasMore: boolean;
|
|
37
|
+
}
|
|
38
|
+
export declare class RewardAccessor {
|
|
39
|
+
private readonly _provider;
|
|
40
|
+
private readonly _moduleName;
|
|
41
|
+
private readonly _entityName;
|
|
42
|
+
constructor(provider: ApiProvider);
|
|
43
|
+
constructor(authParams: OauthParams);
|
|
44
|
+
constructor(authToken: string, host?: string);
|
|
45
|
+
get moduleName(): string;
|
|
46
|
+
get entityName(): string;
|
|
47
|
+
/**
|
|
48
|
+
* Create a new empty Reward record instance for create operations.
|
|
49
|
+
* Pre-generates an ID that can be referenced before the record is saved.
|
|
50
|
+
*
|
|
51
|
+
* @param id - Optional ID to use (auto-generated UUID if not provided)
|
|
52
|
+
* @returns A new record wrapper with pre-generated ID
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```typescript
|
|
56
|
+
* // Auto-generated ID
|
|
57
|
+
* const note = odinClient.notes.new();
|
|
58
|
+
* console.log(note.id); // UUID available immediately
|
|
59
|
+
*
|
|
60
|
+
* // Custom ID
|
|
61
|
+
* const order = odinClient.orders.new("custom-id-123");
|
|
62
|
+
*
|
|
63
|
+
* // Reference ID before save
|
|
64
|
+
* const account = odinClient.accounts.new();
|
|
65
|
+
* const contact = odinClient.contacts.new();
|
|
66
|
+
* await contact
|
|
67
|
+
* .link({ id: account.id, entity: "CrmModule:Account" })
|
|
68
|
+
* .createContact({ FirstName: "John" });
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
new(id?: string): RewardRecord;
|
|
72
|
+
/**
|
|
73
|
+
* Get a single Reward record by ID
|
|
74
|
+
*/
|
|
75
|
+
get(id: string): Promise<RewardRecord>;
|
|
76
|
+
/**
|
|
77
|
+
* Get multiple Reward records by IDs
|
|
78
|
+
*/
|
|
79
|
+
getMany(ids: string[]): Promise<RewardRecord[]>;
|
|
80
|
+
/**
|
|
81
|
+
* Search Reward records
|
|
82
|
+
*/
|
|
83
|
+
search(params: Partial<OdinSearchV2>): Promise<RewardSearchResponse>;
|
|
84
|
+
/**
|
|
85
|
+
* Search all Reward records with automatic pagination
|
|
86
|
+
*/
|
|
87
|
+
searchAll(params: Partial<OdinSearchV2>): Promise<RewardRecord[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Async generator for paginating through all matching records.
|
|
90
|
+
* Yields batches of wrapped records.
|
|
91
|
+
*/
|
|
92
|
+
paginate(params: Partial<OdinSearchV2>): AsyncGenerator<RewardRecord[]>;
|
|
93
|
+
/**
|
|
94
|
+
* Create a fluent query builder for Reward records
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* const results = await accessor
|
|
99
|
+
* .query()
|
|
100
|
+
* .where('Status', 'in', ['Active', 'Pending'])
|
|
101
|
+
* .where('CreatedAt', 'gte', '2025-01-01')
|
|
102
|
+
* .select('id', 'title', 'properties.*')
|
|
103
|
+
* .sortBy('createdAt', 'desc')
|
|
104
|
+
* .limit(100)
|
|
105
|
+
* .execute();
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
query(): QueryBuilder<RewardProperties, RewardRecord>;
|
|
109
|
+
/** Access the underlying ApiProvider */
|
|
110
|
+
get provider(): ApiProvider;
|
|
111
|
+
}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Reward Accessor
|
|
4
|
+
*
|
|
5
|
+
* Provides typed access to Reward records via API.
|
|
6
|
+
* Returns wrapped records with typed action methods.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* // Get existing record
|
|
11
|
+
* const record = await accessor.get(id);
|
|
12
|
+
* await record.updateReward({ ... });
|
|
13
|
+
*
|
|
14
|
+
* // Create new record
|
|
15
|
+
* const newRecord = accessor.new();
|
|
16
|
+
* await newRecord.createReward({ ... });
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
20
|
+
*/
|
|
21
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
22
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
23
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
24
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
25
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
26
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
27
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
31
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
32
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
33
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
34
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
35
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
36
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
37
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
38
|
+
function fulfill(value) { resume("next", value); }
|
|
39
|
+
function reject(value) { resume("throw", value); }
|
|
40
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
41
|
+
};
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.RewardAccessor = void 0;
|
|
44
|
+
const api_provider_1 = require("@d19n/odin-sdk-generator/dist/api.provider");
|
|
45
|
+
const query_builder_1 = require("@d19n/odin-sdk-generator/dist/query-builder");
|
|
46
|
+
const RewardRecord_1 = require("../records-v2/RewardRecord");
|
|
47
|
+
class RewardAccessor {
|
|
48
|
+
constructor(providerOrAuth, host) {
|
|
49
|
+
this._moduleName = 'CrmModule';
|
|
50
|
+
this._entityName = 'Reward';
|
|
51
|
+
if (providerOrAuth instanceof api_provider_1.ApiProvider) {
|
|
52
|
+
this._provider = providerOrAuth;
|
|
53
|
+
}
|
|
54
|
+
else if (typeof providerOrAuth === 'string') {
|
|
55
|
+
// Auth token provided
|
|
56
|
+
this._provider = new api_provider_1.ApiProvider(host ? { host } : undefined, providerOrAuth);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
// OauthParams provided
|
|
60
|
+
this._provider = new api_provider_1.ApiProvider(providerOrAuth);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
get moduleName() { return this._moduleName; }
|
|
64
|
+
get entityName() { return this._entityName; }
|
|
65
|
+
// ============================================
|
|
66
|
+
// RECORD CREATION
|
|
67
|
+
// ============================================
|
|
68
|
+
/**
|
|
69
|
+
* Create a new empty Reward record instance for create operations.
|
|
70
|
+
* Pre-generates an ID that can be referenced before the record is saved.
|
|
71
|
+
*
|
|
72
|
+
* @param id - Optional ID to use (auto-generated UUID if not provided)
|
|
73
|
+
* @returns A new record wrapper with pre-generated ID
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* // Auto-generated ID
|
|
78
|
+
* const note = odinClient.notes.new();
|
|
79
|
+
* console.log(note.id); // UUID available immediately
|
|
80
|
+
*
|
|
81
|
+
* // Custom ID
|
|
82
|
+
* const order = odinClient.orders.new("custom-id-123");
|
|
83
|
+
*
|
|
84
|
+
* // Reference ID before save
|
|
85
|
+
* const account = odinClient.accounts.new();
|
|
86
|
+
* const contact = odinClient.contacts.new();
|
|
87
|
+
* await contact
|
|
88
|
+
* .link({ id: account.id, entity: "CrmModule:Account" })
|
|
89
|
+
* .createContact({ FirstName: "John" });
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
new(id) {
|
|
93
|
+
return new RewardRecord_1.RewardRecord(null, this._provider, id);
|
|
94
|
+
}
|
|
95
|
+
// ============================================
|
|
96
|
+
// RECORD RETRIEVAL
|
|
97
|
+
// ============================================
|
|
98
|
+
/**
|
|
99
|
+
* Get a single Reward record by ID
|
|
100
|
+
*/
|
|
101
|
+
get(id) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
const record = yield this._provider._getByPrimaryKey(this._moduleName, this._entityName, id);
|
|
104
|
+
return new RewardRecord_1.RewardRecord(record, this._provider);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get multiple Reward records by IDs
|
|
109
|
+
*/
|
|
110
|
+
getMany(ids) {
|
|
111
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
112
|
+
if (ids.length === 0)
|
|
113
|
+
return [];
|
|
114
|
+
const records = yield this._provider._getManyByPrimaryKey(this._moduleName, this._entityName, ids);
|
|
115
|
+
return records.map((r) => new RewardRecord_1.RewardRecord(r, this._provider));
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
// ============================================
|
|
119
|
+
// SEARCH OPERATIONS
|
|
120
|
+
// ============================================
|
|
121
|
+
/**
|
|
122
|
+
* Search Reward records
|
|
123
|
+
*/
|
|
124
|
+
search(params) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
const result = yield this._provider._searchRecords(this._moduleName, this._entityName, params);
|
|
127
|
+
return {
|
|
128
|
+
records: result.records.map((r) => new RewardRecord_1.RewardRecord(r, this._provider)),
|
|
129
|
+
totalRecords: result.totalRecords,
|
|
130
|
+
hasMore: result.hasMore,
|
|
131
|
+
};
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Search all Reward records with automatic pagination
|
|
136
|
+
*/
|
|
137
|
+
searchAll(params) {
|
|
138
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
+
const result = yield this._provider._searchAllRecordsAndPaginate(this._moduleName, this._entityName, params);
|
|
140
|
+
return result.records.map((r) => new RewardRecord_1.RewardRecord(r, this._provider));
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Async generator for paginating through all matching records.
|
|
145
|
+
* Yields batches of wrapped records.
|
|
146
|
+
*/
|
|
147
|
+
paginate(params) {
|
|
148
|
+
var _a;
|
|
149
|
+
return __asyncGenerator(this, arguments, function* paginate_1() {
|
|
150
|
+
let hasMore = true;
|
|
151
|
+
let searchAfter;
|
|
152
|
+
const query = Object.assign(Object.assign({}, params.query), { pageSize: ((_a = params.query) === null || _a === void 0 ? void 0 : _a.pageSize) || 500 });
|
|
153
|
+
while (hasMore) {
|
|
154
|
+
const result = yield __await(this._provider._searchRecords(this._moduleName, this._entityName, Object.assign(Object.assign({}, params), { query: Object.assign(Object.assign({}, query), { searchAfter }) })));
|
|
155
|
+
if (result.records.length > 0) {
|
|
156
|
+
yield yield __await(result.records.map((r) => new RewardRecord_1.RewardRecord(r, this._provider)));
|
|
157
|
+
const lastRecord = result.records[result.records.length - 1];
|
|
158
|
+
searchAfter = lastRecord === null || lastRecord === void 0 ? void 0 : lastRecord.sort;
|
|
159
|
+
}
|
|
160
|
+
hasMore = result.hasMore && result.records.length >= query.pageSize;
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
// ============================================
|
|
165
|
+
// QUERY BUILDER
|
|
166
|
+
// ============================================
|
|
167
|
+
/**
|
|
168
|
+
* Create a fluent query builder for Reward records
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* const results = await accessor
|
|
173
|
+
* .query()
|
|
174
|
+
* .where('Status', 'in', ['Active', 'Pending'])
|
|
175
|
+
* .where('CreatedAt', 'gte', '2025-01-01')
|
|
176
|
+
* .select('id', 'title', 'properties.*')
|
|
177
|
+
* .sortBy('createdAt', 'desc')
|
|
178
|
+
* .limit(100)
|
|
179
|
+
* .execute();
|
|
180
|
+
* ```
|
|
181
|
+
*/
|
|
182
|
+
query() {
|
|
183
|
+
return (0, query_builder_1.createQueryBuilder)(this);
|
|
184
|
+
}
|
|
185
|
+
/** Access the underlying ApiProvider */
|
|
186
|
+
get provider() {
|
|
187
|
+
return this._provider;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
exports.RewardAccessor = RewardAccessor;
|
|
@@ -79,6 +79,7 @@ export { ReferralAccessor, ReferralSearchResponse, ReferralListResponse } from '
|
|
|
79
79
|
export { RemediationOutcomeFormAccessor, RemediationOutcomeFormSearchResponse, RemediationOutcomeFormListResponse } from './RemediationOutcomeFormAccessor';
|
|
80
80
|
export { RemediationRequiredReasonAccessor, RemediationRequiredReasonSearchResponse, RemediationRequiredReasonListResponse } from './RemediationRequiredReasonAccessor';
|
|
81
81
|
export { ReturnsAccessor, ReturnsSearchResponse, ReturnsListResponse } from './ReturnsAccessor';
|
|
82
|
+
export { RewardAccessor, RewardSearchResponse, RewardListResponse } from './RewardAccessor';
|
|
82
83
|
export { SalesTerritoryAccessor, SalesTerritorySearchResponse, SalesTerritoryListResponse } from './SalesTerritoryAccessor';
|
|
83
84
|
export { ScheduleSlotAccessor, ScheduleSlotSearchResponse, ScheduleSlotListResponse } from './ScheduleSlotAccessor';
|
|
84
85
|
export { ServiceAppointmentConfigAccessor, ServiceAppointmentConfigSearchResponse, ServiceAppointmentConfigListResponse } from './ServiceAppointmentConfigAccessor';
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.PICRequestAccessor = exports.OverlayRealA55Accessor = exports.OutageAccessor = exports.OrderAccessor = exports.OrderItemAccessor = exports.OrderCheckAccessor = exports.OntReplacementApprovalAccessor = exports.OneTouchSwitchAccessor = exports.OhRetroAuditAccessor = exports.OhInstallationAuditAccessor = exports.OhInProgressAuditAccessor = exports.OhExternalAuditAccessor = exports.OhAuditOfInstallationAccessor = exports.OfferAccessor = exports.NoteAccessor = exports.NetworkDeviceAccessor = exports.MessageAccessor = exports.LeadAccessor = exports.KnowledgeArticleAccessor = exports.InvoiceAccessor = exports.InternalInstallAuditAccessor = exports.ImpersonationTrackerAccessor = exports.FieldServiceProductAccessor = exports.FieldServiceDispatchedProductAccessor = exports.EmailTemplateAccessor = exports.EmailAccessor = exports.DiscountAccessor = exports.CustomerPhonePortingAccessor = exports.CustomerDeviceRouterAccessor = exports.CustomerDeviceOntAccessor = exports.CustomerDeviceAtaAccessor = exports.CrmDatasetAccessor = exports.CreditNoteAccessor = exports.ConversationAccessor = exports.ContractBuyOutAccessor = exports.ContactAccessor = exports.ConfigAccessor = exports.ChurnRequestAccessor = exports.ChangeReasonAccessor = exports.CaseAccessor = exports.CallAccessor = exports.CallLegAccessor = exports.BlockageA55Accessor = exports.BillingRequestAccessor = exports.BillingAdjustmentAccessor = exports.AppointmentAccessor = exports.AddressAccessor = exports.ActivityAccessor = exports.ActivityLogAccessor = exports.AccountAccessor = void 0;
|
|
12
|
-
exports.YfFieldServiceVisitAccessor = exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = exports.VoiceConfigurationAccessor = exports.VisitAccessor = exports.UserAccessor = exports.UgRetroAuditAccessor = exports.UgInstallationAuditAccessor = exports.UgInProgressAuditAccessor = exports.UgExternalAuditAccessor = exports.UgAuditOfInstallationAccessor = exports.TwilioUserUpdateAccessor = exports.TransactionAccessor = exports.TimeSlotAccessor = exports.TeamAccessor = exports.SweeperMaintenanceAuditAccessor = exports.SiteSpecificRiskAssessmentOutcomeFormAccessor = exports.ServiceVisitAuditAccessor = exports.ServiceAccessor = exports.ServiceAppointmentAccessor = exports.ServiceAppointmentConfigAccessor = exports.ScheduleSlotAccessor = exports.SalesTerritoryAccessor = exports.ReturnsAccessor = exports.RemediationRequiredReasonAccessor = exports.RemediationOutcomeFormAccessor = exports.ReferralAccessor = exports.PushNotificationAccessor = exports.ProductAccessor = exports.PriceBookAccessor = exports.PgWebhookAccessor = exports.PgWebhookAttemptAccessor = exports.PgVocalinkAccessor = exports.PgTransactionAccessor = exports.PgSortCodeSubstitutionAccessor = exports.PgPaymentMethodAccessor = exports.PgLogAccessor = exports.PgFileAllocationAccessor = exports.PgDisputeAccessor = exports.PgDirectDebitFileAccessor = exports.PgContactAccessor = exports.PgAccountValidationAccessor = exports.PermissionToFailAccessor = exports.PaymentAccessor = exports.PaymentMethodRefundAccessor = exports.PaymentMethodAccessor = void 0;
|
|
12
|
+
exports.YfFieldServiceVisitAccessor = exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = exports.VoiceConfigurationAccessor = exports.VisitAccessor = exports.UserAccessor = exports.UgRetroAuditAccessor = exports.UgInstallationAuditAccessor = exports.UgInProgressAuditAccessor = exports.UgExternalAuditAccessor = exports.UgAuditOfInstallationAccessor = exports.TwilioUserUpdateAccessor = exports.TransactionAccessor = exports.TimeSlotAccessor = exports.TeamAccessor = exports.SweeperMaintenanceAuditAccessor = exports.SiteSpecificRiskAssessmentOutcomeFormAccessor = exports.ServiceVisitAuditAccessor = exports.ServiceAccessor = exports.ServiceAppointmentAccessor = exports.ServiceAppointmentConfigAccessor = exports.ScheduleSlotAccessor = exports.SalesTerritoryAccessor = exports.RewardAccessor = exports.ReturnsAccessor = exports.RemediationRequiredReasonAccessor = exports.RemediationOutcomeFormAccessor = exports.ReferralAccessor = exports.PushNotificationAccessor = exports.ProductAccessor = exports.PriceBookAccessor = exports.PgWebhookAccessor = exports.PgWebhookAttemptAccessor = exports.PgVocalinkAccessor = exports.PgTransactionAccessor = exports.PgSortCodeSubstitutionAccessor = exports.PgPaymentMethodAccessor = exports.PgLogAccessor = exports.PgFileAllocationAccessor = exports.PgDisputeAccessor = exports.PgDirectDebitFileAccessor = exports.PgContactAccessor = exports.PgAccountValidationAccessor = exports.PermissionToFailAccessor = exports.PaymentAccessor = exports.PaymentMethodRefundAccessor = exports.PaymentMethodAccessor = void 0;
|
|
13
13
|
var AccountAccessor_1 = require("./AccountAccessor");
|
|
14
14
|
Object.defineProperty(exports, "AccountAccessor", { enumerable: true, get: function () { return AccountAccessor_1.AccountAccessor; } });
|
|
15
15
|
var ActivityLogAccessor_1 = require("./ActivityLogAccessor");
|
|
@@ -156,6 +156,8 @@ var RemediationRequiredReasonAccessor_1 = require("./RemediationRequiredReasonAc
|
|
|
156
156
|
Object.defineProperty(exports, "RemediationRequiredReasonAccessor", { enumerable: true, get: function () { return RemediationRequiredReasonAccessor_1.RemediationRequiredReasonAccessor; } });
|
|
157
157
|
var ReturnsAccessor_1 = require("./ReturnsAccessor");
|
|
158
158
|
Object.defineProperty(exports, "ReturnsAccessor", { enumerable: true, get: function () { return ReturnsAccessor_1.ReturnsAccessor; } });
|
|
159
|
+
var RewardAccessor_1 = require("./RewardAccessor");
|
|
160
|
+
Object.defineProperty(exports, "RewardAccessor", { enumerable: true, get: function () { return RewardAccessor_1.RewardAccessor; } });
|
|
159
161
|
var SalesTerritoryAccessor_1 = require("./SalesTerritoryAccessor");
|
|
160
162
|
Object.defineProperty(exports, "SalesTerritoryAccessor", { enumerable: true, get: function () { return SalesTerritoryAccessor_1.SalesTerritoryAccessor; } });
|
|
161
163
|
var ScheduleSlotAccessor_1 = require("./ScheduleSlotAccessor");
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CreateCashbackReward Action DTO
|
|
3
|
+
*
|
|
4
|
+
* Reward a contact with cash
|
|
5
|
+
*
|
|
6
|
+
* @module CrmModule
|
|
7
|
+
* @entity Reward
|
|
8
|
+
* @entityType CASHBACK
|
|
9
|
+
* @actionKey CreateCashbackReward
|
|
10
|
+
* @event CashbackRewardCreated
|
|
11
|
+
*
|
|
12
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
13
|
+
*/
|
|
14
|
+
import { OdinRecordCreateDto, OdinRecordCreatedEvent } from '@d19n/odin-types/dist/core';
|
|
15
|
+
/**
|
|
16
|
+
* Properties for CreateCashbackReward action
|
|
17
|
+
*
|
|
18
|
+
* @property Required fields: 0
|
|
19
|
+
* @property Optional fields: 4
|
|
20
|
+
*/
|
|
21
|
+
export interface CreateCashbackRewardProperties {
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* CreateCashbackReward
|
|
25
|
+
*
|
|
26
|
+
* Reward a contact with cash
|
|
27
|
+
*
|
|
28
|
+
* @actionType CREATE - Creates a new Reward record
|
|
29
|
+
* @module CrmModule
|
|
30
|
+
* @entity Reward
|
|
31
|
+
* @entityType CASHBACK (CASHBACK)
|
|
32
|
+
* @event CrmModule.Reward.Create.CreateCashbackReward
|
|
33
|
+
* @permission schema.action.createcashbackreward.trigger
|
|
34
|
+
* @benchmark This action is tracked for performance benchmarks
|
|
35
|
+
*/
|
|
36
|
+
export declare class CreateCashbackRewardDto extends OdinRecordCreateDto<CreateCashbackRewardProperties> {
|
|
37
|
+
/** Used by SDK generators to identify action type */
|
|
38
|
+
static readonly ACTION_TYPE = "CREATE";
|
|
39
|
+
static readonly ACTION_KEY = "CreateCashbackReward";
|
|
40
|
+
static readonly MODULE_NAME = "CrmModule";
|
|
41
|
+
static readonly ENTITIES: string[];
|
|
42
|
+
static readonly ENTITY_TYPE = "CASHBACK";
|
|
43
|
+
static readonly EVENT_NAME = "CrmModule.Reward.Create.CreateCashbackReward";
|
|
44
|
+
static readonly PERMISSION = "schema.action.createcashbackreward.trigger";
|
|
45
|
+
readonly actionName: string;
|
|
46
|
+
readonly schemaActionId: string;
|
|
47
|
+
readonly entity: string;
|
|
48
|
+
constructor(properties: CreateCashbackRewardProperties, options?: {
|
|
49
|
+
journeyId?: string;
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* RabbitMQ message payload for CreateCashbackReward created events
|
|
54
|
+
*
|
|
55
|
+
* @event CrmModule.Reward.Create.CreateCashbackReward
|
|
56
|
+
*/
|
|
57
|
+
export interface CreateCashbackRewardMessage extends OdinRecordCreatedEvent<CreateCashbackRewardDto, CreateCashbackRewardProperties> {
|
|
58
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CreateCashbackReward Action DTO
|
|
4
|
+
*
|
|
5
|
+
* Reward a contact with cash
|
|
6
|
+
*
|
|
7
|
+
* @module CrmModule
|
|
8
|
+
* @entity Reward
|
|
9
|
+
* @entityType CASHBACK
|
|
10
|
+
* @actionKey CreateCashbackReward
|
|
11
|
+
* @event CashbackRewardCreated
|
|
12
|
+
*
|
|
13
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.CreateCashbackRewardDto = void 0;
|
|
17
|
+
const core_1 = require("@d19n/odin-types/dist/core");
|
|
18
|
+
/**
|
|
19
|
+
* CreateCashbackReward
|
|
20
|
+
*
|
|
21
|
+
* Reward a contact with cash
|
|
22
|
+
*
|
|
23
|
+
* @actionType CREATE - Creates a new Reward record
|
|
24
|
+
* @module CrmModule
|
|
25
|
+
* @entity Reward
|
|
26
|
+
* @entityType CASHBACK (CASHBACK)
|
|
27
|
+
* @event CrmModule.Reward.Create.CreateCashbackReward
|
|
28
|
+
* @permission schema.action.createcashbackreward.trigger
|
|
29
|
+
* @benchmark This action is tracked for performance benchmarks
|
|
30
|
+
*/
|
|
31
|
+
class CreateCashbackRewardDto extends core_1.OdinRecordCreateDto {
|
|
32
|
+
constructor(properties, options) {
|
|
33
|
+
super({
|
|
34
|
+
entity: 'CrmModule:Reward',
|
|
35
|
+
type: 'CASHBACK',
|
|
36
|
+
properties,
|
|
37
|
+
journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
|
|
38
|
+
});
|
|
39
|
+
this.actionName = 'CreateCashbackReward';
|
|
40
|
+
this.schemaActionId = '811948ff-52e6-42cd-bbd3-a3893935c4c8';
|
|
41
|
+
this.entity = 'CrmModule:Reward';
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.CreateCashbackRewardDto = CreateCashbackRewardDto;
|
|
45
|
+
/** Used by SDK generators to identify action type */
|
|
46
|
+
CreateCashbackRewardDto.ACTION_TYPE = 'CREATE';
|
|
47
|
+
CreateCashbackRewardDto.ACTION_KEY = 'CreateCashbackReward';
|
|
48
|
+
CreateCashbackRewardDto.MODULE_NAME = 'CrmModule';
|
|
49
|
+
CreateCashbackRewardDto.ENTITIES = ['Reward'];
|
|
50
|
+
CreateCashbackRewardDto.ENTITY_TYPE = 'CASHBACK';
|
|
51
|
+
CreateCashbackRewardDto.EVENT_NAME = 'CrmModule.Reward.Create.CreateCashbackReward';
|
|
52
|
+
CreateCashbackRewardDto.PERMISSION = 'schema.action.createcashbackreward.trigger';
|