Skip to content

Commit 45b0cee

Browse files
authored
Merge pull request #358 from platformsh/init-one-off-charges
init one-off charges
2 parents 0d985f6 + 7e5ce2e commit 45b0cee

File tree

4 files changed

+55
-36
lines changed

4 files changed

+55
-36
lines changed

src/model/Cost.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ export type FormattedCostWithQuantity = FormattedCost & {
99
quantity: number;
1010
};
1111

12+
export type FormattedCostWithUnitPrice = FormattedCost & {
13+
unit_price_formatted: string;
14+
};
15+
1216
export type FormattedCostWithTitle = FormattedCost & {
1317
display_title: string;
1418
};
@@ -23,7 +27,8 @@ export type FormattedCostCounter = FormattedCostWithQuantity & {
2327
usage_type: "counter";
2428
current_usage: number;
2529
current_usage_formatted: string;
26-
daily_average: number;
30+
daily_average?: number;
31+
custom_description?: string;
2732
};
2833

2934
type MaybeComplex<T, IsComplex> = IsComplex extends true ? T : string;
@@ -33,6 +38,9 @@ export type MaybeComplexFormattedCost<IsComplex = false> = MaybeComplex<
3338
IsComplex
3439
>;
3540

41+
export type MaybeComplexFormattedCostWithUnitPrice<IsComplex = false> =
42+
MaybeComplex<FormattedCostWithUnitPrice, IsComplex>;
43+
3644
export type MaybeComplexFormattedCostWithQuantity<IsComplex = false> =
3745
MaybeComplex<FormattedCostWithQuantity, IsComplex>;
3846

