@d19n/youfibre-odin-sdk 1.0.282-beta.0 → 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 +4 -0
- package/dist/EntityRegistry.js +4 -0
- package/dist/OdinApiClient.d.ts +8 -0
- package/dist/OdinApiClient.js +16 -0
- package/dist/OdinDbClient.d.ts +8 -0
- package/dist/OdinDbClient.js +16 -0
- package/dist/accessors-v2/ReferralAccessor.d.ts +111 -0
- package/dist/accessors-v2/ReferralAccessor.js +190 -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 +2 -0
- package/dist/accessors-v2/index.js +5 -1
- package/dist/actions-v2/CreateCashbackRewardDto.d.ts +58 -0
- package/dist/actions-v2/CreateCashbackRewardDto.js +52 -0
- package/dist/actions-v2/CreateOrderReferralDto.d.ts +58 -0
- package/dist/actions-v2/CreateOrderReferralDto.js +52 -0
- package/dist/db-accessors-v2/ReferralDbAccessor.d.ts +103 -0
- package/dist/db-accessors-v2/ReferralDbAccessor.js +181 -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 +2 -0
- package/dist/db-accessors-v2/index.js +5 -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 +40 -0
- package/dist/records-v2/ContactRecord.js +66 -0
- package/dist/records-v2/OrderRecord.d.ts +20 -0
- package/dist/records-v2/OrderRecord.js +33 -0
- package/dist/records-v2/PaymentMethodRefundRecord.d.ts +20 -0
- package/dist/records-v2/PaymentMethodRefundRecord.js +33 -0
- package/dist/records-v2/ReferralRecord.d.ts +151 -0
- package/dist/records-v2/ReferralRecord.js +225 -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 +2 -0
- package/dist/records-v2/index.js +9 -3
- package/package.json +1 -1
package/dist/EntityRegistry.d.ts
CHANGED
|
@@ -80,9 +80,11 @@ import { PgWebhookAttemptAccessor } from './accessors-v2/PgWebhookAttemptAccesso
|
|
|
80
80
|
import { PriceBookAccessor } from './accessors-v2/PriceBookAccessor';
|
|
81
81
|
import { ProductAccessor } from './accessors-v2/ProductAccessor';
|
|
82
82
|
import { PushNotificationAccessor } from './accessors-v2/PushNotificationAccessor';
|
|
83
|
+
import { ReferralAccessor } from './accessors-v2/ReferralAccessor';
|
|
83
84
|
import { RemediationOutcomeFormAccessor } from './accessors-v2/RemediationOutcomeFormAccessor';
|
|
84
85
|
import { RemediationRequiredReasonAccessor } from './accessors-v2/RemediationRequiredReasonAccessor';
|
|
85
86
|
import { ReturnsAccessor } from './accessors-v2/ReturnsAccessor';
|
|
87
|
+
import { RewardAccessor } from './accessors-v2/RewardAccessor';
|
|
86
88
|
import { SalesTerritoryAccessor } from './accessors-v2/SalesTerritoryAccessor';
|
|
87
89
|
import { ScheduleSlotAccessor } from './accessors-v2/ScheduleSlotAccessor';
|
|
88
90
|
import { ServiceAccessor } from './accessors-v2/ServiceAccessor';
|
|
@@ -177,9 +179,11 @@ export declare const EntityRegistry: {
|
|
|
177
179
|
readonly PriceBook: typeof PriceBookAccessor;
|
|
178
180
|
readonly Product: typeof ProductAccessor;
|
|
179
181
|
readonly PushNotification: typeof PushNotificationAccessor;
|
|
182
|
+
readonly Referral: typeof ReferralAccessor;
|
|
180
183
|
readonly RemediationOutcomeForm: typeof RemediationOutcomeFormAccessor;
|
|
181
184
|
readonly RemediationRequiredReason: typeof RemediationRequiredReasonAccessor;
|
|
182
185
|
readonly Returns: typeof ReturnsAccessor;
|
|
186
|
+
readonly Reward: typeof RewardAccessor;
|
|
183
187
|
readonly SalesTerritory: typeof SalesTerritoryAccessor;
|
|
184
188
|
readonly ScheduleSlot: typeof ScheduleSlotAccessor;
|
|
185
189
|
readonly Service: typeof ServiceAccessor;
|
package/dist/EntityRegistry.js
CHANGED
|
@@ -83,9 +83,11 @@ const PgWebhookAttemptAccessor_1 = require("./accessors-v2/PgWebhookAttemptAcces
|
|
|
83
83
|
const PriceBookAccessor_1 = require("./accessors-v2/PriceBookAccessor");
|
|
84
84
|
const ProductAccessor_1 = require("./accessors-v2/ProductAccessor");
|
|
85
85
|
const PushNotificationAccessor_1 = require("./accessors-v2/PushNotificationAccessor");
|
|
86
|
+
const ReferralAccessor_1 = require("./accessors-v2/ReferralAccessor");
|
|
86
87
|
const RemediationOutcomeFormAccessor_1 = require("./accessors-v2/RemediationOutcomeFormAccessor");
|
|
87
88
|
const RemediationRequiredReasonAccessor_1 = require("./accessors-v2/RemediationRequiredReasonAccessor");
|
|
88
89
|
const ReturnsAccessor_1 = require("./accessors-v2/ReturnsAccessor");
|
|
90
|
+
const RewardAccessor_1 = require("./accessors-v2/RewardAccessor");
|
|
89
91
|
const SalesTerritoryAccessor_1 = require("./accessors-v2/SalesTerritoryAccessor");
|
|
90
92
|
const ScheduleSlotAccessor_1 = require("./accessors-v2/ScheduleSlotAccessor");
|
|
91
93
|
const ServiceAccessor_1 = require("./accessors-v2/ServiceAccessor");
|
|
@@ -180,9 +182,11 @@ exports.EntityRegistry = {
|
|
|
180
182
|
'PriceBook': PriceBookAccessor_1.PriceBookAccessor,
|
|
181
183
|
'Product': ProductAccessor_1.ProductAccessor,
|
|
182
184
|
'PushNotification': PushNotificationAccessor_1.PushNotificationAccessor,
|
|
185
|
+
'Referral': ReferralAccessor_1.ReferralAccessor,
|
|
183
186
|
'RemediationOutcomeForm': RemediationOutcomeFormAccessor_1.RemediationOutcomeFormAccessor,
|
|
184
187
|
'RemediationRequiredReason': RemediationRequiredReasonAccessor_1.RemediationRequiredReasonAccessor,
|
|
185
188
|
'Returns': ReturnsAccessor_1.ReturnsAccessor,
|
|
189
|
+
'Reward': RewardAccessor_1.RewardAccessor,
|
|
186
190
|
'SalesTerritory': SalesTerritoryAccessor_1.SalesTerritoryAccessor,
|
|
187
191
|
'ScheduleSlot': ScheduleSlotAccessor_1.ScheduleSlotAccessor,
|
|
188
192
|
'Service': ServiceAccessor_1.ServiceAccessor,
|
package/dist/OdinApiClient.d.ts
CHANGED
|
@@ -90,9 +90,11 @@ import { PgWebhookAttemptAccessor } from './accessors-v2/PgWebhookAttemptAccesso
|
|
|
90
90
|
import { PriceBookAccessor } from './accessors-v2/PriceBookAccessor';
|
|
91
91
|
import { ProductAccessor } from './accessors-v2/ProductAccessor';
|
|
92
92
|
import { PushNotificationAccessor } from './accessors-v2/PushNotificationAccessor';
|
|
93
|
+
import { ReferralAccessor } from './accessors-v2/ReferralAccessor';
|
|
93
94
|
import { RemediationOutcomeFormAccessor } from './accessors-v2/RemediationOutcomeFormAccessor';
|
|
94
95
|
import { RemediationRequiredReasonAccessor } from './accessors-v2/RemediationRequiredReasonAccessor';
|
|
95
96
|
import { ReturnsAccessor } from './accessors-v2/ReturnsAccessor';
|
|
97
|
+
import { RewardAccessor } from './accessors-v2/RewardAccessor';
|
|
96
98
|
import { SalesTerritoryAccessor } from './accessors-v2/SalesTerritoryAccessor';
|
|
97
99
|
import { ScheduleSlotAccessor } from './accessors-v2/ScheduleSlotAccessor';
|
|
98
100
|
import { ServiceAccessor } from './accessors-v2/ServiceAccessor';
|
|
@@ -196,9 +198,11 @@ export declare class OdinApiClient {
|
|
|
196
198
|
private _priceBooks?;
|
|
197
199
|
private _products?;
|
|
198
200
|
private _pushNotifications?;
|
|
201
|
+
private _referrals?;
|
|
199
202
|
private _remediationOutcomeForms?;
|
|
200
203
|
private _remediationRequiredReasons?;
|
|
201
204
|
private _returnses?;
|
|
205
|
+
private _rewards?;
|
|
202
206
|
private _salesTerritories?;
|
|
203
207
|
private _scheduleSlots?;
|
|
204
208
|
private _services?;
|
|
@@ -372,12 +376,16 @@ export declare class OdinApiClient {
|
|
|
372
376
|
get products(): ProductAccessor;
|
|
373
377
|
/** Access PushNotification records */
|
|
374
378
|
get pushNotifications(): PushNotificationAccessor;
|
|
379
|
+
/** Access Referral records */
|
|
380
|
+
get referrals(): ReferralAccessor;
|
|
375
381
|
/** Access RemediationOutcomeForm records */
|
|
376
382
|
get remediationOutcomeForms(): RemediationOutcomeFormAccessor;
|
|
377
383
|
/** Access RemediationRequiredReason records */
|
|
378
384
|
get remediationRequiredReasons(): RemediationRequiredReasonAccessor;
|
|
379
385
|
/** Access Returns records */
|
|
380
386
|
get returnses(): ReturnsAccessor;
|
|
387
|
+
/** Access Reward records */
|
|
388
|
+
get rewards(): RewardAccessor;
|
|
381
389
|
/** Access SalesTerritory records */
|
|
382
390
|
get salesTerritories(): SalesTerritoryAccessor;
|
|
383
391
|
/** Access ScheduleSlot records */
|
package/dist/OdinApiClient.js
CHANGED
|
@@ -101,9 +101,11 @@ const PgWebhookAttemptAccessor_1 = require("./accessors-v2/PgWebhookAttemptAcces
|
|
|
101
101
|
const PriceBookAccessor_1 = require("./accessors-v2/PriceBookAccessor");
|
|
102
102
|
const ProductAccessor_1 = require("./accessors-v2/ProductAccessor");
|
|
103
103
|
const PushNotificationAccessor_1 = require("./accessors-v2/PushNotificationAccessor");
|
|
104
|
+
const ReferralAccessor_1 = require("./accessors-v2/ReferralAccessor");
|
|
104
105
|
const RemediationOutcomeFormAccessor_1 = require("./accessors-v2/RemediationOutcomeFormAccessor");
|
|
105
106
|
const RemediationRequiredReasonAccessor_1 = require("./accessors-v2/RemediationRequiredReasonAccessor");
|
|
106
107
|
const ReturnsAccessor_1 = require("./accessors-v2/ReturnsAccessor");
|
|
108
|
+
const RewardAccessor_1 = require("./accessors-v2/RewardAccessor");
|
|
107
109
|
const SalesTerritoryAccessor_1 = require("./accessors-v2/SalesTerritoryAccessor");
|
|
108
110
|
const ScheduleSlotAccessor_1 = require("./accessors-v2/ScheduleSlotAccessor");
|
|
109
111
|
const ServiceAccessor_1 = require("./accessors-v2/ServiceAccessor");
|
|
@@ -639,6 +641,13 @@ class OdinApiClient {
|
|
|
639
641
|
}
|
|
640
642
|
return this._pushNotifications;
|
|
641
643
|
}
|
|
644
|
+
/** Access Referral records */
|
|
645
|
+
get referrals() {
|
|
646
|
+
if (!this._referrals) {
|
|
647
|
+
this._referrals = new ReferralAccessor_1.ReferralAccessor(this._provider);
|
|
648
|
+
}
|
|
649
|
+
return this._referrals;
|
|
650
|
+
}
|
|
642
651
|
/** Access RemediationOutcomeForm records */
|
|
643
652
|
get remediationOutcomeForms() {
|
|
644
653
|
if (!this._remediationOutcomeForms) {
|
|
@@ -660,6 +669,13 @@ class OdinApiClient {
|
|
|
660
669
|
}
|
|
661
670
|
return this._returnses;
|
|
662
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
|
+
}
|
|
663
679
|
/** Access SalesTerritory records */
|
|
664
680
|
get salesTerritories() {
|
|
665
681
|
if (!this._salesTerritories) {
|
package/dist/OdinDbClient.d.ts
CHANGED
|
@@ -86,9 +86,11 @@ import { PgWebhookDbAccessor } from './db-accessors-v2/PgWebhookDbAccessor';
|
|
|
86
86
|
import { PriceBookDbAccessor } from './db-accessors-v2/PriceBookDbAccessor';
|
|
87
87
|
import { ProductDbAccessor } from './db-accessors-v2/ProductDbAccessor';
|
|
88
88
|
import { PushNotificationDbAccessor } from './db-accessors-v2/PushNotificationDbAccessor';
|
|
89
|
+
import { ReferralDbAccessor } from './db-accessors-v2/ReferralDbAccessor';
|
|
89
90
|
import { RemediationOutcomeFormDbAccessor } from './db-accessors-v2/RemediationOutcomeFormDbAccessor';
|
|
90
91
|
import { RemediationRequiredReasonDbAccessor } from './db-accessors-v2/RemediationRequiredReasonDbAccessor';
|
|
91
92
|
import { ReturnsDbAccessor } from './db-accessors-v2/ReturnsDbAccessor';
|
|
93
|
+
import { RewardDbAccessor } from './db-accessors-v2/RewardDbAccessor';
|
|
92
94
|
import { SalesTerritoryDbAccessor } from './db-accessors-v2/SalesTerritoryDbAccessor';
|
|
93
95
|
import { ScheduleSlotDbAccessor } from './db-accessors-v2/ScheduleSlotDbAccessor';
|
|
94
96
|
import { ServiceAppointmentConfigDbAccessor } from './db-accessors-v2/ServiceAppointmentConfigDbAccessor';
|
|
@@ -185,9 +187,11 @@ export declare class OdinDbClient {
|
|
|
185
187
|
private _priceBooks?;
|
|
186
188
|
private _products?;
|
|
187
189
|
private _pushNotifications?;
|
|
190
|
+
private _referrals?;
|
|
188
191
|
private _remediationOutcomeForms?;
|
|
189
192
|
private _remediationRequiredReasons?;
|
|
190
193
|
private _returnses?;
|
|
194
|
+
private _rewards?;
|
|
191
195
|
private _salesTerritories?;
|
|
192
196
|
private _scheduleSlots?;
|
|
193
197
|
private _serviceAppointmentConfigs?;
|
|
@@ -357,12 +361,16 @@ export declare class OdinDbClient {
|
|
|
357
361
|
get products(): ProductDbAccessor;
|
|
358
362
|
/** Access PushNotification records */
|
|
359
363
|
get pushNotifications(): PushNotificationDbAccessor;
|
|
364
|
+
/** Access Referral records */
|
|
365
|
+
get referrals(): ReferralDbAccessor;
|
|
360
366
|
/** Access RemediationOutcomeForm records */
|
|
361
367
|
get remediationOutcomeForms(): RemediationOutcomeFormDbAccessor;
|
|
362
368
|
/** Access RemediationRequiredReason records */
|
|
363
369
|
get remediationRequiredReasons(): RemediationRequiredReasonDbAccessor;
|
|
364
370
|
/** Access Returns records */
|
|
365
371
|
get returnses(): ReturnsDbAccessor;
|
|
372
|
+
/** Access Reward records */
|
|
373
|
+
get rewards(): RewardDbAccessor;
|
|
366
374
|
/** Access SalesTerritory records */
|
|
367
375
|
get salesTerritories(): SalesTerritoryDbAccessor;
|
|
368
376
|
/** Access ScheduleSlot records */
|
package/dist/OdinDbClient.js
CHANGED
|
@@ -89,9 +89,11 @@ const PgWebhookDbAccessor_1 = require("./db-accessors-v2/PgWebhookDbAccessor");
|
|
|
89
89
|
const PriceBookDbAccessor_1 = require("./db-accessors-v2/PriceBookDbAccessor");
|
|
90
90
|
const ProductDbAccessor_1 = require("./db-accessors-v2/ProductDbAccessor");
|
|
91
91
|
const PushNotificationDbAccessor_1 = require("./db-accessors-v2/PushNotificationDbAccessor");
|
|
92
|
+
const ReferralDbAccessor_1 = require("./db-accessors-v2/ReferralDbAccessor");
|
|
92
93
|
const RemediationOutcomeFormDbAccessor_1 = require("./db-accessors-v2/RemediationOutcomeFormDbAccessor");
|
|
93
94
|
const RemediationRequiredReasonDbAccessor_1 = require("./db-accessors-v2/RemediationRequiredReasonDbAccessor");
|
|
94
95
|
const ReturnsDbAccessor_1 = require("./db-accessors-v2/ReturnsDbAccessor");
|
|
96
|
+
const RewardDbAccessor_1 = require("./db-accessors-v2/RewardDbAccessor");
|
|
95
97
|
const SalesTerritoryDbAccessor_1 = require("./db-accessors-v2/SalesTerritoryDbAccessor");
|
|
96
98
|
const ScheduleSlotDbAccessor_1 = require("./db-accessors-v2/ScheduleSlotDbAccessor");
|
|
97
99
|
const ServiceAppointmentConfigDbAccessor_1 = require("./db-accessors-v2/ServiceAppointmentConfigDbAccessor");
|
|
@@ -616,6 +618,13 @@ class OdinDbClient {
|
|
|
616
618
|
}
|
|
617
619
|
return this._pushNotifications;
|
|
618
620
|
}
|
|
621
|
+
/** Access Referral records */
|
|
622
|
+
get referrals() {
|
|
623
|
+
if (!this._referrals) {
|
|
624
|
+
this._referrals = new ReferralDbAccessor_1.ReferralDbAccessor(this._principal, this._dbService);
|
|
625
|
+
}
|
|
626
|
+
return this._referrals;
|
|
627
|
+
}
|
|
619
628
|
/** Access RemediationOutcomeForm records */
|
|
620
629
|
get remediationOutcomeForms() {
|
|
621
630
|
if (!this._remediationOutcomeForms) {
|
|
@@ -637,6 +646,13 @@ class OdinDbClient {
|
|
|
637
646
|
}
|
|
638
647
|
return this._returnses;
|
|
639
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
|
+
}
|
|
640
656
|
/** Access SalesTerritory records */
|
|
641
657
|
get salesTerritories() {
|
|
642
658
|
if (!this._salesTerritories) {
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Referral Accessor
|
|
3
|
+
*
|
|
4
|
+
* Provides typed access to Referral 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.updateReferral({ ... });
|
|
12
|
+
*
|
|
13
|
+
* // Create new record
|
|
14
|
+
* const newRecord = accessor.new();
|
|
15
|
+
* await newRecord.createReferral({ ... });
|
|
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 { ReferralProperties } from '../entities-v2/Referral';
|
|
25
|
+
import { ReferralRecord } from '../records-v2/ReferralRecord';
|
|
26
|
+
/** List response with wrapped records */
|
|
27
|
+
export interface ReferralListResponse {
|
|
28
|
+
data: ReferralRecord[];
|
|
29
|
+
hasMore: boolean;
|
|
30
|
+
totalRecords: number;
|
|
31
|
+
}
|
|
32
|
+
/** Search response with wrapped records */
|
|
33
|
+
export interface ReferralSearchResponse {
|
|
34
|
+
records: ReferralRecord[];
|
|
35
|
+
totalRecords: number;
|
|
36
|
+
hasMore: boolean;
|
|
37
|
+
}
|
|
38
|
+
export declare class ReferralAccessor {
|
|
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 Referral 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): ReferralRecord;
|
|
72
|
+
/**
|
|
73
|
+
* Get a single Referral record by ID
|
|
74
|
+
*/
|
|
75
|
+
get(id: string): Promise<ReferralRecord>;
|
|
76
|
+
/**
|
|
77
|
+
* Get multiple Referral records by IDs
|
|
78
|
+
*/
|
|
79
|
+
getMany(ids: string[]): Promise<ReferralRecord[]>;
|
|
80
|
+
/**
|
|
81
|
+
* Search Referral records
|
|
82
|
+
*/
|
|
83
|
+
search(params: Partial<OdinSearchV2>): Promise<ReferralSearchResponse>;
|
|
84
|
+
/**
|
|
85
|
+
* Search all Referral records with automatic pagination
|
|
86
|
+
*/
|
|
87
|
+
searchAll(params: Partial<OdinSearchV2>): Promise<ReferralRecord[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Async generator for paginating through all matching records.
|
|
90
|
+
* Yields batches of wrapped records.
|
|
91
|
+
*/
|
|
92
|
+
paginate(params: Partial<OdinSearchV2>): AsyncGenerator<ReferralRecord[]>;
|
|
93
|
+
/**
|
|
94
|
+
* Create a fluent query builder for Referral 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<ReferralProperties, ReferralRecord>;
|
|
109
|
+
/** Access the underlying ApiProvider */
|
|
110
|
+
get provider(): ApiProvider;
|
|
111
|
+
}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Referral Accessor
|
|
4
|
+
*
|
|
5
|
+
* Provides typed access to Referral 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.updateReferral({ ... });
|
|
13
|
+
*
|
|
14
|
+
* // Create new record
|
|
15
|
+
* const newRecord = accessor.new();
|
|
16
|
+
* await newRecord.createReferral({ ... });
|
|
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.ReferralAccessor = 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 ReferralRecord_1 = require("../records-v2/ReferralRecord");
|
|
47
|
+
class ReferralAccessor {
|
|
48
|
+
constructor(providerOrAuth, host) {
|
|
49
|
+
this._moduleName = 'CrmModule';
|
|
50
|
+
this._entityName = 'Referral';
|
|
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 Referral 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 ReferralRecord_1.ReferralRecord(null, this._provider, id);
|
|
94
|
+
}
|
|
95
|
+
// ============================================
|
|
96
|
+
// RECORD RETRIEVAL
|
|
97
|
+
// ============================================
|
|
98
|
+
/**
|
|
99
|
+
* Get a single Referral 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 ReferralRecord_1.ReferralRecord(record, this._provider);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get multiple Referral 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 ReferralRecord_1.ReferralRecord(r, this._provider));
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
// ============================================
|
|
119
|
+
// SEARCH OPERATIONS
|
|
120
|
+
// ============================================
|
|
121
|
+
/**
|
|
122
|
+
* Search Referral 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 ReferralRecord_1.ReferralRecord(r, this._provider)),
|
|
129
|
+
totalRecords: result.totalRecords,
|
|
130
|
+
hasMore: result.hasMore,
|
|
131
|
+
};
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Search all Referral 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 ReferralRecord_1.ReferralRecord(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 ReferralRecord_1.ReferralRecord(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 Referral 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.ReferralAccessor = ReferralAccessor;
|
|
@@ -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
|
+
}
|