forked from DebaucheryLibrarian/traxxx
				
			
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| import { graphql } from '../api';
 | |
| import { releasesFragment, releaseFragment } from '../fragments';
 | |
| import { curateRelease } from '../curate';
 | |
| 
 | |
| function initReleasesActions(store, _router) {
 | |
|     async function fetchReleases({ _commit }, { limit = 100 }) {
 | |
|         const { releases } = await graphql(`
 | |
|             query Releases(
 | |
|                 $limit:Int = 1000,
 | |
|                 $after:Date = "1900-01-01",
 | |
|                 $before:Date = "2100-01-01",
 | |
|                 $orderBy:[ReleasesOrderBy!],
 | |
|                 $exclude: [String!]
 | |
|             ) {
 | |
|                 ${releasesFragment}
 | |
|             }
 | |
|         `, {
 | |
|             limit,
 | |
|             after: store.getters.after,
 | |
|             before: store.getters.before,
 | |
|             orderBy: store.state.ui.range === 'upcoming' ? 'DATE_ASC' : 'DATE_DESC',
 | |
|             exclude: store.state.ui.filter,
 | |
|         });
 | |
| 
 | |
|         return releases.map(release => curateRelease(release));
 | |
|     }
 | |
| 
 | |
|     async function fetchReleaseById({ _commit }, releaseId) {
 | |
|         // const release = await get(`/releases/${releaseId}`);
 | |
| 
 | |
|         const { release } = await graphql(`
 | |
|             query Release($releaseId:Int!) {
 | |
|                 ${releaseFragment}
 | |
|             }
 | |
|         `, {
 | |
|             releaseId: Number(releaseId),
 | |
|         });
 | |
| 
 | |
|         return curateRelease(release);
 | |
|     }
 | |
| 
 | |
|     return {
 | |
|         fetchReleases,
 | |
|         fetchReleaseById,
 | |
|     };
 | |
| }
 | |
| 
 | |
| export default initReleasesActions;
 |