28 lines
		
	
	
		
			691 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			691 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
'use strict';
 | 
						|
 | 
						|
const RequestClient = require("./RequestClient.js");
 | 
						|
 | 
						|
const getName = id => {
 | 
						|
  return id.split('-').map(s => s.charAt(0).toUpperCase() + s.slice(1)).join(' ');
 | 
						|
};
 | 
						|
 | 
						|
class SearchProvider extends RequestClient {
 | 
						|
  constructor(uppy, opts) {
 | 
						|
    super(uppy, opts);
 | 
						|
    this.provider = opts.provider;
 | 
						|
    this.id = this.provider;
 | 
						|
    this.name = this.opts.name || getName(this.id);
 | 
						|
    this.pluginId = this.opts.pluginId;
 | 
						|
  }
 | 
						|
 | 
						|
  fileUrl(id) {
 | 
						|
    return `${this.hostname}/search/${this.id}/get/${id}`;
 | 
						|
  }
 | 
						|
 | 
						|
  search(text, queries) {
 | 
						|
    return this.get(`search/${this.id}/list?q=${encodeURIComponent(text)}${queries ? `&${queries}` : ''}`);
 | 
						|
  }
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
module.exports = SearchProvider; |