
import pjson from "../../package.json";
import { APICallHeaders, DEFAULT_APP_KEY_HEADER, DEFAULT_HEADERS, DEFAULT_SYSTEM_USER_TOKEN_HEADER } from "./api-call-headers";
import { VTXBaseAPI } from "./vtx-base-api";





export class VTXWebBrowserAPI extends VTXBaseAPI{

    constructor(userToken?:string,  backendUrl?:string){
        super(VTXWebBrowserAPI.getDefaultHeaders(userToken), backendUrl);

    }

    public setUserToken(userToken:string|null){
        if (userToken){
            this.headers = {                
                ...this.headers,
                [DEFAULT_SYSTEM_USER_TOKEN_HEADER]: userToken,
            } 
        }else{
            delete this.headers[DEFAULT_SYSTEM_USER_TOKEN_HEADER];
        }
    }

    public static getDefaultHeaders(userToken?:string):APICallHeaders{
        
        if (userToken){
            return {                            
                ...DEFAULT_HEADERS,
                [DEFAULT_SYSTEM_USER_TOKEN_HEADER]: userToken,
            }    
    
        }else{
            return {            
                ...DEFAULT_HEADERS
            }    
    
        }
        
    }

}