Skip to content

Commit 7ed19d0

Browse files
authored
Merge pull request #41 from Lharz/fix-add-parameters-options
added "options" parameter for addParameters and fetchResource
2 parents e5c5bf8 + 21cecdd commit 7ed19d0

File tree

3 files changed

+24
-19
lines changed

3 files changed

+24
-19
lines changed

src/hydra/addParameters.js

+18-16
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,27 @@
11
import Parameter from "../Parameter";
22
import fetchResource from "./fetchResource";
33

4-
export default api => {
4+
export default (api, options = {}) => {
55
const promises = [];
66

77
for (const resource of api.resources) {
8-
const promise = fetchResource(resource.url).then(({ parameters = [] }) => {
9-
const resourceParameters = [];
10-
parameters.forEach(({ property = null, required, variable }) => {
11-
if (null === property) {
12-
return;
13-
}
14-
15-
const { range = null } =
16-
resource.fields.find(({ name }) => property === name) || {};
17-
18-
resourceParameters.push(new Parameter(variable, range, required, ""));
19-
});
20-
21-
return resourceParameters;
22-
});
8+
const promise = fetchResource(resource.url, options).then(
9+
({ parameters = [] }) => {
10+
const resourceParameters = [];
11+
parameters.forEach(({ property = null, required, variable }) => {
12+
if (null === property) {
13+
return;
14+
}
15+
16+
const { range = null } =
17+
resource.fields.find(({ name }) => property === name) || {};
18+
19+
resourceParameters.push(new Parameter(variable, range, required, ""));
20+
});
21+
22+
return resourceParameters;
23+
}
24+
);
2325

2426
promises.push(promise);
2527
}

src/hydra/fetchResource.js

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
import fetchJsonLd from "./fetchJsonLd";
22
import get from "lodash.get";
33

4-
export default async resourceUrl => {
5-
return await fetchJsonLd(resourceUrl, { itemsPerPage: 0 }).then(
4+
export default async (resourceUrl, options = {}) => {
5+
return await fetchJsonLd(
6+
resourceUrl,
7+
Object.assign({ itemsPerPage: 0 }, options)
8+
).then(
69
d => ({
710
parameters: get(d, "body.hydra:search.hydra:mapping")
811
}),

src/hydra/parseHydraDocumentation.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,6 @@ export default function parseHydraDocumentation(entrypointUrl, options = {}) {
449449
})
450450
)
451451
.then(({ api, response, status }) =>
452-
addParameters(api).then(api => ({ api, response, status }))
452+
addParameters(api, options).then(api => ({ api, response, status }))
453453
);
454454
}

0 commit comments

Comments
 (0)