voltra 2.2.0 → 2.3.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/build/cjs/apply/index.js +4 -1
- package/build/cjs/apply/index.js.map +1 -1
- package/build/cjs/config/normalize.js +131 -29
- package/build/cjs/config/normalize.js.map +1 -1
- package/build/cjs/config/perConfiguration.js +29 -0
- package/build/cjs/config/perConfiguration.js.map +1 -0
- package/build/cjs/config/serverUpdate.js +119 -0
- package/build/cjs/config/serverUpdate.js.map +1 -0
- package/build/cjs/config/widgetKind.js +25 -0
- package/build/cjs/config/widgetKind.js.map +1 -0
- package/build/cjs/dependencies/platformPackages.js +9 -0
- package/build/cjs/dependencies/platformPackages.js.map +1 -1
- package/build/cjs/discovery/ios.js +50 -31
- package/build/cjs/discovery/ios.js.map +1 -1
- package/build/cjs/index.js +6 -2
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/platforms/android/generated.js +98 -40
- package/build/cjs/platforms/android/generated.js.map +1 -1
- package/build/cjs/platforms/android/widgetSizing.js +89 -0
- package/build/cjs/platforms/android/widgetSizing.js.map +1 -0
- package/build/cjs/platforms/ios/apply.js +21 -11
- package/build/cjs/platforms/ios/apply.js.map +1 -1
- package/build/cjs/platforms/ios/buildConfigurationValues.js +73 -0
- package/build/cjs/platforms/ios/buildConfigurationValues.js.map +1 -0
- package/build/cjs/platforms/ios/entitlements.js +34 -19
- package/build/cjs/platforms/ios/entitlements.js.map +1 -1
- package/build/cjs/platforms/ios/generated.js +79 -32
- package/build/cjs/platforms/ios/generated.js.map +1 -1
- package/build/cjs/platforms/ios/plist.js +22 -4
- package/build/cjs/platforms/ios/plist.js.map +1 -1
- package/build/cjs/platforms/ios/targetName.js.map +1 -1
- package/build/cjs/platforms/ios/xcodeTarget.js +166 -23
- package/build/cjs/platforms/ios/xcodeTarget.js.map +1 -1
- package/build/cjs/platforms/shared/widgetModule.js +18 -145
- package/build/cjs/platforms/shared/widgetModule.js.map +1 -1
- package/build/esm/apply/index.js +4 -1
- package/build/esm/apply/index.js.map +1 -1
- package/build/esm/config/normalize.js +131 -29
- package/build/esm/config/normalize.js.map +1 -1
- package/build/esm/config/perConfiguration.js +25 -0
- package/build/esm/config/perConfiguration.js.map +1 -0
- package/build/esm/config/serverUpdate.js +112 -0
- package/build/esm/config/serverUpdate.js.map +1 -0
- package/build/esm/config/widgetKind.js +20 -0
- package/build/esm/config/widgetKind.js.map +1 -0
- package/build/esm/dependencies/platformPackages.js +8 -0
- package/build/esm/dependencies/platformPackages.js.map +1 -1
- package/build/esm/discovery/ios.js +50 -31
- package/build/esm/discovery/ios.js.map +1 -1
- package/build/esm/index.js +1 -0
- package/build/esm/index.js.map +1 -1
- package/build/esm/platforms/android/generated.js +100 -42
- package/build/esm/platforms/android/generated.js.map +1 -1
- package/build/esm/platforms/android/widgetSizing.js +85 -0
- package/build/esm/platforms/android/widgetSizing.js.map +1 -0
- package/build/esm/platforms/ios/apply.js +21 -11
- package/build/esm/platforms/ios/apply.js.map +1 -1
- package/build/esm/platforms/ios/buildConfigurationValues.js +68 -0
- package/build/esm/platforms/ios/buildConfigurationValues.js.map +1 -0
- package/build/esm/platforms/ios/entitlements.js +34 -19
- package/build/esm/platforms/ios/entitlements.js.map +1 -1
- package/build/esm/platforms/ios/generated.js +80 -33
- package/build/esm/platforms/ios/generated.js.map +1 -1
- package/build/esm/platforms/ios/plist.js +22 -4
- package/build/esm/platforms/ios/plist.js.map +1 -1
- package/build/esm/platforms/ios/targetName.js.map +1 -1
- package/build/esm/platforms/ios/xcodeTarget.js +166 -23
- package/build/esm/platforms/ios/xcodeTarget.js.map +1 -1
- package/build/esm/platforms/shared/widgetModule.js +16 -107
- package/build/esm/platforms/shared/widgetModule.js.map +1 -1
- package/build/types/apply/index.d.ts.map +1 -1
- package/build/types/config/normalize.d.ts.map +1 -1
- package/build/types/config/perConfiguration.d.ts +18 -0
- package/build/types/config/perConfiguration.d.ts.map +1 -0
- package/build/types/config/serverUpdate.d.ts +80 -0
- package/build/types/config/serverUpdate.d.ts.map +1 -0
- package/build/types/config/types.d.ts +91 -30
- package/build/types/config/types.d.ts.map +1 -1
- package/build/types/config/widgetKind.d.ts +11 -0
- package/build/types/config/widgetKind.d.ts.map +1 -0
- package/build/types/dependencies/platformPackages.d.ts +1 -0
- package/build/types/dependencies/platformPackages.d.ts.map +1 -1
- package/build/types/discovery/ios.d.ts +10 -0
- package/build/types/discovery/ios.d.ts.map +1 -1
- package/build/types/index.d.ts +3 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/types/platforms/android/generated.d.ts.map +1 -1
- package/build/types/platforms/android/widgetSizing.d.ts +50 -0
- package/build/types/platforms/android/widgetSizing.d.ts.map +1 -0
- package/build/types/platforms/ios/apply.d.ts.map +1 -1
- package/build/types/platforms/ios/buildConfigurationValues.d.ts +33 -0
- package/build/types/platforms/ios/buildConfigurationValues.d.ts.map +1 -0
- package/build/types/platforms/ios/entitlements.d.ts +4 -4
- package/build/types/platforms/ios/entitlements.d.ts.map +1 -1
- package/build/types/platforms/ios/generated.d.ts +14 -2
- package/build/types/platforms/ios/generated.d.ts.map +1 -1
- package/build/types/platforms/ios/plist.d.ts +3 -3
- package/build/types/platforms/ios/plist.d.ts.map +1 -1
- package/build/types/platforms/ios/podfile.d.ts +2 -2
- package/build/types/platforms/ios/podfile.d.ts.map +1 -1
- package/build/types/platforms/ios/targetName.d.ts +2 -2
- package/build/types/platforms/ios/targetName.d.ts.map +1 -1
- package/build/types/platforms/ios/xcodeTarget.d.ts +4 -2
- package/build/types/platforms/ios/xcodeTarget.d.ts.map +1 -1
- package/build/types/platforms/shared/widgetModule.d.ts +12 -3
- package/build/types/platforms/shared/widgetModule.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/apply/index.ts +4 -1
- package/src/config/normalize.node.test.ts +61 -0
- package/src/config/normalize.ts +188 -44
- package/src/config/perConfiguration.ts +49 -0
- package/src/config/serverUpdate.ts +160 -0
- package/src/config/types.ts +97 -30
- package/src/config/widgetKind.node.test.ts +27 -0
- package/src/config/widgetKind.ts +27 -0
- package/src/dependencies/platformPackages.ts +11 -0
- package/src/discovery/ios.ts +104 -60
- package/src/index.ts +8 -0
- package/src/platforms/android/generated.ts +144 -47
- package/src/platforms/android/widgetSizing.ts +112 -0
- package/src/platforms/ios/apply.ts +21 -11
- package/src/platforms/ios/buildConfigurationValues.ts +105 -0
- package/src/platforms/ios/entitlements.ts +55 -31
- package/src/platforms/ios/generated.node.test.ts +61 -0
- package/src/platforms/ios/generated.ts +137 -38
- package/src/platforms/ios/plist.ts +36 -7
- package/src/platforms/ios/podfile.ts +2 -2
- package/src/platforms/ios/targetName.ts +2 -2
- package/src/platforms/ios/xcodeTarget.ts +248 -43
- package/src/platforms/shared/widgetModule.ts +22 -140
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import { resolveFromRoot } from '../fs/path';
|
|
3
3
|
import { CLI_DEFAULTS } from './defaults';
|
|
4
|
+
import { isPerConfigurationMap } from './perConfiguration';
|
|
5
|
+
import { resolveServerUpdateInterval, resolveServerUpdateUrl, validateServerUpdateRefresh } from './serverUpdate';
|
|
6
|
+
import { iosWidgetKind } from './widgetKind';
|
|
4
7
|
const VALID_IOS_WIDGET_FAMILIES = new Set([
|
|
5
8
|
'systemSmall',
|
|
6
9
|
'systemMedium',
|
|
@@ -30,6 +33,23 @@ function assertOptionalString(value, context) {
|
|
|
30
33
|
throw new VoltraConfigNormalizationError(`${context} must be a string`);
|
|
31
34
|
}
|
|
32
35
|
}
|
|
36
|
+
function assertOptionalPerConfigurationString(value, context) {
|
|
37
|
+
if (value === undefined || typeof value === 'string') {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (!isPerConfigurationMap(value)) {
|
|
41
|
+
throw new VoltraConfigNormalizationError(`${context} must be a string, or an object of strings keyed by build configuration name`);
|
|
42
|
+
}
|
|
43
|
+
const entries = Object.entries(value);
|
|
44
|
+
if (entries.length === 0) {
|
|
45
|
+
throw new VoltraConfigNormalizationError(`${context} must not be an empty object`);
|
|
46
|
+
}
|
|
47
|
+
for (const [buildConfigurationName, configurationValue] of entries) {
|
|
48
|
+
if (typeof configurationValue !== 'string' || !configurationValue.trim()) {
|
|
49
|
+
throw new VoltraConfigNormalizationError(`${context}.${buildConfigurationName} must be a non-empty string`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
33
53
|
function assertOptionalBoolean(value, context) {
|
|
34
54
|
if (value !== undefined && typeof value !== 'boolean') {
|
|
35
55
|
throw new VoltraConfigNormalizationError(`${context} must be a boolean`);
|
|
@@ -72,6 +92,18 @@ function resolveOptionalPathFromProjectRoot(projectRoot, filePath) {
|
|
|
72
92
|
}
|
|
73
93
|
return resolvePathFromProjectRoot(projectRoot, filePath);
|
|
74
94
|
}
|
|
95
|
+
function resolveOptionalPerConfigurationPath(projectRoot, filePath) {
|
|
96
|
+
if (!filePath) {
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|
|
99
|
+
if (!isPerConfigurationMap(filePath)) {
|
|
100
|
+
return resolvePathFromProjectRoot(projectRoot, filePath);
|
|
101
|
+
}
|
|
102
|
+
return Object.fromEntries(Object.entries(filePath).map(([buildConfigurationName, configurationPath]) => [
|
|
103
|
+
buildConfigurationName,
|
|
104
|
+
resolvePathFromProjectRoot(projectRoot, configurationPath),
|
|
105
|
+
]));
|
|
106
|
+
}
|
|
75
107
|
function isAbsoluteWidgetPath(value) {
|
|
76
108
|
return path.isAbsolute(value) || path.win32.isAbsolute(value) || /^[a-zA-Z]:[\\/]/.test(value);
|
|
77
109
|
}
|
|
@@ -201,30 +233,40 @@ function normalizeIOSAppIntent(value, context) {
|
|
|
201
233
|
});
|
|
202
234
|
return { parameters };
|
|
203
235
|
}
|
|
204
|
-
function normalizeServerUpdate(serverUpdate,
|
|
236
|
+
function normalizeServerUpdate(serverUpdate, options) {
|
|
237
|
+
const { context, hasEntry, defaultIntervalMinutes, defaultRefresh, minimumIntervalMinutes, warnings } = options;
|
|
205
238
|
assertObject(serverUpdate, context);
|
|
206
|
-
|
|
207
|
-
if (
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
239
|
+
const url = resolveServerUpdateUrl(serverUpdate.url, context);
|
|
240
|
+
if (url.kind === 'invalid') {
|
|
241
|
+
throw new VoltraConfigNormalizationError(url.error);
|
|
242
|
+
}
|
|
243
|
+
if (url.kind === 'insecure') {
|
|
244
|
+
warnings.push(url.warning);
|
|
245
|
+
}
|
|
246
|
+
const interval = resolveServerUpdateInterval({
|
|
247
|
+
intervalMinutes: serverUpdate.intervalMinutes,
|
|
248
|
+
context,
|
|
249
|
+
hasEntry,
|
|
250
|
+
defaultIntervalMinutes,
|
|
251
|
+
minimumIntervalMinutes,
|
|
252
|
+
});
|
|
253
|
+
if (interval.kind === 'invalid') {
|
|
254
|
+
throw new VoltraConfigNormalizationError(interval.error);
|
|
255
|
+
}
|
|
256
|
+
if (interval.kind === 'clamped') {
|
|
257
|
+
warnings.push(interval.warning);
|
|
217
258
|
}
|
|
218
|
-
|
|
219
|
-
|
|
259
|
+
const refreshError = validateServerUpdateRefresh(serverUpdate.refresh, context);
|
|
260
|
+
if (refreshError) {
|
|
261
|
+
throw new VoltraConfigNormalizationError(refreshError);
|
|
220
262
|
}
|
|
221
263
|
return {
|
|
222
264
|
url: serverUpdate.url,
|
|
223
|
-
intervalMinutes:
|
|
265
|
+
intervalMinutes: interval.intervalMinutes,
|
|
224
266
|
refresh: serverUpdate.refresh ?? defaultRefresh,
|
|
225
267
|
};
|
|
226
268
|
}
|
|
227
|
-
function normalizeAndroidWidget(projectRoot, widget) {
|
|
269
|
+
function normalizeAndroidWidget(projectRoot, widget, warnings) {
|
|
228
270
|
assertObject(widget, 'android.widgets[]');
|
|
229
271
|
assertNonEmptyString(widget.id, 'android.widgets[].id');
|
|
230
272
|
assertValidWidgetId(widget.id, 'android.widgets[].id');
|
|
@@ -232,6 +274,12 @@ function normalizeAndroidWidget(projectRoot, widget) {
|
|
|
232
274
|
assertPositiveInteger(widget.targetCellHeight, `android.widgets[${widget.id}].targetCellHeight`);
|
|
233
275
|
assertOptionalPositiveInteger(widget.minCellWidth, `android.widgets[${widget.id}].minCellWidth`);
|
|
234
276
|
assertOptionalPositiveInteger(widget.minCellHeight, `android.widgets[${widget.id}].minCellHeight`);
|
|
277
|
+
assertOptionalPositiveInteger(widget.minWidth, `android.widgets[${widget.id}].minWidth`);
|
|
278
|
+
assertOptionalPositiveInteger(widget.minHeight, `android.widgets[${widget.id}].minHeight`);
|
|
279
|
+
assertOptionalPositiveInteger(widget.minResizeWidth, `android.widgets[${widget.id}].minResizeWidth`);
|
|
280
|
+
assertOptionalPositiveInteger(widget.minResizeHeight, `android.widgets[${widget.id}].minResizeHeight`);
|
|
281
|
+
assertOptionalPositiveInteger(widget.maxResizeWidth, `android.widgets[${widget.id}].maxResizeWidth`);
|
|
282
|
+
assertOptionalPositiveInteger(widget.maxResizeHeight, `android.widgets[${widget.id}].maxResizeHeight`);
|
|
235
283
|
return {
|
|
236
284
|
...widget,
|
|
237
285
|
displayName: normalizeLabel(widget.displayName, `android.widgets[${widget.id}].displayName`),
|
|
@@ -242,14 +290,24 @@ function normalizeAndroidWidget(projectRoot, widget) {
|
|
|
242
290
|
previewLayout: resolveOptionalPathFromProjectRoot(projectRoot, widget.previewLayout),
|
|
243
291
|
appIntent: normalizeAndroidAppIntent(widget.appIntent, `android.widgets[${widget.id}].appIntent`),
|
|
244
292
|
serverUpdate: widget.serverUpdate
|
|
245
|
-
? normalizeServerUpdate(widget.serverUpdate,
|
|
293
|
+
? normalizeServerUpdate(widget.serverUpdate, {
|
|
294
|
+
context: `android.widgets[${widget.id}].serverUpdate`,
|
|
295
|
+
hasEntry: widget.entry !== undefined,
|
|
296
|
+
defaultIntervalMinutes: CLI_DEFAULTS.android.serverUpdateIntervalMinutes,
|
|
297
|
+
defaultRefresh: CLI_DEFAULTS.android.serverUpdateRefresh,
|
|
298
|
+
minimumIntervalMinutes: 15,
|
|
299
|
+
warnings,
|
|
300
|
+
})
|
|
246
301
|
: undefined,
|
|
247
302
|
};
|
|
248
303
|
}
|
|
249
|
-
function normalizeIOSWidget(projectRoot, widget) {
|
|
304
|
+
function normalizeIOSWidget(projectRoot, widget, warnings) {
|
|
250
305
|
assertObject(widget, 'ios.widgets[]');
|
|
251
306
|
assertNonEmptyString(widget.id, 'ios.widgets[].id');
|
|
252
307
|
assertValidWidgetId(widget.id, 'ios.widgets[].id');
|
|
308
|
+
if (widget.kind !== undefined) {
|
|
309
|
+
assertNonEmptyString(widget.kind, `ios.widgets[${widget.id}].kind`);
|
|
310
|
+
}
|
|
253
311
|
if (widget.supportedFamilies !== undefined) {
|
|
254
312
|
if (!Array.isArray(widget.supportedFamilies)) {
|
|
255
313
|
throw new VoltraConfigNormalizationError(`ios.widgets[${widget.id}].supportedFamilies must be an array`);
|
|
@@ -269,7 +327,14 @@ function normalizeIOSWidget(projectRoot, widget) {
|
|
|
269
327
|
initialStatePath: normalizeInitialStatePath(projectRoot, widget.initialStatePath, `ios.widgets[${widget.id}].initialStatePath`),
|
|
270
328
|
appIntent: normalizeIOSAppIntent(widget.appIntent, `ios.widgets[${widget.id}].appIntent`),
|
|
271
329
|
serverUpdate: widget.serverUpdate
|
|
272
|
-
? normalizeServerUpdate(widget.serverUpdate,
|
|
330
|
+
? normalizeServerUpdate(widget.serverUpdate, {
|
|
331
|
+
context: `ios.widgets[${widget.id}].serverUpdate`,
|
|
332
|
+
hasEntry: widget.entry !== undefined,
|
|
333
|
+
defaultIntervalMinutes: CLI_DEFAULTS.ios.serverUpdateIntervalMinutes,
|
|
334
|
+
defaultRefresh: CLI_DEFAULTS.ios.serverUpdateRefresh,
|
|
335
|
+
minimumIntervalMinutes: 1,
|
|
336
|
+
warnings,
|
|
337
|
+
})
|
|
273
338
|
: undefined,
|
|
274
339
|
};
|
|
275
340
|
}
|
|
@@ -282,6 +347,21 @@ function assertUniqueWidgetIds(widgetIds, context) {
|
|
|
282
347
|
seen.add(widgetId);
|
|
283
348
|
}
|
|
284
349
|
}
|
|
350
|
+
/**
|
|
351
|
+
* WidgetKit identifies a placed widget by extension bundle id + kind, so two widgets sharing a kind
|
|
352
|
+
* would fight over the same Home Screen instances. Compared after defaulting, which also catches a
|
|
353
|
+
* custom kind that collides with another widget's `Voltra_Widget_<id>`.
|
|
354
|
+
*/
|
|
355
|
+
function assertUniqueIOSWidgetKinds(widgets) {
|
|
356
|
+
const seen = new Set();
|
|
357
|
+
for (const widget of widgets) {
|
|
358
|
+
const kind = iosWidgetKind(widget);
|
|
359
|
+
if (seen.has(kind)) {
|
|
360
|
+
throw new VoltraConfigNormalizationError(`Duplicate ios widget kind '${kind}'`);
|
|
361
|
+
}
|
|
362
|
+
seen.add(kind);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
285
365
|
function assertValidWidgetId(widgetId, context) {
|
|
286
366
|
if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(widgetId)) {
|
|
287
367
|
throw new VoltraConfigNormalizationError(`${context} must start with a letter or underscore and contain only alphanumeric characters and underscores`);
|
|
@@ -292,7 +372,7 @@ function assertValidIOSTargetName(targetName, context) {
|
|
|
292
372
|
throw new VoltraConfigNormalizationError(`${context} must start with a letter and contain only letters, numbers, and underscores`);
|
|
293
373
|
}
|
|
294
374
|
}
|
|
295
|
-
function normalizeAndroidConfig(projectRoot, config) {
|
|
375
|
+
function normalizeAndroidConfig(warnings, projectRoot, config) {
|
|
296
376
|
if (config === undefined) {
|
|
297
377
|
return undefined;
|
|
298
378
|
}
|
|
@@ -310,7 +390,7 @@ function normalizeAndroidConfig(projectRoot, config) {
|
|
|
310
390
|
if (config.widgets !== undefined && !Array.isArray(config.widgets)) {
|
|
311
391
|
throw new VoltraConfigNormalizationError('android.widgets must be an array');
|
|
312
392
|
}
|
|
313
|
-
const widgets = (config.widgets ?? []).map((widget) => normalizeAndroidWidget(projectRoot, widget));
|
|
393
|
+
const widgets = (config.widgets ?? []).map((widget) => normalizeAndroidWidget(projectRoot, widget, warnings));
|
|
314
394
|
assertUniqueWidgetIds(widgets.map((widget) => widget.id), 'android');
|
|
315
395
|
return {
|
|
316
396
|
enableNotifications: config.enableNotifications ?? CLI_DEFAULTS.android.enableNotifications,
|
|
@@ -325,25 +405,25 @@ function normalizeAndroidConfig(projectRoot, config) {
|
|
|
325
405
|
},
|
|
326
406
|
};
|
|
327
407
|
}
|
|
328
|
-
function normalizeIOSConfig(projectRoot, config) {
|
|
408
|
+
function normalizeIOSConfig(warnings, projectRoot, config) {
|
|
329
409
|
if (config === undefined) {
|
|
330
410
|
return undefined;
|
|
331
411
|
}
|
|
332
412
|
assertObject(config, 'ios');
|
|
333
413
|
assertOptionalBoolean(config.enablePushNotifications, 'ios.enablePushNotifications');
|
|
334
|
-
|
|
414
|
+
assertOptionalPerConfigurationString(config.groupIdentifier, 'ios.groupIdentifier');
|
|
335
415
|
assertOptionalString(config.deploymentTarget, 'ios.deploymentTarget');
|
|
336
416
|
assertOptionalString(config.targetName, 'ios.targetName');
|
|
337
417
|
assertOptionalStringArray(config.fonts, 'ios.fonts');
|
|
338
418
|
assertOptionalString(config.userImagesPath, 'ios.userImagesPath');
|
|
339
|
-
|
|
419
|
+
assertOptionalPerConfigurationString(config.keychainGroup, 'ios.keychainGroup');
|
|
340
420
|
if (config.project !== undefined) {
|
|
341
421
|
assertObject(config.project, 'ios.project');
|
|
342
422
|
assertOptionalString(config.project.rootDir, 'ios.project.rootDir');
|
|
343
423
|
assertOptionalString(config.project.xcodeprojPath, 'ios.project.xcodeprojPath');
|
|
344
424
|
assertOptionalString(config.project.mainTargetName, 'ios.project.mainTargetName');
|
|
345
425
|
assertOptionalString(config.project.infoPlistPath, 'ios.project.infoPlistPath');
|
|
346
|
-
|
|
426
|
+
assertOptionalPerConfigurationString(config.project.entitlementsPath, 'ios.project.entitlementsPath');
|
|
347
427
|
assertOptionalString(config.project.podfilePath, 'ios.project.podfilePath');
|
|
348
428
|
}
|
|
349
429
|
if (config.widgets !== undefined && !Array.isArray(config.widgets)) {
|
|
@@ -352,8 +432,9 @@ function normalizeIOSConfig(projectRoot, config) {
|
|
|
352
432
|
if (config.targetName !== undefined) {
|
|
353
433
|
assertValidIOSTargetName(config.targetName, 'ios.targetName');
|
|
354
434
|
}
|
|
355
|
-
const widgets = (config.widgets ?? []).map((widget) => normalizeIOSWidget(projectRoot, widget));
|
|
435
|
+
const widgets = (config.widgets ?? []).map((widget) => normalizeIOSWidget(projectRoot, widget, warnings));
|
|
356
436
|
assertUniqueWidgetIds(widgets.map((widget) => widget.id), 'ios');
|
|
437
|
+
assertUniqueIOSWidgetKinds(widgets);
|
|
357
438
|
return {
|
|
358
439
|
enablePushNotifications: config.enablePushNotifications ?? CLI_DEFAULTS.ios.enablePushNotifications,
|
|
359
440
|
groupIdentifier: config.groupIdentifier,
|
|
@@ -368,7 +449,7 @@ function normalizeIOSConfig(projectRoot, config) {
|
|
|
368
449
|
xcodeprojPath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.xcodeprojPath),
|
|
369
450
|
mainTargetName: config.project?.mainTargetName,
|
|
370
451
|
infoPlistPath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.infoPlistPath),
|
|
371
|
-
entitlementsPath:
|
|
452
|
+
entitlementsPath: resolveOptionalPerConfigurationPath(projectRoot, config.project?.entitlementsPath),
|
|
372
453
|
podfilePath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.podfilePath),
|
|
373
454
|
},
|
|
374
455
|
};
|
|
@@ -377,12 +458,33 @@ export function normalizeVoltraConfig(loadedConfig) {
|
|
|
377
458
|
assertObject(loadedConfig.config, 'config');
|
|
378
459
|
assertOptionalString(loadedConfig.config.projectRoot, 'projectRoot');
|
|
379
460
|
const projectRoot = resolvePathFromProjectRoot(loadedConfig.configDir, loadedConfig.config.projectRoot ?? loadedConfig.configDir);
|
|
461
|
+
const warnings = [];
|
|
462
|
+
const android = normalizeAndroidConfig(warnings, projectRoot, loadedConfig.config.android);
|
|
463
|
+
const ios = normalizeIOSConfig(warnings, projectRoot, loadedConfig.config.ios);
|
|
464
|
+
assertServerDrivenDynamicWidgetsAreSupported(ios);
|
|
380
465
|
return {
|
|
381
466
|
configPath: loadedConfig.configPath,
|
|
382
467
|
configDir: loadedConfig.configDir,
|
|
383
468
|
projectRoot,
|
|
384
|
-
android
|
|
385
|
-
ios
|
|
469
|
+
android,
|
|
470
|
+
ios,
|
|
471
|
+
warnings,
|
|
386
472
|
};
|
|
387
473
|
}
|
|
474
|
+
/**
|
|
475
|
+
* A Dynamic Widget commits fetched props to the App Group so the widget extension can read them,
|
|
476
|
+
* so a server-driven one without a `groupIdentifier` would fetch and have nowhere to put the
|
|
477
|
+
* result.
|
|
478
|
+
*/
|
|
479
|
+
function assertServerDrivenDynamicWidgetsAreSupported(ios) {
|
|
480
|
+
if (ios === undefined || ios.groupIdentifier !== undefined) {
|
|
481
|
+
return;
|
|
482
|
+
}
|
|
483
|
+
for (const widget of ios.widgets) {
|
|
484
|
+
if (widget.entry !== undefined && widget.serverUpdate !== undefined) {
|
|
485
|
+
throw new VoltraConfigNormalizationError(`ios.widgets[${widget.id}] has both entry and serverUpdate, which requires ios.groupIdentifier ` +
|
|
486
|
+
'so fetched props can be shared with the widget extension.');
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
}
|
|
388
490
|
//# sourceMappingURL=normalize.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/config/normalize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/config/normalize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export function isPerConfigurationMap(value) {
|
|
2
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
3
|
+
}
|
|
4
|
+
/**
|
|
5
|
+
* Pairs a per-build-configuration value with the project's real build configurations, in the
|
|
6
|
+
* project's own order. Keys that name no build configuration, and build configurations the value
|
|
7
|
+
* does not cover, are reported before anything is written to the project.
|
|
8
|
+
*/
|
|
9
|
+
export function getValuesByBuildConfiguration(value, buildConfigurationNames, context, createError) {
|
|
10
|
+
const knownNames = `This project has: ${buildConfigurationNames.join(', ')}.`;
|
|
11
|
+
const unknownNames = Object.keys(value).filter((name) => !buildConfigurationNames.includes(name));
|
|
12
|
+
if (unknownNames.length > 0) {
|
|
13
|
+
throw createError(`${context} names unknown build configurations: ${unknownNames.join(', ')}. ${knownNames}`);
|
|
14
|
+
}
|
|
15
|
+
const valuesByBuildConfiguration = new Map();
|
|
16
|
+
for (const buildConfigurationName of buildConfigurationNames) {
|
|
17
|
+
const configurationValue = value[buildConfigurationName];
|
|
18
|
+
if (configurationValue === undefined) {
|
|
19
|
+
throw createError(`${context} has no value for build configuration '${buildConfigurationName}'. ${knownNames}`);
|
|
20
|
+
}
|
|
21
|
+
valuesByBuildConfiguration.set(buildConfigurationName, configurationValue);
|
|
22
|
+
}
|
|
23
|
+
return valuesByBuildConfiguration;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=perConfiguration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"perConfiguration.js","sourceRoot":"","sources":["../../../src/config/perConfiguration.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,qBAAqB,CACnC,KAA2C;IAE3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAA6B,EAC7B,uBAAiC,EACjC,OAAe,EACf,WAAuC;IAEvC,MAAM,UAAU,GAAG,qBAAqB,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;IAC7E,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IAEjG,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,CAAC,GAAG,OAAO,wCAAwC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC,CAAA;IAC/G,CAAC;IAED,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAkB,CAAA;IAE5D,KAAK,MAAM,sBAAsB,IAAI,uBAAuB,EAAE,CAAC;QAC7D,MAAM,kBAAkB,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAExD,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,WAAW,CAAC,GAAG,OAAO,0CAA0C,sBAAsB,MAAM,UAAU,EAAE,CAAC,CAAA;QACjH,CAAC;QAED,0BAA0B,CAAC,GAAG,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAA;IAC5E,CAAC;IAED,OAAO,0BAA0B,CAAA;AACnC,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Config rules for `serverUpdate`, shared by the Expo plugins and the `voltra` CLI.
|
|
3
|
+
*
|
|
4
|
+
* `serverUpdate` marks a widget as server-driven for both render engines. On a widget with
|
|
5
|
+
* `entry` the device fetches a JSON object and hands it to the bundled JS as props; without
|
|
6
|
+
* `entry` the server returns a full Voltra payload. Widgets without `entry` keep exactly the
|
|
7
|
+
* rules they had before ADR 0002, so no existing config breaks.
|
|
8
|
+
*
|
|
9
|
+
* `url` is optional. `serverUpdate: {}` means "server-driven, URL supplied at runtime" through
|
|
10
|
+
* `setWidgetServerUpdate`, which covers per-tenant backends whose URL is only known after login.
|
|
11
|
+
*
|
|
12
|
+
* These helpers report problems instead of throwing so each caller can raise its own error type.
|
|
13
|
+
*
|
|
14
|
+
* The `@use-voltra/expo-plugin` package holds the other copy of this module, shared by the
|
|
15
|
+
* Expo config plugins; keep the two in sync.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Interval floor and default for a widget with `entry`. WorkManager cannot run periodic work
|
|
19
|
+
* more often than every 15 minutes, and WidgetKit stretches timelines requested closer together
|
|
20
|
+
* than five minutes, so a smaller number would only mislead.
|
|
21
|
+
*/
|
|
22
|
+
export const DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES = 15;
|
|
23
|
+
/** Hosts allowed over plain `http`, for talking to a dev server from a simulator or emulator. */
|
|
24
|
+
const LOCAL_HTTP_HOSTS = new Set(['localhost', '127.0.0.1', '::1', '10.0.2.2', '10.0.3.2']);
|
|
25
|
+
/**
|
|
26
|
+
* Resolves the interval a widget should be scheduled on.
|
|
27
|
+
*
|
|
28
|
+
* A widget with `entry` is clamped up to {@link DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES}
|
|
29
|
+
* with a warning, because a shorter interval is not something either platform can honour. A
|
|
30
|
+
* payload widget keeps the platform's existing rule and is rejected below the floor.
|
|
31
|
+
*/
|
|
32
|
+
export function resolveServerUpdateInterval(options) {
|
|
33
|
+
const { intervalMinutes, context, hasEntry, defaultIntervalMinutes, minimumIntervalMinutes } = options;
|
|
34
|
+
const fallback = hasEntry ? DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES : defaultIntervalMinutes;
|
|
35
|
+
if (intervalMinutes === undefined) {
|
|
36
|
+
return { kind: 'ok', intervalMinutes: fallback };
|
|
37
|
+
}
|
|
38
|
+
if (typeof intervalMinutes !== 'number' || !Number.isFinite(intervalMinutes)) {
|
|
39
|
+
return { kind: 'invalid', error: `${context}.intervalMinutes must be a number` };
|
|
40
|
+
}
|
|
41
|
+
if (!Number.isInteger(intervalMinutes)) {
|
|
42
|
+
return { kind: 'invalid', error: `${context}.intervalMinutes must be an integer` };
|
|
43
|
+
}
|
|
44
|
+
if (hasEntry) {
|
|
45
|
+
if (intervalMinutes < DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES) {
|
|
46
|
+
return {
|
|
47
|
+
kind: 'clamped',
|
|
48
|
+
intervalMinutes: DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES,
|
|
49
|
+
warning: `${context}.intervalMinutes is ${intervalMinutes}, below the ` +
|
|
50
|
+
`${DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES} minute floor for widgets with an entry. ` +
|
|
51
|
+
`Using ${DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES}.`,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return { kind: 'ok', intervalMinutes };
|
|
55
|
+
}
|
|
56
|
+
if (intervalMinutes < minimumIntervalMinutes) {
|
|
57
|
+
return { kind: 'invalid', error: `${context}.intervalMinutes must be at least ${minimumIntervalMinutes}` };
|
|
58
|
+
}
|
|
59
|
+
return { kind: 'ok', intervalMinutes };
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Checks `serverUpdate.url`. An absent URL is fine — the app supplies it at runtime through
|
|
63
|
+
* `setWidgetServerUpdate`.
|
|
64
|
+
*
|
|
65
|
+
* A URL that is not an absolute `http`/`https` URL is rejected: no platform HTTP stack here
|
|
66
|
+
* accepts one, so such a config could only ever have failed to fetch. Plain `http` to a
|
|
67
|
+
* non-local host is reported as insecure rather than rejected — App Transport Security and
|
|
68
|
+
* Android's cleartext policy already block it in a release build, and rejecting it outright
|
|
69
|
+
* would break configs that point at a LAN dev server.
|
|
70
|
+
*/
|
|
71
|
+
export function resolveServerUpdateUrl(url, context) {
|
|
72
|
+
if (url === undefined) {
|
|
73
|
+
return { kind: 'ok' };
|
|
74
|
+
}
|
|
75
|
+
if (typeof url !== 'string' || !url.trim()) {
|
|
76
|
+
return { kind: 'invalid', error: `${context}.url must be a non-empty string` };
|
|
77
|
+
}
|
|
78
|
+
let parsed;
|
|
79
|
+
try {
|
|
80
|
+
parsed = new URL(url);
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return { kind: 'invalid', error: `${context}.url must be an absolute http(s) URL, received '${url}'` };
|
|
84
|
+
}
|
|
85
|
+
if (parsed.protocol === 'https:') {
|
|
86
|
+
return { kind: 'ok' };
|
|
87
|
+
}
|
|
88
|
+
if (parsed.protocol !== 'http:') {
|
|
89
|
+
return { kind: 'invalid', error: `${context}.url must be an absolute http(s) URL, received '${url}'` };
|
|
90
|
+
}
|
|
91
|
+
if (isLocalHttpHost(parsed.hostname)) {
|
|
92
|
+
return { kind: 'ok' };
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
kind: 'insecure',
|
|
96
|
+
warning: `${context}.url uses plain http ('${url}'). Release builds block cleartext traffic, so the ` +
|
|
97
|
+
'widget will not fetch outside a development build. Use https, or a local dev host ' +
|
|
98
|
+
`(${[...LOCAL_HTTP_HOSTS].join(', ')}).`,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
/** True for the hosts Voltra allows over plain `http` — dev servers reachable from a simulator. */
|
|
102
|
+
export function isLocalHttpHost(hostname) {
|
|
103
|
+
return LOCAL_HTTP_HOSTS.has(hostname.replace(/^\[|\]$/g, ''));
|
|
104
|
+
}
|
|
105
|
+
/** Validates `serverUpdate.refresh`. Returns an error message, or `undefined` when it is fine. */
|
|
106
|
+
export function validateServerUpdateRefresh(refresh, context) {
|
|
107
|
+
if (refresh !== undefined && typeof refresh !== 'boolean') {
|
|
108
|
+
return `${context}.refresh must be a boolean`;
|
|
109
|
+
}
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=serverUpdate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverUpdate.js","sourceRoot":"","sources":["../../../src/config/serverUpdate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Default prefix of a widget's WidgetKit `kind`: `Voltra_Widget_<id>`. Mirrors `VoltraStorageKeys.widgetKindPrefix`. */
|
|
2
|
+
export const IOS_WIDGET_KIND_PREFIX = 'Voltra_Widget_';
|
|
3
|
+
/** WidgetKit `kind` of a widget: the `kind` option when set, else `Voltra_Widget_<id>`. */
|
|
4
|
+
export function iosWidgetKind(widget) {
|
|
5
|
+
return widget.kind ?? `${IOS_WIDGET_KIND_PREFIX}${widget.id}`;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* `{ id: kind }` for the widgets that pin a custom `kind`, or undefined when none does.
|
|
9
|
+
* Written to both Info.plists (`Voltra_WidgetKinds`) so native code maps ids to kinds and back.
|
|
10
|
+
*/
|
|
11
|
+
export function iosWidgetKindOverrides(widgets) {
|
|
12
|
+
const overrides = {};
|
|
13
|
+
for (const widget of widgets) {
|
|
14
|
+
if (widget.kind !== undefined) {
|
|
15
|
+
overrides[widget.id] = widget.kind;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return Object.keys(overrides).length > 0 ? overrides : undefined;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=widgetKind.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widgetKind.js","sourceRoot":"","sources":["../../../src/config/widgetKind.ts"],"names":[],"mappings":"AAEA,yHAAyH;AACzH,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CAAA;AAEtD,2FAA2F;AAC3F,MAAM,UAAU,aAAa,CAAC,MAA4C;IACxE,OAAO,MAAM,CAAC,IAAI,IAAI,GAAG,sBAAsB,GAAG,MAAM,CAAC,EAAE,EAAE,CAAA;AAC/D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAA+C;IAE/C,MAAM,SAAS,GAA2B,EAAE,CAAA;IAE5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAA;QACpC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;AAClE,CAAC"}
|
|
@@ -25,6 +25,14 @@ export function getMissingPlatformPackages(projectRoot, platform) {
|
|
|
25
25
|
export function requirePlatformPackage(projectRoot, platform) {
|
|
26
26
|
return createProjectRequire(projectRoot)(getPlatformPackageName(platform));
|
|
27
27
|
}
|
|
28
|
+
export function getPlatformClientPackageVersion(projectRoot, platform) {
|
|
29
|
+
const packageName = getPlatformClientPackageName(platform);
|
|
30
|
+
const manifest = createProjectRequire(projectRoot)(`${packageName}/package.json`);
|
|
31
|
+
if (typeof manifest.version !== 'string' || manifest.version.length === 0) {
|
|
32
|
+
throw new Error(`Package ${packageName} does not declare a valid version.`);
|
|
33
|
+
}
|
|
34
|
+
return manifest.version;
|
|
35
|
+
}
|
|
28
36
|
export function getMissingPlatformPackageMessage(platform, packageNames = getRequiredPlatformPackageNames(platform)) {
|
|
29
37
|
const packageLabel = packageNames.length === 1 ? 'package' : 'packages';
|
|
30
38
|
const verb = packageNames.length === 1 ? 'is' : 'are';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformPackages.js","sourceRoot":"","sources":["../../../src/dependencies/platformPackages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platformPackages.js","sourceRoot":"","sources":["../../../src/dependencies/platformPackages.ts"],"names":[],"mappings":"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"}
|