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 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/CustomStrengthTestExercises.ts"],"sourcesContent":["import {\n Column,\n DataType,\n Default,\n ForeignKey, Index,\n Model,\n Table,\n} from \"sequelize-typescript\";\nimport {CustomStrengthTest} from \"./CustomStrengthTest.js\";\n\n@Table\nexport class CustomStrengthTestExercise 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 @Index\n @ForeignKey(() => CustomStrengthTest)\n @Column({\n type: DataType.UUID,\n defaultValue: DataType.UUID,\n allowNull: false,\n })\n declare stUuid: string;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare url: string;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare title: string;\n\n @Column({ type: DataType.INTEGER, allowNull: false })\n declare order: number;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare pointer: string;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare timerTime: string;\n\n @Column({ type: DataType.JSONB, allowNull: true })\n declare progress: Progress;\n\n}\n\nexport interface Progress {\n [key: string]: number | string | undefined;\n}"],"names":["Column","DataType","Default","ForeignKey","Index","Model","Table","CustomStrengthTest","CustomStrengthTestExercise","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","STRING","INTEGER","TEXT","JSONB"],"mappings":";;;;;;AAAA,SACIA,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,UAAU,EAAEC,KAAK,EACjBC,KAAK,EACLC,KAAK,QACF,uBAAuB;AAC9B,SAAQC,kBAAkB,QAAO,0BAA0B;AAG3D,OAAO,MAAMC,mCAAmCH;AAqChD;;qBApCsBI;;QAEdC,MAAMT,SAASU,IAAI;QACnBC,cAAcX,SAASU,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;;mBAKEP;;QAEdG,MAAMT,SAASU,IAAI;QACnBC,cAAcX,SAASU,IAAI;QAC3BE,WAAW;;;;;QAILH,MAAMT,SAASc,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMT,SAASc,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMT,SAASe,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMT,SAASgB,IAAI;QAAEJ,WAAW;;;;;QAGhCH,MAAMT,SAASc,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMT,SAASiB,KAAK;QAAEL,WAAW"}
|
|
@@ -0,0 +1,58 @@
|
|
|
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, Table } from "sequelize-typescript";
|
|
8
|
+
import { CustomProgramBlueprint } from "./CustomProgramBlueprint.js";
|
|
9
|
+
export class CustomWorkoutBlueprint 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
|
+
], CustomWorkoutBlueprint.prototype, "uuid", void 0);
|
|
20
|
+
_ts_decorate([
|
|
21
|
+
Index,
|
|
22
|
+
ForeignKey(()=>CustomProgramBlueprint)
|
|
23
|
+
], CustomWorkoutBlueprint.prototype, "blueprintUuid", void 0);
|
|
24
|
+
_ts_decorate([
|
|
25
|
+
Column({
|
|
26
|
+
type: DataType.TEXT,
|
|
27
|
+
allowNull: false
|
|
28
|
+
})
|
|
29
|
+
], CustomWorkoutBlueprint.prototype, "title", void 0);
|
|
30
|
+
_ts_decorate([
|
|
31
|
+
Column({
|
|
32
|
+
type: DataType.TEXT,
|
|
33
|
+
allowNull: false
|
|
34
|
+
})
|
|
35
|
+
], CustomWorkoutBlueprint.prototype, "duration", void 0);
|
|
36
|
+
_ts_decorate([
|
|
37
|
+
Column({
|
|
38
|
+
type: DataType.INTEGER,
|
|
39
|
+
allowNull: true
|
|
40
|
+
})
|
|
41
|
+
], CustomWorkoutBlueprint.prototype, "order", void 0);
|
|
42
|
+
_ts_decorate([
|
|
43
|
+
Column({
|
|
44
|
+
type: DataType.ARRAY(DataType.JSONB),
|
|
45
|
+
allowNull: false
|
|
46
|
+
})
|
|
47
|
+
], CustomWorkoutBlueprint.prototype, "exercises", void 0);
|
|
48
|
+
_ts_decorate([
|
|
49
|
+
Column({
|
|
50
|
+
type: DataType.ARRAY(DataType.JSONB),
|
|
51
|
+
allowNull: true
|
|
52
|
+
})
|
|
53
|
+
], CustomWorkoutBlueprint.prototype, "superset", void 0);
|
|
54
|
+
CustomWorkoutBlueprint = _ts_decorate([
|
|
55
|
+
Table
|
|
56
|
+
], CustomWorkoutBlueprint);
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=CustomWorkoutBlueprint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/CustomWorkoutBlueprint.ts"],"sourcesContent":["import {Column, DataType, Default, ForeignKey, Index, Model, Table} from \"sequelize-typescript\";\nimport {CustomProgramBlueprint} from \"./CustomProgramBlueprint.js\";\nimport type {ExerciseBlueprint} from \"../../models/BlueprintInterfaces.js\";\n\n@Table\nexport class CustomWorkoutBlueprint 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 @Index\n @ForeignKey(() => CustomProgramBlueprint)\n declare blueprintUuid: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare title: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare duration: string;\n\n @Column({ type: DataType.INTEGER, allowNull: true })\n declare order: number;\n\n @Column({ type: DataType.ARRAY(DataType.JSONB), allowNull: false })\n declare exercises: ExerciseBlueprint[];\n\n @Column({ type: DataType.ARRAY(DataType.JSONB), allowNull: true })\n declare superset: SupersetModel[];\n}\nexport interface SupersetModel {\n startPosition: number;\n exercises: ExerciseBlueprint[];\n}\n"],"names":["Column","DataType","Default","ForeignKey","Index","Model","Table","CustomProgramBlueprint","CustomWorkoutBlueprint","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","TEXT","INTEGER","ARRAY","JSONB"],"mappings":";;;;;;AAAA,SAAQA,MAAM,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,UAAU,EAAEC,KAAK,EAAEC,KAAK,EAAEC,KAAK,QAAO,uBAAuB;AAChG,SAAQC,sBAAsB,QAAO,8BAA8B;AAInE,OAAO,MAAMC,+BAA+BH;AA4B5C;;qBA3BsBI;;QAEdC,MAAMT,SAASU,IAAI;QACnBC,cAAcX,SAASU,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;;mBAKEP;;;;QAGRG,MAAMT,SAASc,IAAI;QAAEF,WAAW;;;;;QAGhCH,MAAMT,SAASc,IAAI;QAAEF,WAAW;;;;;QAGhCH,MAAMT,SAASe,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMT,SAASgB,KAAK,CAAChB,SAASiB,KAAK;QAAGL,WAAW;;;;;QAGjDH,MAAMT,SAASgB,KAAK,CAAChB,SAASiB,KAAK;QAAGL,WAAW"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Model } from 'sequelize-typescript';
|
|
2
|
+
import { Workout } from './Workout.js';
|
|
3
|
+
import { Superset } from './Superset.js';
|
|
4
|
+
import { ProgressEntry } from './ProgressEntry.js';
|
|
5
|
+
import type { Progress } from '../../models/ExerciseInterfaces.js';
|
|
6
|
+
export declare class Exercise extends Model<Exercise> {
|
|
7
|
+
uuid: string;
|
|
8
|
+
exerciseModelUuid?: string;
|
|
9
|
+
name: string;
|
|
10
|
+
order: number;
|
|
11
|
+
progress: Progress[];
|
|
12
|
+
reps: string;
|
|
13
|
+
sets: string;
|
|
14
|
+
restTime: string;
|
|
15
|
+
coachNote: string | null;
|
|
16
|
+
thumbnailUrl: string | null;
|
|
17
|
+
workoutUuid: string;
|
|
18
|
+
supersetUuid: string | null;
|
|
19
|
+
progressEntries: ProgressEntry[];
|
|
20
|
+
superset: Superset | null;
|
|
21
|
+
workout: Workout;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=Exercise.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Exercise.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/program/Exercise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAA4D,MAAM,sBAAsB,CAAC;AACtH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAEnE,qBACa,QAAS,SAAQ,KAAK,CAAC,QAAQ,CAAC;IAMnC,IAAI,EAAE,MAAM,CAAC;IAKb,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAId,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAGrB,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAK5B,WAAW,EAAE,MAAM,CAAC;IAKpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,eAAe,EAAE,aAAa,EAAE,CAAC;IAGjC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAE1B,OAAO,EAAE,OAAO,CAAC;CAC1B"}
|
|
@@ -0,0 +1,101 @@
|
|
|
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, Column, Model, ForeignKey, Index, DataType, Default, HasMany, BelongsTo } from "sequelize-typescript";
|
|
8
|
+
import { Workout } from "./Workout.js";
|
|
9
|
+
import { Superset } from "./Superset.js";
|
|
10
|
+
import { ProgressEntry } from "./ProgressEntry.js";
|
|
11
|
+
export class Exercise extends Model {
|
|
12
|
+
}
|
|
13
|
+
_ts_decorate([
|
|
14
|
+
Default(DataType.UUIDV4),
|
|
15
|
+
Column({
|
|
16
|
+
type: DataType.UUID,
|
|
17
|
+
primaryKey: true
|
|
18
|
+
})
|
|
19
|
+
], Exercise.prototype, "uuid", void 0);
|
|
20
|
+
_ts_decorate([
|
|
21
|
+
Index,
|
|
22
|
+
Column({
|
|
23
|
+
type: DataType.UUID,
|
|
24
|
+
allowNull: true
|
|
25
|
+
})
|
|
26
|
+
], Exercise.prototype, "exerciseModelUuid", void 0);
|
|
27
|
+
_ts_decorate([
|
|
28
|
+
Column({
|
|
29
|
+
type: DataType.STRING,
|
|
30
|
+
allowNull: false
|
|
31
|
+
})
|
|
32
|
+
], Exercise.prototype, "name", void 0);
|
|
33
|
+
_ts_decorate([
|
|
34
|
+
Column({
|
|
35
|
+
type: DataType.INTEGER,
|
|
36
|
+
allowNull: false
|
|
37
|
+
})
|
|
38
|
+
], Exercise.prototype, "order", void 0);
|
|
39
|
+
_ts_decorate([
|
|
40
|
+
Column({
|
|
41
|
+
type: DataType.ARRAY(DataType.JSONB),
|
|
42
|
+
allowNull: true
|
|
43
|
+
})
|
|
44
|
+
], Exercise.prototype, "progress", void 0);
|
|
45
|
+
_ts_decorate([
|
|
46
|
+
Column({
|
|
47
|
+
type: DataType.STRING,
|
|
48
|
+
allowNull: false
|
|
49
|
+
})
|
|
50
|
+
], Exercise.prototype, "reps", void 0);
|
|
51
|
+
_ts_decorate([
|
|
52
|
+
Column({
|
|
53
|
+
type: DataType.STRING,
|
|
54
|
+
allowNull: false
|
|
55
|
+
})
|
|
56
|
+
], Exercise.prototype, "sets", void 0);
|
|
57
|
+
_ts_decorate([
|
|
58
|
+
Column({
|
|
59
|
+
type: DataType.STRING,
|
|
60
|
+
allowNull: true
|
|
61
|
+
})
|
|
62
|
+
], Exercise.prototype, "restTime", void 0);
|
|
63
|
+
_ts_decorate([
|
|
64
|
+
Column({
|
|
65
|
+
type: DataType.TEXT,
|
|
66
|
+
allowNull: true
|
|
67
|
+
})
|
|
68
|
+
], Exercise.prototype, "coachNote", void 0);
|
|
69
|
+
_ts_decorate([
|
|
70
|
+
Column({
|
|
71
|
+
type: DataType.STRING(500),
|
|
72
|
+
allowNull: true
|
|
73
|
+
})
|
|
74
|
+
], Exercise.prototype, "thumbnailUrl", void 0);
|
|
75
|
+
_ts_decorate([
|
|
76
|
+
Index,
|
|
77
|
+
ForeignKey(()=>Workout),
|
|
78
|
+
Column({
|
|
79
|
+
type: DataType.UUID,
|
|
80
|
+
allowNull: false
|
|
81
|
+
})
|
|
82
|
+
], Exercise.prototype, "workoutUuid", void 0);
|
|
83
|
+
_ts_decorate([
|
|
84
|
+
Index,
|
|
85
|
+
ForeignKey(()=>Superset),
|
|
86
|
+
Column({
|
|
87
|
+
type: DataType.UUID,
|
|
88
|
+
allowNull: true
|
|
89
|
+
})
|
|
90
|
+
], Exercise.prototype, "supersetUuid", void 0);
|
|
91
|
+
_ts_decorate([
|
|
92
|
+
HasMany(()=>ProgressEntry)
|
|
93
|
+
], Exercise.prototype, "progressEntries", void 0);
|
|
94
|
+
_ts_decorate([
|
|
95
|
+
BelongsTo(()=>Superset)
|
|
96
|
+
], Exercise.prototype, "superset", void 0);
|
|
97
|
+
Exercise = _ts_decorate([
|
|
98
|
+
Table
|
|
99
|
+
], Exercise);
|
|
100
|
+
|
|
101
|
+
//# sourceMappingURL=Exercise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/Exercise.ts"],"sourcesContent":["import { Table, Column, Model, ForeignKey, Index, DataType, Default, HasMany, BelongsTo } from 'sequelize-typescript';\nimport { Workout } from './Workout.js';\nimport { Superset } from './Superset.js';\nimport { ProgressEntry } from './ProgressEntry.js';\nimport type { Progress } from '../../models/ExerciseInterfaces.js';\n\n@Table\nexport class Exercise extends Model<Exercise> {\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n primaryKey: true,\n })\n declare uuid: string;\n\n // Programs v2: Reference to ExerciseModel for latest video/instructions\n @Index\n @Column({ type: DataType.UUID, allowNull: true })\n declare exerciseModelUuid?: string;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare name: string;\n\n @Column({ type: DataType.INTEGER, allowNull: false })\n declare order: number;\n\n // DEPRECATED: Keep for backward compatibility during migration\n @Column({ type: DataType.ARRAY(DataType.JSONB), allowNull: true })\n declare progress: Progress[];\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare reps: string;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare sets: string;\n\n @Column({ type: DataType.STRING, allowNull: true })\n declare restTime: string;\n\n @Column({ type: DataType.TEXT, allowNull: true })\n declare coachNote: string | null;\n\n @Column({ type: DataType.STRING(500), allowNull: true })\n declare thumbnailUrl: string | null;\n\n @Index\n @ForeignKey(() => Workout)\n @Column({ type: DataType.UUID, allowNull: false })\n declare workoutUuid: string;\n\n @Index\n @ForeignKey(() => Superset)\n @Column({ type: DataType.UUID, allowNull: true })\n declare supersetUuid: string | null;\n\n @HasMany(() => ProgressEntry)\n declare progressEntries: ProgressEntry[];\n\n @BelongsTo(() => Superset)\n declare superset: Superset | null;\n\n declare workout: Workout;\n}\n"],"names":["Table","Column","Model","ForeignKey","Index","DataType","Default","HasMany","BelongsTo","Workout","Superset","ProgressEntry","Exercise","UUIDV4","type","UUID","primaryKey","allowNull","STRING","INTEGER","ARRAY","JSONB","TEXT"],"mappings":";;;;;;AAAA,SAASA,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,EAAEC,SAAS,QAAQ,uBAAuB;AACtH,SAASC,OAAO,QAAQ,eAAe;AACvC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,aAAa,QAAQ,qBAAqB;AAInD,OAAO,MAAMC,iBAAiBV;AAuD9B;;qBAtDoBW;;QAEhBC,MAAMT,SAASU,IAAI;QACnBC,YAAY;;;;;;QAMJF,MAAMT,SAASU,IAAI;QAAEE,WAAW;;;;;QAGhCH,MAAMT,SAASa,MAAM;QAAED,WAAW;;;;;QAGlCH,MAAMT,SAASc,OAAO;QAAEF,WAAW;;;;;QAInCH,MAAMT,SAASe,KAAK,CAACf,SAASgB,KAAK;QAAGJ,WAAW;;;;;QAGjDH,MAAMT,SAASa,MAAM;QAAED,WAAW;;;;;QAGlCH,MAAMT,SAASa,MAAM;QAAED,WAAW;;;;;QAGlCH,MAAMT,SAASa,MAAM;QAAED,WAAW;;;;;QAGlCH,MAAMT,SAASiB,IAAI;QAAEL,WAAW;;;;;QAGhCH,MAAMT,SAASa,MAAM,CAAC;QAAMD,WAAW;;;;;mBAI/BR;;QACRK,MAAMT,SAASU,IAAI;QAAEE,WAAW;;;;;mBAIxBP;;QACRI,MAAMT,SAASU,IAAI;QAAEE,WAAW;;;;gBAG3BN;;;kBAGED"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Model } from "sequelize-typescript";
|
|
2
|
+
import type { ExerciseModel, ProgramTypes } from '../../models/ExerciseInterfaces.js';
|
|
3
|
+
import { TranslatedExerciseModel } from './TranslatedExerciseModel.js';
|
|
4
|
+
export declare class ExercisesModels extends Model implements ExerciseModel {
|
|
5
|
+
uuid: string;
|
|
6
|
+
name: string;
|
|
7
|
+
restTime: string;
|
|
8
|
+
pointers: string;
|
|
9
|
+
isCustom: boolean;
|
|
10
|
+
url: string;
|
|
11
|
+
level: string[];
|
|
12
|
+
hasPriority: boolean;
|
|
13
|
+
isCompound: boolean;
|
|
14
|
+
hasVariations: boolean;
|
|
15
|
+
needsEquipment: boolean;
|
|
16
|
+
variations: object;
|
|
17
|
+
muscles: string[];
|
|
18
|
+
homeWorkout: boolean;
|
|
19
|
+
isBandAssisted: boolean;
|
|
20
|
+
programType: ProgramTypes[];
|
|
21
|
+
graphData: "reps" | "weight";
|
|
22
|
+
imageUrl: string;
|
|
23
|
+
createdBy: string | null;
|
|
24
|
+
isPublic: boolean;
|
|
25
|
+
thumbnailUrl: string | null;
|
|
26
|
+
translatedExercises: TranslatedExerciseModel[];
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=ExerciseModels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExerciseModels.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/program/ExerciseModels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,EAAS,MAAM,sBAAsB,CAAC;AACxF,OAAO,KAAK,EAAC,aAAa,EAAE,YAAY,EAAC,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAErE,qBACa,eAAgB,SAAQ,KAAM,YAAW,aAAa;IAQvD,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,OAAO,CAAC;IAGlB,GAAG,EAAE,MAAM,CAAC;IAGZ,KAAK,EAAE,MAAM,EAAE,CAAC;IAGhB,WAAW,EAAE,OAAO,CAAC;IAGrB,UAAU,EAAE,OAAO,CAAC;IAGpB,aAAa,EAAE,OAAO,CAAC;IAGvB,cAAc,EAAE,OAAO,CAAC;IAGxB,UAAU,EAAE,MAAM,CAAC;IAGnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAGlB,WAAW,EAAE,OAAO,CAAC;IAGrB,cAAc,EAAE,OAAO,CAAC;IAGxB,WAAW,EAAE,YAAY,EAAE,CAAC;IAG5B,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;IAG7B,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,QAAQ,EAAE,OAAO,CAAC;IAGlB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,mBAAmB,EAAE,uBAAuB,EAAE,CAAC;CAC1D"}
|
|
@@ -0,0 +1,149 @@
|
|
|
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, HasMany, Model, Table } from "sequelize-typescript";
|
|
8
|
+
import { TranslatedExerciseModel } from "./TranslatedExerciseModel.js";
|
|
9
|
+
export class ExercisesModels 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
|
+
], ExercisesModels.prototype, "uuid", void 0);
|
|
20
|
+
_ts_decorate([
|
|
21
|
+
Column({
|
|
22
|
+
type: DataType.STRING,
|
|
23
|
+
allowNull: false
|
|
24
|
+
})
|
|
25
|
+
], ExercisesModels.prototype, "name", void 0);
|
|
26
|
+
_ts_decorate([
|
|
27
|
+
Column({
|
|
28
|
+
type: DataType.STRING,
|
|
29
|
+
allowNull: true
|
|
30
|
+
})
|
|
31
|
+
], ExercisesModels.prototype, "restTime", void 0);
|
|
32
|
+
_ts_decorate([
|
|
33
|
+
Column({
|
|
34
|
+
type: DataType.STRING(2048),
|
|
35
|
+
allowNull: false
|
|
36
|
+
})
|
|
37
|
+
], ExercisesModels.prototype, "pointers", void 0);
|
|
38
|
+
_ts_decorate([
|
|
39
|
+
Column({
|
|
40
|
+
type: DataType.BOOLEAN,
|
|
41
|
+
allowNull: true
|
|
42
|
+
})
|
|
43
|
+
], ExercisesModels.prototype, "isCustom", void 0);
|
|
44
|
+
_ts_decorate([
|
|
45
|
+
Column({
|
|
46
|
+
type: DataType.STRING,
|
|
47
|
+
allowNull: false
|
|
48
|
+
})
|
|
49
|
+
], ExercisesModels.prototype, "url", void 0);
|
|
50
|
+
_ts_decorate([
|
|
51
|
+
Column({
|
|
52
|
+
type: DataType.ARRAY(DataType.STRING),
|
|
53
|
+
allowNull: false
|
|
54
|
+
})
|
|
55
|
+
], ExercisesModels.prototype, "level", void 0);
|
|
56
|
+
_ts_decorate([
|
|
57
|
+
Column({
|
|
58
|
+
type: DataType.BOOLEAN,
|
|
59
|
+
allowNull: false
|
|
60
|
+
})
|
|
61
|
+
], ExercisesModels.prototype, "hasPriority", void 0);
|
|
62
|
+
_ts_decorate([
|
|
63
|
+
Column({
|
|
64
|
+
type: DataType.BOOLEAN,
|
|
65
|
+
allowNull: false
|
|
66
|
+
})
|
|
67
|
+
], ExercisesModels.prototype, "isCompound", void 0);
|
|
68
|
+
_ts_decorate([
|
|
69
|
+
Column({
|
|
70
|
+
type: DataType.BOOLEAN,
|
|
71
|
+
allowNull: false
|
|
72
|
+
})
|
|
73
|
+
], ExercisesModels.prototype, "hasVariations", void 0);
|
|
74
|
+
_ts_decorate([
|
|
75
|
+
Column({
|
|
76
|
+
type: DataType.BOOLEAN,
|
|
77
|
+
allowNull: false
|
|
78
|
+
})
|
|
79
|
+
], ExercisesModels.prototype, "needsEquipment", void 0);
|
|
80
|
+
_ts_decorate([
|
|
81
|
+
Column({
|
|
82
|
+
type: DataType.JSONB,
|
|
83
|
+
allowNull: false
|
|
84
|
+
})
|
|
85
|
+
], ExercisesModels.prototype, "variations", void 0);
|
|
86
|
+
_ts_decorate([
|
|
87
|
+
Column({
|
|
88
|
+
type: DataType.ARRAY(DataType.STRING),
|
|
89
|
+
allowNull: false
|
|
90
|
+
})
|
|
91
|
+
], ExercisesModels.prototype, "muscles", void 0);
|
|
92
|
+
_ts_decorate([
|
|
93
|
+
Column({
|
|
94
|
+
type: DataType.BOOLEAN,
|
|
95
|
+
allowNull: false
|
|
96
|
+
})
|
|
97
|
+
], ExercisesModels.prototype, "homeWorkout", void 0);
|
|
98
|
+
_ts_decorate([
|
|
99
|
+
Column({
|
|
100
|
+
type: DataType.BOOLEAN,
|
|
101
|
+
allowNull: false,
|
|
102
|
+
defaultValue: false
|
|
103
|
+
})
|
|
104
|
+
], ExercisesModels.prototype, "isBandAssisted", void 0);
|
|
105
|
+
_ts_decorate([
|
|
106
|
+
Column({
|
|
107
|
+
type: DataType.ARRAY(DataType.STRING),
|
|
108
|
+
allowNull: false
|
|
109
|
+
})
|
|
110
|
+
], ExercisesModels.prototype, "programType", void 0);
|
|
111
|
+
_ts_decorate([
|
|
112
|
+
Column({
|
|
113
|
+
type: DataType.STRING,
|
|
114
|
+
allowNull: false
|
|
115
|
+
})
|
|
116
|
+
], ExercisesModels.prototype, "graphData", void 0);
|
|
117
|
+
_ts_decorate([
|
|
118
|
+
Column({
|
|
119
|
+
type: DataType.TEXT,
|
|
120
|
+
allowNull: false
|
|
121
|
+
})
|
|
122
|
+
], ExercisesModels.prototype, "imageUrl", void 0);
|
|
123
|
+
_ts_decorate([
|
|
124
|
+
Column({
|
|
125
|
+
type: DataType.STRING,
|
|
126
|
+
allowNull: true
|
|
127
|
+
})
|
|
128
|
+
], ExercisesModels.prototype, "createdBy", void 0);
|
|
129
|
+
_ts_decorate([
|
|
130
|
+
Column({
|
|
131
|
+
type: DataType.BOOLEAN,
|
|
132
|
+
allowNull: false,
|
|
133
|
+
defaultValue: false
|
|
134
|
+
})
|
|
135
|
+
], ExercisesModels.prototype, "isPublic", void 0);
|
|
136
|
+
_ts_decorate([
|
|
137
|
+
Column({
|
|
138
|
+
type: DataType.STRING(500),
|
|
139
|
+
allowNull: true
|
|
140
|
+
})
|
|
141
|
+
], ExercisesModels.prototype, "thumbnailUrl", void 0);
|
|
142
|
+
_ts_decorate([
|
|
143
|
+
HasMany(()=>TranslatedExerciseModel)
|
|
144
|
+
], ExercisesModels.prototype, "translatedExercises", void 0);
|
|
145
|
+
ExercisesModels = _ts_decorate([
|
|
146
|
+
Table
|
|
147
|
+
], ExercisesModels);
|
|
148
|
+
|
|
149
|
+
//# sourceMappingURL=ExerciseModels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/ExerciseModels.ts"],"sourcesContent":["import { Column, DataType, Default, HasMany, Model, Table } from \"sequelize-typescript\";\nimport type {ExerciseModel, ProgramTypes} from '../../models/ExerciseInterfaces.js';\nimport {TranslatedExerciseModel} from './TranslatedExerciseModel.js';\n\n@Table\nexport class ExercisesModels extends Model implements ExerciseModel {\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 @Column({ type: DataType.STRING, allowNull: false })\n declare name: string;\n\n @Column({ type: DataType.STRING, allowNull: true })\n declare restTime: string;\n\n @Column({ type: DataType.STRING(2048), allowNull: false })\n declare pointers: string;\n\n @Column({ type: DataType.BOOLEAN, allowNull: true })\n declare isCustom: boolean;\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare url: string;\n\n @Column({ type: DataType.ARRAY(DataType.STRING), allowNull: false })\n declare level: string[];\n\n @Column({ type: DataType.BOOLEAN, allowNull: false })\n declare hasPriority: boolean;\n\n @Column({ type: DataType.BOOLEAN, allowNull: false })\n declare isCompound: boolean;\n\n @Column({ type: DataType.BOOLEAN, allowNull: false })\n declare hasVariations: boolean;\n\n @Column({ type: DataType.BOOLEAN, allowNull: false })\n declare needsEquipment: boolean;\n\n @Column({ type: DataType.JSONB, allowNull: false })\n declare variations: object;\n\n @Column({ type: DataType.ARRAY(DataType.STRING), allowNull: false })\n declare muscles: string[];\n\n @Column({ type: DataType.BOOLEAN, allowNull: false })\n declare homeWorkout: boolean;\n\n @Column({ type: DataType.BOOLEAN, allowNull: false, defaultValue: false })\n declare isBandAssisted: boolean;\n\n @Column({ type: DataType.ARRAY(DataType.STRING), allowNull: false })\n declare programType: ProgramTypes[];\n\n @Column({ type: DataType.STRING, allowNull: false })\n declare graphData: \"reps\" | \"weight\";\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare imageUrl: string;\n\n @Column({ type: DataType.STRING, allowNull: true })\n declare createdBy: string | null;\n\n @Column({ type: DataType.BOOLEAN, allowNull: false, defaultValue: false })\n declare isPublic: boolean;\n\n @Column({ type: DataType.STRING(500), allowNull: true })\n declare thumbnailUrl: string | null;\n\n @HasMany(() => TranslatedExerciseModel)\n declare translatedExercises: TranslatedExerciseModel[];\n}\n"],"names":["Column","DataType","Default","HasMany","Model","Table","TranslatedExerciseModel","ExercisesModels","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","STRING","BOOLEAN","ARRAY","JSONB","TEXT"],"mappings":";;;;;;AAAA,SAASA,MAAM,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,EAAEC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AAExF,SAAQC,uBAAuB,QAAO,+BAA+B;AAGrE,OAAO,MAAMC,wBAAwBH;AAwErC;;qBAvEsBI;;QAEdC,MAAMR,SAASS,IAAI;QACnBC,cAAcV,SAASS,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;;QAINJ,MAAMR,SAASa,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMR,SAASa,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMR,SAASa,MAAM,CAAC;QAAOF,WAAW;;;;;QAGxCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASa,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMR,SAASe,KAAK,CAACf,SAASa,MAAM;QAAGF,WAAW;;;;;QAGlDH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASgB,KAAK;QAAEL,WAAW;;;;;QAGjCH,MAAMR,SAASe,KAAK,CAACf,SAASa,MAAM;QAAGF,WAAW;;;;;QAGlDH,MAAMR,SAASc,OAAO;QAAEH,WAAW;;;;;QAGnCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;QAAOD,cAAc;;;;;QAGxDF,MAAMR,SAASe,KAAK,CAACf,SAASa,MAAM;QAAGF,WAAW;;;;;QAGlDH,MAAMR,SAASa,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMR,SAASiB,IAAI;QAAEN,WAAW;;;;;QAGhCH,MAAMR,SAASa,MAAM;QAAEF,WAAW;;;;;QAGlCH,MAAMR,SAASc,OAAO;QAAEH,WAAW;QAAOD,cAAc;;;;;QAGxDF,MAAMR,SAASa,MAAM,CAAC;QAAMF,WAAW;;;;gBAGlCN"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Workout } from './Workout.js';
|
|
2
|
+
import { Model } from "sequelize-typescript";
|
|
3
|
+
import { NonConsumableProgram } from '../nonconsprogram/NonConsumableProgram.js';
|
|
4
|
+
export declare class Program extends Model<Program> {
|
|
5
|
+
programId: string;
|
|
6
|
+
userUuid: string;
|
|
7
|
+
nonConsumableProgramUuid: string;
|
|
8
|
+
startDate: string;
|
|
9
|
+
programType: string;
|
|
10
|
+
createdAt: Date;
|
|
11
|
+
workout: Workout[];
|
|
12
|
+
nonConsumableProgram: NonConsumableProgram;
|
|
13
|
+
static deleteRelatedWorkouts(instance: Program): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=Program.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Program.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/program/Program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAML,KAAK,EAEN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAE/E,qBACa,OAAQ,SAAQ,KAAK,CAAC,OAAO,CAAC;IAQjC,SAAS,EAAE,MAAM,CAAC;IAGlB,QAAQ,EAAE,MAAM,CAAC;IAIjB,wBAAwB,EAAE,MAAM,CAAC;IAGjC,SAAS,EAAE,MAAM,CAAC;IAGlB,WAAW,EAAE,MAAM,CAAC;IAGpB,SAAS,EAAE,IAAI,CAAC;IAGhB,OAAO,EAAE,OAAO,EAAE,CAAC;IAGnB,oBAAoB,EAAE,oBAAoB,CAAC;WAGtC,qBAAqB,CAAC,QAAQ,EAAE,OAAO;CAOrD"}
|
|
@@ -0,0 +1,76 @@
|
|
|
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 { Workout } from "./Workout.js";
|
|
8
|
+
import { BeforeDestroy, BelongsTo, Column, DataType, Default, ForeignKey, HasMany, Model, Table } from "sequelize-typescript";
|
|
9
|
+
import { NonConsumableProgram } from "../nonconsprogram/NonConsumableProgram.js";
|
|
10
|
+
export class Program extends Model {
|
|
11
|
+
static async deleteRelatedWorkouts(instance) {
|
|
12
|
+
const workouts = await instance.$get("workout", {
|
|
13
|
+
scope: "workout"
|
|
14
|
+
});
|
|
15
|
+
for (const workout of workouts){
|
|
16
|
+
await workout.destroy();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
_ts_decorate([
|
|
21
|
+
Default(DataType.UUIDV4),
|
|
22
|
+
Column({
|
|
23
|
+
type: DataType.UUID,
|
|
24
|
+
defaultValue: DataType.UUID,
|
|
25
|
+
allowNull: false,
|
|
26
|
+
primaryKey: true
|
|
27
|
+
})
|
|
28
|
+
], Program.prototype, "programId", void 0);
|
|
29
|
+
_ts_decorate([
|
|
30
|
+
Column({
|
|
31
|
+
type: DataType.UUID,
|
|
32
|
+
allowNull: false
|
|
33
|
+
})
|
|
34
|
+
], Program.prototype, "userUuid", void 0);
|
|
35
|
+
_ts_decorate([
|
|
36
|
+
ForeignKey(()=>NonConsumableProgram),
|
|
37
|
+
Column({
|
|
38
|
+
type: DataType.UUID,
|
|
39
|
+
allowNull: true
|
|
40
|
+
})
|
|
41
|
+
], Program.prototype, "nonConsumableProgramUuid", void 0);
|
|
42
|
+
_ts_decorate([
|
|
43
|
+
Column({
|
|
44
|
+
type: DataType.TEXT,
|
|
45
|
+
allowNull: false
|
|
46
|
+
})
|
|
47
|
+
], Program.prototype, "startDate", void 0);
|
|
48
|
+
_ts_decorate([
|
|
49
|
+
Column({
|
|
50
|
+
type: DataType.TEXT,
|
|
51
|
+
allowNull: true
|
|
52
|
+
})
|
|
53
|
+
], Program.prototype, "programType", void 0);
|
|
54
|
+
_ts_decorate([
|
|
55
|
+
Column({
|
|
56
|
+
type: DataType.DATE,
|
|
57
|
+
allowNull: true
|
|
58
|
+
})
|
|
59
|
+
], Program.prototype, "createdAt", void 0);
|
|
60
|
+
_ts_decorate([
|
|
61
|
+
HasMany(()=>Workout, {
|
|
62
|
+
foreignKey: "programId",
|
|
63
|
+
onDelete: "CASCADE"
|
|
64
|
+
})
|
|
65
|
+
], Program.prototype, "workout", void 0);
|
|
66
|
+
_ts_decorate([
|
|
67
|
+
BelongsTo(()=>NonConsumableProgram)
|
|
68
|
+
], Program.prototype, "nonConsumableProgram", void 0);
|
|
69
|
+
_ts_decorate([
|
|
70
|
+
BeforeDestroy
|
|
71
|
+
], Program, "deleteRelatedWorkouts", null);
|
|
72
|
+
Program = _ts_decorate([
|
|
73
|
+
Table
|
|
74
|
+
], Program);
|
|
75
|
+
|
|
76
|
+
//# sourceMappingURL=Program.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/Program.ts"],"sourcesContent":["import { Workout } from './Workout.js';\nimport {\n BeforeDestroy, BelongsTo,\n Column,\n DataType,\n Default, ForeignKey,\n HasMany,\n Model,\n Table,\n} from \"sequelize-typescript\";\nimport {NonConsumableProgram} from '../nonconsprogram/NonConsumableProgram.js';\n\n@Table\nexport class Program extends Model<Program> {\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n defaultValue: DataType.UUID,\n allowNull: false,\n primaryKey: true,\n })\n declare programId: string;\n\n @Column({ type: DataType.UUID, allowNull: false })\n declare userUuid: string;\n\n @ForeignKey(() => NonConsumableProgram)\n @Column({type: DataType.UUID, allowNull: true})\n declare nonConsumableProgramUuid: string;\n\n @Column({ type: DataType.TEXT, allowNull: false })\n declare startDate: string;\n\n @Column({ type: DataType.TEXT, allowNull: true })\n declare programType: string;\n\n @Column({ type: DataType.DATE, allowNull: true })\n declare createdAt: Date;\n\n @HasMany(() => Workout, { foreignKey: \"programId\", onDelete: \"CASCADE\" })\n declare workout: Workout[];\n\n @BelongsTo(() => NonConsumableProgram)\n declare nonConsumableProgram: NonConsumableProgram;\n\n @BeforeDestroy\n static async deleteRelatedWorkouts(instance: Program) {\n const workouts = await instance.$get(\"workout\", { scope: \"workout\" });\n\n for (const workout of workouts) {\n await workout.destroy();\n }\n }\n}\n"],"names":["Workout","BeforeDestroy","BelongsTo","Column","DataType","Default","ForeignKey","HasMany","Model","Table","NonConsumableProgram","Program","deleteRelatedWorkouts","instance","workouts","$get","scope","workout","destroy","UUIDV4","type","UUID","defaultValue","allowNull","primaryKey","TEXT","DATE","foreignKey","onDelete"],"mappings":";;;;;;AAAA,SAASA,OAAO,QAAQ,eAAe;AACvC,SACEC,aAAa,EAAEC,SAAS,EACxBC,MAAM,EACNC,QAAQ,EACRC,OAAO,EAAEC,UAAU,EACnBC,OAAO,EACPC,KAAK,EACLC,KAAK,QACA,uBAAuB;AAC9B,SAAQC,oBAAoB,QAAO,4CAA4C;AAG/E,OAAO,MAAMC,gBAAgBH;IAgC3B,aACaI,sBAAsBC,QAAiB,EAAE;QACpD,MAAMC,WAAW,MAAMD,SAASE,IAAI,CAAC,WAAW;YAAEC,OAAO;QAAU;QAEnE,KAAK,MAAMC,WAAWH,SAAU;YAC9B,MAAMG,QAAQC,OAAO;QACvB;IACF;AACF;;qBAvCoBC;;QAEhBC,MAAMhB,SAASiB,IAAI;QACnBC,cAAclB,SAASiB,IAAI;QAC3BE,WAAW;QACXC,YAAY;;;;;QAIJJ,MAAMhB,SAASiB,IAAI;QAAEE,WAAW;;;;mBAGxBb;;QACTU,MAAMhB,SAASiB,IAAI;QAAEE,WAAW;;;;;QAG/BH,MAAMhB,SAASqB,IAAI;QAAEF,WAAW;;;;;QAGhCH,MAAMhB,SAASqB,IAAI;QAAEF,WAAW;;;;;QAGhCH,MAAMhB,SAASsB,IAAI;QAAEH,WAAW;;;;gBAG3BvB;QAAW2B,YAAY;QAAaC,UAAU;;;;kBAG5ClB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Model } from 'sequelize-typescript';
|
|
2
|
+
import { Exercise } from "./Exercise.js";
|
|
3
|
+
export declare enum ProgressFieldType {
|
|
4
|
+
NUMBER = "number",
|
|
5
|
+
TEXT = "text",
|
|
6
|
+
SELECT = "select",
|
|
7
|
+
TIME = "time",
|
|
8
|
+
BOOLEAN = "boolean"
|
|
9
|
+
}
|
|
10
|
+
export interface ProgressFieldValue {
|
|
11
|
+
fieldName: string;
|
|
12
|
+
fieldType: ProgressFieldType;
|
|
13
|
+
value: string | number | boolean;
|
|
14
|
+
options?: string[];
|
|
15
|
+
}
|
|
16
|
+
export declare class ProgressEntry extends Model<ProgressEntry> {
|
|
17
|
+
uuid: string;
|
|
18
|
+
exerciseUuid: string;
|
|
19
|
+
exerciseModelUuid?: string;
|
|
20
|
+
recordedAt: Date;
|
|
21
|
+
setNumber: number;
|
|
22
|
+
fields: ProgressFieldValue[];
|
|
23
|
+
metricSystem?: 'Metric' | 'Imperial' | null;
|
|
24
|
+
exercise: Exercise;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ProgressEntry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressEntry.d.ts","sourceRoot":"","sources":["../../../../src/lib/dbmodels/program/ProgressEntry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,EAAkD,MAAM,sBAAsB,CAAC;AAC3G,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC,oBAAY,iBAAiB;IACzB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,OAAO,YAAY;CACtB;AAED,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,qBACa,aAAc,SAAQ,KAAK,CAAC,aAAa,CAAC;IAM3C,IAAI,EAAE,MAAM,CAAC;IAQb,YAAY,EAAE,MAAM,CAAC;IAQrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAO3B,UAAU,EAAE,IAAI,CAAC;IAOjB,SAAS,EAAE,MAAM,CAAC;IAOlB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAM7B,YAAY,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;IAG5C,QAAQ,EAAE,QAAQ,CAAC;CAC9B"}
|
|
@@ -0,0 +1,77 @@
|
|
|
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, Column, Model, ForeignKey, Index, DataType, Default, BelongsTo } from "sequelize-typescript";
|
|
8
|
+
import { Exercise } from "./Exercise.js";
|
|
9
|
+
export var ProgressFieldType = /*#__PURE__*/ function(ProgressFieldType) {
|
|
10
|
+
ProgressFieldType["NUMBER"] = "number";
|
|
11
|
+
ProgressFieldType["TEXT"] = "text";
|
|
12
|
+
ProgressFieldType["SELECT"] = "select";
|
|
13
|
+
ProgressFieldType["TIME"] = "time";
|
|
14
|
+
ProgressFieldType["BOOLEAN"] = "boolean";
|
|
15
|
+
return ProgressFieldType;
|
|
16
|
+
}({});
|
|
17
|
+
export class ProgressEntry extends Model {
|
|
18
|
+
}
|
|
19
|
+
_ts_decorate([
|
|
20
|
+
Default(DataType.UUIDV4),
|
|
21
|
+
Column({
|
|
22
|
+
type: DataType.UUID,
|
|
23
|
+
primaryKey: true
|
|
24
|
+
})
|
|
25
|
+
], ProgressEntry.prototype, "uuid", void 0);
|
|
26
|
+
_ts_decorate([
|
|
27
|
+
Index,
|
|
28
|
+
ForeignKey(()=>Exercise),
|
|
29
|
+
Column({
|
|
30
|
+
type: DataType.UUID,
|
|
31
|
+
allowNull: false
|
|
32
|
+
})
|
|
33
|
+
], ProgressEntry.prototype, "exerciseUuid", void 0);
|
|
34
|
+
_ts_decorate([
|
|
35
|
+
Index,
|
|
36
|
+
Column({
|
|
37
|
+
type: DataType.UUID,
|
|
38
|
+
allowNull: true
|
|
39
|
+
})
|
|
40
|
+
], ProgressEntry.prototype, "exerciseModelUuid", void 0);
|
|
41
|
+
_ts_decorate([
|
|
42
|
+
Index,
|
|
43
|
+
Column({
|
|
44
|
+
type: DataType.DATE,
|
|
45
|
+
allowNull: false
|
|
46
|
+
})
|
|
47
|
+
], ProgressEntry.prototype, "recordedAt", void 0);
|
|
48
|
+
_ts_decorate([
|
|
49
|
+
Column({
|
|
50
|
+
type: DataType.INTEGER,
|
|
51
|
+
allowNull: false,
|
|
52
|
+
defaultValue: 1
|
|
53
|
+
})
|
|
54
|
+
], ProgressEntry.prototype, "setNumber", void 0);
|
|
55
|
+
_ts_decorate([
|
|
56
|
+
Column({
|
|
57
|
+
type: DataType.JSONB,
|
|
58
|
+
allowNull: false,
|
|
59
|
+
defaultValue: []
|
|
60
|
+
})
|
|
61
|
+
], ProgressEntry.prototype, "fields", void 0);
|
|
62
|
+
_ts_decorate([
|
|
63
|
+
Column({
|
|
64
|
+
type: DataType.STRING,
|
|
65
|
+
allowNull: true
|
|
66
|
+
})
|
|
67
|
+
], ProgressEntry.prototype, "metricSystem", void 0);
|
|
68
|
+
_ts_decorate([
|
|
69
|
+
BelongsTo(()=>Exercise)
|
|
70
|
+
], ProgressEntry.prototype, "exercise", void 0);
|
|
71
|
+
ProgressEntry = _ts_decorate([
|
|
72
|
+
Table({
|
|
73
|
+
timestamps: true
|
|
74
|
+
})
|
|
75
|
+
], ProgressEntry);
|
|
76
|
+
|
|
77
|
+
//# sourceMappingURL=ProgressEntry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/dbmodels/program/ProgressEntry.ts"],"sourcesContent":["import {Table, Column, Model, ForeignKey, Index, DataType, Default, BelongsTo} from 'sequelize-typescript';\nimport {Exercise} from \"./Exercise.js\";\n\nexport enum ProgressFieldType {\n NUMBER = 'number',\n TEXT = 'text',\n SELECT = 'select',\n TIME = 'time',\n BOOLEAN = 'boolean'\n}\n\nexport interface ProgressFieldValue {\n fieldName: string;\n fieldType: ProgressFieldType;\n value: string | number | boolean;\n options?: string[];\n}\n\n@Table({ timestamps: true })\nexport class ProgressEntry extends Model<ProgressEntry> {\n @Default(DataType.UUIDV4)\n @Column({\n type: DataType.UUID,\n primaryKey: true,\n })\n declare uuid: string;\n\n @Index\n @ForeignKey(() => Exercise)\n @Column({\n type: DataType.UUID,\n allowNull: false,\n })\n declare exerciseUuid: string;\n\n // Programs v2: Reference to ExerciseModel for historical aggregation\n @Index\n @Column({\n type: DataType.UUID,\n allowNull: true,\n })\n declare exerciseModelUuid?: string;\n\n @Index\n @Column({\n type: DataType.DATE,\n allowNull: false,\n })\n declare recordedAt: Date;\n\n @Column({\n type: DataType.INTEGER,\n allowNull: false,\n defaultValue: 1,\n })\n declare setNumber: number;\n\n @Column({\n type: DataType.JSONB,\n allowNull: false,\n defaultValue: [],\n })\n declare fields: ProgressFieldValue[];\n\n @Column({\n type: DataType.STRING,\n allowNull: true,\n })\n declare metricSystem?: 'Metric' | 'Imperial' | null;\n\n @BelongsTo(() => Exercise)\n declare exercise: Exercise;\n}\n"],"names":["Table","Column","Model","ForeignKey","Index","DataType","Default","BelongsTo","Exercise","ProgressFieldType","ProgressEntry","UUIDV4","type","UUID","primaryKey","allowNull","DATE","INTEGER","defaultValue","JSONB","STRING","timestamps"],"mappings":";;;;;;AAAA,SAAQA,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,SAAS,QAAO,uBAAuB;AAC3G,SAAQC,QAAQ,QAAO,gBAAgB;AAEvC,OAAO,IAAA,AAAKC,2CAAAA;;;;;;WAAAA;MAMX;AAUD,OAAO,MAAMC,sBAAsBR;AAqDnC;;qBApDsBS;;QAEdC,MAAMP,SAASQ,IAAI;QACnBC,YAAY;;;;;mBAKEN;;QAEdI,MAAMP,SAASQ,IAAI;QACnBE,WAAW;;;;;;QAOXH,MAAMP,SAASQ,IAAI;QACnBE,WAAW;;;;;;QAMXH,MAAMP,SAASW,IAAI;QACnBD,WAAW;;;;;QAKXH,MAAMP,SAASY,OAAO;QACtBF,WAAW;QACXG,cAAc;;;;;QAKdN,MAAMP,SAASc,KAAK;QACpBJ,WAAW;QACXG,cAAc,EAAE;;;;;QAKhBN,MAAMP,SAASe,MAAM;QACrBL,WAAW;;;;kBAIEP;;;;QApDZa,YAAY"}
|
|
@@ -0,0 +1,33 @@
|
|
|
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 { CustomProgramBlueprint } from "./CustomProgramBlueprint.js";
|
|
9
|
+
export class RestDay extends Model {
|
|
10
|
+
}
|
|
11
|
+
_ts_decorate([
|
|
12
|
+
PrimaryKey,
|
|
13
|
+
Default(DataType.UUIDV4),
|
|
14
|
+
Column(DataType.UUID)
|
|
15
|
+
], RestDay.prototype, "uuid", void 0);
|
|
16
|
+
_ts_decorate([
|
|
17
|
+
Index,
|
|
18
|
+
ForeignKey(()=>CustomProgramBlueprint),
|
|
19
|
+
Column(DataType.UUID)
|
|
20
|
+
], RestDay.prototype, "blueprintUuid", void 0);
|
|
21
|
+
_ts_decorate([
|
|
22
|
+
Column(DataType.BOOLEAN)
|
|
23
|
+
], RestDay.prototype, "isFinished", void 0);
|
|
24
|
+
_ts_decorate([
|
|
25
|
+
Column(DataType.INTEGER)
|
|
26
|
+
], RestDay.prototype, "order", void 0);
|
|
27
|
+
RestDay = _ts_decorate([
|
|
28
|
+
Table({
|
|
29
|
+
timestamps: true
|
|
30
|
+
})
|
|
31
|
+
], RestDay);
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=RestDay.js.map
|