voltra 2.2.0 → 2.3.1

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.
Files changed (138) hide show
  1. package/build/cjs/apply/index.js +6 -1
  2. package/build/cjs/apply/index.js.map +1 -1
  3. package/build/cjs/config/normalize.js +150 -31
  4. package/build/cjs/config/normalize.js.map +1 -1
  5. package/build/cjs/config/perConfiguration.js +29 -0
  6. package/build/cjs/config/perConfiguration.js.map +1 -0
  7. package/build/cjs/config/serverUpdate.js +119 -0
  8. package/build/cjs/config/serverUpdate.js.map +1 -0
  9. package/build/cjs/config/widgetKind.js +25 -0
  10. package/build/cjs/config/widgetKind.js.map +1 -0
  11. package/build/cjs/dependencies/platformPackages.js +9 -0
  12. package/build/cjs/dependencies/platformPackages.js.map +1 -1
  13. package/build/cjs/discovery/ios.js +50 -31
  14. package/build/cjs/discovery/ios.js.map +1 -1
  15. package/build/cjs/discovery/metro.js +52 -0
  16. package/build/cjs/discovery/metro.js.map +1 -0
  17. package/build/cjs/index.js +6 -2
  18. package/build/cjs/index.js.map +1 -1
  19. package/build/cjs/platforms/android/generated.js +98 -40
  20. package/build/cjs/platforms/android/generated.js.map +1 -1
  21. package/build/cjs/platforms/android/widgetSizing.js +89 -0
  22. package/build/cjs/platforms/android/widgetSizing.js.map +1 -0
  23. package/build/cjs/platforms/ios/apply.js +21 -11
  24. package/build/cjs/platforms/ios/apply.js.map +1 -1
  25. package/build/cjs/platforms/ios/buildConfigurationValues.js +73 -0
  26. package/build/cjs/platforms/ios/buildConfigurationValues.js.map +1 -0
  27. package/build/cjs/platforms/ios/entitlements.js +34 -19
  28. package/build/cjs/platforms/ios/entitlements.js.map +1 -1
  29. package/build/cjs/platforms/ios/generated.js +79 -32
  30. package/build/cjs/platforms/ios/generated.js.map +1 -1
  31. package/build/cjs/platforms/ios/plist.js +22 -4
  32. package/build/cjs/platforms/ios/plist.js.map +1 -1
  33. package/build/cjs/platforms/ios/targetName.js.map +1 -1
  34. package/build/cjs/platforms/ios/xcodeTarget.js +166 -23
  35. package/build/cjs/platforms/ios/xcodeTarget.js.map +1 -1
  36. package/build/cjs/platforms/shared/widgetModule.js +18 -145
  37. package/build/cjs/platforms/shared/widgetModule.js.map +1 -1
  38. package/build/esm/apply/index.js +6 -1
  39. package/build/esm/apply/index.js.map +1 -1
  40. package/build/esm/config/normalize.js +150 -31
  41. package/build/esm/config/normalize.js.map +1 -1
  42. package/build/esm/config/perConfiguration.js +25 -0
  43. package/build/esm/config/perConfiguration.js.map +1 -0
  44. package/build/esm/config/serverUpdate.js +112 -0
  45. package/build/esm/config/serverUpdate.js.map +1 -0
  46. package/build/esm/config/widgetKind.js +20 -0
  47. package/build/esm/config/widgetKind.js.map +1 -0
  48. package/build/esm/dependencies/platformPackages.js +8 -0
  49. package/build/esm/dependencies/platformPackages.js.map +1 -1
  50. package/build/esm/discovery/ios.js +50 -31
  51. package/build/esm/discovery/ios.js.map +1 -1
  52. package/build/esm/discovery/metro.js +46 -0
  53. package/build/esm/discovery/metro.js.map +1 -0
  54. package/build/esm/index.js +1 -0
  55. package/build/esm/index.js.map +1 -1
  56. package/build/esm/platforms/android/generated.js +100 -42
  57. package/build/esm/platforms/android/generated.js.map +1 -1
  58. package/build/esm/platforms/android/widgetSizing.js +85 -0
  59. package/build/esm/platforms/android/widgetSizing.js.map +1 -0
  60. package/build/esm/platforms/ios/apply.js +21 -11
  61. package/build/esm/platforms/ios/apply.js.map +1 -1
  62. package/build/esm/platforms/ios/buildConfigurationValues.js +68 -0
  63. package/build/esm/platforms/ios/buildConfigurationValues.js.map +1 -0
  64. package/build/esm/platforms/ios/entitlements.js +34 -19
  65. package/build/esm/platforms/ios/entitlements.js.map +1 -1
  66. package/build/esm/platforms/ios/generated.js +80 -33
  67. package/build/esm/platforms/ios/generated.js.map +1 -1
  68. package/build/esm/platforms/ios/plist.js +22 -4
  69. package/build/esm/platforms/ios/plist.js.map +1 -1
  70. package/build/esm/platforms/ios/targetName.js.map +1 -1
  71. package/build/esm/platforms/ios/xcodeTarget.js +166 -23
  72. package/build/esm/platforms/ios/xcodeTarget.js.map +1 -1
  73. package/build/esm/platforms/shared/widgetModule.js +16 -107
  74. package/build/esm/platforms/shared/widgetModule.js.map +1 -1
  75. package/build/types/apply/index.d.ts.map +1 -1
  76. package/build/types/config/normalize.d.ts.map +1 -1
  77. package/build/types/config/perConfiguration.d.ts +18 -0
  78. package/build/types/config/perConfiguration.d.ts.map +1 -0
  79. package/build/types/config/serverUpdate.d.ts +80 -0
  80. package/build/types/config/serverUpdate.d.ts.map +1 -0
  81. package/build/types/config/types.d.ts +91 -30
  82. package/build/types/config/types.d.ts.map +1 -1
  83. package/build/types/config/widgetKind.d.ts +11 -0
  84. package/build/types/config/widgetKind.d.ts.map +1 -0
  85. package/build/types/dependencies/platformPackages.d.ts +1 -0
  86. package/build/types/dependencies/platformPackages.d.ts.map +1 -1
  87. package/build/types/discovery/ios.d.ts +10 -0
  88. package/build/types/discovery/ios.d.ts.map +1 -1
  89. package/build/types/discovery/metro.d.ts +21 -0
  90. package/build/types/discovery/metro.d.ts.map +1 -0
  91. package/build/types/index.d.ts +3 -1
  92. package/build/types/index.d.ts.map +1 -1
  93. package/build/types/platforms/android/generated.d.ts.map +1 -1
  94. package/build/types/platforms/android/widgetSizing.d.ts +50 -0
  95. package/build/types/platforms/android/widgetSizing.d.ts.map +1 -0
  96. package/build/types/platforms/ios/apply.d.ts.map +1 -1
  97. package/build/types/platforms/ios/buildConfigurationValues.d.ts +33 -0
  98. package/build/types/platforms/ios/buildConfigurationValues.d.ts.map +1 -0
  99. package/build/types/platforms/ios/entitlements.d.ts +4 -4
  100. package/build/types/platforms/ios/entitlements.d.ts.map +1 -1
  101. package/build/types/platforms/ios/generated.d.ts +14 -2
  102. package/build/types/platforms/ios/generated.d.ts.map +1 -1
  103. package/build/types/platforms/ios/plist.d.ts +3 -3
  104. package/build/types/platforms/ios/plist.d.ts.map +1 -1
  105. package/build/types/platforms/ios/podfile.d.ts +2 -2
  106. package/build/types/platforms/ios/podfile.d.ts.map +1 -1
  107. package/build/types/platforms/ios/targetName.d.ts +2 -2
  108. package/build/types/platforms/ios/targetName.d.ts.map +1 -1
  109. package/build/types/platforms/ios/xcodeTarget.d.ts +4 -2
  110. package/build/types/platforms/ios/xcodeTarget.d.ts.map +1 -1
  111. package/build/types/platforms/shared/widgetModule.d.ts +12 -3
  112. package/build/types/platforms/shared/widgetModule.d.ts.map +1 -1
  113. package/package.json +5 -5
  114. package/src/apply/index.ts +6 -1
  115. package/src/config/normalize.node.test.ts +105 -0
  116. package/src/config/normalize.ts +217 -45
  117. package/src/config/perConfiguration.ts +49 -0
  118. package/src/config/serverUpdate.ts +160 -0
  119. package/src/config/types.ts +97 -30
  120. package/src/config/widgetKind.node.test.ts +27 -0
  121. package/src/config/widgetKind.ts +27 -0
  122. package/src/dependencies/platformPackages.ts +11 -0
  123. package/src/discovery/ios.ts +104 -60
  124. package/src/discovery/metro.node.test.ts +91 -0
  125. package/src/discovery/metro.ts +54 -0
  126. package/src/index.ts +8 -0
  127. package/src/platforms/android/generated.ts +144 -47
  128. package/src/platforms/android/widgetSizing.ts +112 -0
  129. package/src/platforms/ios/apply.ts +21 -11
  130. package/src/platforms/ios/buildConfigurationValues.ts +105 -0
  131. package/src/platforms/ios/entitlements.ts +55 -31
  132. package/src/platforms/ios/generated.node.test.ts +61 -0
  133. package/src/platforms/ios/generated.ts +137 -38
  134. package/src/platforms/ios/plist.ts +36 -7
  135. package/src/platforms/ios/podfile.ts +2 -2
  136. package/src/platforms/ios/targetName.ts +2 -2
  137. package/src/platforms/ios/xcodeTarget.ts +248 -43
  138. package/src/platforms/shared/widgetModule.ts +22 -140
