@ayasofyazilim/saas 0.0.69 → 0.0.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release.yaml +11 -0
- package/.github/workflows/update.yaml +47 -0
- package/ContractService/schemas.gen.ts +73 -119
- package/ContractService/services.gen.ts +1 -56
- package/ContractService/types.gen.ts +18 -107
- package/FinanceService/FinanceServiceClient.ts +44 -0
- package/FinanceService/core/ApiError.ts +21 -0
- package/FinanceService/core/ApiRequestOptions.ts +13 -0
- package/FinanceService/core/ApiResult.ts +7 -0
- package/FinanceService/core/BaseHttpRequest.ts +10 -0
- package/FinanceService/core/CancelablePromise.ts +126 -0
- package/FinanceService/core/FetchHttpRequest.ts +22 -0
- package/FinanceService/core/OpenAPI.ts +56 -0
- package/FinanceService/core/request.ts +341 -0
- package/FinanceService/index.ts +9 -0
- package/FinanceService/schemas.gen.ts +3970 -0
- package/FinanceService/services.gen.ts +225 -0
- package/FinanceService/types.gen.ts +760 -0
- package/TagService/schemas.gen.ts +6 -6
- package/TagService/types.gen.ts +1 -1
- package/TravellerService/schemas.gen.ts +1993 -1920
- package/TravellerService/services.gen.ts +148 -16
- package/TravellerService/types.gen.ts +303 -66
- package/generator.mjs +5 -0
- package/package.json +3 -2
|
@@ -50,11 +50,6 @@ export type PagedResultDto_RefundFeeHeaderDto = {
|
|
|
50
50
|
totalCount?: number;
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
export type PagedResultDto_RefundTableDetailDto = {
|
|
54
|
-
items?: Array<UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto> | null;
|
|
55
|
-
totalCount?: number;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
53
|
export type PagedResultDto_RefundTableHeaderDto = {
|
|
59
54
|
items?: Array<UniRefund_ContractService_Refunds_RefundTableHeaders_RefundTableHeaderDto> | null;
|
|
60
55
|
totalCount?: number;
|
|
@@ -95,6 +90,7 @@ export type UniRefund_ContractService_ContractHeaderRefundFeeHeaders_ContractHea
|
|
|
95
90
|
status: UniRefund_ContractService_Enums_ContractHeaderStatus;
|
|
96
91
|
validFrom: string;
|
|
97
92
|
validTo: string;
|
|
93
|
+
earlyRefund?: boolean;
|
|
98
94
|
addressCommonDataId: string;
|
|
99
95
|
refundFeeHeaders?: Array<UniRefund_ContractService_ContractsForRefundPoint_ContractHeaderRefundFeeHeaders_ContractHeaderRefundFeeHeaderCreateAndUpdateDto> | null;
|
|
100
96
|
};
|
|
@@ -140,6 +136,7 @@ export type UniRefund_ContractService_ContractsForMerchant_ContractHeaders_Contr
|
|
|
140
136
|
status?: UniRefund_ContractService_Enums_ContractHeaderStatus;
|
|
141
137
|
merchantBasicInformationDto?: UniRefund_CRMService_Merchants_MerchantBasicInformationDto;
|
|
142
138
|
isDraft?: boolean;
|
|
139
|
+
isActive?: boolean;
|
|
143
140
|
validFrom: string;
|
|
144
141
|
validTo: string;
|
|
145
142
|
contractType: UniRefund_ContractService_Enums_ContractType;
|
|
@@ -171,6 +168,7 @@ export type UniRefund_ContractService_ContractsForMerchant_ContractHeaders_Contr
|
|
|
171
168
|
name: string;
|
|
172
169
|
contractTypeIdentifier: string;
|
|
173
170
|
isDraft?: boolean;
|
|
171
|
+
isActive?: boolean;
|
|
174
172
|
status?: UniRefund_ContractService_Enums_ContractHeaderStatus;
|
|
175
173
|
contractType: UniRefund_ContractService_Enums_ContractType;
|
|
176
174
|
validFrom: string;
|
|
@@ -370,8 +368,10 @@ export type UniRefund_ContractService_ContractsForRefundPoint_ContractHeaders_Co
|
|
|
370
368
|
status?: UniRefund_ContractService_Enums_ContractHeaderStatus;
|
|
371
369
|
refundPointBasicInformationDto?: UniRefund_CRMService_RefundPoints_RefundPointBasicInformationDto;
|
|
372
370
|
isDraft?: boolean;
|
|
371
|
+
isActive?: boolean;
|
|
373
372
|
validFrom: string;
|
|
374
373
|
validTo: string;
|
|
374
|
+
earlyRefund?: boolean;
|
|
375
375
|
contractType: UniRefund_ContractService_Enums_ContractType;
|
|
376
376
|
addressCommonData: UniRefund_LocationService_AddressCommonDatas_AddressCommonDataDto;
|
|
377
377
|
contractHeaderRefundFeeHeaders: Array<UniRefund_ContractService_ContractsForRefundPoint_ContractHeaderRefundFeeHeaders_ContractHeaderRefundFeeHeaderDto>;
|
|
@@ -385,6 +385,7 @@ export type UniRefund_ContractService_ContractsForRefundPoint_ContractHeaders_Co
|
|
|
385
385
|
merchantClassification: UniRefund_ContractService_Enums_MerchantClassification;
|
|
386
386
|
validFrom: string;
|
|
387
387
|
validTo: string;
|
|
388
|
+
earlyRefund?: boolean;
|
|
388
389
|
addressCommonDataId: string;
|
|
389
390
|
refundFeeHeaders: Array<UniRefund_ContractService_ContractsForRefundPoint_ContractHeaderRefundFeeHeaders_ContractHeaderRefundFeeHeaderCreateAndUpdateDto>;
|
|
390
391
|
};
|
|
@@ -401,10 +402,12 @@ export type UniRefund_ContractService_ContractsForRefundPoint_ContractHeaders_Co
|
|
|
401
402
|
name: string;
|
|
402
403
|
contractTypeIdentifier: string;
|
|
403
404
|
isDraft?: boolean;
|
|
405
|
+
isActive?: boolean;
|
|
404
406
|
status?: UniRefund_ContractService_Enums_ContractHeaderStatus;
|
|
405
407
|
contractType: UniRefund_ContractService_Enums_ContractType;
|
|
406
408
|
validFrom: string;
|
|
407
409
|
validTo: string;
|
|
410
|
+
earlyRefund?: boolean;
|
|
408
411
|
addressCommonData: UniRefund_LocationService_AddressCommonDatas_AddressCommonDataDto;
|
|
409
412
|
contractHeaderRefundFeeHeaders: Array<UniRefund_ContractService_ContractsForRefundPoint_ContractHeaderRefundFeeHeaders_ContractHeaderRefundFeeHeaderDto>;
|
|
410
413
|
};
|
|
@@ -683,6 +686,7 @@ export type UniRefund_ContractService_Refunds_RefundFeeDetails_RefundFeeDetailCr
|
|
|
683
686
|
maxFee: number;
|
|
684
687
|
feeType: UniRefund_ContractService_Enums_FeeType;
|
|
685
688
|
refundMethod: UniRefund_ContractService_Enums_RefundMethod;
|
|
689
|
+
isForEarlyRefund?: boolean;
|
|
686
690
|
};
|
|
687
691
|
|
|
688
692
|
export type UniRefund_ContractService_Refunds_RefundFeeDetails_RefundFeeDetailDto = {
|
|
@@ -702,6 +706,7 @@ export type UniRefund_ContractService_Refunds_RefundFeeDetails_RefundFeeDetailDt
|
|
|
702
706
|
maxFee: number;
|
|
703
707
|
feeType: UniRefund_ContractService_Enums_FeeType;
|
|
704
708
|
refundMethod: UniRefund_ContractService_Enums_RefundMethod;
|
|
709
|
+
isForEarlyRefund?: boolean;
|
|
705
710
|
refundFeeHeaderId: string;
|
|
706
711
|
};
|
|
707
712
|
|
|
@@ -717,6 +722,7 @@ export type UniRefund_ContractService_Refunds_RefundFeeDetails_RefundFeeDetailUp
|
|
|
717
722
|
maxFee: number;
|
|
718
723
|
feeType: UniRefund_ContractService_Enums_FeeType;
|
|
719
724
|
refundMethod: UniRefund_ContractService_Enums_RefundMethod;
|
|
725
|
+
isForEarlyRefund?: boolean;
|
|
720
726
|
};
|
|
721
727
|
|
|
722
728
|
export type UniRefund_ContractService_Refunds_RefundFeeHeaders_RefundFeeHeaderCreateDto = {
|
|
@@ -754,10 +760,10 @@ export type UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDeta
|
|
|
754
760
|
[key: string]: unknown;
|
|
755
761
|
} | null;
|
|
756
762
|
vatRate: number;
|
|
757
|
-
minValue
|
|
758
|
-
maxValue
|
|
759
|
-
refundAmount
|
|
760
|
-
refundPercent
|
|
763
|
+
minValue: number;
|
|
764
|
+
maxValue: number;
|
|
765
|
+
refundAmount: number;
|
|
766
|
+
refundPercent: number;
|
|
761
767
|
isLoyalty?: boolean;
|
|
762
768
|
};
|
|
763
769
|
|
|
@@ -778,18 +784,6 @@ export type UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDeta
|
|
|
778
784
|
isLoyalty?: boolean;
|
|
779
785
|
};
|
|
780
786
|
|
|
781
|
-
export type UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailUpdateDto = {
|
|
782
|
-
readonly extraProperties?: {
|
|
783
|
-
[key: string]: unknown;
|
|
784
|
-
} | null;
|
|
785
|
-
vatRate: number;
|
|
786
|
-
minValue: number;
|
|
787
|
-
maxValue: number;
|
|
788
|
-
refundAmount: number;
|
|
789
|
-
refundPercent: number;
|
|
790
|
-
isLoyalty?: boolean;
|
|
791
|
-
};
|
|
792
|
-
|
|
793
787
|
export type UniRefund_ContractService_Refunds_RefundTableHeaders_RefundTableHeaderCreateDto = {
|
|
794
788
|
readonly extraProperties?: {
|
|
795
789
|
[key: string]: unknown;
|
|
@@ -1642,10 +1636,10 @@ export type GetApiContractServiceRefundTablesRefundTableHeadersMerchantsByIdResp
|
|
|
1642
1636
|
|
|
1643
1637
|
export type PostApiContractServiceRefundTablesRefundTableHeadersByIdRefundTableDetailsData = {
|
|
1644
1638
|
id: string;
|
|
1645
|
-
requestBody?: UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailCreateDto
|
|
1639
|
+
requestBody?: Array<UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailCreateDto>;
|
|
1646
1640
|
};
|
|
1647
1641
|
|
|
1648
|
-
export type PostApiContractServiceRefundTablesRefundTableHeadersByIdRefundTableDetailsResponse = UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto
|
|
1642
|
+
export type PostApiContractServiceRefundTablesRefundTableHeadersByIdRefundTableDetailsResponse = Array<UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto>;
|
|
1649
1643
|
|
|
1650
1644
|
export type GetApiContractServiceRefundTablesRefundTableDetailsByIdData = {
|
|
1651
1645
|
id: string;
|
|
@@ -1653,27 +1647,12 @@ export type GetApiContractServiceRefundTablesRefundTableDetailsByIdData = {
|
|
|
1653
1647
|
|
|
1654
1648
|
export type GetApiContractServiceRefundTablesRefundTableDetailsByIdResponse = UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto;
|
|
1655
1649
|
|
|
1656
|
-
export type PutApiContractServiceRefundTablesRefundTableDetailsByIdData = {
|
|
1657
|
-
id: string;
|
|
1658
|
-
requestBody?: UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailUpdateDto;
|
|
1659
|
-
};
|
|
1660
|
-
|
|
1661
|
-
export type PutApiContractServiceRefundTablesRefundTableDetailsByIdResponse = UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto;
|
|
1662
|
-
|
|
1663
1650
|
export type DeleteApiContractServiceRefundTablesRefundTableDetailsByIdData = {
|
|
1664
1651
|
id: string;
|
|
1665
1652
|
};
|
|
1666
1653
|
|
|
1667
1654
|
export type DeleteApiContractServiceRefundTablesRefundTableDetailsByIdResponse = unknown;
|
|
1668
1655
|
|
|
1669
|
-
export type GetApiContractServiceRefundTablesRefundTableDetailsData = {
|
|
1670
|
-
maxResultCount?: number;
|
|
1671
|
-
skipCount?: number;
|
|
1672
|
-
sorting?: string;
|
|
1673
|
-
};
|
|
1674
|
-
|
|
1675
|
-
export type GetApiContractServiceRefundTablesRefundTableDetailsResponse = PagedResultDto_RefundTableDetailDto;
|
|
1676
|
-
|
|
1677
1656
|
export type GetApiContractServiceRefundTablesRefundFeeHeadersByIdData = {
|
|
1678
1657
|
id: string;
|
|
1679
1658
|
};
|
|
@@ -3805,7 +3784,7 @@ export type $OpenApiTs = {
|
|
|
3805
3784
|
/**
|
|
3806
3785
|
* Success
|
|
3807
3786
|
*/
|
|
3808
|
-
200: UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto
|
|
3787
|
+
200: Array<UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto>;
|
|
3809
3788
|
/**
|
|
3810
3789
|
* Bad Request
|
|
3811
3790
|
*/
|
|
@@ -3867,39 +3846,6 @@ export type $OpenApiTs = {
|
|
|
3867
3846
|
501: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3868
3847
|
};
|
|
3869
3848
|
};
|
|
3870
|
-
put: {
|
|
3871
|
-
req: PutApiContractServiceRefundTablesRefundTableDetailsByIdData;
|
|
3872
|
-
res: {
|
|
3873
|
-
/**
|
|
3874
|
-
* Success
|
|
3875
|
-
*/
|
|
3876
|
-
200: UniRefund_ContractService_Refunds_RefundTableDetails_RefundTableDetailDto;
|
|
3877
|
-
/**
|
|
3878
|
-
* Bad Request
|
|
3879
|
-
*/
|
|
3880
|
-
400: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3881
|
-
/**
|
|
3882
|
-
* Unauthorized
|
|
3883
|
-
*/
|
|
3884
|
-
401: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3885
|
-
/**
|
|
3886
|
-
* Forbidden
|
|
3887
|
-
*/
|
|
3888
|
-
403: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3889
|
-
/**
|
|
3890
|
-
* Not Found
|
|
3891
|
-
*/
|
|
3892
|
-
404: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3893
|
-
/**
|
|
3894
|
-
* Server Error
|
|
3895
|
-
*/
|
|
3896
|
-
500: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3897
|
-
/**
|
|
3898
|
-
* Server Error
|
|
3899
|
-
*/
|
|
3900
|
-
501: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3901
|
-
};
|
|
3902
|
-
};
|
|
3903
3849
|
delete: {
|
|
3904
3850
|
req: DeleteApiContractServiceRefundTablesRefundTableDetailsByIdData;
|
|
3905
3851
|
res: {
|
|
@@ -3934,41 +3880,6 @@ export type $OpenApiTs = {
|
|
|
3934
3880
|
};
|
|
3935
3881
|
};
|
|
3936
3882
|
};
|
|
3937
|
-
'/api/contract-service/refund-tables/refund-table-details': {
|
|
3938
|
-
get: {
|
|
3939
|
-
req: GetApiContractServiceRefundTablesRefundTableDetailsData;
|
|
3940
|
-
res: {
|
|
3941
|
-
/**
|
|
3942
|
-
* Success
|
|
3943
|
-
*/
|
|
3944
|
-
200: PagedResultDto_RefundTableDetailDto;
|
|
3945
|
-
/**
|
|
3946
|
-
* Bad Request
|
|
3947
|
-
*/
|
|
3948
|
-
400: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3949
|
-
/**
|
|
3950
|
-
* Unauthorized
|
|
3951
|
-
*/
|
|
3952
|
-
401: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3953
|
-
/**
|
|
3954
|
-
* Forbidden
|
|
3955
|
-
*/
|
|
3956
|
-
403: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3957
|
-
/**
|
|
3958
|
-
* Not Found
|
|
3959
|
-
*/
|
|
3960
|
-
404: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3961
|
-
/**
|
|
3962
|
-
* Server Error
|
|
3963
|
-
*/
|
|
3964
|
-
500: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3965
|
-
/**
|
|
3966
|
-
* Server Error
|
|
3967
|
-
*/
|
|
3968
|
-
501: Volo_Abp_Http_RemoteServiceErrorResponse;
|
|
3969
|
-
};
|
|
3970
|
-
};
|
|
3971
|
-
};
|
|
3972
3883
|
'/api/contract-service/refund-tables/refund-fee-headers/{id}': {
|
|
3973
3884
|
get: {
|
|
3974
3885
|
req: GetApiContractServiceRefundTablesRefundFeeHeadersByIdData;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { BaseHttpRequest } from './core/BaseHttpRequest';
|
|
2
|
+
import type { OpenAPIConfig } from './core/OpenAPI';
|
|
3
|
+
import { Interceptors } from './core/OpenAPI';
|
|
4
|
+
import { FetchHttpRequest } from './core/FetchHttpRequest';
|
|
5
|
+
|
|
6
|
+
import { AbpApiDefinitionService } from './services.gen';
|
|
7
|
+
import { AbpApplicationConfigurationService } from './services.gen';
|
|
8
|
+
import { AbpApplicationLocalizationService } from './services.gen';
|
|
9
|
+
import { BillingService } from './services.gen';
|
|
10
|
+
|
|
11
|
+
type HttpRequestConstructor = new (config: OpenAPIConfig) => BaseHttpRequest;
|
|
12
|
+
|
|
13
|
+
export class FinanceServiceClient {
|
|
14
|
+
|
|
15
|
+
public readonly abpApiDefinition: AbpApiDefinitionService;
|
|
16
|
+
public readonly abpApplicationConfiguration: AbpApplicationConfigurationService;
|
|
17
|
+
public readonly abpApplicationLocalization: AbpApplicationLocalizationService;
|
|
18
|
+
public readonly billing: BillingService;
|
|
19
|
+
|
|
20
|
+
public readonly request: BaseHttpRequest;
|
|
21
|
+
|
|
22
|
+
constructor(config?: Partial<OpenAPIConfig>, HttpRequest: HttpRequestConstructor = FetchHttpRequest) {
|
|
23
|
+
this.request = new HttpRequest({
|
|
24
|
+
BASE: config?.BASE ?? '',
|
|
25
|
+
VERSION: config?.VERSION ?? '1',
|
|
26
|
+
WITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false,
|
|
27
|
+
CREDENTIALS: config?.CREDENTIALS ?? 'include',
|
|
28
|
+
TOKEN: config?.TOKEN,
|
|
29
|
+
USERNAME: config?.USERNAME,
|
|
30
|
+
PASSWORD: config?.PASSWORD,
|
|
31
|
+
HEADERS: config?.HEADERS,
|
|
32
|
+
ENCODE_PATH: config?.ENCODE_PATH,
|
|
33
|
+
interceptors: {
|
|
34
|
+
request: config?.interceptors?.request ?? new Interceptors(),
|
|
35
|
+
response: config?.interceptors?.response ?? new Interceptors(),
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
this.abpApiDefinition = new AbpApiDefinitionService(this.request);
|
|
40
|
+
this.abpApplicationConfiguration = new AbpApplicationConfigurationService(this.request);
|
|
41
|
+
this.abpApplicationLocalization = new AbpApplicationLocalizationService(this.request);
|
|
42
|
+
this.billing = new BillingService(this.request);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ApiRequestOptions } from './ApiRequestOptions';
|
|
2
|
+
import type { ApiResult } from './ApiResult';
|
|
3
|
+
|
|
4
|
+
export class ApiError extends Error {
|
|
5
|
+
public readonly url: string;
|
|
6
|
+
public readonly status: number;
|
|
7
|
+
public readonly statusText: string;
|
|
8
|
+
public readonly body: unknown;
|
|
9
|
+
public readonly request: ApiRequestOptions;
|
|
10
|
+
|
|
11
|
+
constructor(request: ApiRequestOptions, response: ApiResult, message: string) {
|
|
12
|
+
super(message);
|
|
13
|
+
|
|
14
|
+
this.name = 'ApiError';
|
|
15
|
+
this.url = response.url;
|
|
16
|
+
this.status = response.status;
|
|
17
|
+
this.statusText = response.statusText;
|
|
18
|
+
this.body = response.body;
|
|
19
|
+
this.request = request;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type ApiRequestOptions = {
|
|
2
|
+
readonly method: 'GET' | 'PUT' | 'POST' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'PATCH';
|
|
3
|
+
readonly url: string;
|
|
4
|
+
readonly path?: Record<string, unknown>;
|
|
5
|
+
readonly cookies?: Record<string, unknown>;
|
|
6
|
+
readonly headers?: Record<string, unknown>;
|
|
7
|
+
readonly query?: Record<string, unknown>;
|
|
8
|
+
readonly formData?: Record<string, unknown>;
|
|
9
|
+
readonly body?: any;
|
|
10
|
+
readonly mediaType?: string;
|
|
11
|
+
readonly responseHeader?: string;
|
|
12
|
+
readonly errors?: Record<number, string>;
|
|
13
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ApiRequestOptions } from './ApiRequestOptions';
|
|
2
|
+
import type { CancelablePromise } from './CancelablePromise';
|
|
3
|
+
import type { OpenAPIConfig } from './OpenAPI';
|
|
4
|
+
|
|
5
|
+
export abstract class BaseHttpRequest {
|
|
6
|
+
|
|
7
|
+
constructor(public readonly config: OpenAPIConfig) {}
|
|
8
|
+
|
|
9
|
+
public abstract request<T>(options: ApiRequestOptions): CancelablePromise<T>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
export class CancelError extends Error {
|
|
2
|
+
constructor(message: string) {
|
|
3
|
+
super(message);
|
|
4
|
+
this.name = 'CancelError';
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
public get isCancelled(): boolean {
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface OnCancel {
|
|
13
|
+
readonly isResolved: boolean;
|
|
14
|
+
readonly isRejected: boolean;
|
|
15
|
+
readonly isCancelled: boolean;
|
|
16
|
+
|
|
17
|
+
(cancelHandler: () => void): void;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export class CancelablePromise<T> implements Promise<T> {
|
|
21
|
+
private _isResolved: boolean;
|
|
22
|
+
private _isRejected: boolean;
|
|
23
|
+
private _isCancelled: boolean;
|
|
24
|
+
readonly cancelHandlers: (() => void)[];
|
|
25
|
+
readonly promise: Promise<T>;
|
|
26
|
+
private _resolve?: (value: T | PromiseLike<T>) => void;
|
|
27
|
+
private _reject?: (reason?: unknown) => void;
|
|
28
|
+
|
|
29
|
+
constructor(
|
|
30
|
+
executor: (
|
|
31
|
+
resolve: (value: T | PromiseLike<T>) => void,
|
|
32
|
+
reject: (reason?: unknown) => void,
|
|
33
|
+
onCancel: OnCancel
|
|
34
|
+
) => void
|
|
35
|
+
) {
|
|
36
|
+
this._isResolved = false;
|
|
37
|
+
this._isRejected = false;
|
|
38
|
+
this._isCancelled = false;
|
|
39
|
+
this.cancelHandlers = [];
|
|
40
|
+
this.promise = new Promise<T>((resolve, reject) => {
|
|
41
|
+
this._resolve = resolve;
|
|
42
|
+
this._reject = reject;
|
|
43
|
+
|
|
44
|
+
const onResolve = (value: T | PromiseLike<T>): void => {
|
|
45
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
this._isResolved = true;
|
|
49
|
+
if (this._resolve) this._resolve(value);
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const onReject = (reason?: unknown): void => {
|
|
53
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
this._isRejected = true;
|
|
57
|
+
if (this._reject) this._reject(reason);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const onCancel = (cancelHandler: () => void): void => {
|
|
61
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
this.cancelHandlers.push(cancelHandler);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
Object.defineProperty(onCancel, 'isResolved', {
|
|
68
|
+
get: (): boolean => this._isResolved,
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
Object.defineProperty(onCancel, 'isRejected', {
|
|
72
|
+
get: (): boolean => this._isRejected,
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
Object.defineProperty(onCancel, 'isCancelled', {
|
|
76
|
+
get: (): boolean => this._isCancelled,
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
return executor(onResolve, onReject, onCancel as OnCancel);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
get [Symbol.toStringTag]() {
|
|
84
|
+
return "Cancellable Promise";
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
public then<TResult1 = T, TResult2 = never>(
|
|
88
|
+
onFulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null,
|
|
89
|
+
onRejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null
|
|
90
|
+
): Promise<TResult1 | TResult2> {
|
|
91
|
+
return this.promise.then(onFulfilled, onRejected);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
public catch<TResult = never>(
|
|
95
|
+
onRejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null
|
|
96
|
+
): Promise<T | TResult> {
|
|
97
|
+
return this.promise.catch(onRejected);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
public finally(onFinally?: (() => void) | null): Promise<T> {
|
|
101
|
+
return this.promise.finally(onFinally);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
public cancel(): void {
|
|
105
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
this._isCancelled = true;
|
|
109
|
+
if (this.cancelHandlers.length) {
|
|
110
|
+
try {
|
|
111
|
+
for (const cancelHandler of this.cancelHandlers) {
|
|
112
|
+
cancelHandler();
|
|
113
|
+
}
|
|
114
|
+
} catch (error) {
|
|
115
|
+
console.warn('Cancellation threw an error', error);
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
this.cancelHandlers.length = 0;
|
|
120
|
+
if (this._reject) this._reject(new CancelError('Request aborted'));
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
public get isCancelled(): boolean {
|
|
124
|
+
return this._isCancelled;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ApiRequestOptions } from './ApiRequestOptions';
|
|
2
|
+
import { BaseHttpRequest } from './BaseHttpRequest';
|
|
3
|
+
import type { CancelablePromise } from './CancelablePromise';
|
|
4
|
+
import type { OpenAPIConfig } from './OpenAPI';
|
|
5
|
+
import { request as __request } from './request';
|
|
6
|
+
|
|
7
|
+
export class FetchHttpRequest extends BaseHttpRequest {
|
|
8
|
+
|
|
9
|
+
constructor(config: OpenAPIConfig) {
|
|
10
|
+
super(config);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Request method
|
|
15
|
+
* @param options The request options from the service
|
|
16
|
+
* @returns CancelablePromise<T>
|
|
17
|
+
* @throws ApiError
|
|
18
|
+
*/
|
|
19
|
+
public override request<T>(options: ApiRequestOptions): CancelablePromise<T> {
|
|
20
|
+
return __request(this.config, options);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { ApiRequestOptions } from './ApiRequestOptions';
|
|
2
|
+
|
|
3
|
+
type Headers = Record<string, string>;
|
|
4
|
+
type Middleware<T> = (value: T) => T | Promise<T>;
|
|
5
|
+
type Resolver<T> = (options: ApiRequestOptions) => Promise<T>;
|
|
6
|
+
|
|
7
|
+
export class Interceptors<T> {
|
|
8
|
+
_fns: Middleware<T>[];
|
|
9
|
+
|
|
10
|
+
constructor() {
|
|
11
|
+
this._fns = [];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
eject(fn: Middleware<T>) {
|
|
15
|
+
const index = this._fns.indexOf(fn);
|
|
16
|
+
if (index !== -1) {
|
|
17
|
+
this._fns = [...this._fns.slice(0, index), ...this._fns.slice(index + 1)];
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
use(fn: Middleware<T>) {
|
|
22
|
+
this._fns = [...this._fns, fn];
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export type OpenAPIConfig = {
|
|
27
|
+
BASE: string;
|
|
28
|
+
CREDENTIALS: 'include' | 'omit' | 'same-origin';
|
|
29
|
+
ENCODE_PATH?: ((path: string) => string) | undefined;
|
|
30
|
+
HEADERS?: Headers | Resolver<Headers> | undefined;
|
|
31
|
+
PASSWORD?: string | Resolver<string> | undefined;
|
|
32
|
+
TOKEN?: string | Resolver<string> | undefined;
|
|
33
|
+
USERNAME?: string | Resolver<string> | undefined;
|
|
34
|
+
VERSION: string;
|
|
35
|
+
WITH_CREDENTIALS: boolean;
|
|
36
|
+
interceptors: {
|
|
37
|
+
request: Interceptors<RequestInit>;
|
|
38
|
+
response: Interceptors<Response>;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export const OpenAPI: OpenAPIConfig = {
|
|
43
|
+
BASE: '',
|
|
44
|
+
CREDENTIALS: 'include',
|
|
45
|
+
ENCODE_PATH: undefined,
|
|
46
|
+
HEADERS: undefined,
|
|
47
|
+
PASSWORD: undefined,
|
|
48
|
+
TOKEN: undefined,
|
|
49
|
+
USERNAME: undefined,
|
|
50
|
+
VERSION: '1',
|
|
51
|
+
WITH_CREDENTIALS: false,
|
|
52
|
+
interceptors: {
|
|
53
|
+
request: new Interceptors(),
|
|
54
|
+
response: new Interceptors(),
|
|
55
|
+
},
|
|
56
|
+
};
|