src/model/Order.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,10 @@ export type CommerceOrderResponse = {
1717

1818
export type LineItemComponent = {
1919
amount: number;
20+
amount_formatted?: string;
2021
currency?: string;
2122
display_title: string;
23+
formatted?: string;
2224
};
2325

2426
export type OrderLineItem = {
@@ -31,14 +33,15 @@ export type OrderLineItem = {
3133
end: string;
3234
unit_price: number;
3335
quantity: string | number;
36+
quantity_formatted?: string;
3437
consumption: string | number;
3538
duration: number;
3639
exclude_from_invoice?: boolean;
3740
id: string;
38-
organization: string;
41+
organization: string | null;
3942
plan_record_id: string;
4043
proration: number;
41-
records: {
44+
records?: {
4245
duration: number;
4346
end: string;
4447
quantity: string;

src/model/Organization.ts

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@ import { getConfig } from "../config";
33

44
import type {
55
MaybeComplexFormattedCost,
6+
MaybeComplexFormattedCostCounter,
67
MaybeComplexFormattedCostMeasure,
7-
MaybeComplexFormattedCostWithQuantity
8+
MaybeComplexFormattedCostWithQuantity,
9+
MaybeComplexFormattedCostWithUnitPrice
810
} from "./Cost";
911
import type { CursoredResult } from "./CursoredResult";
1012
import { OrganizationDiscount } from "./OrganizationDiscount";
@@ -37,16 +39,17 @@ type _OrganizationEstimate<IsComplex> = {
3739
sub_total: MaybeComplexFormattedCost<IsComplex>;
3840
discounts: MaybeComplexFormattedCost<IsComplex>;
3941
allowance_discount: MaybeComplexFormattedCost<IsComplex>;
40-
enterprise_discount: MaybeComplexFormattedCost<IsComplex>;
41-
startup_discount: MaybeComplexFormattedCost<IsComplex>;
42+
enterprise_discount: MaybeComplexFormattedCost<IsComplex> | null;
43+
startup_discount: MaybeComplexFormattedCost<IsComplex> | null;
4244
vouchers: MaybeComplexFormattedCost<IsComplex>;
4345
options: {
44-
support_level: MaybeComplexFormattedCost<IsComplex>;
45-
user_management: MaybeComplexFormattedCost<IsComplex>;
46-
viewer_user: MaybeComplexFormattedCost<IsComplex>;
47-
admin_user: MaybeComplexFormattedCost<IsComplex>;
48-
standard_management_user: MaybeComplexFormattedCost<IsComplex>;
49-
advanced_management_user: MaybeComplexFormattedCost<IsComplex>;
46+
support_level?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
47+
user_management?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
48+
viewer_user: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
49+
admin_user: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
50+
standard_management_user: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
51+
advanced_management_user: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
52+
onboarding_training?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
5053
};
5154

5255
user_licenses: {
@@ -100,12 +103,14 @@ type _OrganizationEstimate<IsComplex> = {
100103
logs_fwd_content_size: number;
101104
fastly_bandwidth?: number;
102105
fastly_requests?: number;
106+
onboarding_setup?: number;
103107
};
104108
}[];
105109
};
106110

107111
support_level: MaybeComplexFormattedCostWithQuantity<IsComplex>;
108112
user_management: MaybeComplexFormattedCostWithQuantity<IsComplex>;
113+
onboarding_training?: MaybeComplexFormattedCostCounter<IsComplex>;
109114
};
110115

111116
export type OrganizationEstimate = _OrganizationEstimate<false>;

src/model/Subscription.ts

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ import type {
88
MaybeComplexFormattedCostCounter,
99
MaybeComplexFormattedCostMeasure,
1010
MaybeComplexFormattedCostWithTitle,
11-
MaybeComplexFormattedCostWithQuantity
11+
MaybeComplexFormattedCostWithQuantity,
12+
MaybeComplexFormattedCostWithUnitPrice
1213
} from "./Cost";
1314
import { Project } from "./Project";
1415
import type { APIObject } from "./Ressource";
@@ -117,29 +118,30 @@ type _SubscriptionEstimate<IsComplex extends boolean> = {
117118
plan: MaybeComplexFormattedCostWithQuantity<IsComplex>;
118119
total: MaybeComplexFormattedCost<IsComplex>;
119120
options: {
120-
storage: MaybeComplexFormattedCost<IsComplex>;
121-
environments: MaybeComplexFormattedCost<IsComplex>;
122-
user_licenses: MaybeComplexFormattedCost<IsComplex>;
123-
cpu_development: MaybeComplexFormattedCost<IsComplex>;
124-
storage_development: MaybeComplexFormattedCost<IsComplex>;
125-
memory_development: MaybeComplexFormattedCost<IsComplex>;
126-
cpu_production: MaybeComplexFormattedCost<IsComplex>;
127-
storage_production: MaybeComplexFormattedCost<IsComplex>;
128-
memory_production: MaybeComplexFormattedCost<IsComplex>;
129-
cpu_app: MaybeComplexFormattedCost<IsComplex>;
130-
storage_app_services: MaybeComplexFormattedCost<IsComplex>;
131-
memory_app: MaybeComplexFormattedCost<IsComplex>;
132-
cpu_services: MaybeComplexFormattedCost<IsComplex>;
133-
memory_services: MaybeComplexFormattedCost<IsComplex>;
134-
backup_storage: MaybeComplexFormattedCost<IsComplex>;
135-
build_cpu: MaybeComplexFormattedCost<IsComplex>;
136-
build_memory: MaybeComplexFormattedCost<IsComplex>;
137-
egress_bandwidth: MaybeComplexFormattedCost<IsComplex>;
138-
ingress_requests: MaybeComplexFormattedCost<IsComplex>;
139-
logs_fwd_content_size: MaybeComplexFormattedCost<IsComplex>;
140-
fastly_bandwidth?: MaybeComplexFormattedCost<IsComplex>;
141-
fastly_requests?: MaybeComplexFormattedCost<IsComplex>;
142-
continuous_profiling?: MaybeComplexFormattedCost<IsComplex>;
121+
storage: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
122+
environments: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
123+
user_licenses: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
124+
cpu_development: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
125+
storage_development: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
126+
memory_development: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
127+
cpu_production: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
128+
storage_production: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
129+
memory_production: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
130+
cpu_app: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
131+
storage_app_services: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
132+
memory_app: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
133+
cpu_services: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
134+
memory_services: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
135+
backup_storage: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
136+
build_cpu: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
137+
build_memory: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
138+
egress_bandwidth: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
139+
ingress_requests: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
140+
logs_fwd_content_size: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
141+
fastly_bandwidth?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
142+
fastly_requests?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
143+
continuous_profiling?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
144+
onboarding_setup?: MaybeComplexFormattedCostWithUnitPrice<IsComplex>;
143145
};
144146
storage: MaybeComplexFormattedCostMeasure<IsComplex>;
145147
environments: MaybeComplexFormattedCostMeasure<IsComplex>;
@@ -161,6 +163,7 @@ type _SubscriptionEstimate<IsComplex extends boolean> = {
161163
egress_bandwidth: MaybeComplexFormattedCostCounter<IsComplex>;
162164
ingress_requests: MaybeComplexFormattedCostCounter<IsComplex>;
163165
logs_fwd_content_size: MaybeComplexFormattedCostCounter<IsComplex>;
166+
onboarding_setup?: MaybeComplexFormattedCostCounter<IsComplex>;
164167
fastly_bandwidth?: MaybeComplexFormattedCostCounter<IsComplex>;
165168
fastly_requests?: MaybeComplexFormattedCostCounter<IsComplex>;
166169
big_dev: MaybeComplexFormattedCostWithQuantity<IsComplex>;

0 commit comments

Comments
 (0)