browser-sdk
Version:
javascript SDK for the lightelligence-platform
120 lines (105 loc) • 4.18 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _apiService = _interopRequireDefault(require("../tools/apiService"));
/**
* Methods for application operations
*/
var Application =
/*#__PURE__*/
function () {
function Application() {
(0, _classCallCheck2["default"])(this, Application);
}
(0, _createClass2["default"])(Application, null, [{
key: "getApplications",
/**
* Get all applications available for the tenant.
* @param {object} params Search parameters
* @param {boolean} [params.installed] Filter for only installed applications
* @param {number} [params.page=0] The number of the result page starting with 0
* @param {number} [params.pageSize=10] The number of results per page. Default is 10
* @returns {Promise}
*/
value: function getApplications(params) {
var urlParams = new URLSearchParams(params);
return _apiService["default"].call("/applications?".concat(urlParams.toString()));
}
/**
* Get detailed information for the available or installed application
* @param {string} applicationId The application ID
* @returns {Promise}
*/
}, {
key: "getApplication",
value: function getApplication(applicationId) {
return _apiService["default"].call("/applications/".concat(applicationId));
}
/**
* Get permissions required by an application
* @param {string} applicationId The application ID
* @returns {Promise}
*/
}, {
key: "getPermissions",
value: function getPermissions(applicationId) {
return _apiService["default"].call("/applications/".concat(applicationId, "/permissions"));
}
/**
* Install an available application
* @param {string} applicationId The application ID
* @param {object} data Application data
* @param {object} [data.permissions] Application permissions
* @param {{ id: string }[]} [data.permissions.client] Application client permissions
* @param {{ id: string }[]} [data.permissions.user] Application client permissions
* @returns {Promise}
*/
}, {
key: "installApplication",
value: function installApplication(applicationId) {
var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return _apiService["default"].call("/applications/".concat(applicationId, "/installation"), 'POST', data);
}
/**
* Updates and re-consents an installation
* @param {string} applicationId The application ID
* @param {object} data Application data
* @param {object} [data.permissions] Application permissions
* @param {{ id: string }[]} [data.permissions.client] Application client permissions
* @param {{ id: string }[]} [data.permissions.user] Application client permissions
* @returns {Promise}
*/
}, {
key: "updateInstallation",
value: function updateInstallation(applicationId, data) {
return _apiService["default"].call("/applications/".concat(applicationId, "/installation"), 'PATCH', data);
}
/**
* Get detailed information for an application installation
* @param {string} applicationId The application ID
* @returns {Promise}
*/
}, {
key: "getInstallationDetails",
value: function getInstallationDetails(applicationId) {
return _apiService["default"].call("/applications/".concat(applicationId, "/installation"));
}
/**
* Uninstall an installed application
* @param {string} applicationId The application ID
* @returns {Promise}
*/
}, {
key: "uninstallApplication",
value: function uninstallApplication(applicationId) {
return _apiService["default"].call("/applications/".concat(applicationId, "/installation"), 'DELETE');
}
}]);
return Application;
}();
exports["default"] = Application;