UNPKG

cluedin-widget

Version:

This is the project for creating and managing widgets in CluedIn.

58 lines (49 loc) 1.93 kB
module.exports = function( protocol, mainDomain, clientId ) { var goToApp = function( url ) { return protocol + clientId + mainDomain + url; }; return { redirectToUrl: function( url ) { window.location = url; }, goToSeeAdministratorLinkPage: function() { return goToApp( '#/me/organization/administrators' ); }, goToConnectedProvider: function() { return goToApp( '#/administration/integration/current' ); }, gotToAppProvider: function( params ) { return goToApp( '#/administration/integration/integration/new/' + params[ 0 ] + '/' + params[ 1 ] ); }, goToSearch: function( searchTerm ) { return goToApp( '#/search/' + searchTerm ); }, goToEntity: function( entity ) { if ( entity.data && entity.data.entityType === '/Organization' ) { return goToApp( '#/organization/' + entity.id ); } if ( (entity.data && entity.data.entityType === '/Person') || ( entity.data && entity.data.entityType === '/Infrastructure/User' ) ) { return goToApp( '#/person/' + entity.id ); } return goToApp( '#/entity/' + entity.id + '/details' ); }, goToApp: goToApp, goToInviteUser: function( param ) { let url = '#/administration/useradmin/domainusers?open=true'; if ( param && param.email ) { url += '&email=' + param.email; } if ( param && param.name ) { url += '&name=' + param.name; } return goToApp( url ); }, goToAppProvider: function( type ) { let url = '#/administration/integration/all'; if ( type ) { url += '?type=' + type; } return goToApp( url ); } }; };