@etohq/ambassador 1.5.1-alpha.4
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/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/models/ambassador.d.ts +39 -0
- package/dist/models/ambassador.d.ts.map +1 -0
- package/dist/models/ambassador.js +67 -0
- package/dist/models/ambassador.js.map +1 -0
- package/dist/models/commission.d.ts +23 -0
- package/dist/models/commission.d.ts.map +1 -0
- package/dist/models/commission.js +93 -0
- package/dist/models/commission.js.map +1 -0
- package/dist/models/index.d.ts +8 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +18 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/partner.d.ts +38 -0
- package/dist/models/partner.d.ts.map +1 -0
- package/dist/models/partner.js +78 -0
- package/dist/models/partner.js.map +1 -0
- package/dist/models/payout.d.ts +28 -0
- package/dist/models/payout.d.ts.map +1 -0
- package/dist/models/payout.js +57 -0
- package/dist/models/payout.js.map +1 -0
- package/dist/models/program-enrollment.d.ts +26 -0
- package/dist/models/program-enrollment.d.ts.map +1 -0
- package/dist/models/program-enrollment.js +81 -0
- package/dist/models/program-enrollment.js.map +1 -0
- package/dist/models/program.d.ts +52 -0
- package/dist/models/program.d.ts.map +1 -0
- package/dist/models/program.js +106 -0
- package/dist/models/program.js.map +1 -0
- package/dist/models/revenue-share-rule.d.ts +25 -0
- package/dist/models/revenue-share-rule.d.ts.map +1 -0
- package/dist/models/revenue-share-rule.js +54 -0
- package/dist/models/revenue-share-rule.js.map +1 -0
- package/dist/models/reward.d.ts +16 -0
- package/dist/models/reward.d.ts.map +1 -0
- package/dist/models/reward.js +41 -0
- package/dist/models/reward.js.map +1 -0
- package/dist/services/ambassador-module-service.d.ts +221 -0
- package/dist/services/ambassador-module-service.d.ts.map +1 -0
- package/dist/services/ambassador-module-service.js +972 -0
- package/dist/services/ambassador-module-service.js.map +1 -0
- package/dist/services/ambassador-service.d.ts +57 -0
- package/dist/services/ambassador-service.d.ts.map +1 -0
- package/dist/services/ambassador-service.js +127 -0
- package/dist/services/ambassador-service.js.map +1 -0
- package/dist/services/commission-service.d.ts +45 -0
- package/dist/services/commission-service.d.ts.map +1 -0
- package/dist/services/commission-service.js +146 -0
- package/dist/services/commission-service.js.map +1 -0
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +9 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/payout-service.d.ts +35 -0
- package/dist/services/payout-service.d.ts.map +1 -0
- package/dist/services/payout-service.js +87 -0
- package/dist/services/payout-service.js.map +1 -0
- package/dist/services/program-enrollment-service.d.ts +39 -0
- package/dist/services/program-enrollment-service.d.ts.map +1 -0
- package/dist/services/program-enrollment-service.js +102 -0
- package/dist/services/program-enrollment-service.js.map +1 -0
- package/dist/services/program-service.d.ts +78 -0
- package/dist/services/program-service.d.ts.map +1 -0
- package/dist/services/program-service.js +180 -0
- package/dist/services/program-service.js.map +1 -0
- package/dist/services/revenue-rule-resolver.d.ts +15 -0
- package/dist/services/revenue-rule-resolver.d.ts.map +1 -0
- package/dist/services/revenue-rule-resolver.js +836 -0
- package/dist/services/revenue-rule-resolver.js.map +1 -0
- package/dist/services/revenue-share-rule-service.d.ts +5 -0
- package/dist/services/revenue-share-rule-service.d.ts.map +1 -0
- package/dist/services/revenue-share-rule-service.js +8 -0
- package/dist/services/revenue-share-rule-service.js.map +1 -0
- package/dist/services/reward-service.d.ts +31 -0
- package/dist/services/reward-service.d.ts.map +1 -0
- package/dist/services/reward-service.js +82 -0
- package/dist/services/reward-service.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utils/analytics.d.ts +19 -0
- package/dist/utils/analytics.d.ts.map +1 -0
- package/dist/utils/analytics.js +90 -0
- package/dist/utils/analytics.js.map +1 -0
- package/dist/utils/sustainability-monitor.d.ts +20 -0
- package/dist/utils/sustainability-monitor.d.ts.map +1 -0
- package/dist/utils/sustainability-monitor.js +46 -0
- package/dist/utils/sustainability-monitor.js.map +1 -0
- package/dist/workflows/calculate-commission-workflow.d.ts +2 -0
- package/dist/workflows/calculate-commission-workflow.d.ts.map +1 -0
- package/dist/workflows/calculate-commission-workflow.js +59 -0
- package/dist/workflows/calculate-commission-workflow.js.map +1 -0
- package/dist/workflows/steps/index.d.ts +2 -0
- package/dist/workflows/steps/index.d.ts.map +1 -0
- package/dist/workflows/steps/index.js +158 -0
- package/dist/workflows/steps/index.js.map +1 -0
- package/package.json +56 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2021 Etohq
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Ambassador Module
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;;;;AAGnD,wBAEE"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const _services_1 = require("./services");
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
exports.default = (0, utils_1.Module)(utils_1.Modules.AMBASSADOR, {
|
|
6
|
+
service: _services_1.AmbassadorModuleService,
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,yCAAmD;AACnD,kDAAwD;AAExD,kBAAe,IAAA,cAAM,EAAC,eAAO,CAAC,UAAU,EAAE;IACxC,OAAO,EAAE,mCAAuB;CACjC,CAAC,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
declare const Ambassador: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
source_type: import("@etohq/framework/utils").EnumProperty<["user", "community"]>;
|
|
4
|
+
source_id: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
name: import("@etohq/framework/utils").TextProperty;
|
|
6
|
+
email: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
profile_type: import("@etohq/framework/utils").EnumProperty<["individual", "business"]>;
|
|
8
|
+
company_name: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
9
|
+
status: import("@etohq/framework/utils").EnumProperty<["default", "verified", "featured"]>;
|
|
10
|
+
description: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
11
|
+
country: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
12
|
+
image: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
13
|
+
total_earnings: import("@etohq/framework/utils").NullableModifier<number, import("@etohq/framework/utils").NumberProperty>;
|
|
14
|
+
website: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
15
|
+
website_txt_record: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
16
|
+
website_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
17
|
+
youtube: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
18
|
+
youtube_channel_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
19
|
+
youtube_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
20
|
+
youtube_subscriber_count: import("@etohq/framework/utils").NumberProperty;
|
|
21
|
+
youtube_video_count: import("@etohq/framework/utils").NumberProperty;
|
|
22
|
+
youtube_view_count: import("@etohq/framework/utils").NumberProperty;
|
|
23
|
+
twitter: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
24
|
+
twitter_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
25
|
+
linkedin: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
26
|
+
linkedin_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
27
|
+
instagram: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
28
|
+
instagram_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
29
|
+
tiktok: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
30
|
+
paypal_email: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
31
|
+
stripe_connect_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
32
|
+
min_withdrawal_amount: import("@etohq/framework/utils").NumberProperty;
|
|
33
|
+
payouts_enabled_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
34
|
+
connect_payouts_last_reminded_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
35
|
+
invoice_settings: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
36
|
+
metadata: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
37
|
+
}>, "Ambassador">;
|
|
38
|
+
export { Ambassador };
|
|
39
|
+
//# sourceMappingURL=ambassador.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ambassador.d.ts","sourceRoot":"","sources":["../../src/models/ambassador.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiEZ,CAAA;AAEJ,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Ambassador = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
const Ambassador = utils_1.model
|
|
6
|
+
.define("Ambassador", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "amb" }).primaryKey(),
|
|
8
|
+
// Universal Source (Our innovation - supports users AND communities)
|
|
9
|
+
source_type: utils_1.model.enum(["user", "community"]), // What type of entity is the ambassador
|
|
10
|
+
source_id: utils_1.model.text().searchable(), // user_id or community_id
|
|
11
|
+
// Basic Info (Dub parity)
|
|
12
|
+
name: utils_1.model.text().searchable(),
|
|
13
|
+
email: utils_1.model.text().unique().nullable(),
|
|
14
|
+
profile_type: utils_1.model.enum(["individual", "business"]).default("individual"),
|
|
15
|
+
company_name: utils_1.model.text().nullable(),
|
|
16
|
+
status: utils_1.model.enum(["default", "verified", "featured"]).default("default"),
|
|
17
|
+
description: utils_1.model.text().nullable(),
|
|
18
|
+
country: utils_1.model.text().nullable(),
|
|
19
|
+
image: utils_1.model.text().nullable(),
|
|
20
|
+
total_earnings: utils_1.model.number().nullable(),
|
|
21
|
+
// Social Verification (Dub parity)
|
|
22
|
+
website: utils_1.model.text().nullable(),
|
|
23
|
+
website_txt_record: utils_1.model.text().nullable(),
|
|
24
|
+
website_verified_at: utils_1.model.dateTime().nullable(),
|
|
25
|
+
youtube: utils_1.model.text().nullable(),
|
|
26
|
+
youtube_channel_id: utils_1.model.text().nullable(),
|
|
27
|
+
youtube_verified_at: utils_1.model.dateTime().nullable(),
|
|
28
|
+
youtube_subscriber_count: utils_1.model.number().default(0),
|
|
29
|
+
youtube_video_count: utils_1.model.number().default(0),
|
|
30
|
+
youtube_view_count: utils_1.model.number().default(0),
|
|
31
|
+
twitter: utils_1.model.text().nullable(),
|
|
32
|
+
twitter_verified_at: utils_1.model.dateTime().nullable(),
|
|
33
|
+
linkedin: utils_1.model.text().nullable(),
|
|
34
|
+
linkedin_verified_at: utils_1.model.dateTime().nullable(),
|
|
35
|
+
instagram: utils_1.model.text().nullable(),
|
|
36
|
+
instagram_verified_at: utils_1.model.dateTime().nullable(),
|
|
37
|
+
tiktok: utils_1.model.text().nullable(),
|
|
38
|
+
// Payout Settings (Dub parity)
|
|
39
|
+
paypal_email: utils_1.model.text().nullable(),
|
|
40
|
+
stripe_connect_id: utils_1.model.text().nullable(),
|
|
41
|
+
min_withdrawal_amount: utils_1.model.number().default(10000), // $100 in cents
|
|
42
|
+
payouts_enabled_at: utils_1.model.dateTime().nullable(),
|
|
43
|
+
connect_payouts_last_reminded_at: utils_1.model.dateTime().nullable(),
|
|
44
|
+
invoice_settings: utils_1.model.json().nullable(),
|
|
45
|
+
// Metadata
|
|
46
|
+
metadata: utils_1.model.json().nullable(),
|
|
47
|
+
})
|
|
48
|
+
.indexes([
|
|
49
|
+
{
|
|
50
|
+
name: "IDX_ambassador_source",
|
|
51
|
+
on: ["source_type", "source_id"],
|
|
52
|
+
where: "deleted_at IS NULL",
|
|
53
|
+
unique: true, // One ambassador record per source
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: "IDX_ambassador_email",
|
|
57
|
+
on: ["email"],
|
|
58
|
+
where: "deleted_at IS NULL",
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "IDX_ambassador_status",
|
|
62
|
+
on: ["status"],
|
|
63
|
+
where: "deleted_at IS NULL",
|
|
64
|
+
},
|
|
65
|
+
]);
|
|
66
|
+
exports.Ambassador = Ambassador;
|
|
67
|
+
//# sourceMappingURL=ambassador.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ambassador.js","sourceRoot":"","sources":["../../src/models/ambassador.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
declare const Commission: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
program_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
ambassador_id: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
program_enrollment_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
6
|
+
reward_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
access_link_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
invoice_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
9
|
+
customer_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
10
|
+
event_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
11
|
+
description: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
12
|
+
type: import("@etohq/framework/utils").EnumProperty<["click", "lead", "sale", "custom", "revenue_share", "community_bonus"]>;
|
|
13
|
+
amount: import("@etohq/framework/utils").NumberProperty;
|
|
14
|
+
quantity: import("@etohq/framework/utils").NumberProperty;
|
|
15
|
+
earnings: import("@etohq/framework/utils").NumberProperty;
|
|
16
|
+
currency: import("@etohq/framework/utils").TextProperty;
|
|
17
|
+
user_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
18
|
+
payout_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
19
|
+
status: import("@etohq/framework/utils").EnumProperty<["pending", "processed", "paid", "refunded", "duplicate", "fraud", "canceled"]>;
|
|
20
|
+
metadata: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
21
|
+
}>, "Commission">;
|
|
22
|
+
export { Commission };
|
|
23
|
+
//# sourceMappingURL=commission.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commission.d.ts","sourceRoot":"","sources":["../../src/models/commission.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;iBAsFZ,CAAA;AAEJ,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Commission = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
const Commission = utils_1.model
|
|
6
|
+
.define("Commission", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "comm" }).primaryKey(),
|
|
8
|
+
program_id: utils_1.model.text().searchable(),
|
|
9
|
+
ambassador_id: utils_1.model.text().searchable(),
|
|
10
|
+
program_enrollment_id: utils_1.model.text().nullable(),
|
|
11
|
+
reward_id: utils_1.model.text().nullable(),
|
|
12
|
+
access_link_id: utils_1.model.text().nullable(),
|
|
13
|
+
invoice_id: utils_1.model.text().nullable(),
|
|
14
|
+
customer_id: utils_1.model.text().nullable(),
|
|
15
|
+
event_id: utils_1.model.text().nullable(),
|
|
16
|
+
description: utils_1.model.text().nullable(),
|
|
17
|
+
type: utils_1.model.enum([
|
|
18
|
+
"click",
|
|
19
|
+
"lead",
|
|
20
|
+
"sale",
|
|
21
|
+
"custom",
|
|
22
|
+
"revenue_share",
|
|
23
|
+
"community_bonus",
|
|
24
|
+
]),
|
|
25
|
+
amount: utils_1.model.number(),
|
|
26
|
+
quantity: utils_1.model.number(),
|
|
27
|
+
earnings: utils_1.model.number(),
|
|
28
|
+
currency: utils_1.model.text(),
|
|
29
|
+
user_id: utils_1.model.text().nullable(),
|
|
30
|
+
payout_id: utils_1.model.text().nullable(),
|
|
31
|
+
status: utils_1.model
|
|
32
|
+
.enum([
|
|
33
|
+
"pending",
|
|
34
|
+
"processed",
|
|
35
|
+
"paid",
|
|
36
|
+
"refunded",
|
|
37
|
+
"duplicate",
|
|
38
|
+
"fraud",
|
|
39
|
+
"canceled",
|
|
40
|
+
])
|
|
41
|
+
.default("pending"),
|
|
42
|
+
metadata: utils_1.model.json().nullable(),
|
|
43
|
+
})
|
|
44
|
+
.indexes([
|
|
45
|
+
{
|
|
46
|
+
name: "IDX_commission_invoice_program",
|
|
47
|
+
on: ["invoice_id", "program_id"],
|
|
48
|
+
unique: true,
|
|
49
|
+
where: "deleted_at IS NULL AND invoice_id IS NOT NULL",
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: "IDX_commission_earnings",
|
|
53
|
+
on: ["earnings", "program_id", "ambassador_id", "status"],
|
|
54
|
+
where: "deleted_at IS NULL",
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "IDX_commission_program_analytics",
|
|
58
|
+
on: ["program_id", "created_at", "status", "amount", "earnings"],
|
|
59
|
+
where: "deleted_at IS NULL",
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: "IDX_commission_ambassador_customer",
|
|
63
|
+
on: ["ambassador_id", "customer_id"],
|
|
64
|
+
where: "deleted_at IS NULL",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: "IDX_commission_payout",
|
|
68
|
+
on: ["payout_id"],
|
|
69
|
+
where: "deleted_at IS NULL AND payout_id IS NOT NULL",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "IDX_commission_customer",
|
|
73
|
+
on: ["customer_id"],
|
|
74
|
+
where: "deleted_at IS NULL AND customer_id IS NOT NULL",
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
name: "IDX_commission_link",
|
|
78
|
+
on: ["access_link_id"],
|
|
79
|
+
where: "deleted_at IS NULL AND link_id IS NOT NULL",
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: "IDX_commission_status",
|
|
83
|
+
on: ["status", "created_at"],
|
|
84
|
+
where: "deleted_at IS NULL",
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: "IDX_commission_reward",
|
|
88
|
+
on: ["reward_id"],
|
|
89
|
+
where: "deleted_at IS NULL AND reward_id IS NOT NULL",
|
|
90
|
+
},
|
|
91
|
+
]);
|
|
92
|
+
exports.Commission = Commission;
|
|
93
|
+
//# sourceMappingURL=commission.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commission.js","sourceRoot":"","sources":["../../src/models/commission.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAE9C,MAAM,UAAU,GAAG,aAAK;KACrB,MAAM,CAAC,YAAY,EAAE;IACpB,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE;IAC7C,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACrC,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACxC,qBAAqB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC9C,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAClC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACpC,IAAI,EAAE,aAAK,CAAC,IAAI,CAAC;QACf,OAAO;QACP,MAAM;QACN,MAAM;QACN,QAAQ;QACR,eAAe;QACf,iBAAiB;KAClB,CAAC;IACF,MAAM,EAAE,aAAK,CAAC,MAAM,EAAE;IACtB,QAAQ,EAAE,aAAK,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,aAAK,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE;IACtB,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAClC,MAAM,EAAE,aAAK;SACV,IAAI,CAAC;QACJ,SAAS;QACT,WAAW;QACX,MAAM;QACN,UAAU;QACV,WAAW;QACX,OAAO;QACP,UAAU;KACX,CAAC;SACD,OAAO,CAAC,SAAS,CAAC;IACrB,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC;KACD,OAAO,CAAC;IACP;QACE,IAAI,EAAE,gCAAgC;QACtC,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;QAChC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,+CAA+C;KACvD;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,EAAE,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC;QACzD,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,kCAAkC;QACxC,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC;QAChE,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,oCAAoC;QAC1C,EAAE,EAAE,CAAC,eAAe,EAAE,aAAa,CAAC;QACpC,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,EAAE,EAAE,CAAC,WAAW,CAAC;QACjB,KAAK,EAAE,8CAA8C;KACtD;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,EAAE,EAAE,CAAC,aAAa,CAAC;QACnB,KAAK,EAAE,gDAAgD;KACxD;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,EAAE,EAAE,CAAC,gBAAgB,CAAC;QACtB,KAAK,EAAE,4CAA4C;KACpD;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,EAAE,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;QAC5B,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,EAAE,EAAE,CAAC,WAAW,CAAC;QACjB,KAAK,EAAE,8CAA8C;KACtD;CACF,CAAC,CAAA;AAEK,gCAAU"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { Ambassador } from "./ambassador";
|
|
2
|
+
export { Program } from "./program";
|
|
3
|
+
export { ProgramEnrollment } from "./program-enrollment";
|
|
4
|
+
export { Reward } from "./reward";
|
|
5
|
+
export { Payout } from "./payout";
|
|
6
|
+
export { Commission } from "./commission";
|
|
7
|
+
export { RevenueShareRule } from "./revenue-share-rule";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RevenueShareRule = exports.Commission = exports.Payout = exports.Reward = exports.ProgramEnrollment = exports.Program = exports.Ambassador = void 0;
|
|
4
|
+
var ambassador_1 = require("./ambassador");
|
|
5
|
+
Object.defineProperty(exports, "Ambassador", { enumerable: true, get: function () { return ambassador_1.Ambassador; } });
|
|
6
|
+
var program_1 = require("./program");
|
|
7
|
+
Object.defineProperty(exports, "Program", { enumerable: true, get: function () { return program_1.Program; } });
|
|
8
|
+
var program_enrollment_1 = require("./program-enrollment");
|
|
9
|
+
Object.defineProperty(exports, "ProgramEnrollment", { enumerable: true, get: function () { return program_enrollment_1.ProgramEnrollment; } });
|
|
10
|
+
var reward_1 = require("./reward");
|
|
11
|
+
Object.defineProperty(exports, "Reward", { enumerable: true, get: function () { return reward_1.Reward; } });
|
|
12
|
+
var payout_1 = require("./payout");
|
|
13
|
+
Object.defineProperty(exports, "Payout", { enumerable: true, get: function () { return payout_1.Payout; } });
|
|
14
|
+
var commission_1 = require("./commission");
|
|
15
|
+
Object.defineProperty(exports, "Commission", { enumerable: true, get: function () { return commission_1.Commission; } });
|
|
16
|
+
var revenue_share_rule_1 = require("./revenue-share-rule");
|
|
17
|
+
Object.defineProperty(exports, "RevenueShareRule", { enumerable: true, get: function () { return revenue_share_rule_1.RevenueShareRule; } });
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,2DAAwD;AAA/C,uHAAA,iBAAiB,OAAA;AAC1B,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,2DAAuD;AAA9C,sHAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
declare const Partner: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
name: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
email: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
5
|
+
image: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
6
|
+
description: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
company_name: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
status: import("@etohq/framework/utils").EnumProperty<["default", "verified", "featured"]>;
|
|
9
|
+
profile_type: import("@etohq/framework/utils").EnumProperty<["individual", "company"]>;
|
|
10
|
+
website: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
11
|
+
website_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
12
|
+
youtube: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
13
|
+
youtube_channel_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
14
|
+
youtube_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
15
|
+
youtube_subscriber_count: import("@etohq/framework/utils").NumberProperty;
|
|
16
|
+
youtube_video_count: import("@etohq/framework/utils").NumberProperty;
|
|
17
|
+
youtube_view_count: import("@etohq/framework/utils").NumberProperty;
|
|
18
|
+
twitter: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
19
|
+
twitter_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
20
|
+
linkedin: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
21
|
+
linkedin_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
22
|
+
instagram: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
23
|
+
instagram_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
24
|
+
tiktok: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
25
|
+
tiktok_verified_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
26
|
+
paypal_email: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
27
|
+
spay_connect_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
28
|
+
payouts_enabled_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
29
|
+
min_withdrawal_amount: import("@etohq/framework/utils").NumberProperty;
|
|
30
|
+
connect_payouts_last_reminded_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
31
|
+
country: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
32
|
+
invoice_settings: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
33
|
+
created_at: import("@etohq/framework/utils").DateTimeProperty;
|
|
34
|
+
updated_at: import("@etohq/framework/utils").DateTimeProperty;
|
|
35
|
+
deleted_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
36
|
+
}>, "Partner">;
|
|
37
|
+
export { Partner };
|
|
38
|
+
//# sourceMappingURL=partner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"partner.d.ts","sourceRoot":"","sources":["../../src/models/partner.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6ET,CAAA;AAEJ,OAAO,EAAE,OAAO,EAAE,CAAA"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Partner = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
const Partner = utils_1.model
|
|
6
|
+
.define("Partner", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "partner" }).primaryKey(),
|
|
8
|
+
name: utils_1.model.text().searchable(),
|
|
9
|
+
email: utils_1.model.text().unique().nullable(),
|
|
10
|
+
image: utils_1.model.text().nullable(),
|
|
11
|
+
description: utils_1.model.text().nullable(),
|
|
12
|
+
company_name: utils_1.model.text().nullable(),
|
|
13
|
+
// Verification & Status
|
|
14
|
+
status: utils_1.model.enum(["default", "verified", "featured"]).default("default"),
|
|
15
|
+
profile_type: utils_1.model.enum(["individual", "company"]).default("individual"),
|
|
16
|
+
// Social Verification
|
|
17
|
+
website: utils_1.model.text().nullable(),
|
|
18
|
+
website_verified_at: utils_1.model.dateTime().nullable(),
|
|
19
|
+
youtube: utils_1.model.text().nullable(),
|
|
20
|
+
youtube_channel_id: utils_1.model.text().nullable(),
|
|
21
|
+
youtube_verified_at: utils_1.model.dateTime().nullable(),
|
|
22
|
+
youtube_subscriber_count: utils_1.model.number().default(0),
|
|
23
|
+
youtube_video_count: utils_1.model.number().default(0),
|
|
24
|
+
youtube_view_count: utils_1.model.number().default(0),
|
|
25
|
+
twitter: utils_1.model.text().nullable(),
|
|
26
|
+
twitter_verified_at: utils_1.model.dateTime().nullable(),
|
|
27
|
+
linkedin: utils_1.model.text().nullable(),
|
|
28
|
+
linkedin_verified_at: utils_1.model.dateTime().nullable(),
|
|
29
|
+
instagram: utils_1.model.text().nullable(),
|
|
30
|
+
instagram_verified_at: utils_1.model.dateTime().nullable(),
|
|
31
|
+
tiktok: utils_1.model.text().nullable(),
|
|
32
|
+
tiktok_verified_at: utils_1.model.dateTime().nullable(),
|
|
33
|
+
// Payout Configuration
|
|
34
|
+
paypal_email: utils_1.model.text().unique().nullable(),
|
|
35
|
+
spay_connect_id: utils_1.model.text().unique().nullable(),
|
|
36
|
+
payouts_enabled_at: utils_1.model.dateTime().nullable(),
|
|
37
|
+
min_withdrawal_amount: utils_1.model.number().default(10000), // $100 in cents
|
|
38
|
+
connect_payouts_last_reminded_at: utils_1.model.dateTime().nullable(),
|
|
39
|
+
// Location
|
|
40
|
+
country: utils_1.model.text().nullable(),
|
|
41
|
+
// Settings
|
|
42
|
+
invoice_settings: utils_1.model.json().nullable(),
|
|
43
|
+
created_at: utils_1.model.dateTime(),
|
|
44
|
+
updated_at: utils_1.model.dateTime(),
|
|
45
|
+
deleted_at: utils_1.model.dateTime().nullable(),
|
|
46
|
+
})
|
|
47
|
+
.indexes([
|
|
48
|
+
{
|
|
49
|
+
name: "IDX_partner_email",
|
|
50
|
+
on: ["email"],
|
|
51
|
+
unique: true,
|
|
52
|
+
where: "deleted_at IS NULL AND email IS NOT NULL",
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
name: "IDX_partner_paypal",
|
|
56
|
+
on: ["paypal_email"],
|
|
57
|
+
unique: true,
|
|
58
|
+
where: "deleted_at IS NULL AND paypal_email IS NOT NULL",
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "IDX_partner_spay",
|
|
62
|
+
on: ["spay_connect_id"],
|
|
63
|
+
unique: true,
|
|
64
|
+
where: "deleted_at IS NULL AND spay_connect_id IS NOT NULL",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: "IDX_partner_status",
|
|
68
|
+
on: ["status", "created_at"],
|
|
69
|
+
where: "deleted_at IS NULL",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "IDX_partner_youtube",
|
|
73
|
+
on: ["youtube_channel_id"],
|
|
74
|
+
where: "deleted_at IS NULL AND youtube_channel_id IS NOT NULL",
|
|
75
|
+
},
|
|
76
|
+
]);
|
|
77
|
+
exports.Partner = Partner;
|
|
78
|
+
//# sourceMappingURL=partner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"partner.js","sourceRoot":"","sources":["../../src/models/partner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare enum PayoutStatus {
|
|
2
|
+
Pending = "pending",
|
|
3
|
+
Processing = "processing",
|
|
4
|
+
Processed = "processed",
|
|
5
|
+
Sent = "sent",
|
|
6
|
+
Completed = "completed",
|
|
7
|
+
Failed = "failed",
|
|
8
|
+
Canceled = "canceled"
|
|
9
|
+
}
|
|
10
|
+
declare const Payout: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
11
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
12
|
+
program_id: import("@etohq/framework/utils").TextProperty;
|
|
13
|
+
ambassador_id: import("@etohq/framework/utils").TextProperty;
|
|
14
|
+
amount: import("@etohq/framework/utils").NumberProperty;
|
|
15
|
+
currency: import("@etohq/framework/utils").TextProperty;
|
|
16
|
+
status: import("@etohq/framework/utils").EnumProperty<typeof PayoutStatus>;
|
|
17
|
+
description: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
18
|
+
period_start: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
19
|
+
period_end: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
20
|
+
spay_transfer_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
21
|
+
spay_payout_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
22
|
+
paypal_transfer_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
23
|
+
failure_reason: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
24
|
+
created_by: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
25
|
+
paid_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
26
|
+
}>, "Payout">;
|
|
27
|
+
export { Payout };
|
|
28
|
+
//# sourceMappingURL=payout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payout.d.ts","sourceRoot":"","sources":["../../src/models/payout.ts"],"names":[],"mappings":"AAGA,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;aA2CR,CAAA;AAEJ,OAAO,EAAE,MAAM,EAAE,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Payout = exports.PayoutStatus = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
// Status Management (Dub Pattern)
|
|
6
|
+
// Enum for status
|
|
7
|
+
var PayoutStatus;
|
|
8
|
+
(function (PayoutStatus) {
|
|
9
|
+
PayoutStatus["Pending"] = "pending";
|
|
10
|
+
PayoutStatus["Processing"] = "processing";
|
|
11
|
+
PayoutStatus["Processed"] = "processed";
|
|
12
|
+
PayoutStatus["Sent"] = "sent";
|
|
13
|
+
PayoutStatus["Completed"] = "completed";
|
|
14
|
+
PayoutStatus["Failed"] = "failed";
|
|
15
|
+
PayoutStatus["Canceled"] = "canceled";
|
|
16
|
+
})(PayoutStatus || (exports.PayoutStatus = PayoutStatus = {}));
|
|
17
|
+
const Payout = utils_1.model
|
|
18
|
+
.define("Payout", {
|
|
19
|
+
id: utils_1.model.id({ prefix: "payout" }).primaryKey(),
|
|
20
|
+
// Core Payout Info (Dub Pattern)
|
|
21
|
+
program_id: utils_1.model.text().searchable(),
|
|
22
|
+
ambassador_id: utils_1.model.text().searchable(), // Dub: partnerId
|
|
23
|
+
amount: utils_1.model.number().default(0), // Amount in cents
|
|
24
|
+
currency: utils_1.model.text().default("USD"),
|
|
25
|
+
status: utils_1.model.enum(PayoutStatus).default(PayoutStatus.Pending), // pending, processing, processed, sent, completed, failed, canceled
|
|
26
|
+
description: utils_1.model.text().nullable(),
|
|
27
|
+
// Period Tracking (Dub Pattern)
|
|
28
|
+
period_start: utils_1.model.dateTime().nullable(),
|
|
29
|
+
period_end: utils_1.model.dateTime().nullable(),
|
|
30
|
+
// Payment Integration (Spay + PayPal)
|
|
31
|
+
spay_transfer_id: utils_1.model.text().nullable(),
|
|
32
|
+
spay_payout_id: utils_1.model.text().nullable(),
|
|
33
|
+
paypal_transfer_id: utils_1.model.text().nullable(),
|
|
34
|
+
failure_reason: utils_1.model.text().nullable(),
|
|
35
|
+
// Audit Trail
|
|
36
|
+
created_by: utils_1.model.text().nullable(), // User who initiated payout
|
|
37
|
+
paid_at: utils_1.model.dateTime().nullable(),
|
|
38
|
+
})
|
|
39
|
+
.indexes([
|
|
40
|
+
{
|
|
41
|
+
name: "program_ambassador",
|
|
42
|
+
on: ["program_id", "ambassador_id"],
|
|
43
|
+
where: "deleted_at IS NULL",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: "status_lookup",
|
|
47
|
+
on: ["status", "created_at"],
|
|
48
|
+
where: "deleted_at IS NULL",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "ambassador_payouts",
|
|
52
|
+
on: ["ambassador_id", "status"],
|
|
53
|
+
where: "deleted_at IS NULL",
|
|
54
|
+
},
|
|
55
|
+
]);
|
|
56
|
+
exports.Payout = Payout;
|
|
57
|
+
//# sourceMappingURL=payout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payout.js","sourceRoot":"","sources":["../../src/models/payout.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAC9C,kCAAkC;AAClC,kBAAkB;AAClB,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,yCAAyB,CAAA;IACzB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,uCAAuB,CAAA;IACvB,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;AACvB,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB;AAED,MAAM,MAAM,GAAG,aAAK;KACjB,MAAM,CAAC,QAAQ,EAAE;IAChB,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE;IAE/C,iCAAiC;IACjC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACrC,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,EAAE,iBAAiB;IAC3D,MAAM,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,kBAAkB;IACrD,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAErC,MAAM,EAAE,aAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,oEAAoE;IACpI,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEpC,gCAAgC;IAChC,YAAY,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,UAAU,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEvC,sCAAsC;IACtC,gBAAgB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACzC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvC,kBAAkB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC3C,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEvC,cAAc;IACd,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,4BAA4B;IACjE,OAAO,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,OAAO,CAAC;IACP;QACE,IAAI,EAAE,oBAAoB;QAC1B,EAAE,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC;QACnC,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,eAAe;QACrB,EAAE,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;QAC5B,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC;QAC/B,KAAK,EAAE,oBAAoB;KAC5B;CACF,CAAC,CAAA;AAEK,wBAAM"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
declare const ProgramEnrollment: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
ambassador_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
program_id: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
tenant_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
6
|
+
group_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
application_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
click_reward_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
9
|
+
lead_reward_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
10
|
+
sale_reward_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
11
|
+
access_reward_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
12
|
+
discount_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
13
|
+
application_message: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
14
|
+
invited_by: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
15
|
+
source: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
16
|
+
metadata: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
17
|
+
status: import("@etohq/framework/utils").EnumProperty<["pending", "approved", "rejected", "invited", "declined", "banned", "archived"]>;
|
|
18
|
+
total_commissions: import("@etohq/framework/utils").NumberProperty;
|
|
19
|
+
banned_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
20
|
+
banned_reason: import("@etohq/framework/utils").NullableModifier<"tos_violation" | "inappropriate_content" | "fake_traffic" | "fraud" | "spam" | "brand_abuse", import("@etohq/framework/utils").EnumProperty<["tos_violation", "inappropriate_content", "fake_traffic", "fraud", "spam", "brand_abuse"]>>;
|
|
21
|
+
created_at: import("@etohq/framework/utils").DateTimeProperty;
|
|
22
|
+
updated_at: import("@etohq/framework/utils").DateTimeProperty;
|
|
23
|
+
deleted_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
24
|
+
}>, "ProgramEnrollment">;
|
|
25
|
+
export { ProgramEnrollment };
|
|
26
|
+
//# sourceMappingURL=program-enrollment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"program-enrollment.d.ts","sourceRoot":"","sources":["../../src/models/program-enrollment.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;wBA+EnB,CAAA;AAEJ,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|