SearchProvider.js 663 B

12345678910111213141516171819202122232425
  1. 'use strict'
  2. import RequestClient from './RequestClient.js'
  3. const getName = (id) => {
  4. return id.split('-').map((s) => s.charAt(0).toUpperCase() + s.slice(1)).join(' ')
  5. }
  6. export default class SearchProvider extends RequestClient {
  7. constructor (uppy, opts) {
  8. super(uppy, opts)
  9. this.provider = opts.provider
  10. this.id = this.provider
  11. this.name = this.opts.name || getName(this.id)
  12. this.pluginId = this.opts.pluginId
  13. }
  14. fileUrl (id) {
  15. return `${this.hostname}/search/${this.id}/get/${id}`
  16. }
  17. search (text, queries) {
  18. return this.get(`search/${this.id}/list?q=${encodeURIComponent(text)}${queries ? `&${queries}` : ''}`)
  19. }
  20. }