mirror of
https://github.com/bitwarden/browser.git
synced 2024-12-04 13:44:00 +01:00
207 lines
14 KiB
JavaScript
207 lines
14 KiB
JavaScript
angular
|
|
.module('bit.services')
|
|
|
|
.factory('apiService', function ($resource, tokenService, appSettings, $httpParamSerializer) {
|
|
var _service = {},
|
|
_apiUri = appSettings.apiUri,
|
|
_identityUri = appSettings.identityUri;
|
|
|
|
_service.logins = $resource(_apiUri + '/logins/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id' } },
|
|
getAdmin: { url: _apiUri + '/logins/:id/admin', method: 'GET', params: { id: '@id' } },
|
|
list: { method: 'GET', params: {} },
|
|
post: { method: 'POST', params: {} },
|
|
postAdmin: { url: _apiUri + '/logins/admin', method: 'POST', params: {} },
|
|
put: { method: 'POST', params: { id: '@id' } },
|
|
putAdmin: { url: _apiUri + '/logins/:id/admin', method: 'POST', params: { id: '@id' } },
|
|
del: { url: _apiUri + '/logins/:id/delete', method: 'POST', params: { id: '@id' } }
|
|
});
|
|
|
|
_service.folders = $resource(_apiUri + '/folders/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id' } },
|
|
list: { method: 'GET', params: {} },
|
|
post: { method: 'POST', params: {} },
|
|
put: { method: 'POST', params: { id: '@id' } },
|
|
del: { url: _apiUri + '/folders/:id/delete', method: 'POST', params: { id: '@id' } }
|
|
});
|
|
|
|
_service.ciphers = $resource(_apiUri + '/ciphers/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id' } },
|
|
getDetails: { url: _apiUri + '/ciphers/:id/details', method: 'GET', params: { id: '@id' } },
|
|
list: { method: 'GET', params: { includeFolders: false, includeShared: true } },
|
|
listDetails: { url: _apiUri + '/ciphers/details', method: 'GET', params: {} },
|
|
listOrganizationDetails: { url: _apiUri + '/ciphers/organization-details', method: 'GET', params: {} },
|
|
'import': { url: _apiUri + '/ciphers/import', method: 'POST', params: {} },
|
|
favorite: { url: _apiUri + '/ciphers/:id/favorite', method: 'POST', params: { id: '@id' } },
|
|
putPartial: { url: _apiUri + '/ciphers/:id/partial', method: 'POST', params: { id: '@id' } },
|
|
putShare: { url: _apiUri + '/ciphers/:id/share', method: 'POST', params: { id: '@id' } },
|
|
putCollections: { url: _apiUri + '/ciphers/:id/collections', method: 'POST', params: { id: '@id' } },
|
|
putCollectionsAdmin: { url: _apiUri + '/ciphers/:id/collections-admin', method: 'POST', params: { id: '@id' } },
|
|
del: { url: _apiUri + '/ciphers/:id/delete', method: 'POST', params: { id: '@id' } },
|
|
delAdmin: { url: _apiUri + '/ciphers/:id/delete-admin', method: 'POST', params: { id: '@id' } },
|
|
delMany: { url: _apiUri + '/ciphers/delete', method: 'POST' },
|
|
moveMany: { url: _apiUri + '/ciphers/move', method: 'POST' },
|
|
postAttachment: {
|
|
url: _apiUri + '/ciphers/:id/attachment',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined },
|
|
params: { id: '@id' }
|
|
},
|
|
postShareAttachment: {
|
|
url: _apiUri + '/ciphers/:id/attachment/:attachmentId/share?organizationId=:orgId',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined },
|
|
params: { id: '@id', attachmentId: '@attachmentId', orgId: '@orgId' }
|
|
},
|
|
delAttachment: { url: _apiUri + '/ciphers/:id/attachment/:attachmentId/delete', method: 'POST', params: { id: '@id', attachmentId: '@attachmentId' } }
|
|
});
|
|
|
|
_service.organizations = $resource(_apiUri + '/organizations/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id' } },
|
|
getBilling: { url: _apiUri + '/organizations/:id/billing', method: 'GET', params: { id: '@id' } },
|
|
list: { method: 'GET', params: {} },
|
|
post: { method: 'POST', params: {} },
|
|
put: { method: 'POST', params: { id: '@id' } },
|
|
putPayment: { url: _apiUri + '/organizations/:id/payment', method: 'POST', params: { id: '@id' } },
|
|
putSeat: { url: _apiUri + '/organizations/:id/seat', method: 'POST', params: { id: '@id' } },
|
|
putStorage: { url: _apiUri + '/organizations/:id/storage', method: 'POST', params: { id: '@id' } },
|
|
putUpgrade: { url: _apiUri + '/organizations/:id/upgrade', method: 'POST', params: { id: '@id' } },
|
|
putCancel: { url: _apiUri + '/organizations/:id/cancel', method: 'POST', params: { id: '@id' } },
|
|
putReinstate: { url: _apiUri + '/organizations/:id/reinstate', method: 'POST', params: { id: '@id' } },
|
|
postLeave: { url: _apiUri + '/organizations/:id/leave', method: 'POST', params: { id: '@id' } },
|
|
postVerifyBank: { url: _apiUri + '/organizations/:id/verify-bank', method: 'POST', params: { id: '@id' } },
|
|
del: { url: _apiUri + '/organizations/:id/delete', method: 'POST', params: { id: '@id' } },
|
|
postLicense: {
|
|
url: _apiUri + '/organizations/license',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined }
|
|
},
|
|
putLicense: {
|
|
url: _apiUri + '/organizations/:id/license',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined }
|
|
}
|
|
});
|
|
|
|
_service.organizationUsers = $resource(_apiUri + '/organizations/:orgId/users/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
list: { method: 'GET', params: { orgId: '@orgId' } },
|
|
listGroups: { url: _apiUri + '/organizations/:orgId/users/:id/groups', method: 'GET', params: { id: '@id', orgId: '@orgId' }, isArray: true },
|
|
invite: { url: _apiUri + '/organizations/:orgId/users/invite', method: 'POST', params: { orgId: '@orgId' } },
|
|
reinvite: { url: _apiUri + '/organizations/:orgId/users/:id/reinvite', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
accept: { url: _apiUri + '/organizations/:orgId/users/:id/accept', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
confirm: { url: _apiUri + '/organizations/:orgId/users/:id/confirm', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
put: { method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
putGroups: { url: _apiUri + '/organizations/:orgId/users/:id/groups', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
del: { url: _apiUri + '/organizations/:orgId/users/:id/delete', method: 'POST', params: { id: '@id', orgId: '@orgId' } }
|
|
});
|
|
|
|
_service.collections = $resource(_apiUri + '/organizations/:orgId/collections/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
getDetails: { url: _apiUri + '/organizations/:orgId/collections/:id/details', method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
listMe: { url: _apiUri + '/collections', method: 'GET', params: {} },
|
|
listOrganization: { method: 'GET', params: { orgId: '@orgId' } },
|
|
listUsers: { url: _apiUri + '/organizations/:orgId/collections/:id/users', method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
post: { method: 'POST', params: { orgId: '@orgId' } },
|
|
put: { method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
del: { url: _apiUri + '/organizations/:orgId/collections/:id/delete', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
delUser: { url: _apiUri + '/organizations/:orgId/collections/:id/delete-user/:orgUserId', method: 'POST', params: { id: '@id', orgId: '@orgId', orgUserId: '@orgUserId' } }
|
|
});
|
|
|
|
_service.groups = $resource(_apiUri + '/organizations/:orgId/groups/:id', {}, {
|
|
get: { method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
getDetails: { url: _apiUri + '/organizations/:orgId/groups/:id/details', method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
listOrganization: { method: 'GET', params: { orgId: '@orgId' } },
|
|
listUsers: { url: _apiUri + '/organizations/:orgId/groups/:id/users', method: 'GET', params: { id: '@id', orgId: '@orgId' } },
|
|
post: { method: 'POST', params: { orgId: '@orgId' } },
|
|
put: { method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
del: { url: _apiUri + '/organizations/:orgId/groups/:id/delete', method: 'POST', params: { id: '@id', orgId: '@orgId' } },
|
|
delUser: { url: _apiUri + '/organizations/:orgId/groups/:id/delete-user/:orgUserId', method: 'POST', params: { id: '@id', orgId: '@orgId', orgUserId: '@orgUserId' } }
|
|
});
|
|
|
|
_service.accounts = $resource(_apiUri + '/accounts', {}, {
|
|
register: { url: _apiUri + '/accounts/register', method: 'POST', params: {} },
|
|
emailToken: { url: _apiUri + '/accounts/email-token', method: 'POST', params: {} },
|
|
email: { url: _apiUri + '/accounts/email', method: 'POST', params: {} },
|
|
verifyEmailToken: { url: _apiUri + '/accounts/verify-email-token', method: 'POST', params: {} },
|
|
verifyEmail: { url: _apiUri + '/accounts/verify-email', method: 'POST', params: {} },
|
|
postDeleteRecoverToken: { url: _apiUri + '/accounts/delete-recover-token', method: 'POST', params: {} },
|
|
postDeleteRecover: { url: _apiUri + '/accounts/delete-recover', method: 'POST', params: {} },
|
|
putPassword: { url: _apiUri + '/accounts/password', method: 'POST', params: {} },
|
|
getProfile: { url: _apiUri + '/accounts/profile', method: 'GET', params: {} },
|
|
putProfile: { url: _apiUri + '/accounts/profile', method: 'POST', params: {} },
|
|
getDomains: { url: _apiUri + '/accounts/domains', method: 'GET', params: {} },
|
|
putDomains: { url: _apiUri + '/accounts/domains', method: 'POST', params: {} },
|
|
postPasswordHint: { url: _apiUri + '/accounts/password-hint', method: 'POST', params: {} },
|
|
putSecurityStamp: { url: _apiUri + '/accounts/security-stamp', method: 'POST', params: {} },
|
|
putKeys: { url: _apiUri + '/accounts/keys', method: 'POST', params: {} },
|
|
putKey: { url: _apiUri + '/accounts/key', method: 'POST', params: {} },
|
|
'import': { url: _apiUri + '/accounts/import', method: 'POST', params: {} },
|
|
postDelete: { url: _apiUri + '/accounts/delete', method: 'POST', params: {} },
|
|
putStorage: { url: _apiUri + '/accounts/storage', method: 'POST', params: {} },
|
|
putPayment: { url: _apiUri + '/accounts/payment', method: 'POST', params: {} },
|
|
putCancelPremium: { url: _apiUri + '/accounts/cancel-premium', method: 'POST', params: {} },
|
|
putReinstatePremium: { url: _apiUri + '/accounts/reinstate-premium', method: 'POST', params: {} },
|
|
getBilling: { url: _apiUri + '/accounts/billing', method: 'GET', params: {} },
|
|
postPremium: {
|
|
url: _apiUri + '/accounts/premium',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined }
|
|
},
|
|
putLicense: {
|
|
url: _apiUri + '/accounts/license',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': undefined }
|
|
}
|
|
});
|
|
|
|
_service.twoFactor = $resource(_apiUri + '/two-factor', {}, {
|
|
list: { method: 'GET', params: {} },
|
|
getEmail: { url: _apiUri + '/two-factor/get-email', method: 'POST', params: {} },
|
|
getU2f: { url: _apiUri + '/two-factor/get-u2f', method: 'POST', params: {} },
|
|
getDuo: { url: _apiUri + '/two-factor/get-duo', method: 'POST', params: {} },
|
|
getAuthenticator: { url: _apiUri + '/two-factor/get-authenticator', method: 'POST', params: {} },
|
|
getYubi: { url: _apiUri + '/two-factor/get-yubikey', method: 'POST', params: {} },
|
|
sendEmail: { url: _apiUri + '/two-factor/send-email', method: 'POST', params: {} },
|
|
sendEmailLogin: { url: _apiUri + '/two-factor/send-email-login', method: 'POST', params: {} },
|
|
putEmail: { url: _apiUri + '/two-factor/email', method: 'POST', params: {} },
|
|
putU2f: { url: _apiUri + '/two-factor/u2f', method: 'POST', params: {} },
|
|
putAuthenticator: { url: _apiUri + '/two-factor/authenticator', method: 'POST', params: {} },
|
|
putDuo: { url: _apiUri + '/two-factor/duo', method: 'POST', params: {} },
|
|
putYubi: { url: _apiUri + '/two-factor/yubikey', method: 'POST', params: {} },
|
|
disable: { url: _apiUri + '/two-factor/disable', method: 'POST', params: {} },
|
|
recover: { url: _apiUri + '/two-factor/recover', method: 'POST', params: {} },
|
|
getRecover: { url: _apiUri + '/two-factor/get-recover', method: 'POST', params: {} }
|
|
});
|
|
|
|
_service.settings = $resource(_apiUri + '/settings', {}, {
|
|
getDomains: { url: _apiUri + '/settings/domains', method: 'GET', params: {} },
|
|
putDomains: { url: _apiUri + '/settings/domains', method: 'POST', params: {} },
|
|
});
|
|
|
|
_service.users = $resource(_apiUri + '/users/:id', {}, {
|
|
getPublicKey: { url: _apiUri + '/users/:id/public-key', method: 'GET', params: { id: '@id' } }
|
|
});
|
|
|
|
_service.identity = $resource(_identityUri + '/connect', {}, {
|
|
token: {
|
|
url: _identityUri + '/connect/token',
|
|
method: 'POST',
|
|
headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8' },
|
|
transformRequest: transformUrlEncoded,
|
|
skipAuthorization: true,
|
|
params: {}
|
|
}
|
|
});
|
|
|
|
_service.hibp = $resource('https://haveibeenpwned.com/api/v2/breachedaccount/:email', {}, {
|
|
get: { method: 'GET', params: { email: '@email' }, isArray: true },
|
|
});
|
|
|
|
function transformUrlEncoded(data) {
|
|
return $httpParamSerializer(data);
|
|
}
|
|
|
|
return _service;
|
|
});
|