Passed
Push — trunk ( d0da70...05bddb )
by Christian
14:55 queued 12s
created

src/Administration/Resources/app/administration/src/core/service/api/usage-data.api.service.ts   A

Complexity

Total Complexity 1
Complexity/F 1

Size

Lines of Code 47
Function Count 1

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 25
c 0
b 0
f 0
dl 0
loc 47
rs 10
wmc 1
mnd 0
bc 0
fnc 1
bpm 0
cpm 1
noi 0

1 Function

Rating   Name   Duplication   Size   Complexity  
A UsageDataApiService.needsApproval 0 11 1
1
import type { AxiosInstance } from 'axios';
2
import type { LoginService } from '../login.service';
3
import ApiService from '../api.service';
4
5
/**
6
 * Gateway for the API endpoint "metrics"
7
 *
8
 * @private
9
 *
10
 * @package merchant-services
11
 */
12
export default class UsageDataApiService extends ApiService {
13
    constructor(httpClient: AxiosInstance, loginService: LoginService, apiEndpoint = 'usage-data') {
14
        super(httpClient, loginService, apiEndpoint, 'application/json');
15
16
        this.name = 'usageDataService';
17
    }
18
19
    public async needsApproval(): Promise<boolean> {
20
        const headers = this.getBasicHeaders();
21
        const params = {};
22
23
        const { data } = await this.httpClient.get<boolean>(
24
            `/${this.getApiBasePath()}/needs-approval`,
25
            { params, headers },
26
        );
27
28
        return data;
29
    }
30
}
31
32
const USAGE_DATA_SYSTEM_CONFIG_DOMAIN = 'core.usageData';
33
const ALLOW_USAGE_DATA_SYSTEM_CONFIG_KEY = 'core.usageData.shareUsageData';
34
35
/**
36
 * @private
37
 *
38
 * @package merchant-services
39
 */
40
export { USAGE_DATA_SYSTEM_CONFIG_DOMAIN, ALLOW_USAGE_DATA_SYSTEM_CONFIG_KEY };
41
42
/**
43
 * @private
44
 * @package merchant-services
45
 */
46
export type { UsageDataApiService };
47