@plasmicapp/loader-react 1.0.407 → 1.0.408

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -379,6 +379,8 @@ export { PageMetadata }
379
379
 
380
380
  export { PageParamsProvider }
381
381
 
382
+ declare type ParamsRecord = Record<string, string | string[] | undefined>;
383
+
382
384
  export { PlasmicCanvasContext }
383
385
 
384
386
  export { PlasmicCanvasHost }
@@ -484,7 +486,12 @@ export declare class PlasmicComponentLoader {
484
486
  getActiveSplits(): Split[];
485
487
  trackConversion(value?: number): void;
486
488
  clearCache(): void;
489
+ getExecFuncModule(renderData: ComponentRenderData, fileNameKey: "serverQueriesExecFuncFileName" | "generateMetadataFuncFileName"): any;
487
490
  unstable__getServerQueriesData(renderData: ComponentRenderData, $ctx: Record<string, any>): Promise<any>;
491
+ unstable__generateMetadata(renderData: ComponentRenderData, props: {
492
+ params: Promise<ParamsRecord> | ParamsRecord;
493
+ query: Promise<ParamsRecord> | ParamsRecord;
494
+ }): Promise<any>;
488
495
  }
489
496
 
490
497
  /**
package/dist/index.esm.js CHANGED
@@ -1150,19 +1150,24 @@ var PlasmicComponentLoader = class {
1150
1150
  clearCache() {
1151
1151
  return this.__internal.clearCache();
1152
1152
  }
1153
+ getExecFuncModule(renderData, fileNameKey) {
1154
+ if (renderData.entryCompMetas.length === 0) {
1155
+ return void 0;
1156
+ }
1157
+ const fileName = renderData.entryCompMetas[0][fileNameKey];
1158
+ if (!fileName) {
1159
+ return void 0;
1160
+ }
1161
+ return this.__internal.loadServerQueriesModule(fileName);
1162
+ }
1153
1163
  unstable__getServerQueriesData(renderData, $ctx) {
1154
1164
  return __async(this, null, function* () {
1155
- if (renderData.entryCompMetas.length === 0) {
1156
- return {};
1157
- }
1158
- const fileName = renderData.entryCompMetas[0].serverQueriesExecFuncFileName;
1159
- if (!fileName) {
1160
- return {};
1161
- }
1162
- const module = this.__internal.loadServerQueriesModule(fileName);
1163
- const { executeServerQueries } = module;
1165
+ const module = this.getExecFuncModule(
1166
+ renderData,
1167
+ "serverQueriesExecFuncFileName"
1168
+ );
1164
1169
  try {
1165
- const $serverQueries = yield executeServerQueries($ctx);
1170
+ const $serverQueries = yield module == null ? void 0 : module.executeServerQueries($ctx);
1166
1171
  return $serverQueries;
1167
1172
  } catch (err) {
1168
1173
  console.error("Error executing server queries function", err);
@@ -1170,6 +1175,25 @@ var PlasmicComponentLoader = class {
1170
1175
  }
1171
1176
  });
1172
1177
  }
1178
+ unstable__generateMetadata(renderData, props) {
1179
+ return __async(this, null, function* () {
1180
+ var _a;
1181
+ const module = this.getExecFuncModule(
1182
+ renderData,
1183
+ "generateMetadataFuncFileName"
1184
+ );
1185
+ const fallback = ((_a = renderData.entryCompMetas[0]) == null ? void 0 : _a.pageMetadata) || {};
1186
+ if (!module) {
1187
+ return fallback;
1188
+ }
1189
+ try {
1190
+ const metadata = yield module.generateMetadata(props);
1191
+ return metadata;
1192
+ } catch (err) {
1193
+ return fallback;
1194
+ }
1195
+ });
1196
+ }
1173
1197
  };
1174
1198
 
1175
1199
  // src/loader-client.ts