podverse-orm 5.0.5 → 5.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/dist/config/index.d.ts +4 -2
  2. package/dist/config/index.d.ts.map +1 -1
  3. package/dist/config/index.js +4 -2
  4. package/dist/db/index.d.ts +5 -1
  5. package/dist/db/index.d.ts.map +1 -1
  6. package/dist/db/index.js +50 -41
  7. package/dist/entities/account/account.d.ts +32 -0
  8. package/dist/entities/account/account.d.ts.map +1 -1
  9. package/dist/entities/account/account.js +80 -0
  10. package/dist/entities/account/accountAdminRoles.js +1 -1
  11. package/dist/entities/account/accountAppStorePurchase.d.ts +2 -2
  12. package/dist/entities/account/accountAppStorePurchase.d.ts.map +1 -1
  13. package/dist/entities/account/accountAppStorePurchase.js +9 -9
  14. package/dist/entities/account/accountCredentials.d.ts +1 -0
  15. package/dist/entities/account/accountCredentials.d.ts.map +1 -1
  16. package/dist/entities/account/accountCredentials.js +5 -1
  17. package/dist/entities/account/accountEmailChangeVerification.d.ts +10 -0
  18. package/dist/entities/account/accountEmailChangeVerification.d.ts.map +1 -0
  19. package/dist/entities/account/accountEmailChangeVerification.js +46 -0
  20. package/dist/entities/account/accountFCMDevice.d.ts +1 -0
  21. package/dist/entities/account/accountFCMDevice.d.ts.map +1 -1
  22. package/dist/entities/account/accountFCMDevice.js +5 -1
  23. package/dist/entities/account/accountFollowingAddByRSSChannel.d.ts +1 -1
  24. package/dist/entities/account/accountFollowingAddByRSSChannel.js +10 -10
  25. package/dist/entities/account/accountGooglePlayPurchase.d.ts +2 -2
  26. package/dist/entities/account/accountGooglePlayPurchase.d.ts.map +1 -1
  27. package/dist/entities/account/accountGooglePlayPurchase.js +9 -9
  28. package/dist/entities/account/accountMembership.d.ts +2 -0
  29. package/dist/entities/account/accountMembership.d.ts.map +1 -1
  30. package/dist/entities/account/accountMembership.js +5 -0
  31. package/dist/entities/account/accountMembershipStatus.js +1 -1
  32. package/dist/entities/account/{accountNotification.d.ts → accountNotificationChannel.d.ts} +2 -2
  33. package/dist/entities/account/accountNotificationChannel.d.ts.map +1 -0
  34. package/dist/entities/account/{accountNotification.js → accountNotificationChannel.js} +9 -9
  35. package/dist/entities/account/accountPayPalOrder.d.ts +1 -1
  36. package/dist/entities/account/accountPayPalOrder.js +9 -9
  37. package/dist/entities/account/accountProfile.js +1 -1
  38. package/dist/entities/account/accountResetPassword.js +1 -1
  39. package/dist/entities/account/accountVerification.js +1 -1
  40. package/dist/entities/category.d.ts +2 -1
  41. package/dist/entities/category.d.ts.map +1 -1
  42. package/dist/entities/category.js +12 -6
  43. package/dist/entities/channel/channel.d.ts +40 -3
  44. package/dist/entities/channel/channel.d.ts.map +1 -1
  45. package/dist/entities/channel/channel.js +95 -4
  46. package/dist/entities/channel/channelAbout.d.ts +3 -2
  47. package/dist/entities/channel/channelAbout.d.ts.map +1 -1
  48. package/dist/entities/channel/channelAbout.js +6 -1
  49. package/dist/entities/channel/channelCategory.d.ts +3 -1
  50. package/dist/entities/channel/channelCategory.d.ts.map +1 -1
  51. package/dist/entities/channel/channelCategory.js +10 -5
  52. package/dist/entities/channel/channelChat.js +1 -1
  53. package/dist/entities/channel/channelDescription.js +1 -1
  54. package/dist/entities/channel/channelLicense.js +1 -1
  55. package/dist/entities/channel/channelLocation.js +1 -1
  56. package/dist/entities/channel/channelPodroll.d.ts +2 -0
  57. package/dist/entities/channel/channelPodroll.d.ts.map +1 -1
  58. package/dist/entities/channel/channelPodroll.js +6 -1
  59. package/dist/entities/channel/channelPublisher.d.ts +2 -0
  60. package/dist/entities/channel/channelPublisher.d.ts.map +1 -1
  61. package/dist/entities/channel/channelPublisher.js +6 -1
  62. package/dist/entities/channel/channelPublisherRemoteItem.js +1 -1
  63. package/dist/entities/channel/channelTrailer.d.ts +1 -1
  64. package/dist/entities/channel/channelTrailer.d.ts.map +1 -1
  65. package/dist/entities/channel/channelTrailer.js +2 -2
  66. package/dist/entities/channel/channelValue.d.ts +2 -0
  67. package/dist/entities/channel/channelValue.d.ts.map +1 -1
  68. package/dist/entities/channel/channelValue.js +5 -0
  69. package/dist/entities/clip.d.ts +2 -2
  70. package/dist/entities/clip.d.ts.map +1 -1
  71. package/dist/entities/clip.js +2 -2
  72. package/dist/entities/feed/feed.d.ts +2 -0
  73. package/dist/entities/feed/feed.d.ts.map +1 -1
  74. package/dist/entities/feed/feed.js +8 -0
  75. package/dist/entities/feed/feedFlagStatus.d.ts +6 -6
  76. package/dist/entities/feed/feedFlagStatus.d.ts.map +1 -1
  77. package/dist/entities/feed/feedFlagStatus.js +8 -14
  78. package/dist/entities/feed/feedLog.d.ts.map +1 -1
  79. package/dist/entities/feed/feedLog.js +2 -1
  80. package/dist/entities/item/item.d.ts +41 -6
  81. package/dist/entities/item/item.d.ts.map +1 -1
  82. package/dist/entities/item/item.js +107 -12
  83. package/dist/entities/item/itemAbout.d.ts +2 -2
  84. package/dist/entities/item/itemAbout.d.ts.map +1 -1
  85. package/dist/entities/item/itemAbout.js +1 -1
  86. package/dist/entities/item/itemChapterLocation.js +1 -1
  87. package/dist/entities/item/itemChaptersFeed.d.ts +2 -0
  88. package/dist/entities/item/itemChaptersFeed.d.ts.map +1 -1
  89. package/dist/entities/item/itemChaptersFeed.js +6 -1
  90. package/dist/entities/item/itemChaptersFeedLog.d.ts.map +1 -1
  91. package/dist/entities/item/itemChaptersFeedLog.js +2 -1
  92. package/dist/entities/item/itemChat.js +1 -1
  93. package/dist/entities/item/itemDescription.js +1 -1
  94. package/dist/entities/item/itemEnclosure.d.ts +4 -0
  95. package/dist/entities/item/itemEnclosure.d.ts.map +1 -1
  96. package/dist/entities/item/itemEnclosure.js +10 -0
  97. package/dist/entities/item/itemEnclosureIntegrity.js +1 -1
  98. package/dist/entities/item/itemFlagStatus.d.ts +13 -0
  99. package/dist/entities/item/itemFlagStatus.d.ts.map +1 -0
  100. package/dist/entities/item/itemFlagStatus.js +44 -0
  101. package/dist/entities/item/itemLicense.js +1 -1
  102. package/dist/entities/item/itemLocation.js +1 -1
  103. package/dist/entities/item/itemSeason.js +1 -1
  104. package/dist/entities/item/itemSeasonEpisode.js +1 -1
  105. package/dist/entities/item/itemValue.d.ts +4 -0
  106. package/dist/entities/item/itemValue.d.ts.map +1 -1
  107. package/dist/entities/item/itemValue.js +10 -0
  108. package/dist/entities/item/itemValueTimeSplit.d.ts +4 -0
  109. package/dist/entities/item/itemValueTimeSplit.d.ts.map +1 -1
  110. package/dist/entities/item/itemValueTimeSplit.js +10 -0
  111. package/dist/entities/item/itemValueTimeSplitRemoteItem.js +1 -1
  112. package/dist/entities/medium.d.ts +1 -22
  113. package/dist/entities/medium.d.ts.map +1 -1
  114. package/dist/entities/medium.js +3 -50
  115. package/dist/entities/membershipClaimToken.d.ts +3 -3
  116. package/dist/entities/membershipClaimToken.d.ts.map +1 -1
  117. package/dist/entities/membershipClaimToken.js +3 -2
  118. package/dist/entities/playlist/playlist.d.ts +3 -5
  119. package/dist/entities/playlist/playlist.d.ts.map +1 -1
  120. package/dist/entities/playlist/playlist.js +4 -7
  121. package/dist/entities/playlist/playlistResource.d.ts +21 -0
  122. package/dist/entities/playlist/playlistResource.d.ts.map +1 -0
  123. package/dist/entities/playlist/playlistResource.js +82 -0
  124. package/dist/entities/queue/queue.d.ts +4 -2
  125. package/dist/entities/queue/queue.d.ts.map +1 -1
  126. package/dist/entities/queue/queue.js +16 -1
  127. package/dist/entities/queue/queueResource.d.ts +24 -0
  128. package/dist/entities/queue/queueResource.d.ts.map +1 -0
  129. package/dist/entities/queue/queueResource.js +93 -0
  130. package/dist/entities/stats/statsAggregatedAccount.d.ts +24 -0
  131. package/dist/entities/stats/statsAggregatedAccount.d.ts.map +1 -0
  132. package/dist/entities/stats/statsAggregatedAccount.js +101 -0
  133. package/dist/entities/stats/statsAggregatedChannel.d.ts +24 -0
  134. package/dist/entities/stats/statsAggregatedChannel.d.ts.map +1 -0
  135. package/dist/entities/stats/statsAggregatedChannel.js +101 -0
  136. package/dist/entities/stats/statsAggregatedClip.d.ts +24 -0
  137. package/dist/entities/stats/statsAggregatedClip.d.ts.map +1 -0
  138. package/dist/entities/stats/statsAggregatedClip.js +101 -0
  139. package/dist/entities/stats/statsAggregatedItem.d.ts +24 -0
  140. package/dist/entities/stats/statsAggregatedItem.d.ts.map +1 -0
  141. package/dist/entities/stats/statsAggregatedItem.js +101 -0
  142. package/dist/entities/stats/statsAggregatedPlaylist.d.ts +24 -0
  143. package/dist/entities/stats/statsAggregatedPlaylist.d.ts.map +1 -0
  144. package/dist/entities/stats/statsAggregatedPlaylist.js +101 -0
  145. package/dist/entities/stats/statsTrackAccountGuid.d.ts +8 -0
  146. package/dist/entities/stats/statsTrackAccountGuid.d.ts.map +1 -0
  147. package/dist/entities/{playlist/playlistResourceBase.js → stats/statsTrackAccountGuid.js} +19 -16
  148. package/dist/entities/stats/statsTrackEventAccount.d.ts +10 -0
  149. package/dist/entities/stats/statsTrackEventAccount.d.ts.map +1 -0
  150. package/dist/entities/stats/statsTrackEventAccount.js +43 -0
  151. package/dist/entities/stats/statsTrackEventChannel.d.ts +10 -0
  152. package/dist/entities/stats/statsTrackEventChannel.d.ts.map +1 -0
  153. package/dist/entities/stats/statsTrackEventChannel.js +43 -0
  154. package/dist/entities/stats/statsTrackEventClip.d.ts +10 -0
  155. package/dist/entities/stats/statsTrackEventClip.d.ts.map +1 -0
  156. package/dist/entities/stats/statsTrackEventClip.js +43 -0
  157. package/dist/entities/stats/statsTrackEventItem.d.ts +10 -0
  158. package/dist/entities/stats/statsTrackEventItem.d.ts.map +1 -0
  159. package/dist/entities/stats/statsTrackEventItem.js +43 -0
  160. package/dist/entities/stats/statsTrackEventPlaylist.d.ts +10 -0
  161. package/dist/entities/stats/statsTrackEventPlaylist.d.ts.map +1 -0
  162. package/dist/entities/stats/statsTrackEventPlaylist.js +43 -0
  163. package/dist/index.d.ts +39 -13
  164. package/dist/index.d.ts.map +1 -1
  165. package/dist/index.js +39 -13
  166. package/dist/services/account/account.d.ts +28 -0
  167. package/dist/services/account/account.d.ts.map +1 -0
  168. package/dist/services/account/account.js +159 -0
  169. package/dist/services/account/accountCredentials.d.ts +14 -0
  170. package/dist/services/account/accountCredentials.d.ts.map +1 -0
  171. package/dist/services/account/accountCredentials.js +33 -0
  172. package/dist/services/account/accountEmailChangeVerification.d.ts +17 -0
  173. package/dist/services/account/accountEmailChangeVerification.d.ts.map +1 -0
  174. package/dist/services/account/accountEmailChangeVerification.js +50 -0
  175. package/dist/services/account/accountFCMDevice.d.ts +12 -0
  176. package/dist/services/account/accountFCMDevice.d.ts.map +1 -0
  177. package/dist/services/account/accountFCMDevice.js +70 -0
  178. package/dist/services/account/accountFollowingAccount.d.ts +15 -0
  179. package/dist/services/account/accountFollowingAccount.d.ts.map +1 -0
  180. package/dist/services/account/accountFollowingAccount.js +80 -0
  181. package/dist/services/account/accountFollowingAddByRSSChannel.d.ts +16 -0
  182. package/dist/services/account/accountFollowingAddByRSSChannel.d.ts.map +1 -0
  183. package/dist/services/account/accountFollowingAddByRSSChannel.js +49 -0
  184. package/dist/services/account/accountFollowingChannel.d.ts +12 -0
  185. package/dist/services/account/accountFollowingChannel.d.ts.map +1 -0
  186. package/dist/services/account/accountFollowingChannel.js +60 -0
  187. package/dist/services/account/accountFollowingPlaylist.d.ts +13 -0
  188. package/dist/services/account/accountFollowingPlaylist.d.ts.map +1 -0
  189. package/dist/services/account/accountFollowingPlaylist.js +74 -0
  190. package/dist/services/account/accountMembership.d.ts +6 -0
  191. package/dist/services/account/accountMembership.d.ts.map +1 -0
  192. package/dist/services/account/accountMembership.js +11 -0
  193. package/dist/services/account/accountMembershipStatus.d.ts +14 -0
  194. package/dist/services/account/accountMembershipStatus.d.ts.map +1 -0
  195. package/dist/services/account/accountMembershipStatus.js +38 -0
  196. package/dist/services/account/accountNotificationChannel.d.ts +14 -0
  197. package/dist/services/account/accountNotificationChannel.d.ts.map +1 -0
  198. package/dist/services/account/accountNotificationChannel.js +82 -0
  199. package/dist/services/account/accountPayPalOrder.d.ts +12 -0
  200. package/dist/services/account/accountPayPalOrder.d.ts.map +1 -0
  201. package/dist/services/account/accountPayPalOrder.js +78 -0
  202. package/dist/services/account/accountProfile.d.ts +13 -0
  203. package/dist/services/account/accountProfile.d.ts.map +1 -0
  204. package/dist/services/account/accountProfile.js +32 -0
  205. package/dist/services/account/accountResetPassword.d.ts +16 -0
  206. package/dist/services/account/accountResetPassword.d.ts.map +1 -0
  207. package/dist/services/account/accountResetPassword.js +49 -0
  208. package/dist/services/account/accountVerification.d.ts +16 -0
  209. package/dist/services/account/accountVerification.d.ts.map +1 -0
  210. package/dist/services/account/accountVerification.js +49 -0
  211. package/dist/services/archiver.d.ts +17 -0
  212. package/dist/services/archiver.d.ts.map +1 -0
  213. package/dist/services/archiver.js +131 -0
  214. package/dist/services/base/baseGetOnlyService.d.ts +14 -0
  215. package/dist/services/base/baseGetOnlyService.d.ts.map +1 -0
  216. package/dist/services/base/baseGetOnlyService.js +30 -0
  217. package/dist/services/base/baseManyService.d.ts +5 -2
  218. package/dist/services/base/baseManyService.d.ts.map +1 -1
  219. package/dist/services/base/baseManyService.js +21 -9
  220. package/dist/services/base/baseOneService.d.ts +2 -1
  221. package/dist/services/base/baseOneService.d.ts.map +1 -1
  222. package/dist/services/base/baseOneService.js +7 -6
  223. package/dist/services/base/baseRemoteItemsService.js +4 -4
  224. package/dist/services/category.d.ts +7 -0
  225. package/dist/services/category.d.ts.map +1 -0
  226. package/dist/services/category.js +73 -0
  227. package/dist/services/channel/channel.d.ts +14 -9
  228. package/dist/services/channel/channel.d.ts.map +1 -1
  229. package/dist/services/channel/channel.js +161 -10
  230. package/dist/services/channel/channelCategory.d.ts +15 -0
  231. package/dist/services/channel/channelCategory.d.ts.map +1 -0
  232. package/dist/services/channel/channelCategory.js +45 -0
  233. package/dist/services/channel/channelPodroll.d.ts +1 -0
  234. package/dist/services/channel/channelPodroll.d.ts.map +1 -1
  235. package/dist/services/channel/channelPodroll.js +8 -0
  236. package/dist/services/channel/channelPodrollRemoteItem.d.ts +4 -8
  237. package/dist/services/channel/channelPodrollRemoteItem.d.ts.map +1 -1
  238. package/dist/services/channel/channelPodrollRemoteItem.js +8 -0
  239. package/dist/services/channel/channelPublisher.d.ts +4 -1
  240. package/dist/services/channel/channelPublisher.d.ts.map +1 -1
  241. package/dist/services/channel/channelPublisher.js +18 -2
  242. package/dist/services/channel/channelPublisherRemoteItem.d.ts +6 -9
  243. package/dist/services/channel/channelPublisherRemoteItem.d.ts.map +1 -1
  244. package/dist/services/channel/channelPublisherRemoteItem.js +10 -2
  245. package/dist/services/channel/channelRemoteItem.d.ts +4 -8
  246. package/dist/services/channel/channelRemoteItem.d.ts.map +1 -1
  247. package/dist/services/channel/channelRemoteItem.js +8 -0
  248. package/dist/services/channel/channelSeason.js +1 -1
  249. package/dist/services/channel/channelTrailer.d.ts +1 -1
  250. package/dist/services/channel/channelTrailer.d.ts.map +1 -1
  251. package/dist/services/clip.d.ts +25 -0
  252. package/dist/services/clip.d.ts.map +1 -0
  253. package/dist/services/clip.js +109 -0
  254. package/dist/services/feed/feed.d.ts +5 -2
  255. package/dist/services/feed/feed.d.ts.map +1 -1
  256. package/dist/services/feed/feed.js +38 -11
  257. package/dist/services/feed/feedFlagStatus.d.ts +4 -2
  258. package/dist/services/feed/feedFlagStatus.d.ts.map +1 -1
  259. package/dist/services/feed/feedFlagStatus.js +18 -3
  260. package/dist/services/item/item.d.ts +21 -10
  261. package/dist/services/item/item.d.ts.map +1 -1
  262. package/dist/services/item/item.js +275 -18
  263. package/dist/services/item/itemChapter.d.ts +3 -2
  264. package/dist/services/item/itemChapter.d.ts.map +1 -1
  265. package/dist/services/item/itemChapter.js +9 -3
  266. package/dist/services/item/itemFlagStatus.d.ts +6 -0
  267. package/dist/services/item/itemFlagStatus.d.ts.map +1 -0
  268. package/dist/services/item/itemFlagStatus.js +27 -0
  269. package/dist/services/item/itemSoundbite.d.ts +2 -2
  270. package/dist/services/item/itemSoundbite.d.ts.map +1 -1
  271. package/dist/services/item/itemSoundbite.js +3 -2
  272. package/dist/services/item/itemValueTimeSplitRemoteItem.d.ts +2 -7
  273. package/dist/services/item/itemValueTimeSplitRemoteItem.d.ts.map +1 -1
  274. package/dist/services/liveItem/liveItem.d.ts +4 -1
  275. package/dist/services/liveItem/liveItem.d.ts.map +1 -1
  276. package/dist/services/liveItem/liveItem.js +6 -1
  277. package/dist/services/medium.d.ts +2 -2
  278. package/dist/services/medium.d.ts.map +1 -1
  279. package/dist/services/medium.js +3 -3
  280. package/dist/services/membershipClaimToken.d.ts +17 -0
  281. package/dist/services/membershipClaimToken.d.ts.map +1 -0
  282. package/dist/services/membershipClaimToken.js +71 -0
  283. package/dist/services/playlist/playlist.d.ts +22 -0
  284. package/dist/services/playlist/playlist.d.ts.map +1 -0
  285. package/dist/services/playlist/playlist.js +74 -0
  286. package/dist/services/playlist/playlistResource.d.ts +51 -0
  287. package/dist/services/playlist/playlistResource.d.ts.map +1 -0
  288. package/dist/services/playlist/playlistResource.js +300 -0
  289. package/dist/services/queue/queue.d.ts +16 -0
  290. package/dist/services/queue/queue.d.ts.map +1 -0
  291. package/dist/services/queue/queue.js +57 -0
  292. package/dist/services/queue/queueResource.d.ts +65 -0
  293. package/dist/services/queue/queueResource.d.ts.map +1 -0
  294. package/dist/services/queue/queueResource.js +426 -0
  295. package/dist/services/stats/baseStatsAggregated.d.ts +35 -0
  296. package/dist/services/stats/baseStatsAggregated.d.ts.map +1 -0
  297. package/dist/services/stats/baseStatsAggregated.js +100 -0
  298. package/dist/services/stats/baseStatsTrackEvent.d.ts +18 -0
  299. package/dist/services/stats/baseStatsTrackEvent.d.ts.map +1 -0
  300. package/dist/services/stats/baseStatsTrackEvent.js +97 -0
  301. package/dist/services/stats/statsAggregatedAccount.d.ts +10 -0
  302. package/dist/services/stats/statsAggregatedAccount.d.ts.map +1 -0
  303. package/dist/services/stats/statsAggregatedAccount.js +36 -0
  304. package/dist/services/stats/statsAggregatedChannel.d.ts +10 -0
  305. package/dist/services/stats/statsAggregatedChannel.d.ts.map +1 -0
  306. package/dist/services/stats/statsAggregatedChannel.js +36 -0
  307. package/dist/services/stats/statsAggregatedClip.d.ts +10 -0
  308. package/dist/services/stats/statsAggregatedClip.d.ts.map +1 -0
  309. package/dist/services/stats/statsAggregatedClip.js +36 -0
  310. package/dist/services/stats/statsAggregatedItem.d.ts +10 -0
  311. package/dist/services/stats/statsAggregatedItem.d.ts.map +1 -0
  312. package/dist/services/stats/statsAggregatedItem.js +36 -0
  313. package/dist/services/stats/statsAggregatedPlaylist.d.ts +10 -0
  314. package/dist/services/stats/statsAggregatedPlaylist.d.ts.map +1 -0
  315. package/dist/services/stats/statsAggregatedPlaylist.js +36 -0
  316. package/dist/services/stats/statsTrackAccountGuid.d.ts +11 -0
  317. package/dist/services/stats/statsTrackAccountGuid.d.ts.map +1 -0
  318. package/dist/services/stats/statsTrackAccountGuid.js +56 -0
  319. package/dist/services/stats/statsTrackEventAccount.d.ts +13 -0
  320. package/dist/services/stats/statsTrackEventAccount.d.ts.map +1 -0
  321. package/dist/services/stats/statsTrackEventAccount.js +31 -0
  322. package/dist/services/stats/statsTrackEventChannel.d.ts +13 -0
  323. package/dist/services/stats/statsTrackEventChannel.d.ts.map +1 -0
  324. package/dist/services/stats/statsTrackEventChannel.js +31 -0
  325. package/dist/services/stats/statsTrackEventClip.d.ts +13 -0
  326. package/dist/services/stats/statsTrackEventClip.d.ts.map +1 -0
  327. package/dist/services/stats/statsTrackEventClip.js +31 -0
  328. package/dist/services/stats/statsTrackEventItem.d.ts +13 -0
  329. package/dist/services/stats/statsTrackEventItem.d.ts.map +1 -0
  330. package/dist/services/stats/statsTrackEventItem.js +31 -0
  331. package/dist/services/stats/statsTrackEventPlaylist.d.ts +13 -0
  332. package/dist/services/stats/statsTrackEventPlaylist.d.ts.map +1 -0
  333. package/dist/services/stats/statsTrackEventPlaylist.js +31 -0
  334. package/package.json +3 -4
  335. package/dist/entities/account/accountNotification.d.ts.map +0 -1
  336. package/dist/entities/playlist/playlistResourceBase.d.ts +0 -7
  337. package/dist/entities/playlist/playlistResourceBase.d.ts.map +0 -1
  338. package/dist/entities/playlist/playlistResourceClip.d.ts +0 -6
  339. package/dist/entities/playlist/playlistResourceClip.d.ts.map +0 -1
  340. package/dist/entities/playlist/playlistResourceClip.js +0 -26
  341. package/dist/entities/playlist/playlistResourceItem.d.ts +0 -6
  342. package/dist/entities/playlist/playlistResourceItem.d.ts.map +0 -1
  343. package/dist/entities/playlist/playlistResourceItem.js +0 -26
  344. package/dist/entities/playlist/playlistResourceItemAddByRSS.d.ts +0 -5
  345. package/dist/entities/playlist/playlistResourceItemAddByRSS.d.ts.map +0 -1
  346. package/dist/entities/playlist/playlistResourceItemAddByRSS.js +0 -24
  347. package/dist/entities/playlist/playlistResourceItemChapter.d.ts +0 -6
  348. package/dist/entities/playlist/playlistResourceItemChapter.d.ts.map +0 -1
  349. package/dist/entities/playlist/playlistResourceItemChapter.js +0 -26
  350. package/dist/entities/playlist/playlistResourceItemSoundbite.d.ts +0 -6
  351. package/dist/entities/playlist/playlistResourceItemSoundbite.d.ts.map +0 -1
  352. package/dist/entities/playlist/playlistResourceItemSoundbite.js +0 -26
  353. package/dist/entities/queue/queueResourceBase.d.ts +0 -10
  354. package/dist/entities/queue/queueResourceBase.d.ts.map +0 -1
  355. package/dist/entities/queue/queueResourceBase.js +0 -45
  356. package/dist/entities/queue/queueResourceClip.d.ts +0 -6
  357. package/dist/entities/queue/queueResourceClip.d.ts.map +0 -1
  358. package/dist/entities/queue/queueResourceClip.js +0 -27
  359. package/dist/entities/queue/queueResourceItem.d.ts +0 -6
  360. package/dist/entities/queue/queueResourceItem.d.ts.map +0 -1
  361. package/dist/entities/queue/queueResourceItem.js +0 -27
  362. package/dist/entities/queue/queueResourceItemAddByRSS.d.ts +0 -5
  363. package/dist/entities/queue/queueResourceItemAddByRSS.d.ts.map +0 -1
  364. package/dist/entities/queue/queueResourceItemAddByRSS.js +0 -25
  365. package/dist/entities/queue/queueResourceItemChapter.d.ts +0 -6
  366. package/dist/entities/queue/queueResourceItemChapter.d.ts.map +0 -1
  367. package/dist/entities/queue/queueResourceItemChapter.js +0 -27
  368. package/dist/entities/queue/queueResourceItemSoundbite.d.ts +0 -6
  369. package/dist/entities/queue/queueResourceItemSoundbite.d.ts.map +0 -1
  370. package/dist/entities/queue/queueResourceItemSoundbite.js +0 -27
