Now handles top level files and recursive files in folders. Set max line length to be 100
76 lines
1.7 KiB
JavaScript
76 lines
1.7 KiB
JavaScript
import ClassesRouter from './ClassesRouter';
|
|
import rest from '../rest';
|
|
import * as middleware from '../middlewares';
|
|
|
|
export class AudiencesRouter extends ClassesRouter {
|
|
className() {
|
|
return '_Audience';
|
|
}
|
|
|
|
handleFind(req) {
|
|
const body = Object.assign(req.body, ClassesRouter.JSONFromQuery(req.query));
|
|
const options = ClassesRouter.optionsFromBody(body);
|
|
|
|
return rest
|
|
.find(
|
|
req.config,
|
|
req.auth,
|
|
'_Audience',
|
|
body.where,
|
|
options,
|
|
req.info.clientSDK,
|
|
req.info.context
|
|
)
|
|
.then(response => {
|
|
response.results.forEach(item => {
|
|
item.query = JSON.parse(item.query);
|
|
});
|
|
|
|
return { response: response };
|
|
});
|
|
}
|
|
|
|
handleGet(req) {
|
|
return super.handleGet(req).then(data => {
|
|
data.response.query = JSON.parse(data.response.query);
|
|
|
|
return data;
|
|
});
|
|
}
|
|
|
|
mountRoutes() {
|
|
this.route('GET', '/push_audiences', middleware.promiseEnforceMasterKeyAccess, req => {
|
|
return this.handleFind(req);
|
|
});
|
|
this.route(
|
|
'GET',
|
|
'/push_audiences/:objectId',
|
|
middleware.promiseEnforceMasterKeyAccess,
|
|
req => {
|
|
return this.handleGet(req);
|
|
}
|
|
);
|
|
this.route('POST', '/push_audiences', middleware.promiseEnforceMasterKeyAccess, req => {
|
|
return this.handleCreate(req);
|
|
});
|
|
this.route(
|
|
'PUT',
|
|
'/push_audiences/:objectId',
|
|
middleware.promiseEnforceMasterKeyAccess,
|
|
req => {
|
|
return this.handleUpdate(req);
|
|
}
|
|
);
|
|
this.route(
|
|
'DELETE',
|
|
'/push_audiences/:objectId',
|
|
middleware.promiseEnforceMasterKeyAccess,
|
|
req => {
|
|
return this.handleDelete(req);
|
|
}
|
|
);
|
|
}
|
|
}
|
|
|
|
export default AudiencesRouter;
|