90dc-core 1.19.4 → 1.19.6
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.js +43 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/Errors/AppError.js +104 -0
- package/dist/lib/Errors/AppError.js.map +1 -0
- package/dist/lib/Errors/Errors.js +42 -0
- package/dist/lib/Errors/Errors.js.map +1 -0
- package/dist/lib/classes/Database.js +154 -0
- package/dist/lib/classes/Database.js.map +1 -0
- package/dist/lib/classes/Redis.js +63 -0
- package/dist/lib/classes/Redis.js.map +1 -0
- package/dist/lib/clients/EmailClient.js +188 -0
- package/dist/lib/clients/EmailClient.js.map +1 -0
- package/dist/lib/clients/FirebasePushNotificationClient.js +688 -0
- package/dist/lib/clients/FirebasePushNotificationClient.js.map +1 -0
- package/dist/lib/clients/ImagesClient.d.ts +2 -1
- package/dist/lib/clients/ImagesClient.d.ts.map +1 -1
- package/dist/lib/clients/ImagesClient.js +436 -0
- package/dist/lib/clients/ImagesClient.js.map +1 -0
- package/dist/lib/clients/MailingClient.js +84 -0
- package/dist/lib/clients/MailingClient.js.map +1 -0
- package/dist/lib/clients/PushNotificationClient.js +478 -0
- package/dist/lib/clients/PushNotificationClient.js.map +1 -0
- package/dist/lib/clients/types/email.types.js +3 -0
- package/dist/lib/clients/types/email.types.js.map +1 -0
- package/dist/lib/clients/types/images.types.js +3 -0
- package/dist/lib/clients/types/images.types.js.map +1 -0
- package/dist/lib/clients/types/mailing.types.js +3 -0
- package/dist/lib/clients/types/mailing.types.js.map +1 -0
- package/dist/lib/config/ConfigValidator.js +162 -0
- package/dist/lib/config/ConfigValidator.js.map +1 -0
- package/dist/lib/controllers/BaseController.js +64 -0
- package/dist/lib/controllers/BaseController.js.map +1 -0
- package/dist/lib/db/migrations/20260330000000-create-user-progress-photos.js +60 -0
- package/dist/lib/db/migrations/20260330000000-create-user-progress-photos.js.map +1 -0
- package/dist/lib/dbmodels/coaching/Answer.js +51 -0
- package/dist/lib/dbmodels/coaching/Answer.js.map +1 -0
- package/dist/lib/dbmodels/coaching/ClientNote.js +75 -0
- package/dist/lib/dbmodels/coaching/ClientNote.js.map +1 -0
- package/dist/lib/dbmodels/coaching/ClientTag.js +45 -0
- package/dist/lib/dbmodels/coaching/ClientTag.js.map +1 -0
- package/dist/lib/dbmodels/coaching/Question.js +60 -0
- package/dist/lib/dbmodels/coaching/Question.js.map +1 -0
- package/dist/lib/dbmodels/coaching/Questionnaire.js +39 -0
- package/dist/lib/dbmodels/coaching/Questionnaire.js.map +1 -0
- package/dist/lib/dbmodels/coaching/QuestionnaireResponse.js +42 -0
- package/dist/lib/dbmodels/coaching/QuestionnaireResponse.js.map +1 -0
- package/dist/lib/dbmodels/coaching/WeeklyCheckIn.js +69 -0
- package/dist/lib/dbmodels/coaching/WeeklyCheckIn.js.map +1 -0
- package/dist/lib/dbmodels/coaching/WeightRecord.js +49 -0
- package/dist/lib/dbmodels/coaching/WeightRecord.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietDay.js +50 -0
- package/dist/lib/dbmodels/diet/DietDay.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietMeal.js +74 -0
- package/dist/lib/dbmodels/diet/DietMeal.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietMealCompletion.js +69 -0
- package/dist/lib/dbmodels/diet/DietMealCompletion.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietMealRecipe.js +67 -0
- package/dist/lib/dbmodels/diet/DietMealRecipe.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietMealRecipeIngredient.js +46 -0
- package/dist/lib/dbmodels/diet/DietMealRecipeIngredient.js.map +1 -0
- package/dist/lib/dbmodels/diet/DietProgram.js +98 -0
- package/dist/lib/dbmodels/diet/DietProgram.js.map +1 -0
- package/dist/lib/dbmodels/diet/Ingredient.js +88 -0
- package/dist/lib/dbmodels/diet/Ingredient.js.map +1 -0
- package/dist/lib/dbmodels/diet/IngredientTag.js +64 -0
- package/dist/lib/dbmodels/diet/IngredientTag.js.map +1 -0
- package/dist/lib/dbmodels/diet/IngredientTags.js +29 -0
- package/dist/lib/dbmodels/diet/IngredientTags.js.map +1 -0
- package/dist/lib/dbmodels/diet/Recipe.js +173 -0
- package/dist/lib/dbmodels/diet/Recipe.js.map +1 -0
- package/dist/lib/dbmodels/diet/RecipeIngredient.js +78 -0
- package/dist/lib/dbmodels/diet/RecipeIngredient.js.map +1 -0
- package/dist/lib/dbmodels/diet/RecipeTag.js +44 -0
- package/dist/lib/dbmodels/diet/RecipeTag.js.map +1 -0
- package/dist/lib/dbmodels/diet/RecipeTags.js +24 -0
- package/dist/lib/dbmodels/diet/RecipeTags.js.map +1 -0
- package/dist/lib/dbmodels/diet/ShoppingList.js +69 -0
- package/dist/lib/dbmodels/diet/ShoppingList.js.map +1 -0
- package/dist/lib/dbmodels/diet/ShoppingListItem.js +66 -0
- package/dist/lib/dbmodels/diet/ShoppingListItem.js.map +1 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipe.js +122 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipe.js.map +1 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipeTag.js +47 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipeTag.js.map +1 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipeTags.js +24 -0
- package/dist/lib/dbmodels/diet/TranslatedRecipeTags.js.map +1 -0
- package/dist/lib/dbmodels/diet/UserDietPreferences.js +85 -0
- package/dist/lib/dbmodels/diet/UserDietPreferences.js.map +1 -0
- package/dist/lib/dbmodels/gamification/Badge.js +62 -0
- package/dist/lib/dbmodels/gamification/Badge.js.map +1 -0
- package/dist/lib/dbmodels/gamification/StreaksLog.js +37 -0
- package/dist/lib/dbmodels/gamification/StreaksLog.js.map +1 -0
- package/dist/lib/dbmodels/gamification/TranslatedBadge.js +45 -0
- package/dist/lib/dbmodels/gamification/TranslatedBadge.js.map +1 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/UserRankHistory.js +48 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/UserRankHistory.js.map +1 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/XpEvent.js +53 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/XpEvent.js.map +1 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/XpTransaction.js +68 -0
- package/dist/lib/dbmodels/gamification/xpAndLeaderboards/XpTransaction.js.map +1 -0
- package/dist/lib/dbmodels/index.js +288 -0
- package/dist/lib/dbmodels/index.js.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgram.d.ts +32 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgram.d.ts.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgram.js +155 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgram.js.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgramWebContent.d.ts +22 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgramWebContent.d.ts.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgramWebContent.js +108 -0
- package/dist/lib/dbmodels/nonconsprogram/NonConsumableProgramWebContent.js.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedConsumableProgram.d.ts +20 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedConsumableProgram.d.ts.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedConsumableProgram.js +97 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedConsumableProgram.js.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedNonConsumableProgramWebContent.d.ts +22 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedNonConsumableProgramWebContent.d.ts.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedNonConsumableProgramWebContent.js +115 -0
- package/dist/lib/dbmodels/nonconsprogram/TranslatedNonConsumableProgramWebContent.js.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/UserNonConsumableProgram.d.ts +7 -0
- package/dist/lib/dbmodels/nonconsprogram/UserNonConsumableProgram.d.ts.map +1 -0
- package/dist/lib/dbmodels/nonconsprogram/UserNonConsumableProgram.js +41 -0
- package/dist/lib/dbmodels/nonconsprogram/UserNonConsumableProgram.js.map +1 -0
- package/dist/lib/dbmodels/notifications/NotificationModels.js +38 -0
- package/dist/lib/dbmodels/notifications/NotificationModels.js.map +1 -0
- package/dist/lib/dbmodels/notifications/TranslatedNotification.js +45 -0
- package/dist/lib/dbmodels/notifications/TranslatedNotification.js.map +1 -0
- package/dist/lib/dbmodels/program/Challenge.d.ts +13 -0
- package/dist/lib/dbmodels/program/Challenge.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/Challenge.js +63 -0
- package/dist/lib/dbmodels/program/Challenge.js.map +1 -0
- package/dist/lib/dbmodels/program/ChallengeBlueprint.js +75 -0
- package/dist/lib/dbmodels/program/ChallengeBlueprint.js.map +1 -0
- package/dist/lib/dbmodels/program/CircularProgramDraft.js +82 -0
- package/dist/lib/dbmodels/program/CircularProgramDraft.js.map +1 -0
- package/dist/lib/dbmodels/program/CoachExerciseNote.js +61 -0
- package/dist/lib/dbmodels/program/CoachExerciseNote.js.map +1 -0
- package/dist/lib/dbmodels/program/CustomProgramBlueprint.js +84 -0
- package/dist/lib/dbmodels/program/CustomProgramBlueprint.js.map +1 -0
- package/dist/lib/dbmodels/program/CustomStrengthTest.js +55 -0
- package/dist/lib/dbmodels/program/CustomStrengthTest.js.map +1 -0
- package/dist/lib/dbmodels/program/CustomStrengthTestExercises.js +69 -0
- package/dist/lib/dbmodels/program/CustomStrengthTestExercises.js.map +1 -0
- package/dist/lib/dbmodels/program/CustomWorkoutBlueprint.js +58 -0
- package/dist/lib/dbmodels/program/CustomWorkoutBlueprint.js.map +1 -0
- package/dist/lib/dbmodels/program/Exercise.d.ts +23 -0
- package/dist/lib/dbmodels/program/Exercise.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/Exercise.js +101 -0
- package/dist/lib/dbmodels/program/Exercise.js.map +1 -0
- package/dist/lib/dbmodels/program/ExerciseModels.d.ts +28 -0
- package/dist/lib/dbmodels/program/ExerciseModels.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/ExerciseModels.js +149 -0
- package/dist/lib/dbmodels/program/ExerciseModels.js.map +1 -0
- package/dist/lib/dbmodels/program/Program.d.ts +15 -0
- package/dist/lib/dbmodels/program/Program.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/Program.js +76 -0
- package/dist/lib/dbmodels/program/Program.js.map +1 -0
- package/dist/lib/dbmodels/program/ProgressEntry.d.ts +26 -0
- package/dist/lib/dbmodels/program/ProgressEntry.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/ProgressEntry.js +77 -0
- package/dist/lib/dbmodels/program/ProgressEntry.js.map +1 -0
- package/dist/lib/dbmodels/program/RestDay.js +33 -0
- package/dist/lib/dbmodels/program/RestDay.js.map +1 -0
- package/dist/lib/dbmodels/program/StrengthTest.d.ts +10 -0
- package/dist/lib/dbmodels/program/StrengthTest.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/StrengthTest.js +39 -0
- package/dist/lib/dbmodels/program/StrengthTest.js.map +1 -0
- package/dist/lib/dbmodels/program/StrengthTestExercise.d.ts +15 -0
- package/dist/lib/dbmodels/program/StrengthTestExercise.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/StrengthTestExercise.js +72 -0
- package/dist/lib/dbmodels/program/StrengthTestExercise.js.map +1 -0
- package/dist/lib/dbmodels/program/StrengthTestSession.js +73 -0
- package/dist/lib/dbmodels/program/StrengthTestSession.js.map +1 -0
- package/dist/lib/dbmodels/program/Superset.d.ts +13 -0
- package/dist/lib/dbmodels/program/Superset.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/Superset.js +46 -0
- package/dist/lib/dbmodels/program/Superset.js.map +1 -0
- package/dist/lib/dbmodels/program/ThirtyDayChallenge.js +70 -0
- package/dist/lib/dbmodels/program/ThirtyDayChallenge.js.map +1 -0
- package/dist/lib/dbmodels/program/ThirtyDayChallengeStrengthTest.js +55 -0
- package/dist/lib/dbmodels/program/ThirtyDayChallengeStrengthTest.js.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedChallenge.d.ts +15 -0
- package/dist/lib/dbmodels/program/TranslatedChallenge.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedChallenge.js +69 -0
- package/dist/lib/dbmodels/program/TranslatedChallenge.js.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedExerciseModel.d.ts +25 -0
- package/dist/lib/dbmodels/program/TranslatedExerciseModel.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedExerciseModel.js +123 -0
- package/dist/lib/dbmodels/program/TranslatedExerciseModel.js.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTest.d.ts +12 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTest.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTest.js +45 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTest.js.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTestExercise.d.ts +16 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTestExercise.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTestExercise.js +78 -0
- package/dist/lib/dbmodels/program/TranslatedStrengthTestExercise.js.map +1 -0
- package/dist/lib/dbmodels/program/UserChallenge.d.ts +10 -0
- package/dist/lib/dbmodels/program/UserChallenge.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/UserChallenge.js +47 -0
- package/dist/lib/dbmodels/program/UserChallenge.js.map +1 -0
- package/dist/lib/dbmodels/program/UserExerciseNote.js +61 -0
- package/dist/lib/dbmodels/program/UserExerciseNote.js.map +1 -0
- package/dist/lib/dbmodels/program/UserStrengthTests.d.ts +11 -0
- package/dist/lib/dbmodels/program/UserStrengthTests.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/UserStrengthTests.js +54 -0
- package/dist/lib/dbmodels/program/UserStrengthTests.js.map +1 -0
- package/dist/lib/dbmodels/program/Workout.d.ts +14 -0
- package/dist/lib/dbmodels/program/Workout.d.ts.map +1 -0
- package/dist/lib/dbmodels/program/Workout.js +66 -0
- package/dist/lib/dbmodels/program/Workout.js.map +1 -0
- package/dist/lib/dbmodels/program/WorkoutCompletion.js +65 -0
- package/dist/lib/dbmodels/program/WorkoutCompletion.js.map +1 -0
- package/dist/lib/dbmodels/program/WorkoutSession.js +93 -0
- package/dist/lib/dbmodels/program/WorkoutSession.js.map +1 -0
- package/dist/lib/dbmodels/subscription/Subscription.d.ts +19 -0
- package/dist/lib/dbmodels/subscription/Subscription.d.ts.map +1 -0
- package/dist/lib/dbmodels/subscription/Subscription.js +91 -0
- package/dist/lib/dbmodels/subscription/Subscription.js.map +1 -0
- package/dist/lib/dbmodels/subscription/SubscriptionEvent.js +79 -0
- package/dist/lib/dbmodels/subscription/SubscriptionEvent.js.map +1 -0
- package/dist/lib/dbmodels/subscription/SubscriptionLog.d.ts +9 -0
- package/dist/lib/dbmodels/subscription/SubscriptionLog.d.ts.map +1 -0
- package/dist/lib/dbmodels/subscription/SubscriptionLog.js +42 -0
- package/dist/lib/dbmodels/subscription/SubscriptionLog.js.map +1 -0
- package/dist/lib/dbmodels/subscription/SubscriptionRefund.js +92 -0
- package/dist/lib/dbmodels/subscription/SubscriptionRefund.js.map +1 -0
- package/dist/lib/dbmodels/user/DeviceTokens.js +34 -0
- package/dist/lib/dbmodels/user/DeviceTokens.js.map +1 -0
- package/dist/lib/dbmodels/user/PersistedUser.d.ts +43 -0
- package/dist/lib/dbmodels/user/PersistedUser.d.ts.map +1 -0
- package/dist/lib/dbmodels/user/PersistedUser.js +237 -0
- package/dist/lib/dbmodels/user/PersistedUser.js.map +1 -0
- package/dist/lib/dbmodels/user/UserAddons.js +26 -0
- package/dist/lib/dbmodels/user/UserAddons.js.map +1 -0
- package/dist/lib/dbmodels/user/UserBadges.js +63 -0
- package/dist/lib/dbmodels/user/UserBadges.js.map +1 -0
- package/dist/lib/dbmodels/user/UserCoach.js +40 -0
- package/dist/lib/dbmodels/user/UserCoach.js.map +1 -0
- package/dist/lib/dbmodels/user/UserDiscount.js +24 -0
- package/dist/lib/dbmodels/user/UserDiscount.js.map +1 -0
- package/dist/lib/dbmodels/user/UserOptions.js +34 -0
- package/dist/lib/dbmodels/user/UserOptions.js.map +1 -0
- package/dist/lib/dbmodels/user/UserProgressPhoto.js +59 -0
- package/dist/lib/dbmodels/user/UserProgressPhoto.js.map +1 -0
- package/dist/lib/dbmodels/user/UserStreaks.js +64 -0
- package/dist/lib/dbmodels/user/UserStreaks.js.map +1 -0
- package/dist/lib/dbmodels/user/UsersFriends.js +46 -0
- package/dist/lib/dbmodels/user/UsersFriends.js.map +1 -0
- package/dist/lib/enums/ProgramEnums.d.ts +18 -0
- package/dist/lib/enums/ProgramEnums.d.ts.map +1 -0
- package/dist/lib/enums/ProgramEnums.js +22 -0
- package/dist/lib/enums/ProgramEnums.js.map +1 -0
- package/dist/lib/enums/ProgramTemplates.js +738 -0
- package/dist/lib/enums/ProgramTemplates.js.map +1 -0
- package/dist/lib/middlewares/ErrorMiddleware.js +141 -0
- package/dist/lib/middlewares/ErrorMiddleware.js.map +1 -0
- package/dist/lib/middlewares/ValidationMiddleware.js +24 -0
- package/dist/lib/middlewares/ValidationMiddleware.js.map +1 -0
- package/dist/lib/models/BlueprintInterfaces.js +3 -0
- package/dist/lib/models/BlueprintInterfaces.js.map +1 -0
- package/dist/lib/models/ExerciseInterfaces.d.ts +68 -0
- package/dist/lib/models/ExerciseInterfaces.d.ts.map +1 -0
- package/dist/lib/models/ExerciseInterfaces.js +3 -0
- package/dist/lib/models/ExerciseInterfaces.js.map +1 -0
- package/dist/lib/models/NotificationInterfaces.js +11 -0
- package/dist/lib/models/NotificationInterfaces.js.map +1 -0
- package/dist/lib/models/ProgramInterfaces.js +3 -0
- package/dist/lib/models/ProgramInterfaces.js.map +1 -0
- package/dist/lib/models/UserInterfaces.js +3 -0
- package/dist/lib/models/UserInterfaces.js.map +1 -0
- package/dist/lib/models/WorkoutInterfaces.js +3 -0
- package/dist/lib/models/WorkoutInterfaces.js.map +1 -0
- package/dist/lib/scripts/cli.js +82 -0
- package/dist/lib/scripts/cli.js.map +1 -0
- package/dist/lib/scripts/populate-exercise-thumbnails.js +64 -0
- package/dist/lib/scripts/populate-exercise-thumbnails.js.map +1 -0
- package/dist/lib/scripts/setup-database.js +43 -0
- package/dist/lib/scripts/setup-database.js.map +1 -0
- package/dist/lib/scripts/verify-indexes.js +94 -0
- package/dist/lib/scripts/verify-indexes.js.map +1 -0
- package/dist/lib/testing/testFixtures.js +520 -0
- package/dist/lib/testing/testFixtures.js.map +1 -0
- package/dist/lib/testing/testHelpers.js +149 -0
- package/dist/lib/testing/testHelpers.js.map +1 -0
- package/dist/lib/utils/AuthenticationUtil.js +481 -0
- package/dist/lib/utils/AuthenticationUtil.js.map +1 -0
- package/dist/lib/utils/Logger.js +242 -0
- package/dist/lib/utils/Logger.js.map +1 -0
- package/dist/lib/utils/NotificationClient.js +371 -0
- package/dist/lib/utils/NotificationClient.js.map +1 -0
- package/dist/lib/utils/NotificationsUtil.js +95 -0
- package/dist/lib/utils/NotificationsUtil.js.map +1 -0
- package/dist/lib/utils/SecretManager.js +107 -0
- package/dist/lib/utils/SecretManager.js.map +1 -0
- package/dist/lib/utils/SentryUtil.js +140 -0
- package/dist/lib/utils/SentryUtil.js.map +1 -0
- package/dist/lib/utils/imageValidation.js +31 -0
- package/dist/lib/utils/imageValidation.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { Column, DataType, Default, ForeignKey, Index, Model, PrimaryKey, Table } from "sequelize-typescript";
|
|
8
|
+
import { Program } from "./Program.js";
|
|
9
|
+
export class WorkoutCompletion extends Model {
|
|
10
|
+
}
|
|
11
|
+
_ts_decorate([
|
|
12
|
+
PrimaryKey,
|
|
13
|
+
Default(DataType.UUIDV4),
|
|
14
|
+
Column(DataType.UUID)
|
|
15
|
+
], WorkoutCompletion.prototype, "uuid", void 0);
|
|
16
|
+
_ts_decorate([
|
|
17
|
+
ForeignKey(()=>Program),
|
|
18
|
+
Index,
|
|
19
|
+
Column(DataType.UUID)
|
|
20
|
+
], WorkoutCompletion.prototype, "programId", void 0);
|
|
21
|
+
_ts_decorate([
|
|
22
|
+
Index,
|
|
23
|
+
Column(DataType.UUID)
|
|
24
|
+
], WorkoutCompletion.prototype, "userUuid", void 0);
|
|
25
|
+
_ts_decorate([
|
|
26
|
+
Column(DataType.INTEGER)
|
|
27
|
+
], WorkoutCompletion.prototype, "dayOrder", void 0);
|
|
28
|
+
_ts_decorate([
|
|
29
|
+
Column(DataType.INTEGER)
|
|
30
|
+
], WorkoutCompletion.prototype, "cycleNumber", void 0);
|
|
31
|
+
_ts_decorate([
|
|
32
|
+
Index,
|
|
33
|
+
Column(DataType.INTEGER)
|
|
34
|
+
], WorkoutCompletion.prototype, "absoluteDayNumber", void 0);
|
|
35
|
+
_ts_decorate([
|
|
36
|
+
Column(DataType.DATE)
|
|
37
|
+
], WorkoutCompletion.prototype, "completedAt", void 0);
|
|
38
|
+
_ts_decorate([
|
|
39
|
+
Column(DataType.STRING)
|
|
40
|
+
], WorkoutCompletion.prototype, "dayType", void 0);
|
|
41
|
+
_ts_decorate([
|
|
42
|
+
Column(DataType.UUID)
|
|
43
|
+
], WorkoutCompletion.prototype, "dayUuid", void 0);
|
|
44
|
+
_ts_decorate([
|
|
45
|
+
Column(DataType.JSONB)
|
|
46
|
+
], WorkoutCompletion.prototype, "exercisesSnapshot", void 0);
|
|
47
|
+
_ts_decorate([
|
|
48
|
+
Column(DataType.STRING)
|
|
49
|
+
], WorkoutCompletion.prototype, "workoutTitle", void 0);
|
|
50
|
+
_ts_decorate([
|
|
51
|
+
Column(DataType.STRING)
|
|
52
|
+
], WorkoutCompletion.prototype, "workoutDuration", void 0);
|
|
53
|
+
_ts_decorate([
|
|
54
|
+
Column(DataType.DATE)
|
|
55
|
+
], WorkoutCompletion.prototype, "createdAt", void 0);
|
|
56
|
+
_ts_decorate([
|
|
57
|
+
Column(DataType.DATE)
|
|
58
|
+
], WorkoutCompletion.prototype, "updatedAt", void 0);
|
|
59
|
+
WorkoutCompletion = _ts_decorate([
|
|
60
|
+
Table({
|
|
61
|
+
timestamps: true
|
|
62
|
+
})
|
|
63
|
+
], WorkoutCompletion);
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=WorkoutCompletion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/WorkoutCompletion.ts"],"sourcesContent":["import {\n Column,\n DataType,\n Default,\n ForeignKey,\n Index,\n Model,\n PrimaryKey,\n Table,\n} from \"sequelize-typescript\";\nimport { Program } from \"./Program.js\";\n\nexport interface ExerciseSnapshot {\n uuid?: string;\n name: string;\n sets: string;\n reps: string;\n order: number;\n restTime?: string;\n supersetUuid?: string;\n progress?: any[];\n}\n\n@Table({ timestamps: true })\nexport class WorkoutCompletion extends Model {\n @PrimaryKey\n @Default(DataType.UUIDV4)\n @Column(DataType.UUID)\n declare uuid: string;\n\n @ForeignKey(() => Program)\n @Index\n @Column(DataType.UUID)\n declare programId: string;\n\n @Index\n @Column(DataType.UUID)\n declare userUuid: string;\n\n // Which day in the cycle (1-7)\n @Column(DataType.INTEGER)\n declare dayOrder: number;\n\n // Which cycle/week (0 = first week, 1 = second week, etc.)\n @Column(DataType.INTEGER)\n declare cycleNumber: number;\n\n // Absolute day since program start (0 = day 1, 1 = day 2, etc.)\n @Index\n @Column(DataType.INTEGER)\n declare absoluteDayNumber: number;\n\n @Column(DataType.DATE)\n declare completedAt: Date;\n\n // Type of day: 'workout', 'rest_day', 'strength_test', 'challenge'\n @Column(DataType.STRING)\n declare dayType: string;\n\n // UUID of the workout/rest day/strength test/challenge\n @Column(DataType.UUID)\n declare dayUuid: string;\n\n // Snapshot of exercises as they were when completed\n @Column(DataType.JSONB)\n declare exercisesSnapshot: ExerciseSnapshot[];\n\n // Basic workout info\n @Column(DataType.STRING)\n declare workoutTitle: string;\n\n @Column(DataType.STRING)\n declare workoutDuration: string;\n\n @Column(DataType.DATE)\n declare createdAt: Date;\n\n @Column(DataType.DATE)\n declare updatedAt: Date;\n}\n"],"names":["Column","DataType","Default","ForeignKey","Index","Model","PrimaryKey","Table","Program","WorkoutCompletion","UUIDV4","UUID","INTEGER","DATE","STRING","JSONB","timestamps"],"mappings":";;;;;;AAAA,SACEA,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,KAAK,EACLC,UAAU,EACVC,KAAK,QACA,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,eAAe;AAcvC,OAAO,MAAMC,0BAA0BJ;AAuDvC;;;qBArDoBK;oBACDC;;;mBAGCH;;oBAEDG;;;;oBAIAA;;;oBAIAC;;;oBAIAA;;;;oBAKAA;;;oBAGAC;;;oBAIAC;;;oBAIAH;;;oBAIAI;;;oBAIAD;;;oBAGAA;;;oBAGAD;;;oBAGAA;;;;QAtDVG,YAAY"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { Table, Model, Column, DataType, Default, ForeignKey, BelongsTo, Index } from "sequelize-typescript";
|
|
8
|
+
import { Workout } from "./Workout.js";
|
|
9
|
+
export var SessionStatus = /*#__PURE__*/ function(SessionStatus) {
|
|
10
|
+
SessionStatus["ACTIVE"] = "active";
|
|
11
|
+
SessionStatus["COMPLETED"] = "completed";
|
|
12
|
+
return SessionStatus;
|
|
13
|
+
}({});
|
|
14
|
+
export class WorkoutSession extends Model {
|
|
15
|
+
}
|
|
16
|
+
_ts_decorate([
|
|
17
|
+
Default(DataType.UUIDV4),
|
|
18
|
+
Column({
|
|
19
|
+
type: DataType.UUID,
|
|
20
|
+
defaultValue: DataType.UUIDV4,
|
|
21
|
+
allowNull: false,
|
|
22
|
+
primaryKey: true
|
|
23
|
+
})
|
|
24
|
+
], WorkoutSession.prototype, "uuid", void 0);
|
|
25
|
+
_ts_decorate([
|
|
26
|
+
Index,
|
|
27
|
+
Column({
|
|
28
|
+
type: DataType.UUID,
|
|
29
|
+
allowNull: false
|
|
30
|
+
})
|
|
31
|
+
], WorkoutSession.prototype, "userUuid", void 0);
|
|
32
|
+
_ts_decorate([
|
|
33
|
+
ForeignKey(()=>Workout),
|
|
34
|
+
Index,
|
|
35
|
+
Column({
|
|
36
|
+
type: DataType.UUID,
|
|
37
|
+
allowNull: false
|
|
38
|
+
})
|
|
39
|
+
], WorkoutSession.prototype, "workoutUuid", void 0);
|
|
40
|
+
_ts_decorate([
|
|
41
|
+
BelongsTo(()=>Workout, {
|
|
42
|
+
foreignKey: 'workoutUuid',
|
|
43
|
+
onDelete: 'CASCADE'
|
|
44
|
+
})
|
|
45
|
+
], WorkoutSession.prototype, "workout", void 0);
|
|
46
|
+
_ts_decorate([
|
|
47
|
+
Column({
|
|
48
|
+
type: DataType.ENUM(...Object.values(SessionStatus)),
|
|
49
|
+
allowNull: false,
|
|
50
|
+
defaultValue: "active"
|
|
51
|
+
})
|
|
52
|
+
], WorkoutSession.prototype, "status", void 0);
|
|
53
|
+
_ts_decorate([
|
|
54
|
+
Column({
|
|
55
|
+
type: DataType.DATE,
|
|
56
|
+
allowNull: false,
|
|
57
|
+
defaultValue: DataType.NOW
|
|
58
|
+
})
|
|
59
|
+
], WorkoutSession.prototype, "startedAt", void 0);
|
|
60
|
+
_ts_decorate([
|
|
61
|
+
Column({
|
|
62
|
+
type: DataType.DATE,
|
|
63
|
+
allowNull: true
|
|
64
|
+
})
|
|
65
|
+
], WorkoutSession.prototype, "completedAt", void 0);
|
|
66
|
+
_ts_decorate([
|
|
67
|
+
Column({
|
|
68
|
+
type: DataType.JSONB,
|
|
69
|
+
allowNull: true,
|
|
70
|
+
comment: 'Stores current workout progress: exercises completed, sets, reps, weight, etc.'
|
|
71
|
+
})
|
|
72
|
+
], WorkoutSession.prototype, "progressSnapshot", void 0);
|
|
73
|
+
WorkoutSession = _ts_decorate([
|
|
74
|
+
Table({
|
|
75
|
+
tableName: 'WorkoutSessions',
|
|
76
|
+
timestamps: true,
|
|
77
|
+
indexes: [
|
|
78
|
+
{
|
|
79
|
+
unique: true,
|
|
80
|
+
fields: [
|
|
81
|
+
'workoutUuid',
|
|
82
|
+
'status'
|
|
83
|
+
],
|
|
84
|
+
where: {
|
|
85
|
+
status: 'active'
|
|
86
|
+
},
|
|
87
|
+
name: 'unique_active_session_per_workout'
|
|
88
|
+
}
|
|
89
|
+
]
|
|
90
|
+
})
|
|
91
|
+
], WorkoutSession);
|
|
92
|
+
|
|
93
|
+
//# sourceMappingURL=WorkoutSession.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/WorkoutSession.ts"],"sourcesContent":["import {\n Table,\n Model,\n Column,\n DataType,\n Default,\n ForeignKey,\n BelongsTo,\n Index,\n} from 'sequelize-typescript';\nimport { Workout } from './Workout.js';\n\nexport enum SessionStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n}\n\n@Table({\n tableName: 'WorkoutSessions',\n timestamps: true,\n indexes: [\n {\n unique: true,\n fields: ['workoutUuid', 'status'],\n where: { status: 'active' },\n name: 'unique_active_session_per_workout'\n }\n ]\n})\nexport class WorkoutSession extends Model<WorkoutSession> {\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n defaultValue: DataType.UUIDV4,\n allowNull: false,\n primaryKey: true,\n })\n declare uuid: string;\n\n @Index\n @Column({ type: DataType.UUID, allowNull: false })\n declare userUuid: string;\n\n @ForeignKey(() => Workout)\n @Index\n @Column({ type: DataType.UUID, allowNull: false })\n declare workoutUuid: string;\n\n @BelongsTo(() => Workout, { foreignKey: 'workoutUuid', onDelete: 'CASCADE' })\n declare workout?: Workout;\n\n @Column({\n type: DataType.ENUM(...Object.values(SessionStatus)),\n allowNull: false,\n defaultValue: SessionStatus.ACTIVE,\n })\n declare status: SessionStatus;\n\n @Column({ type: DataType.DATE, allowNull: false, defaultValue: DataType.NOW })\n declare startedAt: Date;\n\n @Column({ type: DataType.DATE, allowNull: true })\n declare completedAt: Date | null;\n\n @Column({\n type: DataType.JSONB,\n allowNull: true,\n comment: 'Stores current workout progress: exercises completed, sets, reps, weight, etc.'\n })\n declare progressSnapshot: any[] | null;\n}"],"names":["Table","Model","Column","DataType","Default","ForeignKey","BelongsTo","Index","Workout","SessionStatus","WorkoutSession","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","foreignKey","onDelete","ENUM","Object","values","DATE","NOW","JSONB","comment","tableName","timestamps","indexes","unique","fields","where","status","name"],"mappings":";;;;;;AAAA,SACIA,KAAK,EACLC,KAAK,EACLC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,KAAK,QACF,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,eAAe;AAEvC,OAAO,IAAA,AAAKC,uCAAAA;;;WAAAA;MAGX;AAcD,OAAO,MAAMC,uBAAuBT;AAyCpC;;qBAxCsBU;;QAEdC,MAAMT,SAASU,IAAI;QACnBC,cAAcX,SAASQ,MAAM;QAC7BI,WAAW;QACXC,YAAY;;;;;;QAKNJ,MAAMT,SAASU,IAAI;QAAEE,WAAW;;;;mBAGxBP;;;QAERI,MAAMT,SAASU,IAAI;QAAEE,WAAW;;;;kBAGzBP;QAAWS,YAAY;QAAeC,UAAU;;;;;QAI7DN,MAAMT,SAASgB,IAAI,IAAIC,OAAOC,MAAM,CAACZ;QACrCM,WAAW;QACXD,YAAY;;;;;QAINF,MAAMT,SAASmB,IAAI;QAAEP,WAAW;QAAOD,cAAcX,SAASoB,GAAG;;;;;QAGjEX,MAAMT,SAASmB,IAAI;QAAEP,WAAW;;;;;QAItCH,MAAMT,SAASqB,KAAK;QACpBT,WAAW;QACXU,SAAS;;;;;QAjDbC,WAAW;QACXC,YAAY;QACZC,SAAS;YACL;gBACIC,QAAQ;gBACRC,QAAQ;oBAAC;oBAAe;iBAAS;gBACjCC,OAAO;oBAAEC,QAAQ;gBAAS;gBAC1BC,MAAM;YACV;SACH"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Model } from "sequelize-typescript";
|
|
2
|
+
import { SubscriptionLog } from './SubscriptionLog.js';
|
|
3
|
+
import { PersistedUser } from '../user/PersistedUser.js';
|
|
4
|
+
import type { CreationOptional } from "sequelize";
|
|
5
|
+
export declare class Subscription extends Model {
|
|
6
|
+
userUuid: string;
|
|
7
|
+
identifier: string;
|
|
8
|
+
platform: "google" | "apple" | "mollie" | "whop";
|
|
9
|
+
status: "active" | "canceled" | "expired";
|
|
10
|
+
type: string;
|
|
11
|
+
expiresOn: Date;
|
|
12
|
+
startDate: Date;
|
|
13
|
+
delayedStartDays: number | null;
|
|
14
|
+
user: PersistedUser;
|
|
15
|
+
subscriptionLogs: SubscriptionLog[];
|
|
16
|
+
createdAt: CreationOptional<Date> | null;
|
|
17
|
+
updatedAt: CreationOptional<Date> | null;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=Subscription.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Subscription.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/subscription/Subscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAGN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,WAAW,CAAC;AAEhD,qBACa,YAAa,SAAQ,KAAK;IAQ7B,QAAQ,EAAE,MAAM,CAAC;IAGjB,UAAU,EAAE,MAAM,CAAC;IAGnB,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAGjD,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAG1C,IAAI,EAAE,MAAM,CAAC;IAGb,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAGhB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAGhC,IAAI,EAAE,aAAa,CAAC;IAGpB,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAKpC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAKzC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAClD"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { BelongsTo, Column, CreatedAt, DataType, Default, ForeignKey, HasMany, Model, PrimaryKey, Table, UpdatedAt } from "sequelize-typescript";
|
|
8
|
+
import { SubscriptionLog } from "./SubscriptionLog.js";
|
|
9
|
+
import { PersistedUser } from "../user/PersistedUser.js";
|
|
10
|
+
export class Subscription extends Model {
|
|
11
|
+
}
|
|
12
|
+
_ts_decorate([
|
|
13
|
+
ForeignKey(()=>PersistedUser),
|
|
14
|
+
PrimaryKey,
|
|
15
|
+
Column({
|
|
16
|
+
type: DataType.UUID,
|
|
17
|
+
allowNull: false,
|
|
18
|
+
primaryKey: true
|
|
19
|
+
})
|
|
20
|
+
], Subscription.prototype, "userUuid", void 0);
|
|
21
|
+
_ts_decorate([
|
|
22
|
+
Column({
|
|
23
|
+
type: DataType.TEXT,
|
|
24
|
+
allowNull: false
|
|
25
|
+
})
|
|
26
|
+
], Subscription.prototype, "identifier", void 0);
|
|
27
|
+
_ts_decorate([
|
|
28
|
+
Column({
|
|
29
|
+
type: DataType.TEXT,
|
|
30
|
+
allowNull: false
|
|
31
|
+
})
|
|
32
|
+
], Subscription.prototype, "platform", void 0);
|
|
33
|
+
_ts_decorate([
|
|
34
|
+
Column({
|
|
35
|
+
type: DataType.TEXT,
|
|
36
|
+
allowNull: false
|
|
37
|
+
})
|
|
38
|
+
], Subscription.prototype, "status", void 0);
|
|
39
|
+
_ts_decorate([
|
|
40
|
+
Column({
|
|
41
|
+
type: DataType.TEXT,
|
|
42
|
+
allowNull: false
|
|
43
|
+
})
|
|
44
|
+
], Subscription.prototype, "type", void 0);
|
|
45
|
+
_ts_decorate([
|
|
46
|
+
Column({
|
|
47
|
+
type: DataType.DATE,
|
|
48
|
+
allowNull: false
|
|
49
|
+
})
|
|
50
|
+
], Subscription.prototype, "expiresOn", void 0);
|
|
51
|
+
_ts_decorate([
|
|
52
|
+
Column({
|
|
53
|
+
type: DataType.DATE,
|
|
54
|
+
allowNull: false
|
|
55
|
+
})
|
|
56
|
+
], Subscription.prototype, "startDate", void 0);
|
|
57
|
+
_ts_decorate([
|
|
58
|
+
Column({
|
|
59
|
+
type: DataType.INTEGER,
|
|
60
|
+
allowNull: true
|
|
61
|
+
})
|
|
62
|
+
], Subscription.prototype, "delayedStartDays", void 0);
|
|
63
|
+
_ts_decorate([
|
|
64
|
+
BelongsTo(()=>PersistedUser)
|
|
65
|
+
], Subscription.prototype, "user", void 0);
|
|
66
|
+
_ts_decorate([
|
|
67
|
+
HasMany(()=>SubscriptionLog)
|
|
68
|
+
], Subscription.prototype, "subscriptionLogs", void 0);
|
|
69
|
+
_ts_decorate([
|
|
70
|
+
CreatedAt,
|
|
71
|
+
Default(null),
|
|
72
|
+
Column({
|
|
73
|
+
type: DataType.DATE,
|
|
74
|
+
allowNull: true,
|
|
75
|
+
defaultValue: new Date()
|
|
76
|
+
})
|
|
77
|
+
], Subscription.prototype, "createdAt", void 0);
|
|
78
|
+
_ts_decorate([
|
|
79
|
+
UpdatedAt,
|
|
80
|
+
Default(null),
|
|
81
|
+
Column({
|
|
82
|
+
type: DataType.DATE,
|
|
83
|
+
allowNull: true,
|
|
84
|
+
defaultValue: new Date()
|
|
85
|
+
})
|
|
86
|
+
], Subscription.prototype, "updatedAt", void 0);
|
|
87
|
+
Subscription = _ts_decorate([
|
|
88
|
+
Table
|
|
89
|
+
], Subscription);
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=Subscription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/subscription/Subscription.ts"],"sourcesContent":["import {\n BelongsTo,\n Column, CreatedAt,\n DataType, Default,\n ForeignKey,\n HasMany,\n Model,\n PrimaryKey,\n Table, UpdatedAt,\n} from \"sequelize-typescript\";\nimport { SubscriptionLog } from './SubscriptionLog.js';\nimport {PersistedUser} from '../user/PersistedUser.js';\nimport type {CreationOptional} from \"sequelize\";\n\n@Table\nexport class Subscription extends Model {\n @ForeignKey(() => PersistedUser)\n @PrimaryKey\n @Column({\n type: DataType.UUID,\n allowNull: false,\n primaryKey: true,\n })\n declare userUuid: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare identifier: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare platform: \"google\" | \"apple\" | \"mollie\" | \"whop\";\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare status: \"active\" | \"canceled\" | \"expired\";\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare type: string;\n\n @Column({ type: DataType.DATE, allowNull: false })\n declare expiresOn: Date;\n\n @Column({ type: DataType.DATE, allowNull: false })\n declare startDate: Date;\n\n @Column({ type: DataType.INTEGER, allowNull: true })\n declare delayedStartDays: number | null;\n\n @BelongsTo(() => PersistedUser)\n declare user: PersistedUser;\n\n @HasMany(() => SubscriptionLog)\n declare subscriptionLogs: SubscriptionLog[];\n\n @CreatedAt\n @Default(null) // Set the default value to null\n @Column({ type: DataType.DATE, allowNull: true, defaultValue: new Date() })\n declare createdAt: CreationOptional<Date> | null;\n\n @UpdatedAt\n @Default(null) // Set the default value to null\n @Column({ type: DataType.DATE, allowNull: true, defaultValue: new Date() })\n declare updatedAt: CreationOptional<Date> | null;\n}\n"],"names":["BelongsTo","Column","CreatedAt","DataType","Default","ForeignKey","HasMany","Model","PrimaryKey","Table","UpdatedAt","SubscriptionLog","PersistedUser","Subscription","type","UUID","allowNull","primaryKey","TEXT","DATE","INTEGER","defaultValue","Date"],"mappings":";;;;;;AAAA,SACEA,SAAS,EACTC,MAAM,EAAEC,SAAS,EACjBC,QAAQ,EAAEC,OAAO,EACjBC,UAAU,EACVC,OAAO,EACPC,KAAK,EACLC,UAAU,EACVC,KAAK,EAAEC,SAAS,QACX,uBAAuB;AAC9B,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SAAQC,aAAa,QAAO,2BAA2B;AAIvD,OAAO,MAAMC,qBAAqBN;AA8ClC;;mBA7CoBK;;;QAGhBE,MAAMX,SAASY,IAAI;QACnBC,WAAW;QACXC,YAAY;;;;;QAIJH,MAAMX,SAASe,IAAI;QAAEF,WAAW;;;;;QAGhCF,MAAMX,SAASe,IAAI;QAAEF,WAAW;;;;;QAGhCF,MAAMX,SAASe,IAAI;QAAEF,WAAW;;;;;QAGhCF,MAAMX,SAASe,IAAI;QAAEF,WAAW;;;;;QAGhCF,MAAMX,SAASgB,IAAI;QAAEH,WAAW;;;;;QAGhCF,MAAMX,SAASgB,IAAI;QAAEH,WAAW;;;;;QAGhCF,MAAMX,SAASiB,OAAO;QAAEJ,WAAW;;;;kBAG5BJ;;;gBAGFD;;;;;;QAKLG,MAAMX,SAASgB,IAAI;QAAEH,WAAW;QAAMK,cAAc,IAAIC;;;;;;;QAKxDR,MAAMX,SAASgB,IAAI;QAAEH,WAAW;QAAMK,cAAc,IAAIC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { BelongsTo, Column, DataType, Default, ForeignKey, Model, PrimaryKey, Table, CreatedAt } from "sequelize-typescript";
|
|
8
|
+
import { Subscription } from "./Subscription.js";
|
|
9
|
+
export class SubscriptionEvent extends Model {
|
|
10
|
+
}
|
|
11
|
+
_ts_decorate([
|
|
12
|
+
PrimaryKey,
|
|
13
|
+
Default(DataType.UUIDV4),
|
|
14
|
+
Column({
|
|
15
|
+
type: DataType.UUID,
|
|
16
|
+
allowNull: false
|
|
17
|
+
})
|
|
18
|
+
], SubscriptionEvent.prototype, "uuid", void 0);
|
|
19
|
+
_ts_decorate([
|
|
20
|
+
ForeignKey(()=>Subscription),
|
|
21
|
+
Column({
|
|
22
|
+
type: DataType.UUID,
|
|
23
|
+
allowNull: false
|
|
24
|
+
})
|
|
25
|
+
], SubscriptionEvent.prototype, "subscriptionUuid", void 0);
|
|
26
|
+
_ts_decorate([
|
|
27
|
+
Column({
|
|
28
|
+
type: DataType.TEXT,
|
|
29
|
+
allowNull: false
|
|
30
|
+
})
|
|
31
|
+
], SubscriptionEvent.prototype, "eventType", void 0);
|
|
32
|
+
_ts_decorate([
|
|
33
|
+
Column({
|
|
34
|
+
type: DataType.TEXT,
|
|
35
|
+
allowNull: false
|
|
36
|
+
})
|
|
37
|
+
], SubscriptionEvent.prototype, "action", void 0);
|
|
38
|
+
_ts_decorate([
|
|
39
|
+
Column({
|
|
40
|
+
type: DataType.TEXT,
|
|
41
|
+
allowNull: true
|
|
42
|
+
})
|
|
43
|
+
], SubscriptionEvent.prototype, "externalId", void 0);
|
|
44
|
+
_ts_decorate([
|
|
45
|
+
Column({
|
|
46
|
+
type: DataType.DECIMAL(10, 2),
|
|
47
|
+
allowNull: true
|
|
48
|
+
})
|
|
49
|
+
], SubscriptionEvent.prototype, "amount", void 0);
|
|
50
|
+
_ts_decorate([
|
|
51
|
+
Column({
|
|
52
|
+
type: DataType.TEXT,
|
|
53
|
+
allowNull: true
|
|
54
|
+
})
|
|
55
|
+
], SubscriptionEvent.prototype, "currency", void 0);
|
|
56
|
+
_ts_decorate([
|
|
57
|
+
Column({
|
|
58
|
+
type: DataType.JSONB,
|
|
59
|
+
allowNull: true
|
|
60
|
+
})
|
|
61
|
+
], SubscriptionEvent.prototype, "metadata", void 0);
|
|
62
|
+
_ts_decorate([
|
|
63
|
+
BelongsTo(()=>Subscription)
|
|
64
|
+
], SubscriptionEvent.prototype, "subscription", void 0);
|
|
65
|
+
_ts_decorate([
|
|
66
|
+
CreatedAt,
|
|
67
|
+
Column({
|
|
68
|
+
type: DataType.DATE,
|
|
69
|
+
allowNull: false
|
|
70
|
+
})
|
|
71
|
+
], SubscriptionEvent.prototype, "createdAt", void 0);
|
|
72
|
+
SubscriptionEvent = _ts_decorate([
|
|
73
|
+
Table({
|
|
74
|
+
timestamps: true,
|
|
75
|
+
tableName: "subscription_events"
|
|
76
|
+
})
|
|
77
|
+
], SubscriptionEvent);
|
|
78
|
+
|
|
79
|
+
//# sourceMappingURL=SubscriptionEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/subscription/SubscriptionEvent.ts"],"sourcesContent":["import {\n BelongsTo,\n Column,\n DataType,\n Default,\n ForeignKey,\n Model,\n PrimaryKey,\n Table,\n CreatedAt,\n} from \"sequelize-typescript\";\nimport { Subscription } from \"./Subscription.js\";\n\n@Table({ timestamps: true, tableName: \"subscription_events\" })\nexport class SubscriptionEvent extends Model {\n @PrimaryKey\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare uuid: string;\n\n @ForeignKey(() => Subscription)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare subscriptionUuid: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare eventType: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare action: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: true,\n })\n declare externalId: string | null;\n\n @Column({\n type: DataType.DECIMAL(10, 2),\n allowNull: true,\n })\n declare amount: number | null;\n\n @Column({\n type: DataType.TEXT,\n allowNull: true,\n })\n declare currency: string | null;\n\n @Column({\n type: DataType.JSONB,\n allowNull: true,\n })\n declare metadata: Record<string, any> | null;\n\n @BelongsTo(() => Subscription)\n declare subscription: Subscription;\n\n @CreatedAt\n @Column({\n type: DataType.DATE,\n allowNull: false,\n })\n declare createdAt: Date;\n}\n"],"names":["BelongsTo","Column","DataType","Default","ForeignKey","Model","PrimaryKey","Table","CreatedAt","Subscription","SubscriptionEvent","UUIDV4","type","UUID","allowNull","TEXT","DECIMAL","JSONB","DATE","timestamps","tableName"],"mappings":";;;;;;AAAA,SACEA,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,KAAK,EACLC,SAAS,QACJ,uBAAuB;AAC9B,SAASC,YAAY,QAAQ,oBAAoB;AAGjD,OAAO,MAAMC,0BAA0BL;AA6DvC;;;qBA3DoBM;;QAEhBC,MAAMV,SAASW,IAAI;QACnBC,WAAW;;;;mBAIKL;;QAEhBG,MAAMV,SAASW,IAAI;QACnBC,WAAW;;;;;QAKXF,MAAMV,SAASa,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMV,SAASa,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMV,SAASa,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMV,SAASc,OAAO,CAAC,IAAI;QAC3BF,WAAW;;;;;QAKXF,MAAMV,SAASa,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMV,SAASe,KAAK;QACpBH,WAAW;;;;kBAIIL;;;;;QAKfG,MAAMV,SAASgB,IAAI;QACnBJ,WAAW;;;;;QA3DNK,YAAY;QAAMC,WAAW"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Model } from "sequelize-typescript";
|
|
2
|
+
import { Subscription } from './Subscription.js';
|
|
3
|
+
export declare class SubscriptionLog extends Model {
|
|
4
|
+
uuid: string;
|
|
5
|
+
subscriptionUuid: string;
|
|
6
|
+
action: string;
|
|
7
|
+
subscription: Subscription;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=SubscriptionLog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubscriptionLog.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/subscription/SubscriptionLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAEN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,qBACa,eAAgB,SAAQ,KAAK;IAQhC,IAAI,EAAE,MAAM,CAAC;IAOb,gBAAgB,EAAE,MAAM,CAAC;IAGzB,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,YAAY,CAAC;CACpC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { BelongsTo, Column, DataType, Default, ForeignKey, Model, Table } from "sequelize-typescript";
|
|
8
|
+
import { Subscription } from "./Subscription.js";
|
|
9
|
+
export class SubscriptionLog extends Model {
|
|
10
|
+
}
|
|
11
|
+
_ts_decorate([
|
|
12
|
+
Default(DataType.UUIDV4),
|
|
13
|
+
Column({
|
|
14
|
+
type: DataType.UUID,
|
|
15
|
+
defaultValue: DataType.UUID,
|
|
16
|
+
allowNull: false,
|
|
17
|
+
primaryKey: true
|
|
18
|
+
})
|
|
19
|
+
], SubscriptionLog.prototype, "uuid", void 0);
|
|
20
|
+
_ts_decorate([
|
|
21
|
+
ForeignKey(()=>Subscription),
|
|
22
|
+
Column({
|
|
23
|
+
type: DataType.UUID,
|
|
24
|
+
allowNull: false
|
|
25
|
+
})
|
|
26
|
+
], SubscriptionLog.prototype, "subscriptionUuid", void 0);
|
|
27
|
+
_ts_decorate([
|
|
28
|
+
Column({
|
|
29
|
+
type: DataType.TEXT,
|
|
30
|
+
allowNull: false
|
|
31
|
+
})
|
|
32
|
+
], SubscriptionLog.prototype, "action", void 0);
|
|
33
|
+
_ts_decorate([
|
|
34
|
+
BelongsTo(()=>Subscription)
|
|
35
|
+
], SubscriptionLog.prototype, "subscription", void 0);
|
|
36
|
+
SubscriptionLog = _ts_decorate([
|
|
37
|
+
Table({
|
|
38
|
+
timestamps: true
|
|
39
|
+
})
|
|
40
|
+
], SubscriptionLog);
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=SubscriptionLog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/subscription/SubscriptionLog.ts"],"sourcesContent":["import {\n BelongsTo,\n Column,\n DataType,\n Default,\n ForeignKey,\n Model,\n Table,\n} from \"sequelize-typescript\";\nimport { Subscription } from './Subscription.js';\n\n@Table({ timestamps: true })\nexport class SubscriptionLog extends Model {\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n defaultValue: DataType.UUID,\n allowNull: false,\n primaryKey: true,\n })\n declare uuid: string;\n\n @ForeignKey(() => Subscription)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare subscriptionUuid: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare action: string;\n\n @BelongsTo(() => Subscription)\n declare subscription: Subscription;\n}\n"],"names":["BelongsTo","Column","DataType","Default","ForeignKey","Model","Table","Subscription","SubscriptionLog","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","TEXT","timestamps"],"mappings":";;;;;;AAAA,SACEA,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,KAAK,QACA,uBAAuB;AAC9B,SAASC,YAAY,QAAQ,oBAAoB;AAGjD,OAAO,MAAMC,wBAAwBH;AAsBrC;;qBArBoBI;;QAEhBC,MAAMR,SAASS,IAAI;QACnBC,cAAcV,SAASS,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;mBAIIP;;QAEhBG,MAAMR,SAASS,IAAI;QACnBE,WAAW;;;;;QAIHH,MAAMR,SAASa,IAAI;QAAEF,WAAW;;;;kBAGzBN;;;;QArBVS,YAAY"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { BelongsTo, Column, DataType, Default, ForeignKey, Model, PrimaryKey, Table, CreatedAt, UpdatedAt } from "sequelize-typescript";
|
|
8
|
+
import { Subscription } from "./Subscription.js";
|
|
9
|
+
export class SubscriptionRefund extends Model {
|
|
10
|
+
}
|
|
11
|
+
_ts_decorate([
|
|
12
|
+
PrimaryKey,
|
|
13
|
+
Default(DataType.UUIDV4),
|
|
14
|
+
Column({
|
|
15
|
+
type: DataType.UUID,
|
|
16
|
+
allowNull: false
|
|
17
|
+
})
|
|
18
|
+
], SubscriptionRefund.prototype, "uuid", void 0);
|
|
19
|
+
_ts_decorate([
|
|
20
|
+
ForeignKey(()=>Subscription),
|
|
21
|
+
Column({
|
|
22
|
+
type: DataType.UUID,
|
|
23
|
+
allowNull: false
|
|
24
|
+
})
|
|
25
|
+
], SubscriptionRefund.prototype, "subscriptionUuid", void 0);
|
|
26
|
+
_ts_decorate([
|
|
27
|
+
Column({
|
|
28
|
+
type: DataType.TEXT,
|
|
29
|
+
allowNull: false
|
|
30
|
+
})
|
|
31
|
+
], SubscriptionRefund.prototype, "mollieRefundId", void 0);
|
|
32
|
+
_ts_decorate([
|
|
33
|
+
Column({
|
|
34
|
+
type: DataType.TEXT,
|
|
35
|
+
allowNull: false
|
|
36
|
+
})
|
|
37
|
+
], SubscriptionRefund.prototype, "molliePaymentId", void 0);
|
|
38
|
+
_ts_decorate([
|
|
39
|
+
Column({
|
|
40
|
+
type: DataType.TEXT,
|
|
41
|
+
allowNull: false
|
|
42
|
+
})
|
|
43
|
+
], SubscriptionRefund.prototype, "status", void 0);
|
|
44
|
+
_ts_decorate([
|
|
45
|
+
Column({
|
|
46
|
+
type: DataType.DECIMAL(10, 2),
|
|
47
|
+
allowNull: false
|
|
48
|
+
})
|
|
49
|
+
], SubscriptionRefund.prototype, "amount", void 0);
|
|
50
|
+
_ts_decorate([
|
|
51
|
+
Column({
|
|
52
|
+
type: DataType.TEXT,
|
|
53
|
+
allowNull: false
|
|
54
|
+
})
|
|
55
|
+
], SubscriptionRefund.prototype, "currency", void 0);
|
|
56
|
+
_ts_decorate([
|
|
57
|
+
Column({
|
|
58
|
+
type: DataType.TEXT,
|
|
59
|
+
allowNull: true
|
|
60
|
+
})
|
|
61
|
+
], SubscriptionRefund.prototype, "description", void 0);
|
|
62
|
+
_ts_decorate([
|
|
63
|
+
Column({
|
|
64
|
+
type: DataType.JSONB,
|
|
65
|
+
allowNull: true
|
|
66
|
+
})
|
|
67
|
+
], SubscriptionRefund.prototype, "metadata", void 0);
|
|
68
|
+
_ts_decorate([
|
|
69
|
+
BelongsTo(()=>Subscription)
|
|
70
|
+
], SubscriptionRefund.prototype, "subscription", void 0);
|
|
71
|
+
_ts_decorate([
|
|
72
|
+
CreatedAt,
|
|
73
|
+
Column({
|
|
74
|
+
type: DataType.DATE,
|
|
75
|
+
allowNull: false
|
|
76
|
+
})
|
|
77
|
+
], SubscriptionRefund.prototype, "createdAt", void 0);
|
|
78
|
+
_ts_decorate([
|
|
79
|
+
UpdatedAt,
|
|
80
|
+
Column({
|
|
81
|
+
type: DataType.DATE,
|
|
82
|
+
allowNull: false
|
|
83
|
+
})
|
|
84
|
+
], SubscriptionRefund.prototype, "updatedAt", void 0);
|
|
85
|
+
SubscriptionRefund = _ts_decorate([
|
|
86
|
+
Table({
|
|
87
|
+
timestamps: true,
|
|
88
|
+
tableName: "subscription_refunds"
|
|
89
|
+
})
|
|
90
|
+
], SubscriptionRefund);
|
|
91
|
+
|
|
92
|
+
//# sourceMappingURL=SubscriptionRefund.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/subscription/SubscriptionRefund.ts"],"sourcesContent":["import {\n BelongsTo,\n Column,\n DataType,\n Default,\n ForeignKey,\n Model,\n PrimaryKey,\n Table,\n CreatedAt,\n UpdatedAt,\n} from \"sequelize-typescript\";\nimport { Subscription } from \"./Subscription.js\";\n\n@Table({ timestamps: true, tableName: \"subscription_refunds\" })\nexport class SubscriptionRefund extends Model {\n @PrimaryKey\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare uuid: string;\n\n @ForeignKey(() => Subscription)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare subscriptionUuid: string;\n\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare mollieRefundId: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare molliePaymentId: string;\n\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare status: string;\n\n\n @Column({\n type: DataType.DECIMAL(10, 2),\n allowNull: false,\n })\n declare amount: number;\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare currency: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: true,\n })\n declare description: string | null;\n\n @Column({\n type: DataType.JSONB,\n allowNull: true,\n })\n declare metadata: Record<string, any> | null;\n\n @BelongsTo(() => Subscription)\n declare subscription: Subscription;\n\n @CreatedAt\n @Column({\n type: DataType.DATE,\n allowNull: false,\n })\n declare createdAt: Date;\n\n @UpdatedAt\n @Column({\n type: DataType.DATE,\n allowNull: false,\n })\n declare updatedAt: Date;\n}\n"],"names":["BelongsTo","Column","DataType","Default","ForeignKey","Model","PrimaryKey","Table","CreatedAt","UpdatedAt","Subscription","SubscriptionRefund","UUIDV4","type","UUID","allowNull","TEXT","DECIMAL","JSONB","DATE","timestamps","tableName"],"mappings":";;;;;;AAAA,SACEA,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,KAAK,EACLC,SAAS,EACTC,SAAS,QACJ,uBAAuB;AAC9B,SAASC,YAAY,QAAQ,oBAAoB;AAGjD,OAAO,MAAMC,2BAA2BN;AA6ExC;;;qBA3EoBO;;QAEhBC,MAAMX,SAASY,IAAI;QACnBC,WAAW;;;;mBAIKL;;QAEhBG,MAAMX,SAASY,IAAI;QACnBC,WAAW;;;;;QAMXF,MAAMX,SAASc,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMX,SAASc,IAAI;QACnBD,WAAW;;;;;QAMXF,MAAMX,SAASc,IAAI;QACnBD,WAAW;;;;;QAMXF,MAAMX,SAASe,OAAO,CAAC,IAAI;QAC3BF,WAAW;;;;;QAKXF,MAAMX,SAASc,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMX,SAASc,IAAI;QACnBD,WAAW;;;;;QAKXF,MAAMX,SAASgB,KAAK;QACpBH,WAAW;;;;kBAIIL;;;;;QAKfG,MAAMX,SAASiB,IAAI;QACnBJ,WAAW;;;;;;QAMXF,MAAMX,SAASiB,IAAI;QACnBJ,WAAW;;;;;QA3ENK,YAAY;QAAMC,WAAW"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
}
|
|
7
|
+
import { Column, DataType, Model, Table } from "sequelize-typescript";
|
|
8
|
+
export class DeviceTokens extends Model {
|
|
9
|
+
}
|
|
10
|
+
_ts_decorate([
|
|
11
|
+
Column({
|
|
12
|
+
type: DataType.UUID,
|
|
13
|
+
defaultValue: DataType.UUID,
|
|
14
|
+
allowNull: false,
|
|
15
|
+
primaryKey: true
|
|
16
|
+
})
|
|
17
|
+
], DeviceTokens.prototype, "userUuid", void 0);
|
|
18
|
+
_ts_decorate([
|
|
19
|
+
Column({
|
|
20
|
+
type: DataType.TEXT,
|
|
21
|
+
allowNull: false
|
|
22
|
+
})
|
|
23
|
+
], DeviceTokens.prototype, "deviceToken", void 0);
|
|
24
|
+
_ts_decorate([
|
|
25
|
+
Column({
|
|
26
|
+
type: DataType.TEXT,
|
|
27
|
+
allowNull: true
|
|
28
|
+
})
|
|
29
|
+
], DeviceTokens.prototype, "platform", void 0);
|
|
30
|
+
DeviceTokens = _ts_decorate([
|
|
31
|
+
Table
|
|
32
|
+
], DeviceTokens);
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=DeviceTokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/user/DeviceTokens.ts"],"sourcesContent":["import { Column, DataType, Model, Table } from \"sequelize-typescript\";\n\n@Table\nexport class DeviceTokens extends Model {\n @Column({\n type: DataType.UUID,\n defaultValue: DataType.UUID,\n allowNull: false,\n primaryKey: true,\n })\n declare userUuid: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: false,\n })\n declare deviceToken: string;\n\n @Column({\n type: DataType.TEXT,\n allowNull: true,\n })\n declare platform: \"ios\" | \"android\";\n}\n"],"names":["Column","DataType","Model","Table","DeviceTokens","type","UUID","defaultValue","allowNull","primaryKey","TEXT"],"mappings":";;;;;;AAAA,SAASA,MAAM,EAAEC,QAAQ,EAAEC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AAGtE,OAAO,MAAMC,qBAAqBF;AAoBlC;;;QAlBIG,MAAMJ,SAASK,IAAI;QACnBC,cAAcN,SAASK,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;;QAKZJ,MAAMJ,SAASS,IAAI;QACnBF,WAAW;;;;;QAKXH,MAAMJ,SAASS,IAAI;QACnBF,WAAW"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Model } from "sequelize-typescript";
|
|
2
|
+
import { Subscription } from '../subscription/Subscription.js';
|
|
3
|
+
import { NonConsumableProgram } from '../nonconsprogram/NonConsumableProgram.js';
|
|
4
|
+
export declare class PersistedUser extends Model {
|
|
5
|
+
userUuid: string;
|
|
6
|
+
email: string;
|
|
7
|
+
password: string;
|
|
8
|
+
firstName?: string;
|
|
9
|
+
lastName?: string;
|
|
10
|
+
avatar: string;
|
|
11
|
+
sex: string;
|
|
12
|
+
goal: string;
|
|
13
|
+
isFreeVersion: boolean;
|
|
14
|
+
allowsEmail: boolean;
|
|
15
|
+
gotParentalConsent: boolean;
|
|
16
|
+
weightGoal: string;
|
|
17
|
+
role: 'default' | 'admin';
|
|
18
|
+
level: string;
|
|
19
|
+
type: string;
|
|
20
|
+
days: number;
|
|
21
|
+
dateOfBirth: string;
|
|
22
|
+
metricSystem: string;
|
|
23
|
+
height: string;
|
|
24
|
+
weight: string;
|
|
25
|
+
activeProgramId: string;
|
|
26
|
+
registrationDate: string;
|
|
27
|
+
registrationService: 'apple' | 'google' | 'facebook' | 'native';
|
|
28
|
+
utilityEmail: string;
|
|
29
|
+
emailConfirmed: boolean;
|
|
30
|
+
utilityEmailConfirmed: boolean;
|
|
31
|
+
changeEmail: boolean;
|
|
32
|
+
changeUtilityEmail: boolean;
|
|
33
|
+
totalXp: number;
|
|
34
|
+
weeklyXp: number;
|
|
35
|
+
monthlyXp: number;
|
|
36
|
+
country?: string;
|
|
37
|
+
subscription: Subscription;
|
|
38
|
+
nonConsumablePrograms: NonConsumableProgram[];
|
|
39
|
+
coachUuid?: string;
|
|
40
|
+
coach?: PersistedUser;
|
|
41
|
+
clients?: PersistedUser[];
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=PersistedUser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PersistedUser.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/user/PersistedUser.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,EAEN,MAAM,sBAAsB,CAAC;AAC9B,OAAQ,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAE/E,qBACa,aAAc,SAAQ,KAAK;IAS9B,QAAQ,EAAE,MAAM,CAAC;IAIjB,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,MAAM,EAAE,MAAM,CAAC;IAGf,GAAG,EAAE,MAAM,CAAC;IAGZ,IAAI,EAAE,MAAM,CAAC;IAGb,aAAa,EAAE,OAAO,CAAC;IAGvB,WAAW,EAAE,OAAO,CAAC;IAGrB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,UAAU,EAAE,MAAM,CAAC;IAGnB,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAG1B,KAAK,EAAE,MAAM,CAAC;IAGd,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,WAAW,EAAE,MAAM,CAAC;IAGpB,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;IAGf,eAAe,EAAE,MAAM,CAAC;IAGxB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,mBAAmB,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IAGhE,YAAY,EAAE,MAAM,CAAC;IAGrB,cAAc,EAAE,OAAO,CAAC;IAGxB,qBAAqB,EAAE,OAAO,CAAC;IAG/B,WAAW,EAAE,OAAO,CAAC;IAGrB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,OAAO,EAAE,MAAM,CAAC;IAGhB,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,YAAY,EAAE,YAAY,CAAC;IAG3B,qBAAqB,EAAE,oBAAoB,EAAE,CAAC;IAG9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,KAAK,CAAC,EAAE,aAAa,CAAC;IAGtB,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;CACnC"}
|