@@ -0,0 +1,65 @@
1
+ import { EntityManager } from 'typeorm';
2
+ import { QueueResource } from '@orm/entities/queue/queueResource';
3
+ import { BaseManyService } from '@orm/services/base/baseManyService';
4
+ export declare class QueueResourceService extends BaseManyService<QueueResource, 'queue'> {
5
+ private queueService;
6
+ private clipService;
7
+ private itemService;
8
+ private itemChapterService;
9
+ private itemSoundbiteService;
10
+ constructor(transactionalEntityManager?: EntityManager);
11
+ getAllByQueueId(queue_id_text: string): Promise<QueueResource[]>;
12
+ getItemsByQueueIdTextAndPosition(queue_id_text: string, position: string): Promise<QueueResource[]>;
13
+ getFirstAndLastQueuedItemsByQueueIdText(queue_id_text: string): Promise<{
14
+ firstQueued: QueueResource | null;
15
+ lastQueued: QueueResource | null;
16
+ }>;
17
+ getMostRecentHistoryItemByQueueIdText(queue_id_text: string): Promise<QueueResource | null>;
18
+ private addResourceToQueue;
19
+ private addResourceToQueueHelper;
20
+ addResourceToQueueNext(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource): Promise<QueueResource>;
21
+ addResourceToQueueLast(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource): Promise<QueueResource>;
22
+ addResourceToQueueBetween(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource, position1: number, position2: number): Promise<QueueResource>;
23
+ addResourceToNowPlaying(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource): Promise<QueueResource>;
24
+ addResourceToHistory(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource): Promise<QueueResource>;
25
+ removeResourceFromQueue(queue_id_text: string, resource_id_text: string, resourceService: any, resourceKey: keyof QueueResource): Promise<void>;
26
+ addClipToQueueNext(queue_id_text: string, clip_id_text: string): Promise<QueueResource>;
27
+ addClipToQueueLast(queue_id_text: string, clip_id_text: string): Promise<QueueResource>;
28
+ addClipToQueueBetween(queue_id_text: string, clip_id_text: string, position1: number, position2: number): Promise<QueueResource>;
29
+ addClipToNowPlaying(queue_id_text: string, clip_id_text: string): Promise<QueueResource>;
30
+ addClipToHistory(queue_id_text: string, clip_id_text: string): Promise<QueueResource>;
31
+ removeClipFromQueue(queue_id_text: string, clip_id_text: string): Promise<void>;
32
+ addItemToQueueNext(queue_id_text: string, item_id_text: string): Promise<QueueResource>;
33
+ addItemToQueueLast(queue_id_text: string, item_id_text: string): Promise<QueueResource>;
34
+ addItemToQueueBetween(queue_id_text: string, item_id_text: string, position1: number, position2: number): Promise<QueueResource>;
35
+ addItemToNowPlaying(queue_id_text: string, item_id_text: string): Promise<QueueResource>;
36
+ addItemToHistory(queue_id_text: string, item_id_text: string): Promise<QueueResource>;
37
+ removeItemFromQueue(queue_id_text: string, item_id_text: string): Promise<void>;
38
+ addItemChapterToQueueNext(queue_id_text: string, item_chapter_id_text: string): Promise<QueueResource>;
39
+ addItemChapterToQueueLast(queue_id_text: string, item_chapter_id_text: string): Promise<QueueResource>;
40
+ addItemChapterToQueueBetween(queue_id_text: string, item_chapter_id_text: string, position1: number, position2: number): Promise<QueueResource>;
41
+ addItemChapterToNowPlaying(queue_id_text: string, item_chapter_id_text: string): Promise<QueueResource>;
42
+ addItemChapterToHistory(queue_id_text: string, item_chapter_id_text: string): Promise<QueueResource>;
43
+ removeItemChapterFromQueue(queue_id_text: string, item_chapter_id_text: string): Promise<void>;
44
+ addItemSoundbiteToQueueNext(queue_id_text: string, item_soundbite_id_text: string): Promise<QueueResource>;
45
+ addItemSoundbiteToQueueLast(queue_id_text: string, item_soundbite_id_text: string): Promise<QueueResource>;
46
+ addItemSoundbiteToQueueBetween(queue_id_text: string, item_soundbite_id_text: string, position1: number, position2: number): Promise<QueueResource>;
47
+ addItemSoundbiteToNowPlaying(queue_id_text: string, item_soundbite_id_text: string): Promise<QueueResource>;
48
+ addItemSoundbiteToHistory(queue_id_text: string, item_soundbite_id_text: string): Promise<QueueResource>;
49
+ removeItemSoundbiteFromQueue(queue_id_text: string, item_soundbite_id_text: string): Promise<void>;
50
+ private addItemAddByRSSToQueue;
51
+ private addItemAddByRSSToQueueHelper;
52
+ addItemAddByRSSToQueueNext(queue_id_text: string, add_by_rss_resource_data: object): Promise<QueueResource>;
53
+ addItemAddByRSSToQueueLast(queue_id_text: string, add_by_rss_resource_data: object): Promise<QueueResource>;
54
+ addItemAddByRSSToQueueBetween(queue_id_text: string, add_by_rss_resource_data: object, position1: number, position2: number): Promise<QueueResource>;
55
+ addItemAddByRSSToNowPlaying(queue_id_text: string, add_by_rss_resource_data: object): Promise<QueueResource>;
56
+ addItemAddByRSSToHistory(queue_id_text: string, add_by_rss_resource_data: object): Promise<QueueResource>;
57
+ removeItemAddByRSSFromQueue(queue_id_text: string, add_by_rss_hash_id: string): Promise<void>;
58
+ getResourcesByParams(params: {
59
+ clip_id?: number;
60
+ item_id?: number;
61
+ item_chapter_id?: number;
62
+ item_soundbite_id?: number;
63
+ }): Promise<QueueResource[]>;
64
+ }
65
+ //# sourceMappingURL=queueResource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueResource.d.ts","sourceRoot":"","sources":["../../../src/services/queue/queueResource.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,426 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.QueueResourceService = void 0;
13
+ // TODO: get rid of "any" in the file
14
+ /* eslint-disable @typescript-eslint/no-explicit-any */
15
+ const typeorm_1 = require("typeorm");
16
+ const queueResource_1 = require("@orm/entities/queue/queueResource");
17
+ const baseManyService_1 = require("@orm/services/base/baseManyService");
18
+ const queue_1 = require("@orm/services/queue/queue");
19
+ const clip_1 = require("../clip");
20
+ const item_1 = require("../item/item");
21
+ const podverse_helpers_1 = require("podverse-helpers");
22
+ const itemChapter_1 = require("../item/itemChapter");
23
+ const itemSoundbite_1 = require("../item/itemSoundbite");
24
+ const QUEUE_LIST_POSITION_INCREMENT = 0.00000001;
25
+ class QueueResourceService extends baseManyService_1.BaseManyService {
26
+ constructor(transactionalEntityManager) {
27
+ super(queueResource_1.QueueResource, 'queue', transactionalEntityManager);
28
+ this.queueService = new queue_1.QueueService(transactionalEntityManager);
29
+ this.clipService = new clip_1.ClipService(transactionalEntityManager);
30
+ this.itemService = new item_1.ItemService();
31
+ this.itemChapterService = new itemChapter_1.ItemChapterService();
32
+ this.itemSoundbiteService = new itemSoundbite_1.ItemSoundbiteService();
33
+ }
34
+ getAllByQueueId(queue_id_text) {
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ const queue = yield this.queueService.getByIdText(queue_id_text);
37
+ if (!queue) {
38
+ throw new Error("Queue not found.");
39
+ }
40
+ const options = {
41
+ where: { queue: { id: queue.id } },
42
+ order: { list_position: 'ASC' },
43
+ relations: ['clip', 'item', 'item_chapter', 'item_soundbite']
44
+ };
45
+ return this.repositoryRead.find(options);
46
+ });
47
+ }
48
+ getItemsByQueueIdTextAndPosition(queue_id_text, position) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ const queue = yield this.queueService.getByIdText(queue_id_text);
51
+ if (!queue) {
52
+ throw new Error("Queue not found.");
53
+ }
54
+ return this.repositoryRead.find({
55
+ where: { queue, list_position: position }
56
+ });
57
+ });
58
+ }
59
+ getFirstAndLastQueuedItemsByQueueIdText(queue_id_text) {
60
+ return __awaiter(this, void 0, void 0, function* () {
61
+ const queue = yield this.queueService.getByIdText(queue_id_text);
62
+ if (!queue) {
63
+ throw new Error("Queue not found.");
64
+ }
65
+ const firstQueued = yield this.repositoryRead.findOne({
66
+ where: { queue, list_position: (0, typeorm_1.MoreThan)(0) },
67
+ order: { list_position: 'ASC' }
68
+ });
69
+ const lastQueued = yield this.repositoryRead.findOne({
70
+ where: { queue },
71
+ order: { list_position: 'DESC' }
72
+ });
73
+ return { firstQueued, lastQueued };
74
+ });
75
+ }
76
+ getMostRecentHistoryItemByQueueIdText(queue_id_text) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ const queue = yield this.queueService.getByIdText(queue_id_text);
79
+ if (!queue) {
80
+ throw new Error("Queue not found.");
81
+ }
82
+ const mostRecentHistoryItem = yield this.repositoryRead.findOne({
83
+ where: { queue, list_position: (0, typeorm_1.LessThan)(0) },
84
+ order: { list_position: 'DESC' }
85
+ });
86
+ return mostRecentHistoryItem;
87
+ });
88
+ }
89
+ addResourceToQueue(queue_id_text, resource_id_text, resourceService, resourceKey, calculatePosition) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ const queue = yield this.queueService.getByIdText(queue_id_text);
92
+ if (!queue) {
93
+ throw new Error("Queue not found.");
94
+ }
95
+ const resource = yield resourceService.getByIdText(resource_id_text);
96
+ if (!resource) {
97
+ throw new Error(`${resourceKey} not found.`);
98
+ }
99
+ const { firstQueued, lastQueued } = yield this.getFirstAndLastQueuedItemsByQueueIdText(queue_id_text);
100
+ const list_position = calculatePosition(firstQueued, lastQueued);
101
+ const finalDto = {
102
+ [resourceKey]: resource,
103
+ list_position
104
+ };
105
+ return this._update(queue, ['queue', resourceKey], finalDto);
106
+ });
107
+ }
108
+ addResourceToQueueHelper(queue_id_text, resource_id_text, resourceService, resourceKey, calculatePosition) {
109
+ return __awaiter(this, void 0, void 0, function* () {
110
+ return this.addResourceToQueue(queue_id_text, resource_id_text, resourceService, resourceKey, calculatePosition);
111
+ });
112
+ }
113
+ addResourceToQueueNext(queue_id_text, resource_id_text, resourceService, resourceKey) {
114
+ return __awaiter(this, void 0, void 0, function* () {
115
+ const { firstQueued } = yield this.getFirstAndLastQueuedItemsByQueueIdText(queue_id_text);
116
+ const newPosition = firstQueued ? parseFloat(firstQueued.list_position) - QUEUE_LIST_POSITION_INCREMENT : 1;
117
+ return this.addResourceToQueueHelper(queue_id_text, resource_id_text, resourceService, resourceKey, () => newPosition.toString());
118
+ });
119
+ }
120
+ addResourceToQueueLast(queue_id_text, resource_id_text, resourceService, resourceKey) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ const { lastQueued } = yield this.getFirstAndLastQueuedItemsByQueueIdText(queue_id_text);
123
+ const newPosition = lastQueued ? parseFloat(lastQueued.list_position) + QUEUE_LIST_POSITION_INCREMENT : '1';
124
+ return this.addResourceToQueueHelper(queue_id_text, resource_id_text, resourceService, resourceKey, () => newPosition.toString());
125
+ });
126
+ }
127
+ addResourceToQueueBetween(queue_id_text, resource_id_text, resourceService, resourceKey, position1, position2) {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ if (position1 >= position2) {
130
+ throw new Error("Position1 should be less than Position2.");
131
+ }
132
+ return this.addResourceToQueueHelper(queue_id_text, resource_id_text, resourceService, resourceKey, () => {
133
+ const pos1 = parseFloat(position1.toString());
134
+ const pos2 = parseFloat(position2.toString());
135
+ if (isNaN(pos1) || isNaN(pos2)) {
136
+ throw new Error("Invalid positions provided.");
137
+ }
138
+ return ((pos1 + pos2) / 2).toString();
139
+ });
140
+ });
141
+ }
142
+ addResourceToNowPlaying(queue_id_text, resource_id_text, resourceService, resourceKey) {
143
+ return __awaiter(this, void 0, void 0, function* () {
144
+ const queue = yield this.queueService.getByIdText(queue_id_text);
145
+ if (!queue) {
146
+ throw new Error("Queue not found.");
147
+ }
148
+ const resource = yield resourceService.getByIdText(resource_id_text);
149
+ if (!resource) {
150
+ throw new Error(`${resourceKey} not found.`);
151
+ }
152
+ const finalDto = {
153
+ [resourceKey]: resource,
154
+ list_position: '0'
155
+ };
156
+ return this._update(queue, ['queue', resourceKey], finalDto);
157
+ });
158
+ }
159
+ addResourceToHistory(queue_id_text, resource_id_text, resourceService, resourceKey) {
160
+ return __awaiter(this, void 0, void 0, function* () {
161
+ const queue = yield this.queueService.getByIdText(queue_id_text);
162
+ if (!queue) {
163
+ throw new Error("Queue not found.");
164
+ }
165
+ const resource = yield resourceService.getByIdText(resource_id_text);
166
+ if (!resource) {
167
+ throw new Error(`${resourceKey} not found.`);
168
+ }
169
+ const mostRecentHistoryItem = yield this.getMostRecentHistoryItemByQueueIdText(queue_id_text);
170
+ const newPosition = mostRecentHistoryItem ? parseFloat(mostRecentHistoryItem.list_position) + QUEUE_LIST_POSITION_INCREMENT : -1;
171
+ const finalDto = {
172
+ [resourceKey]: resource,
173
+ list_position: newPosition.toString()
174
+ };
175
+ return this._update(queue, ['queue', resourceKey], finalDto);
176
+ });
177
+ }
178
+ removeResourceFromQueue(queue_id_text, resource_id_text, resourceService, resourceKey) {
179
+ return __awaiter(this, void 0, void 0, function* () {
180
+ const queue = yield this.queueService.getByIdText(queue_id_text);
181
+ if (!queue) {
182
+ throw new Error("Queue not found.");
183
+ }
184
+ const resource = yield resourceService.getByIdText(resource_id_text);
185
+ if (!resource) {
186
+ throw new Error(`${resourceKey} not found.`);
187
+ }
188
+ return this._delete(queue, { [`${resourceKey}_id`]: resource.id });
189
+ });
190
+ }
191
+ addClipToQueueNext(queue_id_text, clip_id_text) {
192
+ return __awaiter(this, void 0, void 0, function* () {
193
+ return this.addResourceToQueueNext(queue_id_text, clip_id_text, this.clipService, 'clip');
194
+ });
195
+ }
196
+ addClipToQueueLast(queue_id_text, clip_id_text) {
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ return this.addResourceToQueueLast(queue_id_text, clip_id_text, this.clipService, 'clip');
199
+ });
200
+ }
201
+ addClipToQueueBetween(queue_id_text, clip_id_text, position1, position2) {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ return this.addResourceToQueueBetween(queue_id_text, clip_id_text, this.clipService, 'clip', position1, position2);
204
+ });
205
+ }
206
+ addClipToNowPlaying(queue_id_text, clip_id_text) {
207
+ return __awaiter(this, void 0, void 0, function* () {
208
+ return this.addResourceToNowPlaying(queue_id_text, clip_id_text, this.clipService, 'clip');
209
+ });
210
+ }
211
+ addClipToHistory(queue_id_text, clip_id_text) {
212
+ return __awaiter(this, void 0, void 0, function* () {
213
+ return this.addResourceToHistory(queue_id_text, clip_id_text, this.clipService, 'clip');
214
+ });
215
+ }
216
+ removeClipFromQueue(queue_id_text, clip_id_text) {
217
+ return __awaiter(this, void 0, void 0, function* () {
218
+ return this.removeResourceFromQueue(queue_id_text, clip_id_text, this.clipService, 'clip');
219
+ });
220
+ }
221
+ addItemToQueueNext(queue_id_text, item_id_text) {
222
+ return __awaiter(this, void 0, void 0, function* () {
223
+ return this.addResourceToQueueNext(queue_id_text, item_id_text, this.itemService, 'item');
224
+ });
225
+ }
226
+ addItemToQueueLast(queue_id_text, item_id_text) {
227
+ return __awaiter(this, void 0, void 0, function* () {
228
+ return this.addResourceToQueueLast(queue_id_text, item_id_text, this.itemService, 'item');
229
+ });
230
+ }
231
+ addItemToQueueBetween(queue_id_text, item_id_text, position1, position2) {
232
+ return __awaiter(this, void 0, void 0, function* () {
233
+ return this.addResourceToQueueBetween(queue_id_text, item_id_text, this.itemService, 'item', position1, position2);
234
+ });
235
+ }
236
+ addItemToNowPlaying(queue_id_text, item_id_text) {
237
+ return __awaiter(this, void 0, void 0, function* () {
238
+ return this.addResourceToNowPlaying(queue_id_text, item_id_text, this.itemService, 'item');
239
+ });
240
+ }
241
+ addItemToHistory(queue_id_text, item_id_text) {
242
+ return __awaiter(this, void 0, void 0, function* () {
243
+ return this.addResourceToHistory(queue_id_text, item_id_text, this.itemService, 'item');
244
+ });
245
+ }
246
+ removeItemFromQueue(queue_id_text, item_id_text) {
247
+ return __awaiter(this, void 0, void 0, function* () {
248
+ return this.removeResourceFromQueue(queue_id_text, item_id_text, this.itemService, 'item');
249
+ });
250
+ }
251
+ addItemChapterToQueueNext(queue_id_text, item_chapter_id_text) {
252
+ return __awaiter(this, void 0, void 0, function* () {
253
+ return this.addResourceToQueueNext(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter');
254
+ });
255
+ }
256
+ addItemChapterToQueueLast(queue_id_text, item_chapter_id_text) {
257
+ return __awaiter(this, void 0, void 0, function* () {
258
+ return this.addResourceToQueueLast(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter');
259
+ });
260
+ }
261
+ addItemChapterToQueueBetween(queue_id_text, item_chapter_id_text, position1, position2) {
262
+ return __awaiter(this, void 0, void 0, function* () {
263
+ return this.addResourceToQueueBetween(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter', position1, position2);
264
+ });
265
+ }
266
+ addItemChapterToNowPlaying(queue_id_text, item_chapter_id_text) {
267
+ return __awaiter(this, void 0, void 0, function* () {
268
+ return this.addResourceToNowPlaying(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter');
269
+ });
270
+ }
271
+ addItemChapterToHistory(queue_id_text, item_chapter_id_text) {
272
+ return __awaiter(this, void 0, void 0, function* () {
273
+ return this.addResourceToHistory(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter');
274
+ });
275
+ }
276
+ removeItemChapterFromQueue(queue_id_text, item_chapter_id_text) {
277
+ return __awaiter(this, void 0, void 0, function* () {
278
+ return this.removeResourceFromQueue(queue_id_text, item_chapter_id_text, this.itemChapterService, 'item_chapter');
279
+ });
280
+ }
281
+ addItemSoundbiteToQueueNext(queue_id_text, item_soundbite_id_text) {
282
+ return __awaiter(this, void 0, void 0, function* () {
283
+ return this.addResourceToQueueNext(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite');
284
+ });
285
+ }
286
+ addItemSoundbiteToQueueLast(queue_id_text, item_soundbite_id_text) {
287
+ return __awaiter(this, void 0, void 0, function* () {
288
+ return this.addResourceToQueueLast(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite');
289
+ });
290
+ }
291
+ addItemSoundbiteToQueueBetween(queue_id_text, item_soundbite_id_text, position1, position2) {
292
+ return __awaiter(this, void 0, void 0, function* () {
293
+ return this.addResourceToQueueBetween(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite', position1, position2);
294
+ });
295
+ }
296
+ addItemSoundbiteToNowPlaying(queue_id_text, item_soundbite_id_text) {
297
+ return __awaiter(this, void 0, void 0, function* () {
298
+ return this.addResourceToNowPlaying(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite');
299
+ });
300
+ }
301
+ addItemSoundbiteToHistory(queue_id_text, item_soundbite_id_text) {
302
+ return __awaiter(this, void 0, void 0, function* () {
303
+ return this.addResourceToHistory(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite');
304
+ });
305
+ }
306
+ removeItemSoundbiteFromQueue(queue_id_text, item_soundbite_id_text) {
307
+ return __awaiter(this, void 0, void 0, function* () {
308
+ return this.removeResourceFromQueue(queue_id_text, item_soundbite_id_text, this.itemSoundbiteService, 'item_soundbite');
309
+ });
310
+ }
311
+ addItemAddByRSSToQueue(queue_id_text, add_by_rss_resource_data, calculatePosition) {
312
+ return __awaiter(this, void 0, void 0, function* () {
313
+ const queue = yield this.queueService.getByIdText(queue_id_text);
314
+ if (!queue) {
315
+ throw new Error("Queue not found.");
316
+ }
317
+ const { firstQueued, lastQueued } = yield this.getFirstAndLastQueuedItemsByQueueIdText(queue_id_text);
318
+ const list_position = calculatePosition(firstQueued, lastQueued);
319
+ const add_by_rss_hash_id = (0, podverse_helpers_1.getMd5Hash)(add_by_rss_resource_data);
320
+ const finalDto = {
321
+ add_by_rss_resource_data,
322
+ list_position,
323
+ add_by_rss_hash_id
324
+ };
325
+ return this._update(queue, ['queue', 'add_by_rss_hash_id'], finalDto);
326
+ });
327
+ }
328
+ addItemAddByRSSToQueueHelper(queue_id_text, add_by_rss_resource_data, calculatePosition) {
329
+ return __awaiter(this, void 0, void 0, function* () {
330
+ return this.addItemAddByRSSToQueue(queue_id_text, add_by_rss_resource_data, calculatePosition);
331
+ });
332
+ }
333
+ addItemAddByRSSToQueueNext(queue_id_text, add_by_rss_resource_data) {
334
+ return __awaiter(this, void 0, void 0, function* () {
335
+ return this.addItemAddByRSSToQueueHelper(queue_id_text, add_by_rss_resource_data, (firstQueued) => {
336
+ const newPosition = firstQueued ? parseFloat(firstQueued.list_position) - QUEUE_LIST_POSITION_INCREMENT : 1;
337
+ return newPosition < 0 ? '0' : newPosition.toString();
338
+ });
339
+ });
340
+ }
341
+ addItemAddByRSSToQueueLast(queue_id_text, add_by_rss_resource_data) {
342
+ return __awaiter(this, void 0, void 0, function* () {
343
+ return this.addItemAddByRSSToQueueHelper(queue_id_text, add_by_rss_resource_data, (_, lastQueued) => {
344
+ return lastQueued ? (parseFloat(lastQueued.list_position) + QUEUE_LIST_POSITION_INCREMENT).toString() : '1';
345
+ });
346
+ });
347
+ }
348
+ addItemAddByRSSToQueueBetween(queue_id_text, add_by_rss_resource_data, position1, position2) {
349
+ return __awaiter(this, void 0, void 0, function* () {
350
+ if (position1 >= position2) {
351
+ throw new Error("Position1 should be less than Position2.");
352
+ }
353
+ return this.addItemAddByRSSToQueueHelper(queue_id_text, add_by_rss_resource_data, () => {
354
+ const pos1 = parseFloat(position1.toString());
355
+ const pos2 = parseFloat(position2.toString());
356
+ if (isNaN(pos1) || isNaN(pos2)) {
357
+ throw new Error("Invalid positions provided.");
358
+ }
359
+ return ((pos1 + pos2) / 2).toString();
360
+ });
361
+ });
362
+ }
363
+ addItemAddByRSSToNowPlaying(queue_id_text, add_by_rss_resource_data) {
364
+ return __awaiter(this, void 0, void 0, function* () {
365
+ const queue = yield this.queueService.getByIdText(queue_id_text);
366
+ if (!queue) {
367
+ throw new Error("Queue not found.");
368
+ }
369
+ const add_by_rss_hash_id = (0, podverse_helpers_1.getMd5Hash)(add_by_rss_resource_data);
370
+ const finalDto = {
371
+ add_by_rss_resource_data,
372
+ list_position: '0',
373
+ add_by_rss_hash_id
374
+ };
375
+ return this._update(queue, ['queue', 'add_by_rss_hash_id'], finalDto);
376
+ });
377
+ }
378
+ addItemAddByRSSToHistory(queue_id_text, add_by_rss_resource_data) {
379
+ return __awaiter(this, void 0, void 0, function* () {
380
+ const queue = yield this.queueService.getByIdText(queue_id_text);
381
+ if (!queue) {
382
+ throw new Error("Queue not found.");
383
+ }
384
+ const add_by_rss_hash_id = (0, podverse_helpers_1.getMd5Hash)(add_by_rss_resource_data);
385
+ const mostRecentHistoryItem = yield this.getMostRecentHistoryItemByQueueIdText(queue_id_text);
386
+ const newPosition = mostRecentHistoryItem ? parseFloat(mostRecentHistoryItem.list_position) + QUEUE_LIST_POSITION_INCREMENT : -1;
387
+ const finalDto = {
388
+ add_by_rss_resource_data,
389
+ list_position: newPosition.toString(),
390
+ add_by_rss_hash_id
391
+ };
392
+ return this._update(queue, ['queue', 'add_by_rss_hash_id'], finalDto);
393
+ });
394
+ }
395
+ removeItemAddByRSSFromQueue(queue_id_text, add_by_rss_hash_id) {
396
+ return __awaiter(this, void 0, void 0, function* () {
397
+ const queue = yield this.queueService.getByIdText(queue_id_text);
398
+ if (!queue) {
399
+ throw new Error("Queue not found.");
400
+ }
401
+ return this._delete(queue, { add_by_rss_hash_id });
402
+ });
403
+ }
404
+ getResourcesByParams(params) {
405
+ return __awaiter(this, void 0, void 0, function* () {
406
+ const whereClause = {};
407
+ if (params.clip_id) {
408
+ whereClause.clip = { id: params.clip_id };
409
+ }
410
+ if (params.item_id) {
411
+ whereClause.item = { id: params.item_id };
412
+ }
413
+ if (params.item_chapter_id) {
414
+ whereClause.item_chapter = { id: params.item_chapter_id };
415
+ }
416
+ if (params.item_soundbite_id) {
417
+ whereClause.item_soundbite = { id: params.item_soundbite_id };
418
+ }
419
+ return this.repositoryRead.find({
420
+ where: whereClause,
421
+ relations: ['clip', 'item', 'item_chapter', 'item_soundbite', 'queue']
422
+ });
423
+ });
424
+ }
425
+ }
426
+ exports.QueueResourceService = QueueResourceService;
@@ -0,0 +1,35 @@
1
+ import { Repository, ObjectLiteral } from 'typeorm';
2
+ export type UpdateHistoricalOptions = {
3
+ daily: boolean;
4
+ weekly: boolean;
5
+ monthly: boolean;
6
+ };
7
+ interface BaseAggregatedStats extends ObjectLiteral {
8
+ id: number;
9
+ day_current_count: number;
10
+ day_1_count?: number;
11
+ day_2_count?: number;
12
+ day_3_count?: number;
13
+ day_4_count?: number;
14
+ day_5_count?: number;
15
+ day_6_count?: number;
16
+ day_7_count?: number;
17
+ day_8_count?: number;
18
+ week_current_count: number;
19
+ week_1_count?: number;
20
+ week_2_count?: number;
21
+ week_3_count?: number;
22
+ week_4_count?: number;
23
+ month_current_count: number;
24
+ month_1_count?: number;
25
+ all_time_count?: number;
26
+ }
27
+ export declare abstract class BaseStatsAggregatedService<T extends BaseAggregatedStats, ID> {
28
+ protected repositoryReadWrite: Repository<T>;
29
+ constructor(repository: Repository<T>);
30
+ protected abstract getIdFieldName(): string;
31
+ _updateAggregatedStats(entity_id: ID, statsTrackEventService: any, updateAllTime?: boolean): Promise<void>;
32
+ _updateAggregatedStatsRolling(entity_id: ID, statsTrackEventService: any, updateHistoricalOptions: UpdateHistoricalOptions): Promise<void>;
33
+ }
34
+ export {};
35
+ //# sourceMappingURL=baseStatsAggregated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseStatsAggregated.d.ts","sourceRoot":"","sources":["../../../src/services/stats/baseStatsAggregated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAoB,MAAM,SAAS,CAAC;AAGtE,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAA;AAED,UAAU,mBAAoB,SAAQ,aAAa;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,8BAAsB,0BAA0B,CAAC,CAAC,SAAS,mBAAmB,EAAE,EAAE;IAChF,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;gBAEjC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAIrC,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,MAAM;IAGrC,sBAAsB,CAAC,SAAS,EAAE,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,aAAa,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBjH,6BAA6B,CAAC,SAAS,EAAE,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,uBAAuB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkEjJ"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseStatsAggregatedService = void 0;
13
+ const podverse_helpers_1 = require("podverse-helpers");
14
+ class BaseStatsAggregatedService {
15
+ constructor(repository) {
16
+ this.repositoryReadWrite = repository;
17
+ }
18
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
+ _updateAggregatedStats(entity_id_1, statsTrackEventService_1) {
20
+ return __awaiter(this, arguments, void 0, function* (entity_id, statsTrackEventService, updateAllTime = false) {
21
+ var _a, _b;
22
+ const eventCountDay = yield statsTrackEventService._getCountWithinTimeFrame(entity_id, podverse_helpers_1.TIME_CONSTANTS.ONE_DAY_IN_MINUTES);
23
+ const eventCountWeek = yield statsTrackEventService._getCountWithinTimeFrame(entity_id, podverse_helpers_1.TIME_CONSTANTS.ONE_WEEK_IN_MINUTES);
24
+ const eventCountMonth = yield statsTrackEventService._getCountWithinTimeFrame(entity_id, podverse_helpers_1.TIME_CONSTANTS.ONE_MONTH_IN_MINUTES);
25
+ const idFieldName = this.getIdFieldName();
26
+ let aggregatedStats = yield this.repositoryReadWrite.findOne({ where: { [idFieldName]: entity_id } });
27
+ if (!aggregatedStats) {
28
+ aggregatedStats = this.repositoryReadWrite.create({ [idFieldName]: entity_id });
29
+ }
30
+ aggregatedStats.day_current_count = eventCountDay !== null && eventCountDay !== void 0 ? eventCountDay : 0;
31
+ aggregatedStats.week_current_count = eventCountWeek !== null && eventCountWeek !== void 0 ? eventCountWeek : 0;
32
+ aggregatedStats.month_current_count = eventCountMonth !== null && eventCountMonth !== void 0 ? eventCountMonth : 0;
33
+ if (updateAllTime) {
34
+ aggregatedStats.all_time_count = ((_a = aggregatedStats.all_time_count) !== null && _a !== void 0 ? _a : 0) + ((_b = aggregatedStats.day_current_count) !== null && _b !== void 0 ? _b : 0);
35
+ }
36
+ yield this.repositoryReadWrite.save(aggregatedStats);
37
+ });
38
+ }
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ _updateAggregatedStatsRolling(entity_id, statsTrackEventService, updateHistoricalOptions) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
43
+ const eventCount = yield statsTrackEventService._getCountWithinTimeFrame(entity_id, podverse_helpers_1.TIME_CONSTANTS.ONE_DAY_IN_MINUTES);
44
+ const idFieldName = this.getIdFieldName();
45
+ let aggregatedStats = yield this.repositoryReadWrite.findOne({ where: { [idFieldName]: entity_id } });
46
+ if (!aggregatedStats) {
47
+ aggregatedStats = this.repositoryReadWrite.create({ [idFieldName]: entity_id });
48
+ }
49
+ aggregatedStats.day_current_count = eventCount !== null && eventCount !== void 0 ? eventCount : 0;
50
+ if (updateHistoricalOptions.daily || updateHistoricalOptions.weekly || updateHistoricalOptions.monthly) {
51
+ aggregatedStats.day_8_count = (_a = aggregatedStats.day_7_count) !== null && _a !== void 0 ? _a : 0;
52
+ aggregatedStats.day_7_count = (_b = aggregatedStats.day_6_count) !== null && _b !== void 0 ? _b : 0;
53
+ aggregatedStats.day_6_count = (_c = aggregatedStats.day_5_count) !== null && _c !== void 0 ? _c : 0;
54
+ aggregatedStats.day_5_count = (_d = aggregatedStats.day_4_count) !== null && _d !== void 0 ? _d : 0;
55
+ aggregatedStats.day_4_count = (_e = aggregatedStats.day_3_count) !== null && _e !== void 0 ? _e : 0;
56
+ aggregatedStats.day_3_count = (_f = aggregatedStats.day_2_count) !== null && _f !== void 0 ? _f : 0;
57
+ aggregatedStats.day_2_count = (_g = aggregatedStats.day_1_count) !== null && _g !== void 0 ? _g : 0;
58
+ aggregatedStats.day_1_count = (_h = aggregatedStats.day_current_count) !== null && _h !== void 0 ? _h : 0;
59
+ aggregatedStats.all_time_count = ((_j = aggregatedStats.all_time_count) !== null && _j !== void 0 ? _j : 0) + ((_k = aggregatedStats.day_current_count) !== null && _k !== void 0 ? _k : 0);
60
+ }
61
+ if (updateHistoricalOptions.weekly || updateHistoricalOptions.monthly) {
62
+ aggregatedStats.week_4_count = (_l = aggregatedStats.week_3_count) !== null && _l !== void 0 ? _l : 0;
63
+ aggregatedStats.week_3_count = (_m = aggregatedStats.week_2_count) !== null && _m !== void 0 ? _m : 0;
64
+ aggregatedStats.week_2_count = (_o = aggregatedStats.week_1_count) !== null && _o !== void 0 ? _o : 0;
65
+ aggregatedStats.week_1_count = (_p = aggregatedStats.week_current_count) !== null && _p !== void 0 ? _p : 0;
66
+ }
67
+ if (updateHistoricalOptions.monthly) {
68
+ aggregatedStats.month_1_count = (_q = aggregatedStats.month_current_count) !== null && _q !== void 0 ? _q : 0;
69
+ }
70
+ aggregatedStats.week_current_count =
71
+ (!aggregatedStats.day_1_count
72
+ && !aggregatedStats.day_2_count
73
+ && !aggregatedStats.day_3_count
74
+ && !aggregatedStats.day_4_count
75
+ && !aggregatedStats.day_5_count
76
+ && !aggregatedStats.day_6_count
77
+ && !aggregatedStats.day_7_count)
78
+ ? aggregatedStats.day_current_count
79
+ : (((_r = aggregatedStats.day_1_count) !== null && _r !== void 0 ? _r : 0)
80
+ + ((_s = aggregatedStats.day_2_count) !== null && _s !== void 0 ? _s : 0)
81
+ + ((_t = aggregatedStats.day_3_count) !== null && _t !== void 0 ? _t : 0)
82
+ + ((_u = aggregatedStats.day_4_count) !== null && _u !== void 0 ? _u : 0)
83
+ + ((_v = aggregatedStats.day_5_count) !== null && _v !== void 0 ? _v : 0)
84
+ + ((_w = aggregatedStats.day_6_count) !== null && _w !== void 0 ? _w : 0)
85
+ + ((_x = aggregatedStats.day_7_count) !== null && _x !== void 0 ? _x : 0));
86
+ aggregatedStats.month_current_count =
87
+ (!aggregatedStats.week_1_count
88
+ && !aggregatedStats.week_2_count
89
+ && !aggregatedStats.week_3_count
90
+ && !aggregatedStats.week_4_count)
91
+ ? aggregatedStats.week_current_count
92
+ : (((_y = aggregatedStats.week_1_count) !== null && _y !== void 0 ? _y : 0)
93
+ + ((_z = aggregatedStats.week_2_count) !== null && _z !== void 0 ? _z : 0)
94
+ + ((_0 = aggregatedStats.week_3_count) !== null && _0 !== void 0 ? _0 : 0)
95
+ + ((_1 = aggregatedStats.week_4_count) !== null && _1 !== void 0 ? _1 : 0));
96
+ yield this.repositoryReadWrite.save(aggregatedStats);
97
+ });
98
+ }
99
+ }
100
+ exports.BaseStatsAggregatedService = BaseStatsAggregatedService;