@abyss-project/training 1.0.0

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.
Files changed (242) hide show
  1. package/.eslintrc.js +34 -0
  2. package/README.md +2 -0
  3. package/dist/api/abyss.admin.api.d.ts +2 -0
  4. package/dist/api/abyss.admin.api.js +8 -0
  5. package/dist/api/analytics.api.d.ts +11 -0
  6. package/dist/api/analytics.api.js +18 -0
  7. package/dist/api/index.d.ts +7 -0
  8. package/dist/api/index.js +23 -0
  9. package/dist/api/monitor.api.d.ts +2 -0
  10. package/dist/api/monitor.api.js +8 -0
  11. package/dist/api/project-analytics.api.d.ts +7 -0
  12. package/dist/api/project-analytics.api.js +16 -0
  13. package/dist/api/project-document.admin.api.d.ts +6 -0
  14. package/dist/api/project-document.admin.api.js +24 -0
  15. package/dist/api/project-document.api.d.ts +9 -0
  16. package/dist/api/project-document.api.js +38 -0
  17. package/dist/api/project-event.api.d.ts +7 -0
  18. package/dist/api/project-event.api.js +28 -0
  19. package/dist/api/project-follower.admin.api.d.ts +4 -0
  20. package/dist/api/project-follower.admin.api.js +18 -0
  21. package/dist/api/project-follower.api.d.ts +5 -0
  22. package/dist/api/project-follower.api.js +20 -0
  23. package/dist/api/project-post.admin.api.d.ts +6 -0
  24. package/dist/api/project-post.admin.api.js +24 -0
  25. package/dist/api/project-post.api.d.ts +6 -0
  26. package/dist/api/project-post.api.js +24 -0
  27. package/dist/api/project-presentation.admin.api.d.ts +4 -0
  28. package/dist/api/project-presentation.admin.api.js +16 -0
  29. package/dist/api/project-presentation.api.d.ts +4 -0
  30. package/dist/api/project-presentation.api.js +16 -0
  31. package/dist/api/project-social-network.admin.api.d.ts +7 -0
  32. package/dist/api/project-social-network.admin.api.js +28 -0
  33. package/dist/api/project-social-network.api.d.ts +6 -0
  34. package/dist/api/project-social-network.api.js +24 -0
  35. package/dist/api/project-star.admin.api.d.ts +4 -0
  36. package/dist/api/project-star.admin.api.js +18 -0
  37. package/dist/api/project-star.api.d.ts +5 -0
  38. package/dist/api/project-star.api.js +20 -0
  39. package/dist/api/project.admin.api.d.ts +11 -0
  40. package/dist/api/project.admin.api.js +46 -0
  41. package/dist/api/project.api.d.ts +13 -0
  42. package/dist/api/project.api.js +56 -0
  43. package/dist/api/project.public.api.d.ts +8 -0
  44. package/dist/api/project.public.api.js +32 -0
  45. package/dist/api/user.admin.api.d.ts +5 -0
  46. package/dist/api/user.admin.api.js +23 -0
  47. package/dist/api/user.api.d.ts +4 -0
  48. package/dist/api/user.api.js +17 -0
  49. package/dist/api/workout-session.api.d.ts +9 -0
  50. package/dist/api/workout-session.api.js +38 -0
  51. package/dist/api/workout-template.api.d.ts +7 -0
  52. package/dist/api/workout-template.api.js +28 -0
  53. package/dist/api/workout-template.public.api.d.ts +3 -0
  54. package/dist/api/workout-template.public.api.js +12 -0
  55. package/dist/constants/index.d.ts +1 -0
  56. package/dist/constants/index.js +17 -0
  57. package/dist/constants/project.constant.d.ts +4 -0
  58. package/dist/constants/project.constant.js +7 -0
  59. package/dist/constants/training.constant.d.ts +2 -0
  60. package/dist/constants/training.constant.js +5 -0
  61. package/dist/index.d.ts +22 -0
  62. package/dist/index.js +99 -0
  63. package/dist/types/enum/api-error.enum.d.ts +21 -0
  64. package/dist/types/enum/api-error.enum.js +26 -0
  65. package/dist/types/enum/equipment-type.enum.d.ts +11 -0
  66. package/dist/types/enum/equipment-type.enum.js +15 -0
  67. package/dist/types/enum/exercise-group-type.enum.d.ts +9 -0
  68. package/dist/types/enum/exercise-group-type.enum.js +13 -0
  69. package/dist/types/enum/exercise-type.enum.d.ts +8 -0
  70. package/dist/types/enum/exercise-type.enum.js +12 -0
  71. package/dist/types/enum/index.d.ts +6 -0
  72. package/dist/types/enum/index.js +22 -0
  73. package/dist/types/enum/muscle-group.enum.d.ts +16 -0
  74. package/dist/types/enum/muscle-group.enum.js +20 -0
  75. package/dist/types/enum/project-category.enum.d.ts +63 -0
  76. package/dist/types/enum/project-category.enum.js +67 -0
  77. package/dist/types/enum/project-document-type.enum.d.ts +6 -0
  78. package/dist/types/enum/project-document-type.enum.js +10 -0
  79. package/dist/types/enum/project-language.enum.d.ts +40 -0
  80. package/dist/types/enum/project-language.enum.js +44 -0
  81. package/dist/types/enum/project-presentation-type.enum.d.ts +3 -0
  82. package/dist/types/enum/project-presentation-type.enum.js +7 -0
  83. package/dist/types/enum/project-status.enum.d.ts +5 -0
  84. package/dist/types/enum/project-status.enum.js +9 -0
  85. package/dist/types/enum/workout-session-status.enum.d.ts +7 -0
  86. package/dist/types/enum/workout-session-status.enum.js +11 -0
  87. package/dist/types/index.d.ts +2 -0
  88. package/dist/types/index.js +18 -0
  89. package/dist/types/interface/api/index.d.ts +19 -0
  90. package/dist/types/interface/api/index.js +35 -0
  91. package/dist/types/interface/api/requests/abyss.admin.request.d.ts +3 -0
  92. package/dist/types/interface/api/requests/abyss.admin.request.js +2 -0
  93. package/dist/types/interface/api/requests/project-analytics.request.d.ts +19 -0
  94. package/dist/types/interface/api/requests/project-analytics.request.js +2 -0
  95. package/dist/types/interface/api/requests/project-document.admin.request.d.ts +18 -0
  96. package/dist/types/interface/api/requests/project-document.admin.request.js +2 -0
  97. package/dist/types/interface/api/requests/project-document.request.d.ts +52 -0
  98. package/dist/types/interface/api/requests/project-document.request.js +2 -0
  99. package/dist/types/interface/api/requests/project-event.request.d.ts +30 -0
  100. package/dist/types/interface/api/requests/project-event.request.js +2 -0
  101. package/dist/types/interface/api/requests/project-follower.admin.request.d.ts +13 -0
  102. package/dist/types/interface/api/requests/project-follower.admin.request.js +2 -0
  103. package/dist/types/interface/api/requests/project-follower.request.d.ts +12 -0
  104. package/dist/types/interface/api/requests/project-follower.request.js +2 -0
  105. package/dist/types/interface/api/requests/project-post-analytics.request.d.ts +4 -0
  106. package/dist/types/interface/api/requests/project-post-analytics.request.js +2 -0
  107. package/dist/types/interface/api/requests/project-post.admin.request.d.ts +24 -0
  108. package/dist/types/interface/api/requests/project-post.admin.request.js +2 -0
  109. package/dist/types/interface/api/requests/project-post.request.d.ts +28 -0
  110. package/dist/types/interface/api/requests/project-post.request.js +2 -0
  111. package/dist/types/interface/api/requests/project-presentation.admin.request.d.ts +12 -0
  112. package/dist/types/interface/api/requests/project-presentation.admin.request.js +2 -0
  113. package/dist/types/interface/api/requests/project-presentation.request.d.ts +13 -0
  114. package/dist/types/interface/api/requests/project-presentation.request.js +2 -0
  115. package/dist/types/interface/api/requests/project-social-network.admin.request.d.ts +30 -0
  116. package/dist/types/interface/api/requests/project-social-network.admin.request.js +2 -0
  117. package/dist/types/interface/api/requests/project-social-network.request.d.ts +28 -0
  118. package/dist/types/interface/api/requests/project-social-network.request.js +2 -0
  119. package/dist/types/interface/api/requests/project-star.admin.request.d.ts +13 -0
  120. package/dist/types/interface/api/requests/project-star.admin.request.js +2 -0
  121. package/dist/types/interface/api/requests/project-star.request.d.ts +12 -0
  122. package/dist/types/interface/api/requests/project-star.request.js +2 -0
  123. package/dist/types/interface/api/requests/project.admin.request.d.ts +69 -0
  124. package/dist/types/interface/api/requests/project.admin.request.js +2 -0
  125. package/dist/types/interface/api/requests/project.public.request.d.ts +38 -0
  126. package/dist/types/interface/api/requests/project.public.request.js +2 -0
  127. package/dist/types/interface/api/requests/project.request.d.ts +70 -0
  128. package/dist/types/interface/api/requests/project.request.js +2 -0
  129. package/dist/types/interface/api/requests/storage.admin.request.d.ts +3 -0
  130. package/dist/types/interface/api/requests/storage.admin.request.js +2 -0
  131. package/dist/types/interface/api/requests/user.admin.request.d.ts +14 -0
  132. package/dist/types/interface/api/requests/user.admin.request.js +2 -0
  133. package/dist/types/interface/api/requests/user.request.d.ts +2 -0
  134. package/dist/types/interface/api/requests/user.request.js +2 -0
  135. package/dist/types/interface/api/requests/workout-session.request.d.ts +74 -0
  136. package/dist/types/interface/api/requests/workout-session.request.js +2 -0
  137. package/dist/types/interface/api/requests/workout-template.public.request.d.ts +15 -0
  138. package/dist/types/interface/api/requests/workout-template.public.request.js +2 -0
  139. package/dist/types/interface/api/requests/workout-template.request.d.ts +62 -0
  140. package/dist/types/interface/api/requests/workout-template.request.js +2 -0
  141. package/dist/types/interface/api/responses/abyss.admin.response.d.ts +6 -0
  142. package/dist/types/interface/api/responses/abyss.admin.response.js +2 -0
  143. package/dist/types/interface/api/responses/monitor.response.d.ts +7 -0
  144. package/dist/types/interface/api/responses/monitor.response.js +2 -0
  145. package/dist/types/interface/api/responses/project-analytics.response.d.ts +77 -0
  146. package/dist/types/interface/api/responses/project-analytics.response.js +2 -0
  147. package/dist/types/interface/api/responses/project-document.admin.response.d.ts +17 -0
  148. package/dist/types/interface/api/responses/project-document.admin.response.js +2 -0
  149. package/dist/types/interface/api/responses/project-document.response.d.ts +25 -0
  150. package/dist/types/interface/api/responses/project-document.response.js +2 -0
  151. package/dist/types/interface/api/responses/project-event.response.d.ts +17 -0
  152. package/dist/types/interface/api/responses/project-event.response.js +2 -0
  153. package/dist/types/interface/api/responses/project-follower.admin.response.d.ts +9 -0
  154. package/dist/types/interface/api/responses/project-follower.admin.response.js +2 -0
  155. package/dist/types/interface/api/responses/project-follower.response.d.ts +10 -0
  156. package/dist/types/interface/api/responses/project-follower.response.js +2 -0
  157. package/dist/types/interface/api/responses/project-post-analytics.response.d.ts +34 -0
  158. package/dist/types/interface/api/responses/project-post-analytics.response.js +2 -0
  159. package/dist/types/interface/api/responses/project-post.admin.response.d.ts +17 -0
  160. package/dist/types/interface/api/responses/project-post.admin.response.js +2 -0
  161. package/dist/types/interface/api/responses/project-post.response.d.ts +17 -0
  162. package/dist/types/interface/api/responses/project-post.response.js +2 -0
  163. package/dist/types/interface/api/responses/project-presentation.admin.response.d.ts +12 -0
  164. package/dist/types/interface/api/responses/project-presentation.admin.response.js +2 -0
  165. package/dist/types/interface/api/responses/project-presentation.response.d.ts +12 -0
  166. package/dist/types/interface/api/responses/project-presentation.response.js +2 -0
  167. package/dist/types/interface/api/responses/project-social-network.admin.response.d.ts +21 -0
  168. package/dist/types/interface/api/responses/project-social-network.admin.response.js +2 -0
  169. package/dist/types/interface/api/responses/project-social-network.response.d.ts +20 -0
  170. package/dist/types/interface/api/responses/project-social-network.response.js +2 -0
  171. package/dist/types/interface/api/responses/project-star.admin.response.d.ts +9 -0
  172. package/dist/types/interface/api/responses/project-star.admin.response.js +2 -0
  173. package/dist/types/interface/api/responses/project-star.response.d.ts +10 -0
  174. package/dist/types/interface/api/responses/project-star.response.js +2 -0
  175. package/dist/types/interface/api/responses/project.admin.response.d.ts +39 -0
  176. package/dist/types/interface/api/responses/project.admin.response.js +2 -0
  177. package/dist/types/interface/api/responses/project.public.response.d.ts +46 -0
  178. package/dist/types/interface/api/responses/project.public.response.js +2 -0
  179. package/dist/types/interface/api/responses/project.response.d.ts +76 -0
  180. package/dist/types/interface/api/responses/project.response.js +2 -0
  181. package/dist/types/interface/api/responses/storage.admin.response.d.ts +3 -0
  182. package/dist/types/interface/api/responses/storage.admin.response.js +2 -0
  183. package/dist/types/interface/api/responses/user.admin.response.d.ts +14 -0
  184. package/dist/types/interface/api/responses/user.admin.response.js +2 -0
  185. package/dist/types/interface/api/responses/user.response.d.ts +13 -0
  186. package/dist/types/interface/api/responses/user.response.js +2 -0
  187. package/dist/types/interface/api/responses/workout-session.response.d.ts +26 -0
  188. package/dist/types/interface/api/responses/workout-session.response.js +2 -0
  189. package/dist/types/interface/api/responses/workout-template.public.response.d.ts +7 -0
  190. package/dist/types/interface/api/responses/workout-template.public.response.js +2 -0
  191. package/dist/types/interface/api/responses/workout-template.response.d.ts +18 -0
  192. package/dist/types/interface/api/responses/workout-template.response.js +2 -0
  193. package/dist/types/interface/api/type-message/api-error.d.ts +8 -0
  194. package/dist/types/interface/api/type-message/api-error.js +2 -0
  195. package/dist/types/interface/api/type-message/base-order.d.ts +4 -0
  196. package/dist/types/interface/api/type-message/base-order.js +2 -0
  197. package/dist/types/interface/api/type-message/base-paginate.d.ts +10 -0
  198. package/dist/types/interface/api/type-message/base-paginate.js +2 -0
  199. package/dist/types/interface/api/type-message/response.d.ts +5 -0
  200. package/dist/types/interface/api/type-message/response.js +2 -0
  201. package/dist/types/interface/index.d.ts +7 -0
  202. package/dist/types/interface/index.js +23 -0
  203. package/dist/types/interface/models/exercise-set.model.d.ts +26 -0
  204. package/dist/types/interface/models/exercise-set.model.js +2 -0
  205. package/dist/types/interface/models/exercise.model.d.ts +23 -0
  206. package/dist/types/interface/models/exercise.model.js +2 -0
  207. package/dist/types/interface/models/project-analytics.model.d.ts +28 -0
  208. package/dist/types/interface/models/project-analytics.model.js +15 -0
  209. package/dist/types/interface/models/project-document.model.d.ts +19 -0
  210. package/dist/types/interface/models/project-document.model.js +2 -0
  211. package/dist/types/interface/models/project-event.model.d.ts +11 -0
  212. package/dist/types/interface/models/project-event.model.js +2 -0
  213. package/dist/types/interface/models/project-follower.model.d.ts +11 -0
  214. package/dist/types/interface/models/project-follower.model.js +2 -0
  215. package/dist/types/interface/models/project-post.model.d.ts +10 -0
  216. package/dist/types/interface/models/project-post.model.js +2 -0
  217. package/dist/types/interface/models/project-presentation.model.d.ts +12 -0
  218. package/dist/types/interface/models/project-presentation.model.js +2 -0
  219. package/dist/types/interface/models/project-social-network.model.d.ts +11 -0
  220. package/dist/types/interface/models/project-social-network.model.js +2 -0
  221. package/dist/types/interface/models/project-star.model.d.ts +11 -0
  222. package/dist/types/interface/models/project-star.model.js +2 -0
  223. package/dist/types/interface/models/project-view.model.d.ts +13 -0
  224. package/dist/types/interface/models/project-view.model.js +2 -0
  225. package/dist/types/interface/models/project.model.d.ts +37 -0
  226. package/dist/types/interface/models/project.model.js +2 -0
  227. package/dist/types/interface/models/user.model.d.ts +7 -0
  228. package/dist/types/interface/models/user.model.js +2 -0
  229. package/dist/types/interface/models/workout-exercise.model.d.ts +21 -0
  230. package/dist/types/interface/models/workout-exercise.model.js +2 -0
  231. package/dist/types/interface/models/workout-session.model.d.ts +21 -0
  232. package/dist/types/interface/models/workout-session.model.js +2 -0
  233. package/dist/types/interface/models/workout-template.model.d.ts +16 -0
  234. package/dist/types/interface/models/workout-template.model.js +2 -0
  235. package/dist/utils/css-sanitizer.utils.d.ts +2 -0
  236. package/dist/utils/css-sanitizer.utils.js +33 -0
  237. package/dist/utils/error.utils.d.ts +15 -0
  238. package/dist/utils/error.utils.js +24 -0
  239. package/dist/utils/index.d.ts +1 -0
  240. package/dist/utils/index.js +17 -0
  241. package/package.json +51 -0
  242. package/tsconfig.json +105 -0
