@mpgd/target-config 0.15.2 → 0.17.0
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/dist/effective.d.ts +1 -0
- package/dist/effective.js +5 -1
- package/dist/index.js +117 -81
- package/dist/runtime.d.ts +11 -6
- package/dist/runtime.js +176 -40
- package/dist/viewport.d.ts +90 -0
- package/dist/viewport.js +171 -0
- package/package.json +5 -5
package/dist/effective.d.ts
CHANGED
|
@@ -36,6 +36,7 @@ export interface EffectiveAdPlacementConfig {
|
|
|
36
36
|
}
|
|
37
37
|
export interface EffectiveMonetizationConfig {
|
|
38
38
|
readonly iap: boolean;
|
|
39
|
+
readonly subscriptions?: boolean;
|
|
39
40
|
readonly products: readonly EffectiveProductConfig[];
|
|
40
41
|
}
|
|
41
42
|
export interface EffectiveAdsConfig {
|
package/dist/effective.js
CHANGED
|
@@ -3,6 +3,7 @@ import { adPlacementFeatureFor, assertTargetIntegrationRuntimeBounds, } from './
|
|
|
3
3
|
export const defaultLeaderboardId = 'default';
|
|
4
4
|
const disabledAuthoritativeMonetization = {
|
|
5
5
|
iap: false,
|
|
6
|
+
subscriptions: false,
|
|
6
7
|
bannerAds: false,
|
|
7
8
|
rewardedAds: false,
|
|
8
9
|
interstitialAds: false,
|
|
@@ -42,6 +43,9 @@ export function createEffectiveTargetConfig(input) {
|
|
|
42
43
|
},
|
|
43
44
|
monetization: {
|
|
44
45
|
iap: config.monetization.iap,
|
|
46
|
+
subscriptions: config.features.iap
|
|
47
|
+
&& config.features.subscriptions === true
|
|
48
|
+
&& config.monetization.iap,
|
|
45
49
|
products,
|
|
46
50
|
},
|
|
47
51
|
ads: {
|
|
@@ -111,7 +115,7 @@ export function getEffectiveAdPlacementConfig(config, placementId) {
|
|
|
111
115
|
}
|
|
112
116
|
function createEffectiveProductConfig(target, config, product) {
|
|
113
117
|
const platformProductId = resolveProductPlatformId(product, target);
|
|
114
|
-
const reason = effectiveProductReason(config.runtime, config.features.iap, product, platformProductId);
|
|
118
|
+
const reason = effectiveProductReason(config.runtime, config.features.iap && (product.type !== 'subscription' || config.features.subscriptions === true), product, platformProductId);
|
|
115
119
|
return {
|
|
116
120
|
id: product.id,
|
|
117
121
|
type: product.type,
|
package/dist/index.js
CHANGED
|
@@ -12,15 +12,16 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
12
12
|
const _iv0 = new Set(["apps-in-toss", "capacitor-android", "capacitor-ios", "devvit-web", "microsoft-store-pwa", "tiktok-minigame", "verse8-web", "web", "web-preview", "wechat-minigame"]);
|
|
13
13
|
const _iv1 = new Set(["app-store", "apps-in-toss", "devvit", "google-play", "microsoft-store", "tiktok-minigame", "verse8", "web", "web-preview", "wechat-minigame"]);
|
|
14
14
|
const _ip1 = input => "boolean" === typeof input["iap"];
|
|
15
|
-
const _ip2 = input => "boolean" === typeof input["
|
|
16
|
-
const _ip3 = input => "boolean" === typeof input["
|
|
17
|
-
const _ip4 = input => "boolean" === typeof input["
|
|
18
|
-
const _ip5 = input => "
|
|
19
|
-
const _ip6 = input => "
|
|
20
|
-
const _ip7 = input => "
|
|
21
|
-
const _ip8 = input => "
|
|
22
|
-
const _ip9 = input => "
|
|
23
|
-
const _ip10 = input => "
|
|
15
|
+
const _ip2 = input => undefined === input["subscriptions"] || "boolean" === typeof input["subscriptions"];
|
|
16
|
+
const _ip3 = input => "boolean" === typeof input["rewardedAds"];
|
|
17
|
+
const _ip4 = input => "boolean" === typeof input["interstitialAds"];
|
|
18
|
+
const _ip5 = input => "boolean" === typeof input["localization"];
|
|
19
|
+
const _ip6 = input => "string" === typeof input["id"];
|
|
20
|
+
const _ip7 = input => "boolean" === typeof input["enabled"];
|
|
21
|
+
const _ip8 = input => "action-required" === input["reason"] || "available" === input["reason"] || "capability-unsupported" === input["reason"] || "configuration-required" === input["reason"] || "missing-platform-id" === input["reason"] || "target-disabled" === input["reason"] || "temporarily-unavailable" === input["reason"];
|
|
22
|
+
const _ip9 = input => "currency" === input["type"];
|
|
23
|
+
const _ip10 = input => "coin" === input["currency"] || "gem" === input["currency"];
|
|
24
|
+
const _ip11 = input => "number" === typeof input["amount"];
|
|
24
25
|
const _ap0 = (input, _path, _exceptionable = true) => "string" === typeof input["version"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
25
26
|
method: "typia.createAssert",
|
|
26
27
|
path: _path + ".version",
|
|
@@ -37,63 +38,72 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
37
38
|
expected: "boolean",
|
|
38
39
|
value: input["iap"]
|
|
39
40
|
}, _errorFactory);
|
|
40
|
-
const _ap2 = (input, _path, _exceptionable = true) => "boolean" === typeof input["
|
|
41
|
+
const _ap2 = (input, _path, _exceptionable = true) => undefined === input["subscriptions"] || "boolean" === typeof input["subscriptions"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
42
|
+
method: "typia.createAssert",
|
|
43
|
+
path: _path + ".subscriptions",
|
|
44
|
+
expected: "(boolean | undefined)",
|
|
45
|
+
value: input["subscriptions"]
|
|
46
|
+
}, _errorFactory);
|
|
47
|
+
const _ap3 = (input, _path, _exceptionable = true) => "boolean" === typeof input["rewardedAds"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
41
48
|
method: "typia.createAssert",
|
|
42
49
|
path: _path + ".rewardedAds",
|
|
43
50
|
expected: "boolean",
|
|
44
51
|
value: input["rewardedAds"]
|
|
45
52
|
}, _errorFactory);
|
|
46
|
-
const
|
|
53
|
+
const _ap4 = (input, _path, _exceptionable = true) => "boolean" === typeof input["interstitialAds"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
47
54
|
method: "typia.createAssert",
|
|
48
55
|
path: _path + ".interstitialAds",
|
|
49
56
|
expected: "boolean",
|
|
50
57
|
value: input["interstitialAds"]
|
|
51
58
|
}, _errorFactory);
|
|
52
|
-
const
|
|
59
|
+
const _ap5 = (input, _path, _exceptionable = true) => "boolean" === typeof input["localization"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
53
60
|
method: "typia.createAssert",
|
|
54
61
|
path: _path + ".localization",
|
|
55
62
|
expected: "boolean",
|
|
56
63
|
value: input["localization"]
|
|
57
64
|
}, _errorFactory);
|
|
58
|
-
const
|
|
65
|
+
const _ae2 = "(\"action-required\" | \"approval-required\" | \"available\" | \"configuration-required\" | \"disabled\" | \"temporarily-unavailable\" | \"unsupported\")";
|
|
66
|
+
const _ap6 = (input, _path, _exceptionable = true) => "string" === typeof input["id"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
59
67
|
method: "typia.createAssert",
|
|
60
68
|
path: _path + ".id",
|
|
61
69
|
expected: "string",
|
|
62
70
|
value: input["id"]
|
|
63
71
|
}, _errorFactory);
|
|
64
|
-
const
|
|
65
|
-
const
|
|
72
|
+
const _ae3 = "({ readonly type: \"currency\"; readonly currency: \"coin\" | \"gem\"; readonly amount: number; } | { readonly type: \"entitlement\"; readonly entitlement: string; } | { readonly type: \"resource\"; readonly resource: string & MinLength<1>; readonly amount: number & ExclusiveMinimum<0> & Maximum<1.7976931348623157e+308>; })";
|
|
73
|
+
const _ap7 = (input, _path, _exceptionable = true) => "boolean" === typeof input["enabled"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
66
74
|
method: "typia.createAssert",
|
|
67
75
|
path: _path + ".enabled",
|
|
68
76
|
expected: "boolean",
|
|
69
77
|
value: input["enabled"]
|
|
70
78
|
}, _errorFactory);
|
|
71
|
-
const
|
|
79
|
+
const _ap8 = (input, _path, _exceptionable = true) => "action-required" === input["reason"] || "available" === input["reason"] || "capability-unsupported" === input["reason"] || "configuration-required" === input["reason"] || "missing-platform-id" === input["reason"] || "target-disabled" === input["reason"] || "temporarily-unavailable" === input["reason"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
72
80
|
method: "typia.createAssert",
|
|
73
81
|
path: _path + ".reason",
|
|
74
|
-
expected:
|
|
82
|
+
expected: _ae4,
|
|
75
83
|
value: input["reason"]
|
|
76
84
|
}, _errorFactory);
|
|
77
|
-
const
|
|
85
|
+
const _ae4 = "(\"action-required\" | \"available\" | \"capability-unsupported\" | \"configuration-required\" | \"missing-platform-id\" | \"target-disabled\" | \"temporarily-unavailable\")";
|
|
86
|
+
const _ap9 = (input, _path, _exceptionable = true) => "currency" === input["type"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
78
87
|
method: "typia.createAssert",
|
|
79
88
|
path: _path + ".type",
|
|
80
89
|
expected: "\"currency\"",
|
|
81
90
|
value: input["type"]
|
|
82
91
|
}, _errorFactory);
|
|
83
|
-
const
|
|
92
|
+
const _ap10 = (input, _path, _exceptionable = true) => "coin" === input["currency"] || "gem" === input["currency"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
84
93
|
method: "typia.createAssert",
|
|
85
94
|
path: _path + ".currency",
|
|
86
95
|
expected: "(\"coin\" | \"gem\")",
|
|
87
96
|
value: input["currency"]
|
|
88
97
|
}, _errorFactory);
|
|
89
|
-
const
|
|
98
|
+
const _ap11 = (input, _path, _exceptionable = true) => "number" === typeof input["amount"] || _assertGuard_1._assertGuard(_exceptionable, {
|
|
90
99
|
method: "typia.createAssert",
|
|
91
100
|
path: _path + ".amount",
|
|
92
101
|
expected: "number",
|
|
93
102
|
value: input["amount"]
|
|
94
103
|
}, _errorFactory);
|
|
95
|
-
const
|
|
96
|
-
const
|
|
104
|
+
const _ae5 = "(undefined | { readonly type: \"continue\"; readonly amount: number; } | { readonly type: \"currency\"; readonly amount: number; readonly currency: \"coin\" | \"gem\"; })";
|
|
105
|
+
const _ae6 = "(\"action-required\" | \"available\" | \"capability-unsupported\" | \"configuration-required\" | \"target-disabled\" | \"temporarily-unavailable\")";
|
|
106
|
+
const _ae7 = "({ readonly type: \"continue\"; readonly amount: number; } | { readonly type: \"currency\"; readonly amount: number; readonly currency: \"coin\" | \"gem\"; })";
|
|
97
107
|
const _ao0 = (input, _path, _exceptionable = true) => _ap0(input, _path, true && _exceptionable) && (("object" === typeof input.targets && null !== input.targets && false === Array.isArray(input.targets) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
98
108
|
method: "typia.createAssert",
|
|
99
109
|
path: _path + ".targets",
|
|
@@ -121,7 +131,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
121
131
|
value: value
|
|
122
132
|
}, _errorFactory);
|
|
123
133
|
});
|
|
124
|
-
const _ao10 = (input, _path, _exceptionable = true) =>
|
|
134
|
+
const _ao10 = (input, _path, _exceptionable = true) => _ap6(input, _path, true && _exceptionable) && ("consumable" === input.type || "non_consumable" === input.type || "subscription" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
|
|
125
135
|
method: "typia.createAssert",
|
|
126
136
|
path: _path + ".type",
|
|
127
137
|
expected: "(\"consumable\" | \"non_consumable\" | \"subscription\")",
|
|
@@ -129,20 +139,20 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
129
139
|
}, _errorFactory)) && (("object" === typeof input.grant && null !== input.grant || _assertGuard_1._assertGuard(_exceptionable, {
|
|
130
140
|
method: "typia.createAssert",
|
|
131
141
|
path: _path + ".grant",
|
|
132
|
-
expected:
|
|
142
|
+
expected: _ae3,
|
|
133
143
|
value: input.grant
|
|
134
144
|
}, _errorFactory)) && _au0(input.grant, _path + ".grant", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
135
145
|
method: "typia.createAssert",
|
|
136
146
|
path: _path + ".grant",
|
|
137
|
-
expected:
|
|
147
|
+
expected: _ae3,
|
|
138
148
|
value: input.grant
|
|
139
|
-
}, _errorFactory)) &&
|
|
149
|
+
}, _errorFactory)) && _ap7(input, _path, true && _exceptionable) && _ap8(input, _path, true && _exceptionable) && (undefined === input.platformProductId || "string" === typeof input.platformProductId || _assertGuard_1._assertGuard(_exceptionable, {
|
|
140
150
|
method: "typia.createAssert",
|
|
141
151
|
path: _path + ".platformProductId",
|
|
142
152
|
expected: "(string | undefined)",
|
|
143
153
|
value: input.platformProductId
|
|
144
154
|
}, _errorFactory));
|
|
145
|
-
const _ao11 = (input, _path, _exceptionable = true) =>
|
|
155
|
+
const _ao11 = (input, _path, _exceptionable = true) => _ap9(input, _path, true && _exceptionable) && _ap10(input, _path, true && _exceptionable) && _ap11(input, _path, true && _exceptionable);
|
|
146
156
|
const _ao12 = (input, _path, _exceptionable = true) => ("entitlement" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
|
|
147
157
|
method: "typia.createAssert",
|
|
148
158
|
path: _path + ".type",
|
|
@@ -190,7 +200,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
190
200
|
path: _path + ".bannerAds",
|
|
191
201
|
expected: "boolean",
|
|
192
202
|
value: input.bannerAds
|
|
193
|
-
}, _errorFactory)) &&
|
|
203
|
+
}, _errorFactory)) && _ap3(input, _path, true && _exceptionable) && _ap4(input, _path, true && _exceptionable) && ((Array.isArray(input.placements) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
194
204
|
method: "typia.createAssert",
|
|
195
205
|
path: _path + ".placements",
|
|
196
206
|
expected: "ReadonlyArray<EffectiveAdPlacementConfig>",
|
|
@@ -211,7 +221,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
211
221
|
expected: "ReadonlyArray<EffectiveAdPlacementConfig>",
|
|
212
222
|
value: input.placements
|
|
213
223
|
}, _errorFactory));
|
|
214
|
-
const _ao15 = (input, _path, _exceptionable = true) =>
|
|
224
|
+
const _ao15 = (input, _path, _exceptionable = true) => _ap6(input, _path, true && _exceptionable) && ("banner" === input.type || "interstitial" === input.type || "rewarded" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
|
|
215
225
|
method: "typia.createAssert",
|
|
216
226
|
path: _path + ".type",
|
|
217
227
|
expected: "(\"banner\" | \"interstitial\" | \"rewarded\")",
|
|
@@ -219,12 +229,12 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
219
229
|
}, _errorFactory)) && (undefined === input.reward || ("object" === typeof input.reward && null !== input.reward || _assertGuard_1._assertGuard(_exceptionable, {
|
|
220
230
|
method: "typia.createAssert",
|
|
221
231
|
path: _path + ".reward",
|
|
222
|
-
expected:
|
|
232
|
+
expected: _ae5,
|
|
223
233
|
value: input.reward
|
|
224
234
|
}, _errorFactory)) && _au1(input.reward, _path + ".reward", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
225
235
|
method: "typia.createAssert",
|
|
226
236
|
path: _path + ".reward",
|
|
227
|
-
expected:
|
|
237
|
+
expected: _ae5,
|
|
228
238
|
value: input.reward
|
|
229
239
|
}, _errorFactory)) && (("object" === typeof input.frequencyCap && null !== input.frequencyCap || _assertGuard_1._assertGuard(_exceptionable, {
|
|
230
240
|
method: "typia.createAssert",
|
|
@@ -236,7 +246,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
236
246
|
path: _path + ".frequencyCap",
|
|
237
247
|
expected: "FrequencyCap",
|
|
238
248
|
value: input.frequencyCap
|
|
239
|
-
}, _errorFactory)) &&
|
|
249
|
+
}, _errorFactory)) && _ap7(input, _path, true && _exceptionable) && _ap8(input, _path, true && _exceptionable) && (undefined === input.platformPlacementId || "string" === typeof input.platformPlacementId || _assertGuard_1._assertGuard(_exceptionable, {
|
|
240
250
|
method: "typia.createAssert",
|
|
241
251
|
path: _path + ".platformPlacementId",
|
|
242
252
|
expected: "(string | undefined)",
|
|
@@ -247,8 +257,8 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
247
257
|
path: _path + ".type",
|
|
248
258
|
expected: "\"continue\"",
|
|
249
259
|
value: input.type
|
|
250
|
-
}, _errorFactory)) &&
|
|
251
|
-
const _ao17 = (input, _path, _exceptionable = true) =>
|
|
260
|
+
}, _errorFactory)) && _ap11(input, _path, true && _exceptionable);
|
|
261
|
+
const _ao17 = (input, _path, _exceptionable = true) => _ap9(input, _path, true && _exceptionable) && _ap11(input, _path, true && _exceptionable) && _ap10(input, _path, true && _exceptionable);
|
|
252
262
|
const _ao18 = (input, _path, _exceptionable = true) => ("number" === typeof input.cooldownSeconds || _assertGuard_1._assertGuard(_exceptionable, {
|
|
253
263
|
method: "typia.createAssert",
|
|
254
264
|
path: _path + ".cooldownSeconds",
|
|
@@ -270,10 +280,10 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
270
280
|
path: _path + ".native",
|
|
271
281
|
expected: "boolean",
|
|
272
282
|
value: input.native
|
|
273
|
-
}, _errorFactory)) &&
|
|
283
|
+
}, _errorFactory)) && _ap7(input, _path, true && _exceptionable) && ("action-required" === input.reason || "available" === input.reason || "capability-unsupported" === input.reason || "configuration-required" === input.reason || "target-disabled" === input.reason || "temporarily-unavailable" === input.reason || _assertGuard_1._assertGuard(_exceptionable, {
|
|
274
284
|
method: "typia.createAssert",
|
|
275
285
|
path: _path + ".reason",
|
|
276
|
-
expected:
|
|
286
|
+
expected: _ae6,
|
|
277
287
|
value: input.reason
|
|
278
288
|
}, _errorFactory)) && (undefined === input.defaultLeaderboardId || "string" === typeof input.defaultLeaderboardId || _assertGuard_1._assertGuard(_exceptionable, {
|
|
279
289
|
method: "typia.createAssert",
|
|
@@ -407,8 +417,8 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
407
417
|
path: _path + ".support",
|
|
408
418
|
expected: "(\"local\" | \"native\" | \"none\")",
|
|
409
419
|
value: input.support
|
|
410
|
-
}, _errorFactory)) &&
|
|
411
|
-
const _ao21 = (input, _path, _exceptionable = true) =>
|
|
420
|
+
}, _errorFactory)) && _ap7(input, _path, true && _exceptionable);
|
|
421
|
+
const _ao21 = (input, _path, _exceptionable = true) => _ap7(input, _path, true && _exceptionable) && ("en" === input.fallbackLocale || "ko" === input.fallbackLocale || _assertGuard_1._assertGuard(_exceptionable, {
|
|
412
422
|
method: "typia.createAssert",
|
|
413
423
|
path: _path + ".fallbackLocale",
|
|
414
424
|
expected: "(\"en\" | \"ko\")",
|
|
@@ -420,47 +430,57 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
420
430
|
expected: _ae1,
|
|
421
431
|
value: input.profile
|
|
422
432
|
}, _errorFactory);
|
|
423
|
-
const _ao4 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && (undefined === input.bannerAds || "boolean" === typeof input.bannerAds || _assertGuard_1._assertGuard(_exceptionable, {
|
|
433
|
+
const _ao4 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && _ap2(input, _path, true && _exceptionable) && (undefined === input.bannerAds || "boolean" === typeof input.bannerAds || _assertGuard_1._assertGuard(_exceptionable, {
|
|
424
434
|
method: "typia.createAssert",
|
|
425
435
|
path: _path + ".bannerAds",
|
|
426
436
|
expected: "(boolean | undefined)",
|
|
427
437
|
value: input.bannerAds
|
|
428
|
-
}, _errorFactory)) &&
|
|
438
|
+
}, _errorFactory)) && _ap3(input, _path, true && _exceptionable) && _ap4(input, _path, true && _exceptionable) && ("boolean" === typeof input.leaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
429
439
|
method: "typia.createAssert",
|
|
430
440
|
path: _path + ".leaderboard",
|
|
431
441
|
expected: "boolean",
|
|
432
442
|
value: input.leaderboard
|
|
433
|
-
}, _errorFactory)) &&
|
|
443
|
+
}, _errorFactory)) && (undefined === input.nativeLeaderboard || "boolean" === typeof input.nativeLeaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
444
|
+
method: "typia.createAssert",
|
|
445
|
+
path: _path + ".nativeLeaderboard",
|
|
446
|
+
expected: "(boolean | undefined)",
|
|
447
|
+
value: input.nativeLeaderboard
|
|
448
|
+
}, _errorFactory)) && (undefined === input.remoteLeaderboard || "boolean" === typeof input.remoteLeaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
449
|
+
method: "typia.createAssert",
|
|
450
|
+
path: _path + ".remoteLeaderboard",
|
|
451
|
+
expected: "(boolean | undefined)",
|
|
452
|
+
value: input.remoteLeaderboard
|
|
453
|
+
}, _errorFactory)) && _ap5(input, _path, true && _exceptionable);
|
|
434
454
|
const _ao5 = (input, _path, _exceptionable = true) => ("local" === input.storage || "native" === input.storage || "none" === input.storage || _assertGuard_1._assertGuard(_exceptionable, {
|
|
435
455
|
method: "typia.createAssert",
|
|
436
456
|
path: _path + ".storage",
|
|
437
457
|
expected: "(\"local\" | \"native\" | \"none\")",
|
|
438
458
|
value: input.storage
|
|
439
|
-
}, _errorFactory)) &&
|
|
440
|
-
const _ao6 = (input, _path, _exceptionable = true) => ("approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "unsupported" === input.identityUpgrade || _assertGuard_1._assertGuard(_exceptionable, {
|
|
459
|
+
}, _errorFactory)) && _ap5(input, _path, true && _exceptionable);
|
|
460
|
+
const _ao6 = (input, _path, _exceptionable = true) => ("action-required" === input.identityUpgrade || "approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "temporarily-unavailable" === input.identityUpgrade || "unsupported" === input.identityUpgrade || _assertGuard_1._assertGuard(_exceptionable, {
|
|
441
461
|
method: "typia.createAssert",
|
|
442
462
|
path: _path + ".identityUpgrade",
|
|
443
|
-
expected:
|
|
463
|
+
expected: _ae2,
|
|
444
464
|
value: input.identityUpgrade
|
|
445
|
-
}, _errorFactory)) && ("approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "unsupported" === input.presentation || _assertGuard_1._assertGuard(_exceptionable, {
|
|
465
|
+
}, _errorFactory)) && ("action-required" === input.presentation || "approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "temporarily-unavailable" === input.presentation || "unsupported" === input.presentation || _assertGuard_1._assertGuard(_exceptionable, {
|
|
446
466
|
method: "typia.createAssert",
|
|
447
467
|
path: _path + ".presentation",
|
|
448
|
-
expected:
|
|
468
|
+
expected: _ae2,
|
|
449
469
|
value: input.presentation
|
|
450
|
-
}, _errorFactory)) && ("approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "unsupported" === input.sharing || _assertGuard_1._assertGuard(_exceptionable, {
|
|
470
|
+
}, _errorFactory)) && ("action-required" === input.sharing || "approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "temporarily-unavailable" === input.sharing || "unsupported" === input.sharing || _assertGuard_1._assertGuard(_exceptionable, {
|
|
451
471
|
method: "typia.createAssert",
|
|
452
472
|
path: _path + ".sharing",
|
|
453
|
-
expected:
|
|
473
|
+
expected: _ae2,
|
|
454
474
|
value: input.sharing
|
|
455
|
-
}, _errorFactory)) && ("approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "unsupported" === input.inboundShare || _assertGuard_1._assertGuard(_exceptionable, {
|
|
475
|
+
}, _errorFactory)) && ("action-required" === input.inboundShare || "approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "temporarily-unavailable" === input.inboundShare || "unsupported" === input.inboundShare || _assertGuard_1._assertGuard(_exceptionable, {
|
|
456
476
|
method: "typia.createAssert",
|
|
457
477
|
path: _path + ".inboundShare",
|
|
458
|
-
expected:
|
|
478
|
+
expected: _ae2,
|
|
459
479
|
value: input.inboundShare
|
|
460
|
-
}, _errorFactory)) && ("approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "unsupported" === input.notifications || _assertGuard_1._assertGuard(_exceptionable, {
|
|
480
|
+
}, _errorFactory)) && ("action-required" === input.notifications || "approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "temporarily-unavailable" === input.notifications || "unsupported" === input.notifications || _assertGuard_1._assertGuard(_exceptionable, {
|
|
461
481
|
method: "typia.createAssert",
|
|
462
482
|
path: _path + ".notifications",
|
|
463
|
-
expected:
|
|
483
|
+
expected: _ae2,
|
|
464
484
|
value: input.notifications
|
|
465
485
|
}, _errorFactory)) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode || _assertGuard_1._assertGuard(_exceptionable, {
|
|
466
486
|
method: "typia.createAssert",
|
|
@@ -520,7 +540,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
520
540
|
expected: "(string | undefined)",
|
|
521
541
|
value: input.platformAdapter
|
|
522
542
|
}, _errorFactory));
|
|
523
|
-
const _ao9 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && ((Array.isArray(input.products) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
543
|
+
const _ao9 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && _ap2(input, _path, true && _exceptionable) && ((Array.isArray(input.products) || _assertGuard_1._assertGuard(_exceptionable, {
|
|
524
544
|
method: "typia.createAssert",
|
|
525
545
|
path: _path + ".products",
|
|
526
546
|
expected: "ReadonlyArray<EffectiveProductConfig>",
|
|
@@ -552,7 +572,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
552
572
|
return _assertGuard_1._assertGuard(_exceptionable, {
|
|
553
573
|
method: "typia.createAssert",
|
|
554
574
|
path: _path,
|
|
555
|
-
expected:
|
|
575
|
+
expected: _ae3,
|
|
556
576
|
value: input
|
|
557
577
|
}, _errorFactory);
|
|
558
578
|
})();
|
|
@@ -565,7 +585,7 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
565
585
|
return _assertGuard_1._assertGuard(_exceptionable, {
|
|
566
586
|
method: "typia.createAssert",
|
|
567
587
|
path: _path,
|
|
568
|
-
expected:
|
|
588
|
+
expected: _ae7,
|
|
569
589
|
value: input
|
|
570
590
|
}, _errorFactory);
|
|
571
591
|
})();
|
|
@@ -576,26 +596,26 @@ export const assertEffectiveTargetConfigMatrix = (() => {
|
|
|
576
596
|
return true;
|
|
577
597
|
return "object" === typeof value && null !== value && _io2(value);
|
|
578
598
|
});
|
|
579
|
-
const _io10 = input =>
|
|
580
|
-
const _io11 = input =>
|
|
599
|
+
const _io10 = input => _ip6(input) && ("consumable" === input.type || "non_consumable" === input.type || "subscription" === input.type) && ("object" === typeof input.grant && null !== input.grant && _iu0(input.grant)) && _ip7(input) && _ip8(input) && (undefined === input.platformProductId || "string" === typeof input.platformProductId);
|
|
600
|
+
const _io11 = input => _ip9(input) && _ip10(input) && _ip11(input);
|
|
581
601
|
const _io12 = input => "entitlement" === input.type && "string" === typeof input.entitlement;
|
|
582
602
|
const _io13 = input => "resource" === input.type && ("string" === typeof input.resource && 1 <= input.resource.length) && ("number" === typeof input.amount && (0 < input.amount && input.amount <= 1.7976931348623157e+308));
|
|
583
|
-
const _io14 = input => "boolean" === typeof input.bannerAds &&
|
|
584
|
-
const _io15 = input =>
|
|
585
|
-
const _io16 = input => "continue" === input.type &&
|
|
586
|
-
const _io17 = input =>
|
|
603
|
+
const _io14 = input => "boolean" === typeof input.bannerAds && _ip3(input) && _ip4(input) && (Array.isArray(input.placements) && input.placements.every(elem => "object" === typeof elem && null !== elem && _io15(elem)));
|
|
604
|
+
const _io15 = input => _ip6(input) && ("banner" === input.type || "interstitial" === input.type || "rewarded" === input.type) && (undefined === input.reward || "object" === typeof input.reward && null !== input.reward && _iu1(input.reward)) && ("object" === typeof input.frequencyCap && null !== input.frequencyCap && _io18(input.frequencyCap)) && _ip7(input) && _ip8(input) && (undefined === input.platformPlacementId || "string" === typeof input.platformPlacementId);
|
|
605
|
+
const _io16 = input => "continue" === input.type && _ip11(input);
|
|
606
|
+
const _io17 = input => _ip9(input) && _ip11(input) && _ip10(input);
|
|
587
607
|
const _io18 = input => "number" === typeof input.cooldownSeconds && (undefined === input.maxPerSession || "number" === typeof input.maxPerSession) && (undefined === input.minStageInterval || "number" === typeof input.minStageInterval);
|
|
588
|
-
const _io19 = input => "boolean" === typeof input.native &&
|
|
608
|
+
const _io19 = input => "boolean" === typeof input.native && _ip7(input) && ("action-required" === input.reason || "available" === input.reason || "capability-unsupported" === input.reason || "configuration-required" === input.reason || "target-disabled" === input.reason || "temporarily-unavailable" === input.reason) && (undefined === input.defaultLeaderboardId || "string" === typeof input.defaultLeaderboardId);
|
|
589
609
|
const _io2 = input => _ip0(input) && "string" === typeof input.target && true === _iv0.has(input.runtime) && ("object" === typeof input.release && null !== input.release && _io3(input.release)) && ("object" === typeof input.features && null !== input.features && _io4(input.features)) && ("object" === typeof input.capabilities && null !== input.capabilities && _io5(input.capabilities)) && ("object" === typeof input.integrations && null !== input.integrations && _io6(input.integrations)) && ("object" === typeof input.policy && null !== input.policy && _io7(input.policy)) && ("object" === typeof input.sources && null !== input.sources && _io8(input.sources)) && ("object" === typeof input.monetization && null !== input.monetization && _io9(input.monetization)) && ("object" === typeof input.ads && null !== input.ads && _io14(input.ads)) && ("object" === typeof input.leaderboard && null !== input.leaderboard && _io19(input.leaderboard)) && ("object" === typeof input.storage && null !== input.storage && _io20(input.storage)) && ("object" === typeof input.localization && null !== input.localization && _io21(input.localization));
|
|
590
|
-
const _io20 = input => ("local" === input.support || "native" === input.support || "none" === input.support) &&
|
|
591
|
-
const _io21 = input =>
|
|
610
|
+
const _io20 = input => ("local" === input.support || "native" === input.support || "none" === input.support) && _ip7(input);
|
|
611
|
+
const _io21 = input => _ip7(input) && ("en" === input.fallbackLocale || "ko" === input.fallbackLocale);
|
|
592
612
|
const _io3 = input => true === _iv1.has(input.profile);
|
|
593
|
-
const _io4 = input => _ip1(input) && (undefined === input.bannerAds || "boolean" === typeof input.bannerAds) &&
|
|
594
|
-
const _io5 = input => ("local" === input.storage || "native" === input.storage || "none" === input.storage) &&
|
|
595
|
-
const _io6 = input => ("approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "unsupported" === input.identityUpgrade) && ("approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "unsupported" === input.presentation) && ("approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "unsupported" === input.sharing) && ("approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "unsupported" === input.inboundShare) && ("approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "unsupported" === input.notifications) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode);
|
|
613
|
+
const _io4 = input => _ip1(input) && _ip2(input) && (undefined === input.bannerAds || "boolean" === typeof input.bannerAds) && _ip3(input) && _ip4(input) && "boolean" === typeof input.leaderboard && (undefined === input.nativeLeaderboard || "boolean" === typeof input.nativeLeaderboard) && (undefined === input.remoteLeaderboard || "boolean" === typeof input.remoteLeaderboard) && _ip5(input);
|
|
614
|
+
const _io5 = input => ("local" === input.storage || "native" === input.storage || "none" === input.storage) && _ip5(input);
|
|
615
|
+
const _io6 = input => ("action-required" === input.identityUpgrade || "approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "temporarily-unavailable" === input.identityUpgrade || "unsupported" === input.identityUpgrade) && ("action-required" === input.presentation || "approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "temporarily-unavailable" === input.presentation || "unsupported" === input.presentation) && ("action-required" === input.sharing || "approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "temporarily-unavailable" === input.sharing || "unsupported" === input.sharing) && ("action-required" === input.inboundShare || "approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "temporarily-unavailable" === input.inboundShare || "unsupported" === input.inboundShare) && ("action-required" === input.notifications || "approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "temporarily-unavailable" === input.notifications || "unsupported" === input.notifications) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode);
|
|
596
616
|
const _io7 = input => "boolean" === typeof input.externalPaymentAllowed && "boolean" === typeof input.remoteExecutableCodeAllowed && "boolean" === typeof input.installOtherAppCTAAllowed && "boolean" === typeof input.requiresStoreReview && "boolean" === typeof input.requiresAitReview;
|
|
597
617
|
const _io8 = input => "string" === typeof input.targetConfig && "string" === typeof input.productCatalog && "string" === typeof input.adPlacements && (undefined === input.platformTargetKind || "string" === typeof input.platformTargetKind) && (undefined === input.platformAdapter || "string" === typeof input.platformAdapter);
|
|
598
|
-
const _io9 = input => _ip1(input) && (Array.isArray(input.products) && input.products.every(elem => "object" === typeof elem && null !== elem && _io10(elem)));
|
|
618
|
+
const _io9 = input => _ip1(input) && _ip2(input) && (Array.isArray(input.products) && input.products.every(elem => "object" === typeof elem && null !== elem && _io10(elem)));
|
|
599
619
|
const _iu0 = input => (() => {
|
|
600
620
|
if ("currency" === input.type)
|
|
601
621
|
return _io11(input);
|
|
@@ -676,6 +696,7 @@ export const assertTargetConfigMatrix = (() => {
|
|
|
676
696
|
}, _errorFactory);
|
|
677
697
|
const _av1 = new Set(["app-store", "apps-in-toss", "devvit", "google-play", "microsoft-store", "tiktok-minigame", "verse8", "web", "web-preview", "wechat-minigame"]);
|
|
678
698
|
const _ae1 = "(\"app-store\" | \"apps-in-toss\" | \"devvit\" | \"google-play\" | \"microsoft-store\" | \"tiktok-minigame\" | \"verse8\" | \"web\" | \"web-preview\" | \"wechat-minigame\")";
|
|
699
|
+
const _ae2 = "(\"action-required\" | \"approval-required\" | \"available\" | \"configuration-required\" | \"disabled\" | \"temporarily-unavailable\" | \"unsupported\")";
|
|
679
700
|
const _ao0 = (input, _path, _exceptionable = true) => ("string" === typeof input.version || _assertGuard_1._assertGuard(_exceptionable, {
|
|
680
701
|
method: "typia.createAssert",
|
|
681
702
|
path: _path + ".version",
|
|
@@ -708,30 +729,30 @@ export const assertTargetConfigMatrix = (() => {
|
|
|
708
729
|
value: value
|
|
709
730
|
}, _errorFactory);
|
|
710
731
|
});
|
|
711
|
-
const _ao10 = (input, _path, _exceptionable = true) => ("approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "unsupported" === input.identityUpgrade || _assertGuard_1._assertGuard(_exceptionable, {
|
|
732
|
+
const _ao10 = (input, _path, _exceptionable = true) => ("action-required" === input.identityUpgrade || "approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "temporarily-unavailable" === input.identityUpgrade || "unsupported" === input.identityUpgrade || _assertGuard_1._assertGuard(_exceptionable, {
|
|
712
733
|
method: "typia.createAssert",
|
|
713
734
|
path: _path + ".identityUpgrade",
|
|
714
|
-
expected:
|
|
735
|
+
expected: _ae2,
|
|
715
736
|
value: input.identityUpgrade
|
|
716
|
-
}, _errorFactory)) && ("approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "unsupported" === input.presentation || _assertGuard_1._assertGuard(_exceptionable, {
|
|
737
|
+
}, _errorFactory)) && ("action-required" === input.presentation || "approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "temporarily-unavailable" === input.presentation || "unsupported" === input.presentation || _assertGuard_1._assertGuard(_exceptionable, {
|
|
717
738
|
method: "typia.createAssert",
|
|
718
739
|
path: _path + ".presentation",
|
|
719
|
-
expected:
|
|
740
|
+
expected: _ae2,
|
|
720
741
|
value: input.presentation
|
|
721
|
-
}, _errorFactory)) && ("approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "unsupported" === input.sharing || _assertGuard_1._assertGuard(_exceptionable, {
|
|
742
|
+
}, _errorFactory)) && ("action-required" === input.sharing || "approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "temporarily-unavailable" === input.sharing || "unsupported" === input.sharing || _assertGuard_1._assertGuard(_exceptionable, {
|
|
722
743
|
method: "typia.createAssert",
|
|
723
744
|
path: _path + ".sharing",
|
|
724
|
-
expected:
|
|
745
|
+
expected: _ae2,
|
|
725
746
|
value: input.sharing
|
|
726
|
-
}, _errorFactory)) && ("approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "unsupported" === input.inboundShare || _assertGuard_1._assertGuard(_exceptionable, {
|
|
747
|
+
}, _errorFactory)) && ("action-required" === input.inboundShare || "approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "temporarily-unavailable" === input.inboundShare || "unsupported" === input.inboundShare || _assertGuard_1._assertGuard(_exceptionable, {
|
|
727
748
|
method: "typia.createAssert",
|
|
728
749
|
path: _path + ".inboundShare",
|
|
729
|
-
expected:
|
|
750
|
+
expected: _ae2,
|
|
730
751
|
value: input.inboundShare
|
|
731
|
-
}, _errorFactory)) && ("approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "unsupported" === input.notifications || _assertGuard_1._assertGuard(_exceptionable, {
|
|
752
|
+
}, _errorFactory)) && ("action-required" === input.notifications || "approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "temporarily-unavailable" === input.notifications || "unsupported" === input.notifications || _assertGuard_1._assertGuard(_exceptionable, {
|
|
732
753
|
method: "typia.createAssert",
|
|
733
754
|
path: _path + ".notifications",
|
|
734
|
-
expected:
|
|
755
|
+
expected: _ae2,
|
|
735
756
|
value: input.notifications
|
|
736
757
|
}, _errorFactory)) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode || _assertGuard_1._assertGuard(_exceptionable, {
|
|
737
758
|
method: "typia.createAssert",
|
|
@@ -825,11 +846,26 @@ export const assertTargetConfigMatrix = (() => {
|
|
|
825
846
|
expected: "(TargetIntegrationConfig | undefined)",
|
|
826
847
|
value: input.integrations
|
|
827
848
|
}, _errorFactory));
|
|
828
|
-
const _ao3 = (input, _path, _exceptionable = true) => _ap0(input, _path, true && _exceptionable) &&
|
|
849
|
+
const _ao3 = (input, _path, _exceptionable = true) => _ap0(input, _path, true && _exceptionable) && (undefined === input.subscriptions || "boolean" === typeof input.subscriptions || _assertGuard_1._assertGuard(_exceptionable, {
|
|
850
|
+
method: "typia.createAssert",
|
|
851
|
+
path: _path + ".subscriptions",
|
|
852
|
+
expected: "(boolean | undefined)",
|
|
853
|
+
value: input.subscriptions
|
|
854
|
+
}, _errorFactory)) && _ap1(input, _path, true && _exceptionable) && _ap2(input, _path, true && _exceptionable) && _ap3(input, _path, true && _exceptionable) && ("boolean" === typeof input.leaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
829
855
|
method: "typia.createAssert",
|
|
830
856
|
path: _path + ".leaderboard",
|
|
831
857
|
expected: "boolean",
|
|
832
858
|
value: input.leaderboard
|
|
859
|
+
}, _errorFactory)) && (undefined === input.nativeLeaderboard || "boolean" === typeof input.nativeLeaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
860
|
+
method: "typia.createAssert",
|
|
861
|
+
path: _path + ".nativeLeaderboard",
|
|
862
|
+
expected: "(boolean | undefined)",
|
|
863
|
+
value: input.nativeLeaderboard
|
|
864
|
+
}, _errorFactory)) && (undefined === input.remoteLeaderboard || "boolean" === typeof input.remoteLeaderboard || _assertGuard_1._assertGuard(_exceptionable, {
|
|
865
|
+
method: "typia.createAssert",
|
|
866
|
+
path: _path + ".remoteLeaderboard",
|
|
867
|
+
expected: "(boolean | undefined)",
|
|
868
|
+
value: input.remoteLeaderboard
|
|
833
869
|
}, _errorFactory)) && _ap4(input, _path, true && _exceptionable);
|
|
834
870
|
const _ao4 = (input, _path, _exceptionable = true) => ("local" === input.storage || "native" === input.storage || "none" === input.storage || _assertGuard_1._assertGuard(_exceptionable, {
|
|
835
871
|
method: "typia.createAssert",
|
|
@@ -889,9 +925,9 @@ export const assertTargetConfigMatrix = (() => {
|
|
|
889
925
|
return true;
|
|
890
926
|
return "object" === typeof value && null !== value && _io2(value);
|
|
891
927
|
});
|
|
892
|
-
const _io10 = input => ("approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "unsupported" === input.identityUpgrade) && ("approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "unsupported" === input.presentation) && ("approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "unsupported" === input.sharing) && ("approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "unsupported" === input.inboundShare) && ("approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "unsupported" === input.notifications) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode);
|
|
928
|
+
const _io10 = input => ("action-required" === input.identityUpgrade || "approval-required" === input.identityUpgrade || "available" === input.identityUpgrade || "configuration-required" === input.identityUpgrade || "disabled" === input.identityUpgrade || "temporarily-unavailable" === input.identityUpgrade || "unsupported" === input.identityUpgrade) && ("action-required" === input.presentation || "approval-required" === input.presentation || "available" === input.presentation || "configuration-required" === input.presentation || "disabled" === input.presentation || "temporarily-unavailable" === input.presentation || "unsupported" === input.presentation) && ("action-required" === input.sharing || "approval-required" === input.sharing || "available" === input.sharing || "configuration-required" === input.sharing || "disabled" === input.sharing || "temporarily-unavailable" === input.sharing || "unsupported" === input.sharing) && ("action-required" === input.inboundShare || "approval-required" === input.inboundShare || "available" === input.inboundShare || "configuration-required" === input.inboundShare || "disabled" === input.inboundShare || "temporarily-unavailable" === input.inboundShare || "unsupported" === input.inboundShare) && ("action-required" === input.notifications || "approval-required" === input.notifications || "available" === input.notifications || "configuration-required" === input.notifications || "disabled" === input.notifications || "temporarily-unavailable" === input.notifications || "unsupported" === input.notifications) && ("fullscreen" === input.presentationMode || "inline-expanded" === input.presentationMode);
|
|
893
929
|
const _io2 = input => true === _iv0.has(input.runtime) && ("object" === typeof input.features && null !== input.features && _io3(input.features)) && ("object" === typeof input.capabilities && null !== input.capabilities && _io4(input.capabilities)) && ("object" === typeof input.localization && null !== input.localization && _io5(input.localization)) && ("object" === typeof input.monetization && null !== input.monetization && _io6(input.monetization)) && ("object" === typeof input.leaderboard && null !== input.leaderboard && _io7(input.leaderboard)) && ("object" === typeof input.release && null !== input.release && _io8(input.release)) && ("object" === typeof input.policy && null !== input.policy && _io9(input.policy)) && (undefined === input.integrations || "object" === typeof input.integrations && null !== input.integrations && _io10(input.integrations));
|
|
894
|
-
const _io3 = input => _ip0(input) && _ip1(input) && _ip2(input) && _ip3(input) && "boolean" === typeof input.leaderboard && _ip4(input);
|
|
930
|
+
const _io3 = input => _ip0(input) && (undefined === input.subscriptions || "boolean" === typeof input.subscriptions) && _ip1(input) && _ip2(input) && _ip3(input) && "boolean" === typeof input.leaderboard && (undefined === input.nativeLeaderboard || "boolean" === typeof input.nativeLeaderboard) && (undefined === input.remoteLeaderboard || "boolean" === typeof input.remoteLeaderboard) && _ip4(input);
|
|
895
931
|
const _io4 = input => ("local" === input.storage || "native" === input.storage || "none" === input.storage) && _ip4(input);
|
|
896
932
|
const _io5 = input => "en" === input.fallbackLocale || "ko" === input.fallbackLocale;
|
|
897
933
|
const _io6 = input => _ip0(input) && _ip1(input) && _ip2(input) && _ip3(input);
|
package/dist/runtime.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import type { MpgdLocale } from '@mpgd/i18n';
|
|
2
2
|
import type { PlatformCapabilities, PlatformGateway } from '@mpgd/platform';
|
|
3
3
|
import type { EffectiveTargetConfig } from './effective.js';
|
|
4
|
-
export type PlatformFeature = 'iap' | 'bannerAds' | 'rewardedAds' | 'interstitialAds' | 'leaderboard' | 'localization';
|
|
4
|
+
export type PlatformFeature = 'iap' | 'subscriptions' | 'bannerAds' | 'rewardedAds' | 'interstitialAds' | 'leaderboard' | 'nativeLeaderboard' | 'remoteLeaderboard' | 'localization';
|
|
5
5
|
export type AdPlacementType = 'rewarded' | 'interstitial' | 'banner';
|
|
6
6
|
type PlatformConfigTarget = PlatformGateway['target'];
|
|
7
7
|
export type TargetRuntimeKind = 'web' | 'web-preview' | 'microsoft-store-pwa' | 'capacitor-android' | 'capacitor-ios' | 'apps-in-toss' | 'devvit-web' | 'verse8-web' | 'wechat-minigame' | 'tiktok-minigame';
|
|
8
8
|
export type ReleaseProfile = 'web' | 'web-preview' | 'microsoft-store' | 'google-play' | 'app-store' | 'apps-in-toss' | 'devvit' | 'verse8' | 'wechat-minigame' | 'tiktok-minigame';
|
|
9
9
|
export type StorageSupport = 'local' | 'native' | 'none';
|
|
10
10
|
export type TargetIntegration = 'identityUpgrade' | 'presentation' | 'sharing' | 'inboundShare' | 'notifications';
|
|
11
|
-
export type IntegrationAvailabilityState = 'available' | 'disabled' | 'approval-required' | 'configuration-required' | 'unsupported';
|
|
11
|
+
export type IntegrationAvailabilityState = 'available' | 'disabled' | 'approval-required' | 'action-required' | 'configuration-required' | 'temporarily-unavailable' | 'unsupported';
|
|
12
12
|
export type PresentationMode = 'fullscreen' | 'inline-expanded';
|
|
13
13
|
export interface TargetIntegrationConfig {
|
|
14
14
|
readonly identityUpgrade: IntegrationAvailabilityState;
|
|
@@ -20,11 +20,16 @@ export interface TargetIntegrationConfig {
|
|
|
20
20
|
}
|
|
21
21
|
export interface TargetFeatureConfig {
|
|
22
22
|
readonly iap: boolean;
|
|
23
|
+
/** Optional for matrices authored before subscriptions were distinct. */
|
|
24
|
+
readonly subscriptions?: boolean;
|
|
23
25
|
/** Optional for target matrices authored before inline banner support. */
|
|
24
26
|
readonly bannerAds?: boolean;
|
|
25
27
|
readonly rewardedAds: boolean;
|
|
26
28
|
readonly interstitialAds: boolean;
|
|
27
29
|
readonly leaderboard: boolean;
|
|
30
|
+
/** Optional narrower policies; absent values inherit leaderboard. */
|
|
31
|
+
readonly nativeLeaderboard?: boolean;
|
|
32
|
+
readonly remoteLeaderboard?: boolean;
|
|
28
33
|
readonly localization: boolean;
|
|
29
34
|
}
|
|
30
35
|
export interface TargetCapabilityConfig {
|
|
@@ -69,7 +74,7 @@ export interface TargetConfigMatrix {
|
|
|
69
74
|
readonly version: string;
|
|
70
75
|
readonly targets: Record<string, TargetConfig>;
|
|
71
76
|
}
|
|
72
|
-
export type FeatureAvailabilityReason = 'available' | 'target-disabled' | 'capability-unsupported';
|
|
77
|
+
export type FeatureAvailabilityReason = 'available' | 'target-disabled' | 'capability-unsupported' | 'configuration-required' | 'action-required' | 'temporarily-unavailable';
|
|
73
78
|
export interface FeatureAvailability {
|
|
74
79
|
readonly feature: PlatformFeature;
|
|
75
80
|
readonly enabled: boolean;
|
|
@@ -116,11 +121,11 @@ export interface TargetConfiguredGateway extends PlatformGateway {
|
|
|
116
121
|
readonly effectiveConfig?: EffectiveTargetConfig;
|
|
117
122
|
getTargetRuntime(): Promise<TargetRuntimeSnapshot>;
|
|
118
123
|
}
|
|
119
|
-
export declare const platformFeatures: readonly ["iap", "bannerAds", "rewardedAds", "interstitialAds", "leaderboard", "localization"];
|
|
124
|
+
export declare const platformFeatures: readonly ["iap", "subscriptions", "bannerAds", "rewardedAds", "interstitialAds", "leaderboard", "nativeLeaderboard", "remoteLeaderboard", "localization"];
|
|
120
125
|
export declare function adPlacementFeatureFor(type: AdPlacementType): PlatformFeature;
|
|
121
126
|
export declare const targetIntegrations: readonly ["identityUpgrade", "presentation", "sharing", "inboundShare", "notifications"];
|
|
122
127
|
type CompleteValueList<Union, Values extends readonly Union[]> = Exclude<Union, Values[number]> extends never ? Values : never;
|
|
123
|
-
declare const integrationAvailabilityStateValues: readonly ["available", "disabled", "approval-required", "configuration-required", "unsupported"];
|
|
128
|
+
declare const integrationAvailabilityStateValues: readonly ["available", "disabled", "approval-required", "action-required", "configuration-required", "temporarily-unavailable", "unsupported"];
|
|
124
129
|
export declare const integrationAvailabilityStates: CompleteValueList<IntegrationAvailabilityState, typeof integrationAvailabilityStateValues>;
|
|
125
130
|
declare const presentationModeValues: readonly ["fullscreen", "inline-expanded"];
|
|
126
131
|
export declare const presentationModes: CompleteValueList<PresentationMode, typeof presentationModeValues>;
|
|
@@ -140,7 +145,7 @@ export declare function getTargetConfig(matrix: TargetConfigMatrix, target: Plat
|
|
|
140
145
|
export declare function isPlatformFeatureEnabled(config: TargetConfig, feature: PlatformFeature): boolean;
|
|
141
146
|
export declare function applyTargetConfigToCapabilities(capabilities: PlatformCapabilities, config: TargetConfig): PlatformCapabilities;
|
|
142
147
|
export declare function getFeatureAvailability(feature: PlatformFeature, config: TargetConfig, capabilities: PlatformCapabilities): FeatureAvailability;
|
|
143
|
-
export declare function getIntegrationAvailability(integration: TargetIntegration, config: TargetConfig, gateway?: PlatformGateway): IntegrationAvailability;
|
|
148
|
+
export declare function getIntegrationAvailability(integration: TargetIntegration, config: TargetConfig, gateway?: PlatformGateway, capabilities?: PlatformCapabilities): IntegrationAvailability;
|
|
144
149
|
export declare function createTargetRuntimeSnapshot(input: {
|
|
145
150
|
readonly target: PlatformConfigTarget;
|
|
146
151
|
readonly configTarget?: string;
|