@@ -15,6 +15,7 @@ const apply_1 = require("../platforms/android/apply");
15
15
  const apply_2 = require("../platforms/ios/apply");
16
16
  const clack_1 = require("../reporting/clack");
17
17
  const summary_1 = require("../reporting/summary");
18
+ const metro_1 = require("../discovery/metro");
18
19
  const diff_1 = require("../state/diff");
19
20
  const load_2 = require("../state/load");
20
21
  const save_1 = require("../state/save");
@@ -59,7 +60,11 @@ async function runApplyPipeline(options, dependencies) {
59
60
  const stateDiff = (0, diff_1.diffVoltraState)(previousState, nextGeneratedFiles);
60
61
  const deletedChanges = await removeStaleGeneratedFiles(normalizedConfig.projectRoot, stateDiff.staleFiles);
61
62
  await (0, save_1.saveVoltraState)(normalizedConfig.projectRoot, { files: stateDiff.nextFiles });
62
- const summaryWarnings = platformResults.flatMap((result) => result.warnings ?? []).filter(isDefined);
63
+ const summaryWarnings = [
64
+ ...(normalizedConfig.warnings ?? []),
65
+ ...platformResults.flatMap((result) => result.warnings ?? []),
66
+ (0, metro_1.findMissingMetroPackageWarning)(normalizedConfig),
67
+ ].filter(isDefined);
63
68
  const summaryChanges = [...platformResults.flatMap((result) => result.changes), ...deletedChanges];
64
69
  await resolvedDependencies.writeSummary({ changes: summaryChanges, warnings: summaryWarnings });
65
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/apply/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/apply/index.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,9 @@ exports.normalizeVoltraConfig = normalizeVoltraConfig;
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const path_1 = require("../fs/path");
10
10
  const defaults_1 = require("./defaults");
11
+ const perConfiguration_1 = require("./perConfiguration");
12
+ const serverUpdate_1 = require("./serverUpdate");
13
+ const widgetKind_1 = require("./widgetKind");
11
14
  const VALID_IOS_WIDGET_FAMILIES = new Set([
12
15
  'systemSmall',
13
16
  'systemMedium',
@@ -38,6 +41,23 @@ function assertOptionalString(value, context) {
38
41
  throw new VoltraConfigNormalizationError(`${context} must be a string`);
39
42
  }
40
43
  }
44
+ function assertOptionalPerConfigurationString(value, context) {
45
+ if (value === undefined || typeof value === 'string') {
46
+ return;
47
+ }
48
+ if (!(0, perConfiguration_1.isPerConfigurationMap)(value)) {
49
+ throw new VoltraConfigNormalizationError(`${context} must be a string, or an object of strings keyed by build configuration name`);
50
+ }
51
+ const entries = Object.entries(value);
52
+ if (entries.length === 0) {
53
+ throw new VoltraConfigNormalizationError(`${context} must not be an empty object`);
54
+ }
55
+ for (const [buildConfigurationName, configurationValue] of entries) {
56
+ if (typeof configurationValue !== 'string' || !configurationValue.trim()) {
57
+ throw new VoltraConfigNormalizationError(`${context}.${buildConfigurationName} must be a non-empty string`);
58
+ }
59
+ }
60
+ }
41
61
  function assertOptionalBoolean(value, context) {
42
62
  if (value !== undefined && typeof value !== 'boolean') {
43
63
  throw new VoltraConfigNormalizationError(`${context} must be a boolean`);
@@ -80,6 +100,18 @@ function resolveOptionalPathFromProjectRoot(projectRoot, filePath) {
80
100
  }
81
101
  return resolvePathFromProjectRoot(projectRoot, filePath);
82
102
  }
103
+ function resolveOptionalPerConfigurationPath(projectRoot, filePath) {
104
+ if (!filePath) {
105
+ return undefined;
106
+ }
107
+ if (!(0, perConfiguration_1.isPerConfigurationMap)(filePath)) {
108
+ return resolvePathFromProjectRoot(projectRoot, filePath);
109
+ }
110
+ return Object.fromEntries(Object.entries(filePath).map(([buildConfigurationName, configurationPath]) => [
111
+ buildConfigurationName,
112
+ resolvePathFromProjectRoot(projectRoot, configurationPath),
113
+ ]));
114
+ }
83
115
  function isAbsoluteWidgetPath(value) {
84
116
  return node_path_1.default.isAbsolute(value) || node_path_1.default.win32.isAbsolute(value) || /^[a-zA-Z]:[\\/]/.test(value);
85
117
  }
@@ -209,30 +241,53 @@ function normalizeIOSAppIntent(value, context) {
209
241
  });
210
242
  return { parameters };
211
243
  }
212
- function normalizeServerUpdate(serverUpdate, context, defaultIntervalMinutes, defaultRefresh, minimumIntervalMinutes) {
244
+ /**
245
+ * `appIntent` only reaches the generated project through the `clientRendered` branches, so on a
246
+ * widget with no `entry` every parameter is dropped: no configuration defaults are emitted, the
247
+ * receiver stays payload-driven, and `getWidgetConfiguration` rejects it at runtime. Generate time
248
+ * is the only place that can still say so.
249
+ */
250
+ function warnOnAppIntentWithoutEntry(appIntent, hasEntry, context, warnings) {
251
+ if (hasEntry || !appIntent || appIntent.parameters.length === 0) {
252
+ return;
253
+ }
254
+ warnings.push(`${context}.appIntent is ignored because the widget has no 'entry'. Configuration parameters ` +
255
+ `only apply to Dynamic Widgets. Add an 'entry' to make this one, or drop 'appIntent'.`);
256
+ }
257
+ function normalizeServerUpdate(serverUpdate, options) {
258
+ const { context, hasEntry, defaultIntervalMinutes, defaultRefresh, minimumIntervalMinutes, warnings } = options;
213
259
  assertObject(serverUpdate, context);
214
- assertNonEmptyString(serverUpdate.url, `${context}.url`);
215
- if (serverUpdate.intervalMinutes !== undefined) {
216
- if (typeof serverUpdate.intervalMinutes !== 'number' || !Number.isFinite(serverUpdate.intervalMinutes)) {
217
- throw new VoltraConfigNormalizationError(`${context}.intervalMinutes must be a number`);
218
- }
219
- if (!Number.isInteger(serverUpdate.intervalMinutes)) {
220
- throw new VoltraConfigNormalizationError(`${context}.intervalMinutes must be an integer`);
221
- }
222
- if (serverUpdate.intervalMinutes < minimumIntervalMinutes) {
223
- throw new VoltraConfigNormalizationError(`${context}.intervalMinutes must be at least ${minimumIntervalMinutes}`);
224
- }
260
+ const url = (0, serverUpdate_1.resolveServerUpdateUrl)(serverUpdate.url, context);
261
+ if (url.kind === 'invalid') {
262
+ throw new VoltraConfigNormalizationError(url.error);
263
+ }
264
+ if (url.kind === 'insecure') {
265
+ warnings.push(url.warning);
266
+ }
267
+ const interval = (0, serverUpdate_1.resolveServerUpdateInterval)({
268
+ intervalMinutes: serverUpdate.intervalMinutes,
269
+ context,
270
+ hasEntry,
271
+ defaultIntervalMinutes,
272
+ minimumIntervalMinutes,
273
+ });
274
+ if (interval.kind === 'invalid') {
275
+ throw new VoltraConfigNormalizationError(interval.error);
276
+ }
277
+ if (interval.kind === 'clamped') {
278
+ warnings.push(interval.warning);
225
279
  }
226
- if (serverUpdate.refresh !== undefined && typeof serverUpdate.refresh !== 'boolean') {
227
- throw new VoltraConfigNormalizationError(`${context}.refresh must be a boolean`);
280
+ const refreshError = (0, serverUpdate_1.validateServerUpdateRefresh)(serverUpdate.refresh, context);
281
+ if (refreshError) {
282
+ throw new VoltraConfigNormalizationError(refreshError);
228
283
  }
229
284
  return {
230
285
  url: serverUpdate.url,
231
- intervalMinutes: serverUpdate.intervalMinutes ?? defaultIntervalMinutes,
286
+ intervalMinutes: interval.intervalMinutes,
232
287
  refresh: serverUpdate.refresh ?? defaultRefresh,
233
288
  };
234
289
  }
235
- function normalizeAndroidWidget(projectRoot, widget) {
290
+ function normalizeAndroidWidget(projectRoot, widget, warnings) {
236
291
  assertObject(widget, 'android.widgets[]');
237
292
  assertNonEmptyString(widget.id, 'android.widgets[].id');
238
293
  assertValidWidgetId(widget.id, 'android.widgets[].id');
@@ -240,6 +295,14 @@ function normalizeAndroidWidget(projectRoot, widget) {
240
295
  assertPositiveInteger(widget.targetCellHeight, `android.widgets[${widget.id}].targetCellHeight`);
241
296
  assertOptionalPositiveInteger(widget.minCellWidth, `android.widgets[${widget.id}].minCellWidth`);
242
297
  assertOptionalPositiveInteger(widget.minCellHeight, `android.widgets[${widget.id}].minCellHeight`);
298
+ assertOptionalPositiveInteger(widget.minWidth, `android.widgets[${widget.id}].minWidth`);
299
+ assertOptionalPositiveInteger(widget.minHeight, `android.widgets[${widget.id}].minHeight`);
300
+ assertOptionalPositiveInteger(widget.minResizeWidth, `android.widgets[${widget.id}].minResizeWidth`);
301
+ assertOptionalPositiveInteger(widget.minResizeHeight, `android.widgets[${widget.id}].minResizeHeight`);
302
+ assertOptionalPositiveInteger(widget.maxResizeWidth, `android.widgets[${widget.id}].maxResizeWidth`);
303
+ assertOptionalPositiveInteger(widget.maxResizeHeight, `android.widgets[${widget.id}].maxResizeHeight`);
304
+ const androidAppIntent = normalizeAndroidAppIntent(widget.appIntent, `android.widgets[${widget.id}].appIntent`);
305
+ warnOnAppIntentWithoutEntry(androidAppIntent, widget.entry !== undefined, `android.widgets[${widget.id}]`, warnings);
243
306
  return {
244
307
  ...widget,
245
308
  displayName: normalizeLabel(widget.displayName, `android.widgets[${widget.id}].displayName`),
@@ -248,16 +311,26 @@ function normalizeAndroidWidget(projectRoot, widget) {
248
311
  initialStatePath: normalizeInitialStatePath(projectRoot, widget.initialStatePath, `android.widgets[${widget.id}].initialStatePath`),
249
312
  previewImage: resolveOptionalPathFromProjectRoot(projectRoot, widget.previewImage),
250
313
  previewLayout: resolveOptionalPathFromProjectRoot(projectRoot, widget.previewLayout),
251
- appIntent: normalizeAndroidAppIntent(widget.appIntent, `android.widgets[${widget.id}].appIntent`),
314
+ appIntent: androidAppIntent,
252
315
  serverUpdate: widget.serverUpdate
253
- ? normalizeServerUpdate(widget.serverUpdate, `android.widgets[${widget.id}].serverUpdate`, defaults_1.CLI_DEFAULTS.android.serverUpdateIntervalMinutes, defaults_1.CLI_DEFAULTS.android.serverUpdateRefresh, 15)
316
+ ? normalizeServerUpdate(widget.serverUpdate, {
317
+ context: `android.widgets[${widget.id}].serverUpdate`,
318
+ hasEntry: widget.entry !== undefined,
319
+ defaultIntervalMinutes: defaults_1.CLI_DEFAULTS.android.serverUpdateIntervalMinutes,
320
+ defaultRefresh: defaults_1.CLI_DEFAULTS.android.serverUpdateRefresh,
321
+ minimumIntervalMinutes: 15,
322
+ warnings,
323
+ })
254
324
  : undefined,
255
325
  };
256
326
  }
257
- function normalizeIOSWidget(projectRoot, widget) {
327
+ function normalizeIOSWidget(projectRoot, widget, warnings) {
258
328
  assertObject(widget, 'ios.widgets[]');
259
329
  assertNonEmptyString(widget.id, 'ios.widgets[].id');
260
330
  assertValidWidgetId(widget.id, 'ios.widgets[].id');
331
+ if (widget.kind !== undefined) {
332
+ assertNonEmptyString(widget.kind, `ios.widgets[${widget.id}].kind`);
333
+ }
261
334
  if (widget.supportedFamilies !== undefined) {
262
335
  if (!Array.isArray(widget.supportedFamilies)) {
263
336
  throw new VoltraConfigNormalizationError(`ios.widgets[${widget.id}].supportedFamilies must be an array`);
@@ -268,6 +341,8 @@ function normalizeIOSWidget(projectRoot, widget) {
268
341
  }
269
342
  }
270
343
  }
344
+ const iosAppIntent = normalizeIOSAppIntent(widget.appIntent, `ios.widgets[${widget.id}].appIntent`);
345
+ warnOnAppIntentWithoutEntry(iosAppIntent, widget.entry !== undefined, `ios.widgets[${widget.id}]`, warnings);
271
346
  return {
272
347
  ...widget,
273
348
  displayName: normalizeLabel(widget.displayName, `ios.widgets[${widget.id}].displayName`),
@@ -275,9 +350,16 @@ function normalizeIOSWidget(projectRoot, widget) {
275
350
  supportedFamilies: widget.supportedFamilies ?? [...defaults_1.CLI_DEFAULTS.ios.widgetFamilies],
276
351
  entry: normalizeOptionalWidgetEntry(widget.entry, `ios.widgets[${widget.id}].entry`),
277
352
  initialStatePath: normalizeInitialStatePath(projectRoot, widget.initialStatePath, `ios.widgets[${widget.id}].initialStatePath`),
278
- appIntent: normalizeIOSAppIntent(widget.appIntent, `ios.widgets[${widget.id}].appIntent`),
353
+ appIntent: iosAppIntent,
279
354
  serverUpdate: widget.serverUpdate
280
- ? normalizeServerUpdate(widget.serverUpdate, `ios.widgets[${widget.id}].serverUpdate`, defaults_1.CLI_DEFAULTS.ios.serverUpdateIntervalMinutes, defaults_1.CLI_DEFAULTS.ios.serverUpdateRefresh, 1)
355
+ ? normalizeServerUpdate(widget.serverUpdate, {
356
+ context: `ios.widgets[${widget.id}].serverUpdate`,
357
+ hasEntry: widget.entry !== undefined,
358
+ defaultIntervalMinutes: defaults_1.CLI_DEFAULTS.ios.serverUpdateIntervalMinutes,
359
+ defaultRefresh: defaults_1.CLI_DEFAULTS.ios.serverUpdateRefresh,
360
+ minimumIntervalMinutes: 1,
361
+ warnings,
362
+ })
281
363
  : undefined,
282
364
  };
283
365
  }
@@ -290,6 +372,21 @@ function assertUniqueWidgetIds(widgetIds, context) {
290
372
  seen.add(widgetId);
291
373
  }
292
374
  }
375
+ /**
376
+ * WidgetKit identifies a placed widget by extension bundle id + kind, so two widgets sharing a kind
377
+ * would fight over the same Home Screen instances. Compared after defaulting, which also catches a
378
+ * custom kind that collides with another widget's `Voltra_Widget_<id>`.
379
+ */
380
+ function assertUniqueIOSWidgetKinds(widgets) {
381
+ const seen = new Set();
382
+ for (const widget of widgets) {
383
+ const kind = (0, widgetKind_1.iosWidgetKind)(widget);
384
+ if (seen.has(kind)) {
385
+ throw new VoltraConfigNormalizationError(`Duplicate ios widget kind '${kind}'`);
386
+ }
387
+ seen.add(kind);
388
+ }
389
+ }
293
390
  function assertValidWidgetId(widgetId, context) {
294
391
  if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(widgetId)) {
295
392
  throw new VoltraConfigNormalizationError(`${context} must start with a letter or underscore and contain only alphanumeric characters and underscores`);
@@ -300,7 +397,7 @@ function assertValidIOSTargetName(targetName, context) {
300
397
  throw new VoltraConfigNormalizationError(`${context} must start with a letter and contain only letters, numbers, and underscores`);
301
398
  }
302
399
  }
303
- function normalizeAndroidConfig(projectRoot, config) {
400
+ function normalizeAndroidConfig(warnings, projectRoot, config) {
304
401
  if (config === undefined) {
305
402
  return undefined;
306
403
  }
@@ -318,7 +415,7 @@ function normalizeAndroidConfig(projectRoot, config) {
318
415
  if (config.widgets !== undefined && !Array.isArray(config.widgets)) {
319
416
  throw new VoltraConfigNormalizationError('android.widgets must be an array');
320
417
  }
321
- const widgets = (config.widgets ?? []).map((widget) => normalizeAndroidWidget(projectRoot, widget));
418
+ const widgets = (config.widgets ?? []).map((widget) => normalizeAndroidWidget(projectRoot, widget, warnings));
322
419
  assertUniqueWidgetIds(widgets.map((widget) => widget.id), 'android');
323
420
  return {
324
421
  enableNotifications: config.enableNotifications ?? defaults_1.CLI_DEFAULTS.android.enableNotifications,
@@ -333,25 +430,25 @@ function normalizeAndroidConfig(projectRoot, config) {
333
430
  },
334
431
  };
335
432
  }
336
- function normalizeIOSConfig(projectRoot, config) {
433
+ function normalizeIOSConfig(warnings, projectRoot, config) {
337
434
  if (config === undefined) {
338
435
  return undefined;
339
436
  }
340
437
  assertObject(config, 'ios');
341
438
  assertOptionalBoolean(config.enablePushNotifications, 'ios.enablePushNotifications');
342
- assertOptionalString(config.groupIdentifier, 'ios.groupIdentifier');
439
+ assertOptionalPerConfigurationString(config.groupIdentifier, 'ios.groupIdentifier');
343
440
  assertOptionalString(config.deploymentTarget, 'ios.deploymentTarget');
344
441
  assertOptionalString(config.targetName, 'ios.targetName');
345
442
  assertOptionalStringArray(config.fonts, 'ios.fonts');
346
443
  assertOptionalString(config.userImagesPath, 'ios.userImagesPath');
347
- assertOptionalString(config.keychainGroup, 'ios.keychainGroup');
444
+ assertOptionalPerConfigurationString(config.keychainGroup, 'ios.keychainGroup');
348
445
  if (config.project !== undefined) {
349
446
  assertObject(config.project, 'ios.project');
350
447
  assertOptionalString(config.project.rootDir, 'ios.project.rootDir');
351
448
  assertOptionalString(config.project.xcodeprojPath, 'ios.project.xcodeprojPath');
352
449
  assertOptionalString(config.project.mainTargetName, 'ios.project.mainTargetName');
353
450
  assertOptionalString(config.project.infoPlistPath, 'ios.project.infoPlistPath');
354
- assertOptionalString(config.project.entitlementsPath, 'ios.project.entitlementsPath');
451
+ assertOptionalPerConfigurationString(config.project.entitlementsPath, 'ios.project.entitlementsPath');
355
452
  assertOptionalString(config.project.podfilePath, 'ios.project.podfilePath');
356
453
  }
357
454
  if (config.widgets !== undefined && !Array.isArray(config.widgets)) {
@@ -360,8 +457,9 @@ function normalizeIOSConfig(projectRoot, config) {
360
457
  if (config.targetName !== undefined) {
361
458
  assertValidIOSTargetName(config.targetName, 'ios.targetName');
362
459
  }
363
- const widgets = (config.widgets ?? []).map((widget) => normalizeIOSWidget(projectRoot, widget));
460
+ const widgets = (config.widgets ?? []).map((widget) => normalizeIOSWidget(projectRoot, widget, warnings));
364
461
  assertUniqueWidgetIds(widgets.map((widget) => widget.id), 'ios');
462
+ assertUniqueIOSWidgetKinds(widgets);
365
463
  return {
366
464
  enablePushNotifications: config.enablePushNotifications ?? defaults_1.CLI_DEFAULTS.ios.enablePushNotifications,
367
465
  groupIdentifier: config.groupIdentifier,
@@ -376,7 +474,7 @@ function normalizeIOSConfig(projectRoot, config) {
376
474
  xcodeprojPath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.xcodeprojPath),
377
475
  mainTargetName: config.project?.mainTargetName,
378
476
  infoPlistPath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.infoPlistPath),
379
- entitlementsPath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.entitlementsPath),
477
+ entitlementsPath: resolveOptionalPerConfigurationPath(projectRoot, config.project?.entitlementsPath),
380
478
  podfilePath: resolveOptionalPathFromProjectRoot(projectRoot, config.project?.podfilePath),
381
479
  },
382
480
  };
@@ -385,12 +483,33 @@ function normalizeVoltraConfig(loadedConfig) {
385
483
  assertObject(loadedConfig.config, 'config');
386
484
  assertOptionalString(loadedConfig.config.projectRoot, 'projectRoot');
387
485
  const projectRoot = resolvePathFromProjectRoot(loadedConfig.configDir, loadedConfig.config.projectRoot ?? loadedConfig.configDir);
486
+ const warnings = [];
487
+ const android = normalizeAndroidConfig(warnings, projectRoot, loadedConfig.config.android);
488
+ const ios = normalizeIOSConfig(warnings, projectRoot, loadedConfig.config.ios);
489
+ assertServerDrivenDynamicWidgetsAreSupported(ios);
388
490
  return {
389
491
  configPath: loadedConfig.configPath,
390
492
  configDir: loadedConfig.configDir,
391
493
  projectRoot,
392
- android: normalizeAndroidConfig(projectRoot, loadedConfig.config.android),
393
- ios: normalizeIOSConfig(projectRoot, loadedConfig.config.ios),
494
+ android,
495
+ ios,
496
+ warnings,
394
497
  };
395
498
  }
499
+ /**
500
+ * A Dynamic Widget commits fetched props to the App Group so the widget extension can read them,
501
+ * so a server-driven one without a `groupIdentifier` would fetch and have nowhere to put the
502
+ * result.
503
+ */
504
+ function assertServerDrivenDynamicWidgetsAreSupported(ios) {
505
+ if (ios === undefined || ios.groupIdentifier !== undefined) {
506
+ return;
507
+ }
508
+ for (const widget of ios.widgets) {
509
+ if (widget.entry !== undefined && widget.serverUpdate !== undefined) {
510
+ throw new VoltraConfigNormalizationError(`ios.widgets[${widget.id}] has both entry and serverUpdate, which requires ios.groupIdentifier ` +
511
+ 'so fetched props can be shared with the widget extension.');
512
+ }
513
+ }
514
+ }
396
515
  //# 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,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPerConfigurationMap = isPerConfigurationMap;
4
+ exports.getValuesByBuildConfiguration = getValuesByBuildConfiguration;
5
+ function isPerConfigurationMap(value) {
6
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
7
+ }
8
+ /**
9
+ * Pairs a per-build-configuration value with the project's real build configurations, in the
10
+ * project's own order. Keys that name no build configuration, and build configurations the value
11
+ * does not cover, are reported before anything is written to the project.
12
+ */
13
+ function getValuesByBuildConfiguration(value, buildConfigurationNames, context, createError) {
14
+ const knownNames = `This project has: ${buildConfigurationNames.join(', ')}.`;
15
+ const unknownNames = Object.keys(value).filter((name) => !buildConfigurationNames.includes(name));
16
+ if (unknownNames.length > 0) {
17
+ throw createError(`${context} names unknown build configurations: ${unknownNames.join(', ')}. ${knownNames}`);
18
+ }
19
+ const valuesByBuildConfiguration = new Map();
20
+ for (const buildConfigurationName of buildConfigurationNames) {
21
+ const configurationValue = value[buildConfigurationName];
22
+ if (configurationValue === undefined) {
23
+ throw createError(`${context} has no value for build configuration '${buildConfigurationName}'. ${knownNames}`);
24
+ }
25
+ valuesByBuildConfiguration.set(buildConfigurationName, configurationValue);
26
+ }
27
+ return valuesByBuildConfiguration;
28
+ }
29
+ //# sourceMappingURL=perConfiguration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"perConfiguration.js","sourceRoot":"","sources":["../../../src/config/perConfiguration.ts"],"names":[],"mappings":";;AAWA,sDAIC;AAOD,sEA0BC;AArCD,SAAgB,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,SAAgB,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,119 @@
1
+ "use strict";
2
+ /**
3
+ * Config rules for `serverUpdate`, shared by the Expo plugins and the `voltra` CLI.
4
+ *
5
+ * `serverUpdate` marks a widget as server-driven for both render engines. On a widget with
6
+ * `entry` the device fetches a JSON object and hands it to the bundled JS as props; without
7
+ * `entry` the server returns a full Voltra payload. Widgets without `entry` keep exactly the
8
+ * rules they had before ADR 0002, so no existing config breaks.
9
+ *
10
+ * `url` is optional. `serverUpdate: {}` means "server-driven, URL supplied at runtime" through
11
+ * `setWidgetServerUpdate`, which covers per-tenant backends whose URL is only known after login.
12
+ *
13
+ * These helpers report problems instead of throwing so each caller can raise its own error type.
14
+ *
15
+ * The `@use-voltra/expo-plugin` package holds the other copy of this module, shared by the
16
+ * Expo config plugins; keep the two in sync.
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES = void 0;
20
+ exports.resolveServerUpdateInterval = resolveServerUpdateInterval;
21
+ exports.resolveServerUpdateUrl = resolveServerUpdateUrl;
22
+ exports.isLocalHttpHost = isLocalHttpHost;
23
+ exports.validateServerUpdateRefresh = validateServerUpdateRefresh;
24
+ /**
25
+ * Interval floor and default for a widget with `entry`. WorkManager cannot run periodic work
26
+ * more often than every 15 minutes, and WidgetKit stretches timelines requested closer together
27
+ * than five minutes, so a smaller number would only mislead.
28
+ */
29
+ exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES = 15;
30
+ /** Hosts allowed over plain `http`, for talking to a dev server from a simulator or emulator. */
31
+ const LOCAL_HTTP_HOSTS = new Set(['localhost', '127.0.0.1', '::1', '10.0.2.2', '10.0.3.2']);
32
+ /**
33
+ * Resolves the interval a widget should be scheduled on.
34
+ *
35
+ * A widget with `entry` is clamped up to {@link DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES}
36
+ * with a warning, because a shorter interval is not something either platform can honour. A
37
+ * payload widget keeps the platform's existing rule and is rejected below the floor.
38
+ */
39
+ function resolveServerUpdateInterval(options) {
40
+ const { intervalMinutes, context, hasEntry, defaultIntervalMinutes, minimumIntervalMinutes } = options;
41
+ const fallback = hasEntry ? exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES : defaultIntervalMinutes;
42
+ if (intervalMinutes === undefined) {
43
+ return { kind: 'ok', intervalMinutes: fallback };
44
+ }
45
+ if (typeof intervalMinutes !== 'number' || !Number.isFinite(intervalMinutes)) {
46
+ return { kind: 'invalid', error: `${context}.intervalMinutes must be a number` };
47
+ }
48
+ if (!Number.isInteger(intervalMinutes)) {
49
+ return { kind: 'invalid', error: `${context}.intervalMinutes must be an integer` };
50
+ }
51
+ if (hasEntry) {
52
+ if (intervalMinutes < exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES) {
53
+ return {
54
+ kind: 'clamped',
55
+ intervalMinutes: exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES,
56
+ warning: `${context}.intervalMinutes is ${intervalMinutes}, below the ` +
57
+ `${exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES} minute floor for widgets with an entry. ` +
58
+ `Using ${exports.DYNAMIC_WIDGET_SERVER_UPDATE_INTERVAL_MINUTES}.`,
59
+ };
60
+ }
61
+ return { kind: 'ok', intervalMinutes };
62
+ }
63
+ if (intervalMinutes < minimumIntervalMinutes) {
64
+ return { kind: 'invalid', error: `${context}.intervalMinutes must be at least ${minimumIntervalMinutes}` };
65
+ }
66
+ return { kind: 'ok', intervalMinutes };
67
+ }
68
+ /**
69
+ * Checks `serverUpdate.url`. An absent URL is fine — the app supplies it at runtime through
70
+ * `setWidgetServerUpdate`.
71
+ *
72
+ * A URL that is not an absolute `http`/`https` URL is rejected: no platform HTTP stack here
73
+ * accepts one, so such a config could only ever have failed to fetch. Plain `http` to a
74
+ * non-local host is reported as insecure rather than rejected — App Transport Security and
75
+ * Android's cleartext policy already block it in a release build, and rejecting it outright
76
+ * would break configs that point at a LAN dev server.
77
+ */
78
+ function resolveServerUpdateUrl(url, context) {
79
+ if (url === undefined) {
80
+ return { kind: 'ok' };
81
+ }
82
+ if (typeof url !== 'string' || !url.trim()) {
83
+ return { kind: 'invalid', error: `${context}.url must be a non-empty string` };
84
+ }
85
+ let parsed;
86
+ try {
87
+ parsed = new URL(url);
88
+ }
89
+ catch {
90
+ return { kind: 'invalid', error: `${context}.url must be an absolute http(s) URL, received '${url}'` };
91
+ }
92
+ if (parsed.protocol === 'https:') {
93
+ return { kind: 'ok' };
94
+ }
95
+ if (parsed.protocol !== 'http:') {
96
+ return { kind: 'invalid', error: `${context}.url must be an absolute http(s) URL, received '${url}'` };
97
+ }
98
+ if (isLocalHttpHost(parsed.hostname)) {
99
+ return { kind: 'ok' };
100
+ }
101
+ return {
102
+ kind: 'insecure',
103
+ warning: `${context}.url uses plain http ('${url}'). Release builds block cleartext traffic, so the ` +
104
+ 'widget will not fetch outside a development build. Use https, or a local dev host ' +
105
+ `(${[...LOCAL_HTTP_HOSTS].join(', ')}).`,
106
+ };
107
+ }
108
+ /** True for the hosts Voltra allows over plain `http` — dev servers reachable from a simulator. */
109
+ function isLocalHttpHost(hostname) {
110
+ return LOCAL_HTTP_HOSTS.has(hostname.replace(/^\[|\]$/g, ''));
111
+ }
112
+ /** Validates `serverUpdate.refresh`. Returns an error message, or `undefined` when it is fine. */
113
+ function validateServerUpdateRefresh(refresh, context) {
114
+ if (refresh !== undefined && typeof refresh !== 'boolean') {
115
+ return `${context}.refresh must be a boolean`;
116
+ }
117
+ return undefined;
118
+ }
119
+ //# 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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"}