@positivegrid/pg-mongoose-schema 27.8.5 → 28.0.0-beta.1
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/index.d.ts +5 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/models/banks.d.ts +3 -0
- package/dist/models/banks.js +33 -0
- package/dist/models/banks.js.map +1 -0
- package/dist/models/device.d.ts +3 -0
- package/dist/models/device.js +48 -0
- package/dist/models/device.js.map +1 -0
- package/dist/models/featuredList.d.ts +3 -0
- package/dist/models/featuredList.js +70 -0
- package/dist/models/featuredList.js.map +1 -0
- package/dist/models/hardware.d.ts +3 -0
- package/dist/models/hardware.js +213 -0
- package/dist/models/hardware.js.map +1 -0
- package/dist/models/homeConfig.d.ts +3 -0
- package/dist/models/homeConfig.js +38 -0
- package/dist/models/homeConfig.js.map +1 -0
- package/dist/models/oauth.d.ts +3 -0
- package/dist/models/oauth.js +48 -0
- package/dist/models/oauth.js.map +1 -0
- package/dist/models/partner.d.ts +3 -0
- package/dist/models/partner.js +165 -0
- package/dist/models/partner.js.map +1 -0
- package/dist/models/payment.d.ts +3 -0
- package/dist/models/payment.js +859 -0
- package/dist/models/payment.js.map +1 -0
- package/dist/models/pgConfig.d.ts +3 -0
- package/dist/models/pgConfig.js +64 -0
- package/dist/models/pgConfig.js.map +1 -0
- package/dist/models/preset.d.ts +3 -0
- package/dist/models/preset.js +802 -0
- package/dist/models/preset.js.map +1 -0
- package/dist/models/promotion.d.ts +3 -0
- package/dist/models/promotion.js +585 -0
- package/dist/models/promotion.js.map +1 -0
- package/dist/models/redeem.d.ts +3 -0
- package/dist/models/redeem.js +26 -0
- package/dist/models/redeem.js.map +1 -0
- package/dist/models/toneTheme.d.ts +3 -0
- package/dist/models/toneTheme.js +29 -0
- package/dist/models/toneTheme.js.map +1 -0
- package/dist/models/toneThemeFeaturedList.d.ts +3 -0
- package/dist/models/toneThemeFeaturedList.js +18 -0
- package/dist/models/toneThemeFeaturedList.js.map +1 -0
- package/dist/models/user.d.ts +3 -0
- package/dist/models/user.js +565 -0
- package/dist/models/user.js.map +1 -0
- package/dist/models/userTrack.d.ts +3 -0
- package/dist/models/userTrack.js +82 -0
- package/dist/models/userTrack.js.map +1 -0
- package/dist/types/banks.types.d.ts +25 -0
- package/dist/types/banks.types.js +3 -0
- package/dist/types/banks.types.js.map +1 -0
- package/dist/types/device.types.d.ts +41 -0
- package/dist/types/device.types.js +3 -0
- package/dist/types/device.types.js.map +1 -0
- package/dist/types/featuredList.types.d.ts +32 -0
- package/dist/types/featuredList.types.js +3 -0
- package/dist/types/featuredList.types.js.map +1 -0
- package/dist/types/hardware.types.d.ts +123 -0
- package/dist/types/hardware.types.js +3 -0
- package/dist/types/hardware.types.js.map +1 -0
- package/dist/types/homeConfig.types.d.ts +24 -0
- package/dist/types/homeConfig.types.js +3 -0
- package/dist/types/homeConfig.types.js.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.js +34 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/oauth.types.d.ts +38 -0
- package/dist/types/oauth.types.js +3 -0
- package/dist/types/oauth.types.js.map +1 -0
- package/dist/types/partner.types.d.ts +91 -0
- package/dist/types/partner.types.js +3 -0
- package/dist/types/partner.types.js.map +1 -0
- package/dist/types/payment.types.d.ts +304 -0
- package/dist/types/payment.types.js +3 -0
- package/dist/types/payment.types.js.map +1 -0
- package/dist/types/pgConfig.types.d.ts +35 -0
- package/dist/types/pgConfig.types.js +3 -0
- package/dist/types/pgConfig.types.js.map +1 -0
- package/dist/types/preset.types.d.ts +110 -0
- package/dist/types/preset.types.js +3 -0
- package/dist/types/preset.types.js.map +1 -0
- package/dist/types/promotion.types.d.ts +282 -0
- package/dist/types/promotion.types.js +3 -0
- package/dist/types/promotion.types.js.map +1 -0
- package/dist/types/redeem.types.d.ts +16 -0
- package/dist/types/redeem.types.js +3 -0
- package/dist/types/redeem.types.js.map +1 -0
- package/dist/types/toneTheme.types.d.ts +16 -0
- package/dist/types/toneTheme.types.js +3 -0
- package/dist/types/toneTheme.types.js.map +1 -0
- package/dist/types/toneThemeFeaturedList.types.d.ts +9 -0
- package/dist/types/toneThemeFeaturedList.types.js +3 -0
- package/dist/types/toneThemeFeaturedList.types.js.map +1 -0
- package/dist/types/user.types.d.ts +166 -0
- package/dist/types/user.types.js +6 -0
- package/dist/types/user.types.js.map +1 -0
- package/dist/types/userTrack.types.d.ts +39 -0
- package/dist/types/userTrack.types.js +12 -0
- package/dist/types/userTrack.types.js.map +1 -0
- package/package.json +38 -12
- package/index.js +0 -28
- package/models/banks.js +0 -42
- package/models/device.js +0 -51
- package/models/featuredList.js +0 -91
- package/models/hardware.js +0 -256
- package/models/homeConfig.js +0 -97
- package/models/oauth.js +0 -52
- package/models/partner.js +0 -265
- package/models/payment.js +0 -899
- package/models/pgConfig.js +0 -88
- package/models/preset.js +0 -845
- package/models/promotion.js +0 -590
- package/models/redeem.js +0 -26
- package/models/toneTheme.js +0 -78
- package/models/toneThemeFeaturedList.js +0 -49
- package/models/user.js +0 -639
- package/models/userTrack.js +0 -107
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import type { Document, Model, Types } from "mongoose";
|
|
2
|
+
export interface ILicenseCampaignMetaDocument extends Document {
|
|
3
|
+
campaign_type: string;
|
|
4
|
+
campaign_detail: unknown;
|
|
5
|
+
status: number;
|
|
6
|
+
start_date: Date | null;
|
|
7
|
+
end_date: Date | null;
|
|
8
|
+
created_on: Date;
|
|
9
|
+
}
|
|
10
|
+
export type ILicenseCampaignMetaModel = Model<ILicenseCampaignMetaDocument>;
|
|
11
|
+
export interface ILicenseCampaignRecordDocument extends Document {
|
|
12
|
+
user_id: Types.ObjectId;
|
|
13
|
+
campaign_event_id: Types.ObjectId;
|
|
14
|
+
status: number;
|
|
15
|
+
created_on: Date;
|
|
16
|
+
}
|
|
17
|
+
export type ILicenseCampaignRecordModel = Model<ILicenseCampaignRecordDocument>;
|
|
18
|
+
export interface IPublicAnnouncementActionButton {
|
|
19
|
+
type: string;
|
|
20
|
+
text: string;
|
|
21
|
+
value: unknown;
|
|
22
|
+
read: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface IGetAvailableAnnouncementParams {
|
|
25
|
+
pname?: string;
|
|
26
|
+
locale?: string;
|
|
27
|
+
ta_device?: string;
|
|
28
|
+
country?: string;
|
|
29
|
+
device_list?: string;
|
|
30
|
+
device_os?: string;
|
|
31
|
+
email?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface IPublicAnnouncementDocument extends Document {
|
|
34
|
+
title: string;
|
|
35
|
+
content: string;
|
|
36
|
+
type: string;
|
|
37
|
+
country: string[];
|
|
38
|
+
image: string | null;
|
|
39
|
+
image_type: string;
|
|
40
|
+
message_type: string;
|
|
41
|
+
action_button: IPublicAnnouncementActionButton[];
|
|
42
|
+
show_countdown: boolean;
|
|
43
|
+
announce_for: string[];
|
|
44
|
+
target_audience_device: string[];
|
|
45
|
+
device_os: string;
|
|
46
|
+
device_list: string[];
|
|
47
|
+
announce_license_tier: string[];
|
|
48
|
+
announce_mobile_iap: string[];
|
|
49
|
+
user_list_num: number;
|
|
50
|
+
user_list_status: number;
|
|
51
|
+
user_list_failure: number;
|
|
52
|
+
user_list_log: string | null;
|
|
53
|
+
user_list_filename: string | null;
|
|
54
|
+
start_time: Date | null;
|
|
55
|
+
end_time: Date | null;
|
|
56
|
+
locale: string;
|
|
57
|
+
order: number;
|
|
58
|
+
created_on: Date;
|
|
59
|
+
}
|
|
60
|
+
export interface IPublicAnnouncementModel extends Model<IPublicAnnouncementDocument> {
|
|
61
|
+
getAvailableAnnouncement(params?: IGetAvailableAnnouncementParams): Promise<unknown[]>;
|
|
62
|
+
}
|
|
63
|
+
export interface IPublicAnnouncementUserListDocument extends Document {
|
|
64
|
+
pa_id: Types.ObjectId;
|
|
65
|
+
email: string;
|
|
66
|
+
user_id: Types.ObjectId;
|
|
67
|
+
status: number;
|
|
68
|
+
created_on: Date;
|
|
69
|
+
}
|
|
70
|
+
export interface IPublicAnnouncementUserListModel extends Model<IPublicAnnouncementUserListDocument> {
|
|
71
|
+
getAvailableAnnouncementByEmail(email: string): Promise<unknown[]>;
|
|
72
|
+
}
|
|
73
|
+
export interface IPublicAnnouncementUserListLogDocument extends Document {
|
|
74
|
+
pa_id: Types.ObjectId;
|
|
75
|
+
message: unknown;
|
|
76
|
+
}
|
|
77
|
+
export type IPublicAnnouncementUserListLogModel = Model<IPublicAnnouncementUserListLogDocument>;
|
|
78
|
+
export interface IPublicAnnouncementFreeTrialDocument extends Document {
|
|
79
|
+
pa_id: Types.ObjectId;
|
|
80
|
+
user_id: Types.ObjectId;
|
|
81
|
+
product_id: Types.ObjectId | null;
|
|
82
|
+
expansion_id: Types.ObjectId | null;
|
|
83
|
+
status: number;
|
|
84
|
+
expire_on: Date;
|
|
85
|
+
created_on: Date;
|
|
86
|
+
}
|
|
87
|
+
export interface IGetCurrentActiveFreeTrialParams {
|
|
88
|
+
userId: string;
|
|
89
|
+
}
|
|
90
|
+
export interface IPublicAnnouncementFreeTrialModel extends Model<IPublicAnnouncementFreeTrialDocument> {
|
|
91
|
+
getCurrentActiveFreeTrial(params: IGetCurrentActiveFreeTrialParams): Promise<unknown[]>;
|
|
92
|
+
}
|
|
93
|
+
export interface IIasBuyOptionDocument extends Document {
|
|
94
|
+
type: string;
|
|
95
|
+
sku: string;
|
|
96
|
+
description: string;
|
|
97
|
+
cta_name: string;
|
|
98
|
+
created_on: Date;
|
|
99
|
+
locale: string;
|
|
100
|
+
}
|
|
101
|
+
export type IIasBuyOptionModel = Model<IIasBuyOptionDocument>;
|
|
102
|
+
export interface IIasStorePageMetaDocument extends Document {
|
|
103
|
+
product: string;
|
|
104
|
+
expansion: boolean;
|
|
105
|
+
license: string;
|
|
106
|
+
buy_option: Types.ObjectId[];
|
|
107
|
+
created_on: Date;
|
|
108
|
+
promotion_target_audiance: string;
|
|
109
|
+
promotion_discount: string;
|
|
110
|
+
product_description: string;
|
|
111
|
+
quote_image: string;
|
|
112
|
+
locale: string;
|
|
113
|
+
cta_image: string;
|
|
114
|
+
cta_button_text: string;
|
|
115
|
+
cta_button_show_svg: boolean;
|
|
116
|
+
cta_button_action_url: string;
|
|
117
|
+
}
|
|
118
|
+
export type IIasStorePageMetaModel = Model<IIasStorePageMetaDocument>;
|
|
119
|
+
export interface IIasPromotionDocument extends Document {
|
|
120
|
+
start_time: Date;
|
|
121
|
+
end_time: Date;
|
|
122
|
+
quote_image: string;
|
|
123
|
+
created_on: Date;
|
|
124
|
+
}
|
|
125
|
+
export type IIasPromotionModel = Model<IIasPromotionDocument>;
|
|
126
|
+
export interface ISpecialOfferActionButton {
|
|
127
|
+
type: string;
|
|
128
|
+
text: string;
|
|
129
|
+
value: unknown;
|
|
130
|
+
read: boolean;
|
|
131
|
+
}
|
|
132
|
+
export interface ISpecialOfferDocument extends Document {
|
|
133
|
+
title: string;
|
|
134
|
+
content: string;
|
|
135
|
+
image: string | null;
|
|
136
|
+
action_button: ISpecialOfferActionButton[];
|
|
137
|
+
announce_for: string[];
|
|
138
|
+
target_audience_device: string[];
|
|
139
|
+
start_time: Date | null;
|
|
140
|
+
end_time: Date | null;
|
|
141
|
+
created_on: Date;
|
|
142
|
+
locale: string;
|
|
143
|
+
}
|
|
144
|
+
export type ISpecialOfferModel = Model<ISpecialOfferDocument>;
|
|
145
|
+
export interface IPromotionItem {
|
|
146
|
+
sku: string;
|
|
147
|
+
sale_price: number;
|
|
148
|
+
price: number;
|
|
149
|
+
name: string;
|
|
150
|
+
}
|
|
151
|
+
export interface IPromotionDocument extends Document {
|
|
152
|
+
name: string;
|
|
153
|
+
start_date: Date;
|
|
154
|
+
end_date: Date;
|
|
155
|
+
items: IPromotionItem[];
|
|
156
|
+
}
|
|
157
|
+
export type IPromotionModel = Model<IPromotionDocument>;
|
|
158
|
+
export interface ICampaignUserInfoDocument extends Document {
|
|
159
|
+
campaign: string;
|
|
160
|
+
email: string;
|
|
161
|
+
name: string;
|
|
162
|
+
redeem: string;
|
|
163
|
+
metadata: unknown;
|
|
164
|
+
created_on: Date;
|
|
165
|
+
}
|
|
166
|
+
export type ICampaignUserInfoModel = Model<ICampaignUserInfoDocument>;
|
|
167
|
+
export interface ICouponPromotionDocument extends Document {
|
|
168
|
+
email: string;
|
|
169
|
+
code: string;
|
|
170
|
+
referral: string;
|
|
171
|
+
event: string;
|
|
172
|
+
type: string;
|
|
173
|
+
metadata: unknown;
|
|
174
|
+
status: number;
|
|
175
|
+
created_on: Date;
|
|
176
|
+
}
|
|
177
|
+
export type ICouponPromotionModel = Model<ICouponPromotionDocument>;
|
|
178
|
+
export interface ITierSalesProcessLog {
|
|
179
|
+
from_tier_id: Types.ObjectId;
|
|
180
|
+
to_tier_id: Types.ObjectId;
|
|
181
|
+
updated_on: Date;
|
|
182
|
+
}
|
|
183
|
+
export interface ITierSalesMetaDocument extends Document {
|
|
184
|
+
campaign_key: string;
|
|
185
|
+
current_tier_sales_rule: Types.ObjectId;
|
|
186
|
+
current_tier_startdate: Date | null;
|
|
187
|
+
process_log: ITierSalesProcessLog[];
|
|
188
|
+
status: number;
|
|
189
|
+
updated_on: Date;
|
|
190
|
+
}
|
|
191
|
+
export type ITierSalesMetaModel = Model<ITierSalesMetaDocument>;
|
|
192
|
+
export interface ITierSalesGoal {
|
|
193
|
+
type: string;
|
|
194
|
+
value: number;
|
|
195
|
+
}
|
|
196
|
+
export interface ITierSalesRulesDocument extends Document {
|
|
197
|
+
campaign_key: string;
|
|
198
|
+
tier_level: number;
|
|
199
|
+
tier_type: number;
|
|
200
|
+
pre_rule_id: Types.ObjectId;
|
|
201
|
+
price: number;
|
|
202
|
+
ta_sku: string;
|
|
203
|
+
next_sku: string | null;
|
|
204
|
+
goal: ITierSalesGoal[];
|
|
205
|
+
force_switch_tier: Date | null;
|
|
206
|
+
is_final_tier: boolean;
|
|
207
|
+
status: number;
|
|
208
|
+
created_on: Date;
|
|
209
|
+
}
|
|
210
|
+
export type ITierSalesRulesModel = Model<ITierSalesRulesDocument>;
|
|
211
|
+
export interface IGearTrialMetaDocument extends Document {
|
|
212
|
+
title: string;
|
|
213
|
+
announce_for: string[];
|
|
214
|
+
target_audience_device: string[];
|
|
215
|
+
locale: string;
|
|
216
|
+
target_product_sku: string[];
|
|
217
|
+
expires: number;
|
|
218
|
+
status: number;
|
|
219
|
+
created_on: Date;
|
|
220
|
+
}
|
|
221
|
+
export type IGearTrialMetaModel = Model<IGearTrialMetaDocument>;
|
|
222
|
+
export interface IGearTrialRecordDocument extends Document {
|
|
223
|
+
gear_trial_id: Types.ObjectId;
|
|
224
|
+
user_id: Types.ObjectId;
|
|
225
|
+
expire_on: Date;
|
|
226
|
+
created_on: Date;
|
|
227
|
+
}
|
|
228
|
+
export type IGearTrialRecordModel = Model<IGearTrialRecordDocument>;
|
|
229
|
+
export interface IYotpoLoyaltyActiveRegion {
|
|
230
|
+
code: string;
|
|
231
|
+
points_balance: number;
|
|
232
|
+
points_earned: number;
|
|
233
|
+
}
|
|
234
|
+
export interface IYotpoLoyaltyHistory {
|
|
235
|
+
created_at: string;
|
|
236
|
+
date: string;
|
|
237
|
+
completed_on: string | null;
|
|
238
|
+
action: string | null;
|
|
239
|
+
points: number;
|
|
240
|
+
status: string | null;
|
|
241
|
+
action_name: string | null;
|
|
242
|
+
order_ids: string[];
|
|
243
|
+
}
|
|
244
|
+
export interface IYotpoLoyaltyDocument extends Document {
|
|
245
|
+
user_id: Types.ObjectId;
|
|
246
|
+
main_region: string;
|
|
247
|
+
active_regions: IYotpoLoyaltyActiveRegion[];
|
|
248
|
+
history: IYotpoLoyaltyHistory[];
|
|
249
|
+
created_on: Date;
|
|
250
|
+
updated_on: Date;
|
|
251
|
+
}
|
|
252
|
+
export type IYotpoLoyaltyModel = Model<IYotpoLoyaltyDocument>;
|
|
253
|
+
export interface IYotpoLoyaltyBackupDocument extends Document {
|
|
254
|
+
email: string;
|
|
255
|
+
store_code: string;
|
|
256
|
+
status: number;
|
|
257
|
+
created_on: Date;
|
|
258
|
+
}
|
|
259
|
+
export type IYotpoLoyaltyBackupModel = Model<IYotpoLoyaltyBackupDocument>;
|
|
260
|
+
export interface IFreeTrialTerminate {
|
|
261
|
+
reason: string;
|
|
262
|
+
user: string;
|
|
263
|
+
time: Date;
|
|
264
|
+
}
|
|
265
|
+
export interface IFreeTrialDocument extends Document {
|
|
266
|
+
campaign_name: string;
|
|
267
|
+
campaign_code: string;
|
|
268
|
+
content: string | null;
|
|
269
|
+
products: Types.ObjectId[];
|
|
270
|
+
status: number;
|
|
271
|
+
start_time: Date;
|
|
272
|
+
end_time: Date;
|
|
273
|
+
trial_days: number;
|
|
274
|
+
not_allow_same_product: boolean;
|
|
275
|
+
created_by: string | null;
|
|
276
|
+
terminate: IFreeTrialTerminate;
|
|
277
|
+
metadata: unknown;
|
|
278
|
+
created_on: Date;
|
|
279
|
+
updated_on: Date;
|
|
280
|
+
}
|
|
281
|
+
export type IFreeTrialModel = Model<IFreeTrialDocument>;
|
|
282
|
+
//# sourceMappingURL=promotion.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promotion.types.js","sourceRoot":"","sources":["../../src/types/promotion.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Document, Model, Types } from "mongoose";
|
|
2
|
+
export interface IRedeemCodeDocument extends Document {
|
|
3
|
+
code: string;
|
|
4
|
+
product_id: Types.ObjectId | null;
|
|
5
|
+
bundle_id: Types.ObjectId | null;
|
|
6
|
+
user_id: Types.ObjectId | null;
|
|
7
|
+
status: number;
|
|
8
|
+
expire_on: Date | null;
|
|
9
|
+
trial_due_date: Date | null;
|
|
10
|
+
tracker: string;
|
|
11
|
+
metadata?: unknown;
|
|
12
|
+
created_on: Date;
|
|
13
|
+
updated_on: Date;
|
|
14
|
+
}
|
|
15
|
+
export type IRedeemCodeModel = Model<IRedeemCodeDocument>;
|
|
16
|
+
//# sourceMappingURL=redeem.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redeem.types.js","sourceRoot":"","sources":["../../src/types/redeem.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Document, Model } from "mongoose";
|
|
2
|
+
export interface IToneThemeDocument extends Document {
|
|
3
|
+
title: string;
|
|
4
|
+
description: string | null;
|
|
5
|
+
cover_image_url: string | null;
|
|
6
|
+
thumb_url: string | null;
|
|
7
|
+
order: number;
|
|
8
|
+
is_shown: boolean;
|
|
9
|
+
list_for: string;
|
|
10
|
+
category: string | null;
|
|
11
|
+
tags: string[];
|
|
12
|
+
created_on: Date;
|
|
13
|
+
updated_on: Date;
|
|
14
|
+
}
|
|
15
|
+
export type IToneThemeModel = Model<IToneThemeDocument>;
|
|
16
|
+
//# sourceMappingURL=toneTheme.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toneTheme.types.js","sourceRoot":"","sources":["../../src/types/toneTheme.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Document, Model, Types } from "mongoose";
|
|
2
|
+
export interface IToneThemeFeaturedListDocument extends Document {
|
|
3
|
+
tone_theme_id: Types.ObjectId;
|
|
4
|
+
featured_list_id: Types.ObjectId;
|
|
5
|
+
order: number;
|
|
6
|
+
created_on: Date;
|
|
7
|
+
}
|
|
8
|
+
export type IToneThemeFeaturedListModel = Model<IToneThemeFeaturedListDocument>;
|
|
9
|
+
//# sourceMappingURL=toneThemeFeaturedList.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toneThemeFeaturedList.types.js","sourceRoot":"","sources":["../../src/types/toneThemeFeaturedList.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import type { Document, Model, Types } from "mongoose";
|
|
2
|
+
export declare const FLAG_EMAIL_EVENTS: readonly ["bounce", "complaint", "reject"];
|
|
3
|
+
export interface IUserEmailStatusDocument extends Document {
|
|
4
|
+
user_id: Types.ObjectId;
|
|
5
|
+
email_status: (typeof FLAG_EMAIL_EVENTS)[number];
|
|
6
|
+
creted_on: Date;
|
|
7
|
+
}
|
|
8
|
+
export type IUserEmailStatusModel = Model<IUserEmailStatusDocument>;
|
|
9
|
+
export interface IUserProfileDocument extends Document {
|
|
10
|
+
user_id: Types.ObjectId;
|
|
11
|
+
full_name: string | null;
|
|
12
|
+
first_name: string | null;
|
|
13
|
+
last_name: string | null;
|
|
14
|
+
title: string | null;
|
|
15
|
+
gender: string | null;
|
|
16
|
+
country: string | null;
|
|
17
|
+
postal: string | null;
|
|
18
|
+
city: string | null;
|
|
19
|
+
state: string | null;
|
|
20
|
+
address: string | null;
|
|
21
|
+
phone: string | null;
|
|
22
|
+
description?: string;
|
|
23
|
+
bc_token: string | null;
|
|
24
|
+
facebook_access_token: string | null;
|
|
25
|
+
reset_password_token: string | null;
|
|
26
|
+
profile_image_url: string | null;
|
|
27
|
+
profile_thumb_url: string | null;
|
|
28
|
+
facebook_image_url: string | null;
|
|
29
|
+
facebook_thumb_url: string | null;
|
|
30
|
+
reset_password_expire: Date | null;
|
|
31
|
+
is_email_verified: boolean;
|
|
32
|
+
is_registered: boolean;
|
|
33
|
+
stripe_customer_id: string | null;
|
|
34
|
+
selected_country: string | null;
|
|
35
|
+
date_joined: Date;
|
|
36
|
+
search_mark: number;
|
|
37
|
+
}
|
|
38
|
+
export interface IUserProfileModel extends Model<IUserProfileDocument> {
|
|
39
|
+
createProfile(profileObj: Record<string, unknown>): Promise<IUserProfileDocument>;
|
|
40
|
+
updateProfileByUserId(userId: string | Types.ObjectId, updateData: Record<string, unknown>): Promise<IUserProfileDocument | null>;
|
|
41
|
+
updateProfile(userId: string, updateProfileData: Record<string, unknown>): Promise<IUserProfileDocument | null>;
|
|
42
|
+
getUserProfile(userId: string | Types.ObjectId): Promise<IUserProfileDocument | null>;
|
|
43
|
+
getUserProfilePromise(userId: string | Types.ObjectId): Promise<IUserProfileDocument | null>;
|
|
44
|
+
getUserProfileDetail(userId: string | Types.ObjectId): Promise<IUserProfileDocument | null>;
|
|
45
|
+
getUserProfileByCondition(condition: Record<string, unknown>): Promise<IUserProfileDocument | null>;
|
|
46
|
+
}
|
|
47
|
+
export interface IUserAddressDocument extends Document {
|
|
48
|
+
user_id: Types.ObjectId;
|
|
49
|
+
country: string | null;
|
|
50
|
+
zip: string | null;
|
|
51
|
+
city: string | null;
|
|
52
|
+
state: string | null;
|
|
53
|
+
address: string | null;
|
|
54
|
+
phone: string | null;
|
|
55
|
+
default: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface IUserMethods {
|
|
58
|
+
authenticate(plainText: string): boolean;
|
|
59
|
+
makeSalt(): string;
|
|
60
|
+
}
|
|
61
|
+
export interface IUserDocument extends Document {
|
|
62
|
+
username: string;
|
|
63
|
+
email: string;
|
|
64
|
+
password: string;
|
|
65
|
+
user_status: number;
|
|
66
|
+
user_role: number;
|
|
67
|
+
is_active: boolean;
|
|
68
|
+
activate_token: string | null;
|
|
69
|
+
activate_expire: Date | null;
|
|
70
|
+
fb_access_token: string | null;
|
|
71
|
+
facebook_id: string | null;
|
|
72
|
+
shopify_id: unknown;
|
|
73
|
+
bk_username: string[];
|
|
74
|
+
auth: {
|
|
75
|
+
firebase_id?: string;
|
|
76
|
+
google_id?: string;
|
|
77
|
+
apple_id?: string;
|
|
78
|
+
wechat_id?: string;
|
|
79
|
+
};
|
|
80
|
+
metadata: {
|
|
81
|
+
gdpr: boolean;
|
|
82
|
+
country: string | null;
|
|
83
|
+
};
|
|
84
|
+
date_joined: Date;
|
|
85
|
+
last_login: Date;
|
|
86
|
+
}
|
|
87
|
+
export interface IListOptions {
|
|
88
|
+
criteria?: Record<string, unknown>;
|
|
89
|
+
sort?: Record<string, 1 | -1>;
|
|
90
|
+
limit?: number;
|
|
91
|
+
page?: number;
|
|
92
|
+
}
|
|
93
|
+
export interface IUserModel extends Model<IUserDocument, Record<string, never>, IUserMethods> {
|
|
94
|
+
_async_auth(username: string, password: string): Promise<IUserDocument>;
|
|
95
|
+
auth(uname: string, password: string): Promise<IUserDocument>;
|
|
96
|
+
login(query: Record<string, unknown>): Promise<IUserDocument | null>;
|
|
97
|
+
loginForPassport(query: Record<string, unknown>): Promise<IUserDocument | null>;
|
|
98
|
+
list(options: IListOptions): Promise<IUserDocument[]>;
|
|
99
|
+
getUser(username: string): Promise<IUserDocument | null>;
|
|
100
|
+
getUserPromise(username: string): Promise<IUserDocument | null>;
|
|
101
|
+
getUserById(id: string | Types.ObjectId): Promise<IUserDocument | null>;
|
|
102
|
+
getUserFullData(username: string): unknown;
|
|
103
|
+
getUserDetail(query: Record<string, unknown>, projectFields?: Record<string, number>): Promise<unknown[]>;
|
|
104
|
+
getDealerDetail(query: Record<string, unknown>): Promise<unknown[]>;
|
|
105
|
+
createUser(userObj: Record<string, unknown>): Promise<IUserDocument>;
|
|
106
|
+
deleteUser(userId: string | Types.ObjectId): Promise<unknown>;
|
|
107
|
+
findUserByEmail(email: string): Promise<IUserDocument[]>;
|
|
108
|
+
findByEmail(email: string): Promise<IUserDocument | null>;
|
|
109
|
+
}
|
|
110
|
+
export interface IUserProductMeta {
|
|
111
|
+
product: string;
|
|
112
|
+
platform: string;
|
|
113
|
+
}
|
|
114
|
+
export interface IUserProductDocument extends Document {
|
|
115
|
+
user_id: Types.ObjectId;
|
|
116
|
+
product: string;
|
|
117
|
+
platform: string;
|
|
118
|
+
metadata: unknown;
|
|
119
|
+
last_login: Date;
|
|
120
|
+
}
|
|
121
|
+
export interface IUserProductModel extends Model<IUserProductDocument> {
|
|
122
|
+
detectUserProduct(userAgent: string): IUserProductMeta | false;
|
|
123
|
+
}
|
|
124
|
+
export interface IUserProductTrackerDocument extends Document {
|
|
125
|
+
user_id: Types.ObjectId;
|
|
126
|
+
product: string;
|
|
127
|
+
status: number;
|
|
128
|
+
created_on: Date;
|
|
129
|
+
}
|
|
130
|
+
export type IUserProductTrackerModel = Model<IUserProductTrackerDocument>;
|
|
131
|
+
export interface IApiKeyDocument extends Document {
|
|
132
|
+
apikey: string;
|
|
133
|
+
permission: unknown[];
|
|
134
|
+
description: string;
|
|
135
|
+
status: boolean;
|
|
136
|
+
created_on: Date;
|
|
137
|
+
call_number?: number;
|
|
138
|
+
partner_name?: string;
|
|
139
|
+
updated_on: Date;
|
|
140
|
+
}
|
|
141
|
+
export type IApiKeyModel = Model<IApiKeyDocument>;
|
|
142
|
+
export interface IUserReferralDocument extends Document {
|
|
143
|
+
user_id: Types.ObjectId;
|
|
144
|
+
referred_user_email?: string;
|
|
145
|
+
created_on: Date;
|
|
146
|
+
updated_on: Date;
|
|
147
|
+
}
|
|
148
|
+
export type IUserReferralModel = Model<IUserReferralDocument>;
|
|
149
|
+
export interface IUserTokenDocument extends Document {
|
|
150
|
+
tid: string;
|
|
151
|
+
expired_at: Date;
|
|
152
|
+
created_on: Date;
|
|
153
|
+
}
|
|
154
|
+
export interface IUserTokenModel extends Model<IUserTokenDocument> {
|
|
155
|
+
createTokenMeta(): Promise<IUserTokenDocument>;
|
|
156
|
+
isValid(tid: string): Promise<boolean>;
|
|
157
|
+
revokeToken(tid: string): Promise<IUserTokenDocument | null>;
|
|
158
|
+
}
|
|
159
|
+
export interface IUserFollowDocument extends Document {
|
|
160
|
+
user_id: Types.ObjectId;
|
|
161
|
+
follow_user_id: Types.ObjectId;
|
|
162
|
+
follow_platform?: string;
|
|
163
|
+
createdAt?: Date;
|
|
164
|
+
}
|
|
165
|
+
export type IUserFollowModel = Model<IUserFollowDocument>;
|
|
166
|
+
//# sourceMappingURL=user.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.types.js","sourceRoot":"","sources":["../../src/types/user.types.ts"],"names":[],"mappings":";;;AAEA,0BAA0B;AAEb,QAAA,iBAAiB,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Document, Model, Types } from "mongoose";
|
|
2
|
+
export declare const LICENSE_ADDITION: Record<string, number>;
|
|
3
|
+
export declare const PRODUCTS: readonly ["fx2", "amp2", "fx1", "amp1"];
|
|
4
|
+
export interface ISaveTrackData {
|
|
5
|
+
userID: string;
|
|
6
|
+
product: string;
|
|
7
|
+
addition: string;
|
|
8
|
+
startedAt: string;
|
|
9
|
+
updatedAt?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface IGenericDataDocument extends Document {
|
|
12
|
+
data_type: string;
|
|
13
|
+
data_key: string;
|
|
14
|
+
data_value: unknown;
|
|
15
|
+
data_meta: unknown;
|
|
16
|
+
created_on: Date;
|
|
17
|
+
}
|
|
18
|
+
export type IGenericDataModel = Model<IGenericDataDocument>;
|
|
19
|
+
export interface IIapEventDocument extends Document {
|
|
20
|
+
user_id: Types.ObjectId;
|
|
21
|
+
app_name: string;
|
|
22
|
+
onesignal_id: string | null;
|
|
23
|
+
redeem_code: Types.ObjectId | null;
|
|
24
|
+
created_on: Date;
|
|
25
|
+
region?: string;
|
|
26
|
+
}
|
|
27
|
+
export type IIapEventModel = Model<IIapEventDocument>;
|
|
28
|
+
export interface IDemoUserTrackerDocument extends Document {
|
|
29
|
+
user_id: Types.ObjectId;
|
|
30
|
+
product: string;
|
|
31
|
+
addition: number;
|
|
32
|
+
started_at: Date;
|
|
33
|
+
updated_at: Date | null;
|
|
34
|
+
created_on: Date;
|
|
35
|
+
}
|
|
36
|
+
export interface IDemoUserTrackerModel extends Model<IDemoUserTrackerDocument> {
|
|
37
|
+
saveTrackData(data: ISaveTrackData): Promise<boolean>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=userTrack.types.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PRODUCTS = exports.LICENSE_ADDITION = void 0;
|
|
4
|
+
exports.LICENSE_ADDITION = {
|
|
5
|
+
PRO: 0,
|
|
6
|
+
DEMO: 1,
|
|
7
|
+
STD: 2,
|
|
8
|
+
LITE: 3,
|
|
9
|
+
ELITE: 4,
|
|
10
|
+
};
|
|
11
|
+
exports.PRODUCTS = ["fx2", "amp2", "fx1", "amp1"];
|
|
12
|
+
//# sourceMappingURL=userTrack.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userTrack.types.js","sourceRoot":"","sources":["../../src/types/userTrack.types.ts"],"names":[],"mappings":";;;AAEa,QAAA,gBAAgB,GAA2B;IACtD,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AAEW,QAAA,QAAQ,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,27 +1,53 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@positivegrid/pg-mongoose-schema",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "28.0.0-beta.1",
|
|
4
4
|
"description": "Positive Grid mongoose schema",
|
|
5
|
-
"author": "Ferrari Lee <shiyung@positivegrid.com>",
|
|
6
5
|
"homepage": "https://git.positivegrid.com:8443/backend/pg-mongoose-schema",
|
|
6
|
+
"author": "Ferrari Lee <shiyung@positivegrid.com>",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "https://git.positivegrid.com:8443/backend/pg-mongoose-schema.git"
|
|
10
10
|
},
|
|
11
11
|
"files": [
|
|
12
|
-
"
|
|
13
|
-
"
|
|
12
|
+
"dist/**/*.js",
|
|
13
|
+
"dist/**/*.d.ts",
|
|
14
|
+
"dist/**/*.js.map"
|
|
14
15
|
],
|
|
15
|
-
"main": "index.js",
|
|
16
|
+
"main": "dist/index.js",
|
|
17
|
+
"types": "dist/index.d.ts",
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "vp run check && tsc",
|
|
20
|
+
"clean": "rm -rf dist",
|
|
21
|
+
"check": "vp check",
|
|
22
|
+
"test": "vp test run",
|
|
23
|
+
"lint": "vp lint",
|
|
24
|
+
"fmt": "vp fmt",
|
|
25
|
+
"prepublishOnly": "vp run build",
|
|
26
|
+
"prepare": "vp config"
|
|
27
|
+
},
|
|
16
28
|
"dependencies": {
|
|
17
29
|
"@positivegrid/pg-error": "~4.3.0",
|
|
18
30
|
"debug": "~4.1.1",
|
|
19
|
-
"
|
|
31
|
+
"es-toolkit": "^1.45.1",
|
|
20
32
|
"is-subset": "^0.1.1",
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
"
|
|
26
|
-
|
|
33
|
+
"mongoose-lean-virtuals": "^2.1.0",
|
|
34
|
+
"temporal-polyfill": "^0.3.2"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@types/debug": "^4.1.0",
|
|
38
|
+
"@types/node": "~25.5.0",
|
|
39
|
+
"mongodb-memory-server": "^11.0.1",
|
|
40
|
+
"mongoose": "^9.3.1",
|
|
41
|
+
"typescript": "^5.4.0",
|
|
42
|
+
"vite-plus": "latest",
|
|
43
|
+
"vitest": "npm:@voidzero-dev/vite-plus-test@latest"
|
|
44
|
+
},
|
|
45
|
+
"peerDependencies": {
|
|
46
|
+
"mongoose": "^9.0.0"
|
|
47
|
+
},
|
|
48
|
+
"overrides": {
|
|
49
|
+
"vite": "npm:@voidzero-dev/vite-plus-core@latest",
|
|
50
|
+
"vitest": "npm:@voidzero-dev/vite-plus-test@latest"
|
|
51
|
+
},
|
|
52
|
+
"packageManager": "npm@11.12.0"
|
|
27
53
|
}
|