@craftercms/studio-ui
Version:
Services, components, models & utils to build CrafterCMS authoring extensions.
48 lines (46 loc) • 2.03 kB
JavaScript
/*
* Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3 as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*
* Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 3 as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
import { del, get, postJSON } from '../utils/ajax';
import { map, pluck } from 'rxjs/operators';
export function fetchTokens() {
return get('/studio/api/2/security/tokens').pipe(pluck('response', 'tokens'));
}
export function createToken(label, expiresAt) {
return postJSON('/studio/api/2/security/tokens', Object.assign({ label }, expiresAt && { expiresAt })).pipe(
pluck('response', 'token')
);
}
export function updateToken(id, properties) {
return postJSON(`/studio/api/2/security/tokens/${id}`, properties).pipe(pluck('response', 'token'));
}
export function deleteToken(id) {
return del(`/studio/api/2/security/tokens/${id}`).pipe(map(() => true));
}