UNPKG

casdoor-nodejs-sdk

Version:
80 lines (79 loc) 2.5 kB
"use strict"; // Copyright 2021 The Casdoor Authors. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. Object.defineProperty(exports, "__esModule", { value: true }); exports.TokenSDK = void 0; class TokenSDK { constructor(config, request) { this.config = config; this.request = request; } async getTokens(p, pageSize) { if (!this.request) { throw new Error('request init failed'); } return (await this.request.get('/get-tokens', { params: { p: String(p), pageSize: String(pageSize), owner: 'admin', }, })); } async getToken(id) { if (!this.request) { throw new Error('request init failed'); } return (await this.request.get('/get-token', { params: { id: `admin/${id}`, }, })); } async modifyToken(method, token) { if (!this.request) { throw new Error('request init failed'); } const url = `/${method}`; token.owner = 'admin'; return (await this.request.post(url, token, { params: { id: `${token.owner}/${token.name}`, }, })); } async addToken(token) { return this.modifyToken('add-token', token); } async updateToken(token) { return this.modifyToken('update-token', token); } async deleteToken(token) { return this.modifyToken('delete-token', token); } async introspect(token, token_type_hint) { if (!this.request) { throw new Error('request init failed'); } return (await this.request.post('/login/oauth/introspect', { token, token_type_hint, }, { headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, })); } } exports.TokenSDK = TokenSDK;