UNPKG

jsforce

Version:

Salesforce API Library for JavaScript

116 lines (108 loc) 10.5 kB
import _typeof from "@babel/runtime-corejs3/helpers/typeof"; import _classCallCheck from "@babel/runtime-corejs3/helpers/classCallCheck"; import _createClass from "@babel/runtime-corejs3/helpers/createClass"; import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty"; import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringify"; import "core-js/modules/es.regexp.exec.js"; import "core-js/modules/es.regexp.test.js"; /** * @file Manages Salesforce Apex REST endpoint calls * @author Shinichi Tomita <shinichi.tomita@gmail.com> */ import { registerModule } from '../jsforce'; /** * API class for Apex REST endpoint call */ export var Apex = /*#__PURE__*/function () { /** * */ function Apex(conn) { _classCallCheck(this, Apex); /** * Synonym of Apex#delete() */ _defineProperty(this, "del", this.delete); this._conn = conn; } /* @private */ return _createClass(Apex, [{ key: "_baseUrl", value: function _baseUrl() { return "".concat(this._conn.instanceUrl, "/services/apexrest"); } /** * @private */ }, { key: "_createRequestParams", value: function _createRequestParams(method, path, body) { var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; var headers = _typeof(options.headers) === 'object' ? options.headers : {}; if (!/^(GET|DELETE)$/i.test(method)) { headers['content-type'] = 'application/json'; } var params = { method: method, url: this._baseUrl() + path, headers: headers }; if (body) { params.body = _JSON$stringify(body); } return params; } /** * Call Apex REST service in GET request */ }, { key: "get", value: function get(path, options) { return this._conn.request(this._createRequestParams('GET', path, undefined, options)); } /** * Call Apex REST service in POST request */ }, { key: "post", value: function post(path, body, options) { var params = this._createRequestParams('POST', path, body, options); return this._conn.request(params); } /** * Call Apex REST service in PUT request */ }, { key: "put", value: function put(path, body, options) { var params = this._createRequestParams('PUT', path, body, options); return this._conn.request(params); } /** * Call Apex REST service in PATCH request */ }, { key: "patch", value: function patch(path, body, options) { var params = this._createRequestParams('PATCH', path, body, options); return this._conn.request(params); } /** * Call Apex REST service in DELETE request */ }, { key: "delete", value: function _delete(path, options) { return this._conn.request(this._createRequestParams('DELETE', path, undefined, options)); } }]); }(); /*--------------------------------------------*/ /* * Register hook in connection instantiation for dynamically adding this API module features */ registerModule('apex', function (conn) { return new Apex(conn); }); export default Apex; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZWdpc3Rlck1vZHVsZSIsIkFwZXgiLCJjb25uIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2RlZmluZVByb3BlcnR5IiwiZGVsZXRlIiwiX2Nvbm4iLCJfY3JlYXRlQ2xhc3MiLCJrZXkiLCJ2YWx1ZSIsIl9iYXNlVXJsIiwiY29uY2F0IiwiaW5zdGFuY2VVcmwiLCJfY3JlYXRlUmVxdWVzdFBhcmFtcyIsIm1ldGhvZCIsInBhdGgiLCJib2R5Iiwib3B0aW9ucyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImhlYWRlcnMiLCJfdHlwZW9mIiwidGVzdCIsInBhcmFtcyIsInVybCIsIl9KU09OJHN0cmluZ2lmeSIsImdldCIsInJlcXVlc3QiLCJwb3N0IiwicHV0IiwicGF0Y2giLCJfZGVsZXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9hcGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGUgTWFuYWdlcyBTYWxlc2ZvcmNlIEFwZXggUkVTVCBlbmRwb2ludCBjYWxsc1xuICogQGF1dGhvciBTaGluaWNoaSBUb21pdGEgPHNoaW5pY2hpLnRvbWl0YUBnbWFpbC5jb20+XG4gKi9cbmltcG9ydCB7IHJlZ2lzdGVyTW9kdWxlIH0gZnJvbSAnLi4vanNmb3JjZSc7XG5pbXBvcnQgQ29ubmVjdGlvbiBmcm9tICcuLi9jb25uZWN0aW9uJztcbmltcG9ydCB7IEh0dHBSZXF1ZXN0LCBIdHRwTWV0aG9kcywgU2NoZW1hIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIEFQSSBjbGFzcyBmb3IgQXBleCBSRVNUIGVuZHBvaW50IGNhbGxcbiAqL1xuZXhwb3J0IGNsYXNzIEFwZXg8UyBleHRlbmRzIFNjaGVtYT4ge1xuICBfY29ubjogQ29ubmVjdGlvbjxTPjtcblxuICAvKipcbiAgICpcbiAgICovXG4gIGNvbnN0cnVjdG9yKGNvbm46IENvbm5lY3Rpb248Uz4pIHtcbiAgICB0aGlzLl9jb25uID0gY29ubjtcbiAgfVxuXG4gIC8qIEBwcml2YXRlICovXG4gIF9iYXNlVXJsKCkge1xuICAgIHJldHVybiBgJHt0aGlzLl9jb25uLmluc3RhbmNlVXJsfS9zZXJ2aWNlcy9hcGV4cmVzdGA7XG4gIH1cblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIF9jcmVhdGVSZXF1ZXN0UGFyYW1zKFxuICAgIG1ldGhvZDogSHR0cE1ldGhvZHMsXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGJvZHk/OiBPYmplY3QsXG4gICAgb3B0aW9uczogeyBoZWFkZXJzPzogSHR0cFJlcXVlc3RbJ2hlYWRlcnMnXSB9ID0ge30sXG4gICk6IEh0dHBSZXF1ZXN0IHtcbiAgICBjb25zdCBoZWFkZXJzOiBIdHRwUmVxdWVzdFsnaGVhZGVycyddID1cbiAgICAgIHR5cGVvZiBvcHRpb25zLmhlYWRlcnMgPT09ICdvYmplY3QnID8gb3B0aW9ucy5oZWFkZXJzIDoge307XG4gICAgaWYgKCEvXihHRVR8REVMRVRFKSQvaS50ZXN0KG1ldGhvZCkpIHtcbiAgICAgIGhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddID0gJ2FwcGxpY2F0aW9uL2pzb24nO1xuICAgIH1cbiAgICBjb25zdCBwYXJhbXM6IEh0dHBSZXF1ZXN0ID0ge1xuICAgICAgbWV0aG9kLFxuICAgICAgdXJsOiB0aGlzLl9iYXNlVXJsKCkgKyBwYXRoLFxuICAgICAgaGVhZGVycyxcbiAgICB9O1xuICAgIGlmIChib2R5KSB7XG4gICAgICBwYXJhbXMuYm9keSA9IEpTT04uc3RyaW5naWZ5KGJvZHkpO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgQXBleCBSRVNUIHNlcnZpY2UgaW4gR0VUIHJlcXVlc3RcbiAgICovXG4gIGdldDxSID0gdW5rbm93bj4ocGF0aDogc3RyaW5nLCBvcHRpb25zPzogT2JqZWN0KSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm4ucmVxdWVzdDxSPihcbiAgICAgIHRoaXMuX2NyZWF0ZVJlcXVlc3RQYXJhbXMoJ0dFVCcsIHBhdGgsIHVuZGVmaW5lZCwgb3B0aW9ucyksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIEFwZXggUkVTVCBzZXJ2aWNlIGluIFBPU1QgcmVxdWVzdFxuICAgKi9cbiAgcG9zdDxSID0gdW5rbm93bj4ocGF0aDogc3RyaW5nLCBib2R5PzogT2JqZWN0LCBvcHRpb25zPzogT2JqZWN0KSB7XG4gICAgY29uc3QgcGFyYW1zID0gdGhpcy5fY3JlYXRlUmVxdWVzdFBhcmFtcygnUE9TVCcsIHBhdGgsIGJvZHksIG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLl9jb25uLnJlcXVlc3Q8Uj4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIEFwZXggUkVTVCBzZXJ2aWNlIGluIFBVVCByZXF1ZXN0XG4gICAqL1xuICBwdXQ8UiA9IHVua25vd24+KHBhdGg6IHN0cmluZywgYm9keT86IE9iamVjdCwgb3B0aW9ucz86IE9iamVjdCkge1xuICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuX2NyZWF0ZVJlcXVlc3RQYXJhbXMoJ1BVVCcsIHBhdGgsIGJvZHksIG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLl9jb25uLnJlcXVlc3Q8Uj4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIEFwZXggUkVTVCBzZXJ2aWNlIGluIFBBVENIIHJlcXVlc3RcbiAgICovXG4gIHBhdGNoPFIgPSB1bmtub3duPihwYXRoOiBzdHJpbmcsIGJvZHk/OiBPYmplY3QsIG9wdGlvbnM/OiBPYmplY3QpIHtcbiAgICBjb25zdCBwYXJhbXMgPSB0aGlzLl9jcmVhdGVSZXF1ZXN0UGFyYW1zKCdQQVRDSCcsIHBhdGgsIGJvZHksIG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLl9jb25uLnJlcXVlc3Q8Uj4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIEFwZXggUkVTVCBzZXJ2aWNlIGluIERFTEVURSByZXF1ZXN0XG4gICAqL1xuICBkZWxldGU8UiA9IHVua25vd24+KHBhdGg6IHN0cmluZywgb3B0aW9ucz86IE9iamVjdCkge1xuICAgIHJldHVybiB0aGlzLl9jb25uLnJlcXVlc3Q8Uj4oXG4gICAgICB0aGlzLl9jcmVhdGVSZXF1ZXN0UGFyYW1zKCdERUxFVEUnLCBwYXRoLCB1bmRlZmluZWQsIG9wdGlvbnMpLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogU3lub255bSBvZiBBcGV4I2RlbGV0ZSgpXG4gICAqL1xuICBkZWwgPSB0aGlzLmRlbGV0ZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlxuICogUmVnaXN0ZXIgaG9vayBpbiBjb25uZWN0aW9uIGluc3RhbnRpYXRpb24gZm9yIGR5bmFtaWNhbGx5IGFkZGluZyB0aGlzIEFQSSBtb2R1bGUgZmVhdHVyZXNcbiAqL1xucmVnaXN0ZXJNb2R1bGUoJ2FwZXgnLCAoY29ubikgPT4gbmV3IEFwZXgoY29ubikpO1xuXG5leHBvcnQgZGVmYXVsdCBBcGV4O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxjQUFjLFFBQVEsWUFBWTtBQUkzQztBQUNBO0FBQ0E7QUFDQSxXQUFhQyxJQUFJO0VBR2Y7QUFDRjtBQUNBO0VBQ0UsU0FBQUEsS0FBWUMsSUFBbUIsRUFBRTtJQUFBQyxlQUFBLE9BQUFGLElBQUE7SUE0RWpDO0FBQ0Y7QUFDQTtJQUZFRyxlQUFBLGNBR00sSUFBSSxDQUFDQyxNQUFNO0lBOUVmLElBQUksQ0FBQ0MsS0FBSyxHQUFHSixJQUFJO0VBQ25COztFQUVBO0VBQUEsT0FBQUssWUFBQSxDQUFBTixJQUFBO0lBQUFPLEdBQUE7SUFBQUMsS0FBQSxFQUNBLFNBQUFDLFNBQUEsRUFBVztNQUNULFVBQUFDLE1BQUEsQ0FBVSxJQUFJLENBQUNMLEtBQUssQ0FBQ00sV0FBVztJQUNsQzs7SUFFQTtBQUNGO0FBQ0E7RUFGRTtJQUFBSixHQUFBO0lBQUFDLEtBQUEsRUFHQSxTQUFBSSxxQkFDRUMsTUFBbUIsRUFD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