1 import HttpClient from "./http-client";
3 export class ERMAPIClient extends HttpClient {
6 baseURL: "/api/v1/erm/",
23 endpoint: "agreements/" + id,
26 "periods,user_roles,user_roles.patron,agreement_licenses,agreement_licenses.license,agreement_relationships,agreement_relationships.related_agreement,documents,agreement_packages,agreement_packages.package,vendor",
29 getAll: (query, params) =>
31 endpoint: "agreements",
37 endpoint: "agreements/" + id,
41 endpoint: "agreements",
44 update: (agreement, id) =>
46 endpoint: "agreements/" + id,
49 count: (query = {}) =>
56 ...(query && { q: JSON.stringify(query) }),
66 endpoint: "licenses/" + id,
69 "user_roles,user_roles.patron,vendor,documents",
72 getAll: (query, params) =>
78 "x-koha-embed": "vendor",
83 endpoint: "licenses/" + id,
90 update: (license, id) =>
92 endpoint: "licenses/" + id,
95 count: (query = {}) =>
102 ...(query && { q: JSON.stringify(query) }),
108 get localPackages() {
112 endpoint: "eholdings/local/packages/" + id,
115 "package_agreements,package_agreements.agreement,resources+count,vendor",
118 getAll: (query, params) =>
120 endpoint: "eholdings/local/packages",
124 "x-koha-embed": "resources+count,vendor.name",
129 endpoint: "eholdings/local/packages/" + id,
131 create: local_package =>
133 endpoint: "eholdings/local/packages",
136 update: (local_package, id) =>
138 endpoint: "eholdings/local/packages/" + id,
141 count: (query = {}) =>
144 "eholdings/local/packages?" +
145 new URLSearchParams({
148 ...(query && { q: JSON.stringify(query) }),
158 endpoint: "eholdings/local/titles/" + id,
160 "x-koha-embed": "resources,resources.package",
165 endpoint: "eholdings/local/titles/" + id,
167 create: local_package =>
169 endpoint: "eholdings/local/titles",
172 update: (local_package, id) =>
174 endpoint: "eholdings/local/titles/" + id,
177 count: (query = {}) =>
180 "eholdings/local/titles?" +
181 new URLSearchParams({
184 ...(query && { q: JSON.stringify(query) }),
189 endpoint: "eholdings/local/titles/import",
195 get localResources() {
199 endpoint: "eholdings/local/resources/" + id,
201 "x-koha-embed": "title,package,vendor",
207 get EBSCOPackages() {
211 endpoint: "eholdings/ebsco/packages/" + id,
214 "package_agreements,package_agreements.agreement,resources+count,vendor",
219 endpoint: "eholdings/ebsco/packages/" + id,
229 endpoint: "eholdings/ebsco/titles/" + id,
231 "x-koha-embed": "resources,resources.package",
237 get EBSCOResources() {
241 endpoint: "eholdings/ebsco/resources/" + id,
243 "x-koha-embed": "title,package,vendor",
248 endpoint: "eholdings/ebsco/resources/" + id,
254 get usage_data_providers() {
258 endpoint: "usage_data_providers/" + id,
262 endpoint: "usage_data_providers",
267 endpoint: "usage_data_providers/" + id,
269 create: usage_data_provider =>
271 endpoint: "usage_data_providers",
272 body: usage_data_provider,
274 update: (usage_data_provider, id) =>
276 endpoint: "usage_data_providers/" + id,
277 body: usage_data_provider,
279 run: (id, begin_date, end_date) =>
282 "usage_data_providers/" +
291 endpoint: "usage_data_providers/" + id + "/test_connection",
293 count: (query = {}) =>
296 "usage_data_providers?" +
297 new URLSearchParams({
300 ...(query && { q: JSON.stringify(query) }),
306 get counter_files() {
310 endpoint: "counter_files/" + id,
312 count: (query = {}) =>
316 new URLSearchParams({
319 ...(query && { q: JSON.stringify(query) }),
325 get default_usage_reports() {
329 endpoint: "default_usage_reports",
332 create: default_usage_report =>
334 endpoint: "default_usage_reports",
335 body: default_usage_report,
339 endpoint: "default_usage_reports/" + id,
344 get usage_platforms() {
346 count: (query = {}) =>
350 new URLSearchParams({
353 ...(query && { q: JSON.stringify(query) }),
361 count: (query = {}) =>
365 new URLSearchParams({
368 ...(query && { q: JSON.stringify(query) }),
374 get usage_databases() {
376 count: (query = {}) =>
380 new URLSearchParams({
383 ...(query && { q: JSON.stringify(query) }),
391 count: (query = {}) =>
395 new URLSearchParams({
398 ...(query && { q: JSON.stringify(query) }),
405 export default ERMAPIClient;