@@ -0,0 +1,7 @@
1
+ import { BasePaginate, IResponse } from '..';
2
+ import { IWorkoutTemplate } from '../../models/workout-template.model';
3
+ export interface IGetWorkoutTemplatePublicData {
4
+ workoutTemplate: IWorkoutTemplate;
5
+ }
6
+ export type IGetWorkoutTemplatePublicResponse = IResponse<IGetWorkoutTemplatePublicData>;
7
+ export type IPaginateWorkoutTemplatePublicResponse = IResponse<BasePaginate<IWorkoutTemplate>>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,18 @@
1
+ import { IResponse, BasePaginate } from '..';
2
+ import { IWorkoutTemplate } from '../../models/workout-template.model';
3
+ export interface ICreateWorkoutTemplateData {
4
+ workoutTemplate: IWorkoutTemplate;
5
+ }
6
+ export type ICreateWorkoutTemplateResponse = IResponse<ICreateWorkoutTemplateData>;
7
+ export interface IGetWorkoutTemplateData {
8
+ workoutTemplate: IWorkoutTemplate;
9
+ }
10
+ export type IGetWorkoutTemplateResponse = IResponse<IGetWorkoutTemplateData>;
11
+ export type IPaginateWorkoutTemplateResponse = IResponse<BasePaginate<IWorkoutTemplate>>;
12
+ export interface IUpdateWorkoutTemplateData {
13
+ workoutTemplate: IWorkoutTemplate;
14
+ }
15
+ export type IUpdateWorkoutTemplateResponse = IResponse<IUpdateWorkoutTemplateData>;
16
+ export interface IDeleteWorkoutTemplateData {
17
+ }
18
+ export type IDeleteWorkoutTemplateResponse = IResponse<IDeleteWorkoutTemplateData>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ import { Code, ErrorType } from '../../../enum';
2
+ export interface IApiError {
3
+ type: ErrorType;
4
+ code: Code;
5
+ message: string;
6
+ params?: string;
7
+ field?: string;
8
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface BaseOrder {
2
+ orderBy?: string;
3
+ descending?: boolean;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ export interface BasePaginate<T> {
2
+ maxPages: number;
3
+ currentPage: number;
4
+ totalItems: number;
5
+ data: T[];
6
+ }
7
+ export interface QueryPaginate {
8
+ page?: number;
9
+ limit?: number;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import { IApiError } from './api-error';
2
+ export interface IResponse<T> {
3
+ data: T;
4
+ error?: IApiError | Error;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ export * from './models/user.model';
2
+ export * from './models/exercise.model';
3
+ export * from './models/workout-template.model';
4
+ export * from './models/workout-exercise.model';
5
+ export * from './models/workout-session.model';
6
+ export * from './models/exercise-set.model';
7
+ export * from './api';
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./models/user.model"), exports);
18
+ __exportStar(require("./models/exercise.model"), exports);
19
+ __exportStar(require("./models/workout-template.model"), exports);
20
+ __exportStar(require("./models/workout-exercise.model"), exports);
21
+ __exportStar(require("./models/workout-session.model"), exports);
22
+ __exportStar(require("./models/exercise-set.model"), exports);
23
+ __exportStar(require("./api"), exports);
@@ -0,0 +1,26 @@
1
+ import { IWorkoutSession } from './workout-session.model';
2
+ import { IExercise } from './exercise.model';
3
+ export interface IExerciseSet {
4
+ id?: string;
5
+ workoutSessionId: string;
6
+ exerciseId: string;
7
+ setNumber: number;
8
+ reps: number | null;
9
+ weight: number | null;
10
+ duration: number | null;
11
+ distance: number | null;
12
+ restTime: number | null;
13
+ rpe: number | null;
14
+ feeling: string | null;
15
+ isSkipped: boolean;
16
+ skipReason: string | null;
17
+ isWarmup: boolean;
18
+ isDropSet: boolean;
19
+ isFailure: boolean;
20
+ completedAt: Date | null;
21
+ notes: string | null;
22
+ createdAt?: Date;
23
+ updatedAt?: Date;
24
+ workoutSession?: IWorkoutSession;
25
+ exercise?: IExercise;
26
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,23 @@
1
+ import { ExerciseType } from '../../enum/exercise-type.enum';
2
+ import { MuscleGroup } from '../../enum/muscle-group.enum';
3
+ import { EquipmentType } from '../../enum/equipment-type.enum';
4
+ import { IUser } from './user.model';
5
+ import { IWorkoutExercise } from './workout-exercise.model';
6
+ export interface IExercise {
7
+ id?: string;
8
+ name: string;
9
+ description: string | null;
10
+ type: ExerciseType[];
11
+ primaryMuscleGroups: MuscleGroup[];
12
+ secondaryMuscleGroups: MuscleGroup[];
13
+ requiredEquipment: EquipmentType | null;
14
+ videoUrl: string | null;
15
+ imageUrl: string | null;
16
+ instructions: string | null;
17
+ userId: string | null;
18
+ isPublic: boolean;
19
+ createdAt?: Date;
20
+ updatedAt?: Date;
21
+ user?: IUser;
22
+ workoutExercise?: IWorkoutExercise[];
23
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,28 @@
1
+ import { IProject } from './project.model';
2
+ import { IUser } from './user.model';
3
+ import { IProjectPost } from './project-post.model';
4
+ export declare enum ProjectAnalyticsEventType {
5
+ CONTACT_CLICK = "contact_click",
6
+ JOIN_CLICK = "join_click",
7
+ ACCESS_CLICK = "access_click",
8
+ STAR_ADD = "star_add",
9
+ STAR_REMOVE = "star_remove",
10
+ FOLLOWER_ADD = "follower_add",
11
+ FOLLOWER_REMOVE = "follower_remove",
12
+ POST_VIEW = "post_view",
13
+ PROJECT_VIEW = "project_view"
14
+ }
15
+ export interface IProjectAnalytics {
16
+ id: string;
17
+ projectId: string;
18
+ userId: string | null;
19
+ anonymousId: string;
20
+ eventType: ProjectAnalyticsEventType | string;
21
+ projectPostId: string | null;
22
+ metadata: Record<string, any> | null;
23
+ createdAt?: Date;
24
+ updatedAt?: Date;
25
+ project?: IProject;
26
+ user?: IUser | null;
27
+ projectPost?: IProjectPost | null;
28
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectAnalyticsEventType = void 0;
4
+ var ProjectAnalyticsEventType;
5
+ (function (ProjectAnalyticsEventType) {
6
+ ProjectAnalyticsEventType["CONTACT_CLICK"] = "contact_click";
7
+ ProjectAnalyticsEventType["JOIN_CLICK"] = "join_click";
8
+ ProjectAnalyticsEventType["ACCESS_CLICK"] = "access_click";
9
+ ProjectAnalyticsEventType["STAR_ADD"] = "star_add";
10
+ ProjectAnalyticsEventType["STAR_REMOVE"] = "star_remove";
11
+ ProjectAnalyticsEventType["FOLLOWER_ADD"] = "follower_add";
12
+ ProjectAnalyticsEventType["FOLLOWER_REMOVE"] = "follower_remove";
13
+ ProjectAnalyticsEventType["POST_VIEW"] = "post_view";
14
+ ProjectAnalyticsEventType["PROJECT_VIEW"] = "project_view";
15
+ })(ProjectAnalyticsEventType || (exports.ProjectAnalyticsEventType = ProjectAnalyticsEventType = {}));
@@ -0,0 +1,19 @@
1
+ import { ProjectDocumentType } from '../../enum/project-document-type.enum';
2
+ import { IProject } from './project.model';
3
+ export interface IProjectDocument {
4
+ id?: string;
5
+ isActive: boolean;
6
+ type: ProjectDocumentType;
7
+ name: string;
8
+ externalId: string;
9
+ thumbnailId: string;
10
+ thumbnailPublicAccessId: string;
11
+ publicAccessId: string;
12
+ checksum: string;
13
+ mimeType: string;
14
+ sizeOctet: number;
15
+ projectId: string;
16
+ updatedAt?: Date;
17
+ createdAt?: Date;
18
+ project: IProject;
19
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ import { IProject } from './project.model';
2
+ export interface IProjectEvent {
3
+ id?: string;
4
+ title: string;
5
+ description?: string;
6
+ date: Date | string;
7
+ projectId: string;
8
+ updatedAt?: Date;
9
+ createdAt?: Date;
10
+ project?: IProject;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ import { IProject } from './project.model';
2
+ import { IUser } from './user.model';
3
+ export interface IProjectFollower {
4
+ id?: string;
5
+ userId: string;
6
+ projectId: string;
7
+ updatedAt?: Date;
8
+ createdAt?: Date;
9
+ project?: IProject;
10
+ user?: IUser;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { IProject } from './project.model';
2
+ export interface IProjectPost {
3
+ id?: string;
4
+ title: string;
5
+ content: string;
6
+ projectId: string;
7
+ updatedAt?: Date;
8
+ createdAt?: Date;
9
+ project?: IProject;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,12 @@
1
+ import { ProjectPresentationType } from '../../enum/project-presentation-type.enum';
2
+ import { IProject } from './project.model';
3
+ export interface IProjectPresentation {
4
+ id?: string;
5
+ type: ProjectPresentationType;
6
+ content: string;
7
+ customCss?: string;
8
+ projectId: string;
9
+ updatedAt?: Date;
10
+ createdAt?: Date;
11
+ project?: IProject;
12
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ import { IProject } from './project.model';
2
+ export interface IProjectSocialNetwork {
3
+ id?: string;
4
+ socialNetwork: string;
5
+ url: string;
6
+ tooltip: string | null;
7
+ projectId: string;
8
+ updatedAt?: Date;
9
+ createdAt?: Date;
10
+ project: IProject;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ import { IProject } from './project.model';
2
+ import { IUser } from './user.model';
3
+ export interface IProjectStar {
4
+ id?: string;
5
+ userId: string;
6
+ projectId: string;
7
+ updatedAt?: Date;
8
+ createdAt?: Date;
9
+ project?: IProject;
10
+ user?: IUser;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,13 @@
1
+ import { IProject } from './project.model';
2
+ import { IUser } from './user.model';
3
+ export interface IProjectView {
4
+ id?: string;
5
+ userId?: string | null;
6
+ anonymousId?: string;
7
+ projectId: string;
8
+ viewedAt?: Date;
9
+ updatedAt?: Date;
10
+ createdAt?: Date;
11
+ project?: IProject;
12
+ user?: IUser | null;
13
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,37 @@
1
+ import { ProjectStatus } from '../../enum';
2
+ import { ProjectCategory } from '../../enum/project-category.enum';
3
+ import { ProjectLanguage } from '../../enum/project-language.enum';
4
+ import { IProjectDocument } from './project-document.model';
5
+ import { IProjectFollower } from './project-follower.model';
6
+ import { IProjectPost } from './project-post.model';
7
+ import { IProjectPresentation } from './project-presentation.model';
8
+ import { IProjectSocialNetwork } from './project-social-network.model';
9
+ import { IProjectStar } from './project-star.model';
10
+ import { IUser } from './user.model';
11
+ export interface IProject {
12
+ id?: string;
13
+ title: string;
14
+ slug: string;
15
+ description: string;
16
+ mainLanguage: ProjectLanguage;
17
+ otherLanguage: ProjectLanguage[];
18
+ tags: string[];
19
+ abyssProjectId: string | null;
20
+ abyssProjectApplicationId: string | null;
21
+ category: ProjectCategory;
22
+ status: ProjectStatus;
23
+ isPublished: boolean;
24
+ contactUrl: string | null;
25
+ joinUrl: string | null;
26
+ accessUrl: string | null;
27
+ userId: string | null;
28
+ updatedAt?: Date;
29
+ createdAt?: Date;
30
+ user?: IUser | null;
31
+ projectPresentation?: IProjectPresentation;
32
+ projectPost?: IProjectPost[];
33
+ projectFollower?: IProjectFollower[];
34
+ projectDocument?: IProjectDocument[];
35
+ projectStar?: IProjectStar[];
36
+ projectSocialNetwork?: IProjectSocialNetwork[];
37
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ export interface IUser {
2
+ id?: string;
3
+ isAdmin: boolean;
4
+ apiKey: string;
5
+ updatedAt?: Date;
6
+ createdAt?: Date;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,21 @@
1
+ import { IWorkoutTemplate } from './workout-template.model';
2
+ import { IExercise } from './exercise.model';
3
+ import { ExerciseGroupType } from '../../enum/exercise-group-type.enum';
4
+ export interface IWorkoutExercise {
5
+ id?: string;
6
+ workoutTemplateId: string;
7
+ exerciseId: string;
8
+ order: number;
9
+ groupType: ExerciseGroupType;
10
+ groupId: string | null;
11
+ groupOrder: number | null;
12
+ plannedSets: number | null;
13
+ plannedReps: number | null;
14
+ plannedWeight: number | null;
15
+ plannedRestTime: number | null;
16
+ notes: string | null;
17
+ createdAt?: Date;
18
+ updatedAt?: Date;
19
+ workoutTemplate?: IWorkoutTemplate;
20
+ exercise?: IExercise;
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,21 @@
1
+ import { WorkoutSessionStatus } from '../../enum/workout-session-status.enum';
2
+ import { IExerciseSet } from './exercise-set.model';
3
+ import { IUser } from './user.model';
4
+ import { IWorkoutTemplate } from './workout-template.model';
5
+ export interface IWorkoutSession {
6
+ id?: string;
7
+ userId: string;
8
+ workoutTemplateId: string | null;
9
+ name: string;
10
+ status: WorkoutSessionStatus;
11
+ scheduledAt: Date | null;
12
+ startedAt: Date | null;
13
+ completedAt: Date | null;
14
+ duration: number | null;
15
+ notes: string | null;
16
+ createdAt?: Date;
17
+ updatedAt?: Date;
18
+ user?: IUser;
19
+ workoutTemplate?: IWorkoutTemplate;
20
+ exerciseSet?: IExerciseSet[];
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,16 @@
1
+ import { IUser } from './user.model';
2
+ import { IWorkoutExercise } from './workout-exercise.model';
3
+ import { IWorkoutSession } from './workout-session.model';
4
+ export interface IWorkoutTemplate {
5
+ id?: string;
6
+ name: string;
7
+ description: string | null;
8
+ userId: string | null;
9
+ isPublic: boolean;
10
+ duration: number | null;
11
+ createdAt?: Date;
12
+ updatedAt?: Date;
13
+ user?: IUser;
14
+ workoutExercise?: IWorkoutExercise[];
15
+ workoutSession?: IWorkoutSession[];
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export declare const sanitizeCss: (css: string) => string;
2
+ export declare const isValidCss: (css: string) => boolean;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isValidCss = exports.sanitizeCss = void 0;
4
+ const sanitizeCss = (css) => {
5
+ if (!css) {
6
+ return '';
7
+ }
8
+ let sanitized = css;
9
+ sanitized = sanitized.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '');
10
+ sanitized = sanitized.replace(/<\/style>/gi, '');
11
+ sanitized = sanitized.replace(/javascript:/gi, '');
12
+ sanitized = sanitized.replace(/\bon\w+\s*=/gi, '');
13
+ sanitized = sanitized.replace(/expression\s*\(/gi, '');
14
+ sanitized = sanitized.replace(/@import\s+.*javascript:/gi, '');
15
+ sanitized = sanitized.replace(/behavior\s*:/gi, '/* behavior: */');
16
+ sanitized = sanitized.replace(/-moz-binding\s*:/gi, '/* -moz-binding: */');
17
+ return sanitized.trim();
18
+ };
19
+ exports.sanitizeCss = sanitizeCss;
20
+ const isValidCss = (css) => {
21
+ if (!css) {
22
+ return true;
23
+ }
24
+ const suspiciousPatterns = [
25
+ /<script/i,
26
+ /<\/script>/i,
27
+ /javascript:/i,
28
+ /on\w+=/i,
29
+ /expression\(/i,
30
+ ];
31
+ return !suspiciousPatterns.some((pattern) => pattern.test(css));
32
+ };
33
+ exports.isValidCss = isValidCss;
@@ -0,0 +1,15 @@
1
+ import { Code, ErrorType } from '../types';
2
+ type ErrorParams = {
3
+ code: Code;
4
+ type: ErrorType;
5
+ message?: string;
6
+ };
7
+ export declare class ServiceException extends Error {
8
+ private readonly code;
9
+ private readonly type;
10
+ getCode(): Code;
11
+ getType(): ErrorType;
12
+ constructor(params: ErrorParams);
13
+ }
14
+ export declare const handleError: (error: Error | ErrorParams, _params?: ErrorParams) => Error;
15
+ export {};
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleError = exports.ServiceException = void 0;
4
+ class ServiceException extends Error {
5
+ getCode() {
6
+ return this.code;
7
+ }
8
+ getType() {
9
+ return this.type;
10
+ }
11
+ constructor(params) {
12
+ super(params.message);
13
+ this.code = params.code;
14
+ this.type = params.type;
15
+ }
16
+ }
17
+ exports.ServiceException = ServiceException;
18
+ const handleError = (error, _params) => {
19
+ if (error instanceof Error) {
20
+ return error;
21
+ }
22
+ return new ServiceException(error);
23
+ };
24
+ exports.handleError = handleError;
@@ -0,0 +1 @@
1
+ export * from './error.utils';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./error.utils"), exports);