@fluid-app/fluid-cli-portal 0.1.79 → 0.1.81

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.
@@ -1169,7 +1169,12 @@ async function readSnapshot(portalSyncDir) {
1169
1169
  const content = await readFile(filePath, "utf-8");
1170
1170
  const parsed = JSON.parse(content);
1171
1171
  if (!isSnapshot(parsed)) throw new Error(`Malformed snapshot file: ${filePath}`);
1172
- return parsed;
1172
+ const snapshot = parsed;
1173
+ const widgetCapabilityGrants = snapshot.widget_capability_grants ?? migrateLegacyNetworkWidgetGrants(snapshot.network_widget_grants);
1174
+ return {
1175
+ ...snapshot,
1176
+ ...widgetCapabilityGrants === void 0 ? {} : { widget_capability_grants: widgetCapabilityGrants }
1177
+ };
1173
1178
  } catch (err) {
1174
1179
  if (err.code === "ENOENT") return null;
1175
1180
  throw err;
@@ -1240,26 +1245,27 @@ async function buildSnapshot(portalDir, definitionName, definitionId) {
1240
1245
  hashEntries.sort(([a], [b]) => a.localeCompare(b));
1241
1246
  const fileHashes = {};
1242
1247
  for (const [path, hash] of hashEntries) fileHashes[path] = hash;
1243
- const networkWidgetGrants = await collectSnapshotNetworkWidgetGrants(portalDir, files);
1248
+ const widgetCapabilityGrants = await collectSnapshotWidgetCapabilityGrants(portalDir, files);
1244
1249
  return {
1245
1250
  definition: definitionName,
1246
1251
  definition_id: definitionId,
1247
1252
  pulled_at: (/* @__PURE__ */ new Date()).toISOString(),
1248
1253
  files: fileHashes,
1249
- network_widget_grants: networkWidgetGrants
1254
+ widget_capability_grants: widgetCapabilityGrants,
1255
+ network_widget_grants: selectLegacyNetworkWidgetGrants(widgetCapabilityGrants)
1250
1256
  };
1251
1257
  }
1252
- async function collectSnapshotNetworkWidgetGrants(portalDir, files) {
1258
+ async function collectSnapshotWidgetCapabilityGrants(portalDir, files) {
1253
1259
  const entries = await mapWithLimit(files.filter((file) => file.startsWith("screens/") && file.endsWith(".json")), MAX_CONCURRENCY, async (file) => {
1254
1260
  try {
1255
- return [file, collectNetworkWidgetGrants(JSON.parse(await readFile(join(portalDir, file), "utf8")))];
1261
+ return [file, collectWidgetCapabilityGrants(JSON.parse(await readFile(join(portalDir, file), "utf8")))];
1256
1262
  } catch {
1257
1263
  return [file, []];
1258
1264
  }
1259
1265
  });
1260
1266
  return Object.fromEntries(entries.filter(([, grants]) => grants.length > 0));
1261
1267
  }
1262
- function collectNetworkWidgetGrants(value) {
1268
+ function collectWidgetCapabilityGrants(value) {
1263
1269
  const grants = [];
1264
1270
  const visit = (candidate) => {
1265
1271
  if (!candidate || typeof candidate !== "object") return;
@@ -1268,19 +1274,36 @@ function collectNetworkWidgetGrants(value) {
1268
1274
  return;
1269
1275
  }
1270
1276
  const record = candidate;
1271
- const networkAccess = asRecord(asRecord(record.capabilityGrants)?.networkAccess);
1272
- if (typeof record.id === "string" && typeof record.type === "string" && typeof networkAccess?.packageId === "string" && typeof networkAccess.packageVersion === "string" && typeof networkAccess.capabilityVersion === "string") grants.push({
1273
- widgetId: record.id,
1274
- widgetType: record.type,
1275
- packageId: networkAccess.packageId,
1276
- packageVersion: networkAccess.packageVersion,
1277
- capabilityVersion: networkAccess.capabilityVersion
1278
- });
1277
+ const capabilityGrants = asRecord(record.capabilityGrants);
1278
+ if (typeof record.id === "string" && typeof record.type === "string" && capabilityGrants) for (const [capability, rawGrant] of Object.entries(capabilityGrants)) {
1279
+ const grant = asRecord(rawGrant);
1280
+ if (typeof grant?.packageId === "string" && typeof grant.packageVersion === "string" && typeof grant.capabilityVersion === "string") grants.push({
1281
+ capability,
1282
+ widgetId: record.id,
1283
+ widgetType: record.type,
1284
+ packageId: grant.packageId,
1285
+ packageVersion: grant.packageVersion,
1286
+ capabilityVersion: grant.capabilityVersion
1287
+ });
1288
+ }
1279
1289
  for (const child of Object.values(record)) visit(child);
1280
1290
  };
1281
1291
  visit(value);
1282
1292
  return grants;
1283
1293
  }
1294
+ function selectLegacyNetworkWidgetGrants(grants) {
1295
+ return Object.fromEntries(Object.entries(grants).flatMap(([file, fileGrants]) => {
1296
+ const networkGrants = fileGrants.filter(({ capability }) => capability === "networkAccess").map(({ capability: _capability, ...grant }) => grant);
1297
+ return networkGrants.length === 0 ? [] : [[file, networkGrants]];
1298
+ }));
1299
+ }
1300
+ function migrateLegacyNetworkWidgetGrants(grants) {
1301
+ if (!grants) return void 0;
1302
+ return Object.fromEntries(Object.entries(grants).map(([file, fileGrants]) => [file, fileGrants.map((grant) => ({
1303
+ ...grant,
1304
+ capability: "networkAccess"
1305
+ }))]));
1306
+ }
1284
1307
  function asRecord(value) {
1285
1308
  return value !== null && typeof value === "object" && !Array.isArray(value) ? value : void 0;
1286
1309
  }
@@ -6714,7 +6737,7 @@ function transformProfile(profile, navIdToSlug, themeIdToSlug) {
6714
6737
  }
6715
6738
  };
6716
6739
  }
6717
- const PORTAL_SCHEMA_BASE_URL = `https://assets.fluid.app/docs/schema/portal/1.2.0`;
6740
+ const PORTAL_SCHEMA_BASE_URL = `https://assets.fluid.app/docs/schema/portal/1.3.0`;
6718
6741
  const PORTAL_RESOURCE_KINDS = [
6719
6742
  "definition",
6720
6743
  "screen",
@@ -12989,7 +13012,7 @@ var require__2020 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
12989
13012
  const generatedSchemas = {
12990
13013
  "data-source": {
12991
13014
  $schema: "https://json-schema.org/draft/2020-12/schema",
12992
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
13015
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
12993
13016
  title: "Fluid Portal Data Source",
12994
13017
  examples: [{ sources: [{
12995
13018
  type: "custom",
@@ -13261,7 +13284,7 @@ const generatedSchemas = {
13261
13284
  },
13262
13285
  "theme-config": {
13263
13286
  $schema: "https://json-schema.org/draft/2020-12/schema",
13264
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/theme-config.schema.json",
13287
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/theme-config.schema.json",
13265
13288
  title: "Fluid Portal Structured Theme Configuration",
13266
13289
  examples: [{
13267
13290
  id: "default",
@@ -14291,7 +14314,7 @@ const generatedSchemas = {
14291
14314
  },
14292
14315
  widget: {
14293
14316
  $schema: "https://json-schema.org/draft/2020-12/schema",
14294
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/widget.schema.json",
14317
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/widget.schema.json",
14295
14318
  title: "Fluid Portal Widget Node",
14296
14319
  examples: [{
14297
14320
  id: "welcome",
@@ -14610,7 +14633,7 @@ const generatedSchemas = {
14610
14633
  description: "Properties accepted by the registered widget."
14611
14634
  },
14612
14635
  dataSource: {
14613
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
14636
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
14614
14637
  description: "Optional data-source configuration that populates widget props."
14615
14638
  },
14616
14639
  columnIndex: {
@@ -14825,7 +14848,7 @@ const generatedSchemas = {
14825
14848
  description: "Properties accepted by the registered widget."
14826
14849
  },
14827
14850
  dataSource: {
14828
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
14851
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
14829
14852
  description: "Optional data-source configuration that populates widget props."
14830
14853
  },
14831
14854
  columnIndex: {
@@ -15038,7 +15061,7 @@ const generatedSchemas = {
15038
15061
  description: "Properties accepted by the registered widget."
15039
15062
  },
15040
15063
  dataSource: {
15041
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
15064
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
15042
15065
  description: "Optional data-source configuration that populates widget props."
15043
15066
  },
15044
15067
  columnIndex: {
@@ -15273,7 +15296,7 @@ const generatedSchemas = {
15273
15296
  description: "Properties accepted by the registered widget."
15274
15297
  },
15275
15298
  dataSource: {
15276
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
15299
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
15277
15300
  description: "Optional data-source configuration that populates widget props."
15278
15301
  },
15279
15302
  columnIndex: {
@@ -15557,7 +15580,7 @@ const generatedSchemas = {
15557
15580
  description: "Properties accepted by the registered widget."
15558
15581
  },
15559
15582
  dataSource: {
15560
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
15583
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
15561
15584
  description: "Optional data-source configuration that populates widget props."
15562
15585
  },
15563
15586
  columnIndex: {
@@ -15754,7 +15777,7 @@ const generatedSchemas = {
15754
15777
  description: "Properties accepted by the registered widget."
15755
15778
  },
15756
15779
  dataSource: {
15757
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
15780
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
15758
15781
  description: "Optional data-source configuration that populates widget props."
15759
15782
  },
15760
15783
  columnIndex: {
@@ -16008,7 +16031,7 @@ const generatedSchemas = {
16008
16031
  description: "Properties accepted by the registered widget."
16009
16032
  },
16010
16033
  dataSource: {
16011
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16034
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16012
16035
  description: "Optional data-source configuration that populates widget props."
16013
16036
  },
16014
16037
  columnIndex: {
@@ -16102,7 +16125,7 @@ const generatedSchemas = {
16102
16125
  description: "Properties accepted by the registered widget."
16103
16126
  },
16104
16127
  dataSource: {
16105
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16128
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16106
16129
  description: "Optional data-source configuration that populates widget props."
16107
16130
  },
16108
16131
  columnIndex: {
@@ -16301,7 +16324,7 @@ const generatedSchemas = {
16301
16324
  description: "Properties accepted by the registered widget."
16302
16325
  },
16303
16326
  dataSource: {
16304
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16327
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16305
16328
  description: "Optional data-source configuration that populates widget props."
16306
16329
  },
16307
16330
  columnIndex: {
@@ -16469,7 +16492,7 @@ const generatedSchemas = {
16469
16492
  description: "Properties accepted by the registered widget."
16470
16493
  },
16471
16494
  dataSource: {
16472
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16495
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16473
16496
  description: "Optional data-source configuration that populates widget props."
16474
16497
  },
16475
16498
  columnIndex: {
@@ -16618,7 +16641,7 @@ const generatedSchemas = {
16618
16641
  description: "Properties accepted by the registered widget."
16619
16642
  },
16620
16643
  dataSource: {
16621
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16644
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16622
16645
  description: "Optional data-source configuration that populates widget props."
16623
16646
  },
16624
16647
  columnIndex: {
@@ -16854,7 +16877,7 @@ const generatedSchemas = {
16854
16877
  description: "Properties accepted by the registered widget."
16855
16878
  },
16856
16879
  dataSource: {
16857
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
16880
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
16858
16881
  description: "Optional data-source configuration that populates widget props."
16859
16882
  },
16860
16883
  columnIndex: {
@@ -17301,7 +17324,7 @@ const generatedSchemas = {
17301
17324
  description: "Properties accepted by the registered widget."
17302
17325
  },
17303
17326
  dataSource: {
17304
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
17327
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
17305
17328
  description: "Optional data-source configuration that populates widget props."
17306
17329
  },
17307
17330
  columnIndex: {
@@ -17433,7 +17456,7 @@ const generatedSchemas = {
17433
17456
  description: "Properties accepted by the registered widget."
17434
17457
  },
17435
17458
  dataSource: {
17436
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
17459
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
17437
17460
  description: "Optional data-source configuration that populates widget props."
17438
17461
  },
17439
17462
  columnIndex: {
@@ -17684,7 +17707,7 @@ const generatedSchemas = {
17684
17707
  description: "Properties accepted by the registered widget."
17685
17708
  },
17686
17709
  dataSource: {
17687
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
17710
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
17688
17711
  description: "Optional data-source configuration that populates widget props."
17689
17712
  },
17690
17713
  columnIndex: {
@@ -17901,7 +17924,7 @@ const generatedSchemas = {
17901
17924
  description: "Properties accepted by the registered widget."
17902
17925
  },
17903
17926
  dataSource: {
17904
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
17927
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
17905
17928
  description: "Optional data-source configuration that populates widget props."
17906
17929
  },
17907
17930
  columnIndex: {
@@ -18603,7 +18626,7 @@ const generatedSchemas = {
18603
18626
  description: "Properties accepted by the registered widget."
18604
18627
  },
18605
18628
  dataSource: {
18606
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
18629
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
18607
18630
  description: "Optional data-source configuration that populates widget props."
18608
18631
  },
18609
18632
  columnIndex: {
@@ -18815,7 +18838,7 @@ const generatedSchemas = {
18815
18838
  description: "Properties accepted by the registered widget."
18816
18839
  },
18817
18840
  dataSource: {
18818
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
18841
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
18819
18842
  description: "Optional data-source configuration that populates widget props."
18820
18843
  },
18821
18844
  columnIndex: {
@@ -19031,7 +19054,7 @@ const generatedSchemas = {
19031
19054
  description: "Properties accepted by the registered widget."
19032
19055
  },
19033
19056
  dataSource: {
19034
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19057
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19035
19058
  description: "Optional data-source configuration that populates widget props."
19036
19059
  },
19037
19060
  columnIndex: {
@@ -19129,7 +19152,7 @@ const generatedSchemas = {
19129
19152
  description: "Properties accepted by the registered widget."
19130
19153
  },
19131
19154
  dataSource: {
19132
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19155
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19133
19156
  description: "Optional data-source configuration that populates widget props."
19134
19157
  },
19135
19158
  columnIndex: {
@@ -19316,7 +19339,7 @@ const generatedSchemas = {
19316
19339
  description: "Properties accepted by the registered widget."
19317
19340
  },
19318
19341
  dataSource: {
19319
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19342
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19320
19343
  description: "Optional data-source configuration that populates widget props."
19321
19344
  },
19322
19345
  columnIndex: {
@@ -19357,7 +19380,7 @@ const generatedSchemas = {
19357
19380
  description: "Properties accepted by the registered widget."
19358
19381
  },
19359
19382
  dataSource: {
19360
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19383
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19361
19384
  description: "Optional data-source configuration that populates widget props."
19362
19385
  },
19363
19386
  columnIndex: {
@@ -19603,7 +19626,7 @@ const generatedSchemas = {
19603
19626
  description: "Properties accepted by the registered widget."
19604
19627
  },
19605
19628
  dataSource: {
19606
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19629
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19607
19630
  description: "Optional data-source configuration that populates widget props."
19608
19631
  },
19609
19632
  columnIndex: {
@@ -19836,7 +19859,7 @@ const generatedSchemas = {
19836
19859
  description: "Properties accepted by the registered widget."
19837
19860
  },
19838
19861
  dataSource: {
19839
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
19862
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
19840
19863
  description: "Optional data-source configuration that populates widget props."
19841
19864
  },
19842
19865
  columnIndex: {
@@ -20034,7 +20057,7 @@ const generatedSchemas = {
20034
20057
  description: "Properties accepted by the registered widget."
20035
20058
  },
20036
20059
  dataSource: {
20037
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
20060
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
20038
20061
  description: "Optional data-source configuration that populates widget props."
20039
20062
  },
20040
20063
  columnIndex: {
@@ -20282,7 +20305,7 @@ const generatedSchemas = {
20282
20305
  description: "Properties accepted by the registered widget."
20283
20306
  },
20284
20307
  dataSource: {
20285
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
20308
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
20286
20309
  description: "Optional data-source configuration that populates widget props."
20287
20310
  },
20288
20311
  columnIndex: {
@@ -20317,7 +20340,7 @@ const generatedSchemas = {
20317
20340
  description: "Package-defined serializable widget properties."
20318
20341
  },
20319
20342
  dataSource: {
20320
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/data-source.schema.json",
20343
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/data-source.schema.json",
20321
20344
  description: "Optional data-source configuration that populates widget props."
20322
20345
  },
20323
20346
  columnIndex: {
@@ -20327,23 +20350,23 @@ const generatedSchemas = {
20327
20350
  },
20328
20351
  capabilityGrants: {
20329
20352
  type: "object",
20330
- properties: { networkAccess: {
20353
+ additionalProperties: {
20331
20354
  type: "object",
20332
20355
  properties: {
20333
20356
  packageId: {
20334
20357
  type: "string",
20335
20358
  pattern: "\\S",
20336
- description: "Canonical package identifier approved for network access."
20359
+ description: "Canonical package identifier approved for the capability."
20337
20360
  },
20338
20361
  packageVersion: {
20339
20362
  type: "string",
20340
20363
  pattern: "\\S",
20341
- description: "Exact package version approved for network access."
20364
+ description: "Exact package version approved for the capability."
20342
20365
  },
20343
20366
  capabilityVersion: {
20344
20367
  type: "string",
20345
20368
  pattern: "\\S",
20346
- description: "Exact network capability contract version approved."
20369
+ description: "Exact capability contract version approved."
20347
20370
  }
20348
20371
  },
20349
20372
  required: [
@@ -20351,11 +20374,9 @@ const generatedSchemas = {
20351
20374
  "packageVersion",
20352
20375
  "capabilityVersion"
20353
20376
  ],
20354
- additionalProperties: false,
20355
- description: "Consent grant for this exact package and capability version to use public HTTP fetch."
20356
- } },
20357
- additionalProperties: false,
20358
- description: "Placement-specific consent grants for third-party capabilities."
20377
+ additionalProperties: false
20378
+ },
20379
+ description: "Placement-specific consent grants keyed by capability."
20359
20380
  }
20360
20381
  },
20361
20382
  required: [
@@ -20371,7 +20392,7 @@ const generatedSchemas = {
20371
20392
  },
20372
20393
  definition: {
20373
20394
  $schema: "https://json-schema.org/draft/2020-12/schema",
20374
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/definition.schema.json",
20395
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/definition.schema.json",
20375
20396
  title: "Fluid Portal Definition",
20376
20397
  examples: [{ name: "Partner Portal" }],
20377
20398
  type: "object",
@@ -20392,7 +20413,7 @@ const generatedSchemas = {
20392
20413
  },
20393
20414
  screen: {
20394
20415
  $schema: "https://json-schema.org/draft/2020-12/schema",
20395
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/screen.schema.json",
20416
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/screen.schema.json",
20396
20417
  title: "Fluid Portal Screen",
20397
20418
  examples: [{
20398
20419
  name: "home",
@@ -20412,7 +20433,7 @@ const generatedSchemas = {
20412
20433
  component_tree: {
20413
20434
  type: "array",
20414
20435
  maxItems: 1,
20415
- items: { $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/widget.schema.json" },
20436
+ items: { $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/widget.schema.json" },
20416
20437
  description: "Zero or one root widget nodes for this screen."
20417
20438
  }
20418
20439
  },
@@ -20422,7 +20443,7 @@ const generatedSchemas = {
20422
20443
  },
20423
20444
  theme: {
20424
20445
  $schema: "https://json-schema.org/draft/2020-12/schema",
20425
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/theme.schema.json",
20446
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/theme.schema.json",
20426
20447
  title: "Fluid Portal Theme",
20427
20448
  examples: [{
20428
20449
  name: "Default",
@@ -20550,7 +20571,7 @@ const generatedSchemas = {
20550
20571
  description: "Human-readable theme name referenced by profiles."
20551
20572
  },
20552
20573
  config: {
20553
- $ref: "https://assets.fluid.app/docs/schema/portal/1.2.0/theme-config.schema.json",
20574
+ $ref: "https://assets.fluid.app/docs/schema/portal/1.3.0/theme-config.schema.json",
20554
20575
  description: "Complete structured theme token configuration."
20555
20576
  },
20556
20577
  active: {
@@ -20568,7 +20589,7 @@ const generatedSchemas = {
20568
20589
  },
20569
20590
  navigation: {
20570
20591
  $schema: "https://json-schema.org/draft/2020-12/schema",
20571
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/navigation.schema.json",
20592
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/navigation.schema.json",
20572
20593
  title: "Fluid Portal Navigation",
20573
20594
  examples: [{
20574
20595
  name: "Primary",
@@ -20659,7 +20680,7 @@ const generatedSchemas = {
20659
20680
  },
20660
20681
  profile: {
20661
20682
  $schema: "https://json-schema.org/draft/2020-12/schema",
20662
- $id: "https://assets.fluid.app/docs/schema/portal/1.2.0/profile.schema.json",
20683
+ $id: "https://assets.fluid.app/docs/schema/portal/1.3.0/profile.schema.json",
20663
20684
  title: "Fluid Portal Profile",
20664
20685
  examples: [{
20665
20686
  name: "Everyone",
@@ -21125,6 +21146,6 @@ const pullCommand = new Command("pull").description("Pull a Fluid OS definition'
21125
21146
  console.log();
21126
21147
  });
21127
21148
  //#endregion
21128
- export { toFluidOsDynamicObject as A, resolveIdToSlug as C, atomicWriteFile as D, writeMappings as E, ApiError as M, __exportAll as N, createFluidOsClient as O, removeMapping as S, updateMapping as T, diffAgainstSnapshot as _, buildNavigationIdToSlugMap as a, deriveSlug as b, transformNavigation as c, transformScreen as d, transformTheme as f, computeFileHash as g, collectSnapshotNetworkWidgetGrants as h, buildIdToSlugMap as i, createFluidOsHeyApiClient as j, fluidOsApi as k, transformNavigationItems as l, collectNetworkWidgetGrants as m, pull_exports as n, buildThemeIdToSlugMap as o, buildSnapshot as p, validatePortalResource as r, deriveScreenSlug as s, pullCommand as t, transformProfile as u, readSnapshot as v, resolveSlugToId as w, readMappings as x, writeSnapshot as y };
21149
+ export { fluidOsApi as A, removeMapping as C, writeMappings as D, updateMapping as E, createFluidOsHeyApiClient as M, ApiError as N, atomicWriteFile as O, __exportAll as P, readMappings as S, resolveSlugToId as T, diffAgainstSnapshot as _, buildNavigationIdToSlugMap as a, writeSnapshot as b, transformNavigation as c, transformScreen as d, transformTheme as f, computeFileHash as g, collectWidgetCapabilityGrants as h, buildIdToSlugMap as i, toFluidOsDynamicObject as j, createFluidOsClient as k, transformNavigationItems as l, collectSnapshotWidgetCapabilityGrants as m, pull_exports as n, buildThemeIdToSlugMap as o, buildSnapshot as p, validatePortalResource as r, deriveScreenSlug as s, pullCommand as t, transformProfile as u, readSnapshot as v, resolveIdToSlug as w, deriveSlug as x, selectLegacyNetworkWidgetGrants as y };
21129
21150
 
21130
- //# sourceMappingURL=pull-Kx1ncTLF.mjs.map
21151
+ //# sourceMappingURL=pull-B1bXrPhS.mjs.map