UNPKG

@heroku/salesforce-sdk-nodejs

Version:

Salesforce SDK for Heroku Apps.

41 lines (40 loc) 1.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.OrgImpl = void 0; const bulk_api_1 = require("./bulk-api"); const data_api_js_1 = require("./data-api.js"); const data_cloud_api_js_1 = require("./data-cloud-api.js"); const request_1 = require("../utils/request"); const user_js_1 = require("./user.js"); const HTTP_REQUEST = new request_1.HttpRequestUtil(); class OrgImpl { constructor(accessToken, apiVersion, namespace, orgId, orgDomainUrl, userId, username, dataCloudAccessToken, dataCloudInstanceUrl) { this.accessToken = accessToken; this.apiVersion = apiVersion.startsWith('v') ? apiVersion.substring(1) : apiVersion; this.domainUrl = orgDomainUrl.startsWith('http') ? orgDomainUrl : `https://${orgDomainUrl}`; this.id = orgId; this.namespace = namespace === null || namespace === 'null' ? '' : namespace; this.bulkApi = (0, bulk_api_1.createBulkApi)({ instanceUrl: this.domainUrl, version: this.apiVersion, accessToken, }); this.dataApi = new data_api_js_1.DataApiImpl(accessToken, this.apiVersion, this.domainUrl); if (dataCloudAccessToken && dataCloudInstanceUrl) { this.dataCloudApi = new data_cloud_api_js_1.DataCloudApiImpl(dataCloudAccessToken, dataCloudInstanceUrl); } this.user = new user_js_1.UserImpl(userId, username); } async request(fullUrlOrUrlPart, opts, json = true) { const url = fullUrlOrUrlPart.startsWith('http') ? fullUrlOrUrlPart : `${this.domainUrl}/${fullUrlOrUrlPart}`; const updatedOpts = opts || {}; updatedOpts.headers = updatedOpts.headers || {}; if (!updatedOpts.headers['Authorization']) { updatedOpts.headers['Authorization'] = `Bearer ${this.accessToken}`; } return HTTP_REQUEST.request(url, updatedOpts, json); } } exports.OrgImpl = OrgImpl;