pollination-react-io 1.67.1 → 1.68.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/index.js CHANGED
@@ -38098,12 +38098,13 @@ var usePollinationPanel = function () {
38098
38098
  /**
38099
38099
  * Fetch local run
38100
38100
  */
38101
- var fetchLocalRun = React.useCallback(function (path) {
38101
+ var fetchLocalRun = React.useCallback(function (path, subfolder) {
38102
38102
  if (path === void 0) { path = ''; }
38103
+ if (subfolder === void 0) { subfolder = undefined; }
38103
38104
  if (!panel)
38104
38105
  return;
38105
38106
  try {
38106
- var message = panel.FetchSimulationFile(path, SimulationFileType[SimulationFileType.status]);
38107
+ var message = panel.FetchSimulationFile(path, subfolder, SimulationFileType[SimulationFileType.status]);
38107
38108
  var run = JSON.parse(message.data);
38108
38109
  return run;
38109
38110
  }
@@ -38114,15 +38115,17 @@ var usePollinationPanel = function () {
38114
38115
  /**
38115
38116
  * Fetch local job
38116
38117
  */
38117
- var fetchLocalJob = React.useCallback(function (path) {
38118
- var _a;
38118
+ var fetchLocalJob = React.useCallback(function (path, subfolder) {
38119
+ var _a, _b;
38119
38120
  if (path === void 0) { path = ''; }
38121
+ if (subfolder === void 0) { subfolder = undefined; }
38120
38122
  if (!panel)
38121
38123
  return;
38122
38124
  try {
38123
- var message = panel.FetchSimulationFile(path, SimulationFileType[SimulationFileType.job]);
38125
+ var message = panel.FetchSimulationFile(path, subfolder, SimulationFileType[SimulationFileType.job]);
38124
38126
  var localJob = JSON.parse(message.data);
38125
38127
  var job = (_a = localJob === null || localJob === void 0 ? void 0 : localJob.LocalJob) === null || _a === void 0 ? void 0 : _a.Job;
38128
+ job['author'] = (_b = localJob === null || localJob === void 0 ? void 0 : localJob.LocalJob) === null || _b === void 0 ? void 0 : _b.JobAuthor;
38126
38129
  return job;
38127
38130
  }
38128
38131
  catch (error) {
@@ -38133,12 +38136,13 @@ var usePollinationPanel = function () {
38133
38136
  /**
38134
38137
  * Fetch local log
38135
38138
  */
38136
- var fetchLocalLog = React.useCallback(function (path) {
38139
+ var fetchLocalLog = React.useCallback(function (path, subfolder) {
38137
38140
  if (path === void 0) { path = ''; }
38141
+ if (subfolder === void 0) { subfolder = undefined; }
38138
38142
  if (!panel)
38139
38143
  return;
38140
38144
  try {
38141
- var message = panel.FetchSimulationFile(path, SimulationFileType[SimulationFileType.logs]);
38145
+ var message = panel.FetchSimulationFile(path, subfolder, SimulationFileType[SimulationFileType.logs]);
38142
38146
  return message.data;
38143
38147
  }
38144
38148
  catch (error) {
@@ -38208,13 +38212,14 @@ var usePollinationPanel = function () {
38208
38212
  * Delete job with the same input/ouput folder from DB
38209
38213
  * @param projectSlug Project slug
38210
38214
  * @param path Location where files are
38215
+ * @param subfolder Subfolder
38211
38216
  * @returns Message with number of deleted records
38212
38217
  */
38213
- var deleteJob = function (projectSlug, path) {
38218
+ var deleteJob = function (projectSlug, path, subfolder) {
38214
38219
  if (!panel)
38215
38220
  return;
38216
38221
  try {
38217
- var message = panel.DeleteJob(projectSlug, path);
38222
+ var message = panel.DeleteJob(projectSlug, path, subfolder);
38218
38223
  var count = JSON.parse(message.data);
38219
38224
  return count;
38220
38225
  }
@@ -38407,11 +38412,11 @@ var useCreateStudy = function (accountName, projectName, client) {
38407
38412
  });
38408
38413
  }, [accountName, client, processEntryCloud, projectName]);
38409
38414
  var createLocalStudy = React.useCallback(function (_a, data, _b, onSuccess, key) {
38410
- var name = _a.name, description = _a.description, recipe = _a.recipe, recipeFilter = _a.recipeFilter;
38415
+ var name = _a.name, description = _a.description, recipe = _a.recipe, recipeFilter = _a.recipeFilter, authUserName = _a.authUserName;
38411
38416
  var localCPUCount = _b.localCPUCount, localRunFolder = _b.localRunFolder, isLocalJob = _b.isLocalJob, cloudProjectName = _b.cloudProjectName, cloudProjectOwner = _b.cloudProjectOwner;
38412
38417
  if (key === void 0) { key = performance.now().toString(); }
38413
38418
  return __awaiter$1(void 0, void 0, void 0, function () {
38414
- var job, jobInfo, response;
38419
+ var job, author, data_1, err_1, jobInfo, response;
38415
38420
  var _c;
38416
38421
  return __generator$1(this, function (_d) {
38417
38422
  switch (_d.label) {
@@ -38436,10 +38441,24 @@ var useCreateStudy = function (accountName, projectName, client) {
38436
38441
  }).catch(function (err) {
38437
38442
  console.error(err);
38438
38443
  })
38439
- // JobInfo mapping
38444
+ // Try getting account
38440
38445
  ];
38441
38446
  case 1:
38442
38447
  job = _d.sent();
38448
+ author = undefined;
38449
+ _d.label = 2;
38450
+ case 2:
38451
+ _d.trys.push([2, 4, , 5]);
38452
+ return [4 /*yield*/, client.accounts.getAccount({ name: authUserName })];
38453
+ case 3:
38454
+ data_1 = (_d.sent()).data;
38455
+ author = data_1;
38456
+ return [3 /*break*/, 5];
38457
+ case 4:
38458
+ err_1 = _d.sent();
38459
+ console.log(err_1);
38460
+ return [3 /*break*/, 5];
38461
+ case 5:
38443
38462
  jobInfo = {
38444
38463
  RecipeOwner: (_c = recipeFilter.owner) !== null && _c !== void 0 ? _c : 'ladybug-tools',
38445
38464
  Recipe: recipe,
@@ -38448,7 +38467,8 @@ var useCreateStudy = function (accountName, projectName, client) {
38448
38467
  ProjectSlug: "".concat(cloudProjectOwner, "/").concat(cloudProjectName),
38449
38468
  LocalCPUNumber: localCPUCount,
38450
38469
  LocalRunFolder: localRunFolder,
38451
- Platform: host
38470
+ Platform: host,
38471
+ JobAuthor: author,
38452
38472
  };
38453
38473
  console.log(jobInfo);
38454
38474
  response = window.parent.chrome.webview.hostObjects.study.RunSimulation(JSON.stringify(jobInfo))
@@ -44964,9 +44984,15 @@ var RecipeForm = function (_a) {
44964
44984
  host !== 'web' &&
44965
44985
  React__default["default"].createElement(ConfigureLocalRun, { onChange: function (localConfig) { return setLocalConfig(localConfig); }, defaultVal: localConfig }),
44966
44986
  React__default["default"].createElement(Ie, null),
44967
- React__default["default"].createElement(Button, { type: 'submit', style: { width: '100%',
44987
+ host === 'web' && React__default["default"].createElement(Button, { type: 'submit', style: { width: '100%',
44988
+ margin: '10px 0 0 0',
44989
+ justifyContent: 'center' }, disabled: isValid !== true, form: recipe.metadata.name }, "Create Study"),
44990
+ host !== 'web' && React__default["default"].createElement(Button, { type: 'submit', style: { width: '100%',
44968
44991
  margin: '10px 0 0 0',
44969
- justifyContent: 'center' }, disabled: isValid !== true, form: recipe.metadata.name }, "Create Study")));
44992
+ justifyContent: 'center' }, disabled: isValid !== true ||
44993
+ localConfig.isLocalJob
44994
+ ? localConfig.localRunFolder == null
44995
+ : false, form: recipe.metadata.name }, "Create Study")));
44970
44996
  };
44971
44997
 
44972
44998
  var defaultStyle = {
@@ -45065,7 +45091,8 @@ var CreateStudy = function (_a) {
45065
45091
  name: name,
45066
45092
  recipe: selRecipe,
45067
45093
  description: description !== null && description !== void 0 ? description : 'Study created from pollination',
45068
- recipeFilter: selRecipeFilter
45094
+ recipeFilter: selRecipeFilter,
45095
+ authUserName: authUser.username
45069
45096
  }, jobArgs, localConfig, localConfig.isLocalJob ? _onSuccessLocal : _onSuccessCloud);
45070
45097
  }
45071
45098
  else {
@@ -49024,9 +49051,9 @@ var formatDuration = function (duration) {
49024
49051
  };
49025
49052
  var RunCard = function (_a) {
49026
49053
  var _b;
49027
- var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
49028
- var projectName = _a.projectName, projectOwner = _a.projectOwner, _run = _a.run, authUser = _a.authUser, client = _a.client, _o = _a.enableClick, enableClick = _o === void 0 ? true : _o, _p = _a.style, style = _p === void 0 ? {} : _p, _q = _a.getTab, getTab = _q === void 0 ? function (tab) { return undefined; } : _q, _r = _a.defaultTab, defaultTab = _r === void 0 ? RunTabs.details : _r, _s = _a.getValue, getValue = _s === void 0 ? function (run) { return undefined; } : _s, _t = _a.interval, interval = _t === void 0 ? 5000 : _t, _u = _a.canWrite, canWrite = _u === void 0 ? false : _u, _v = _a.localRun, localRun = _v === void 0 ? false : _v, _w = _a.loaderNode, loaderNode = _w === void 0 ? undefined : _w;
49029
- var _x = usePollinationPanel(), fetchLocalRun = _x.fetchLocalRun, fetchLocalJob = _x.fetchLocalJob, fileExplorer = _x.fileExplorer, deleteJob = _x.deleteJob;
49054
+ var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
49055
+ var projectName = _a.projectName, projectOwner = _a.projectOwner, _run = _a.run, authUser = _a.authUser, client = _a.client, _s = _a.enableClick, enableClick = _s === void 0 ? true : _s, _t = _a.style, style = _t === void 0 ? {} : _t, _u = _a.getTab, getTab = _u === void 0 ? function (tab) { return undefined; } : _u, _v = _a.defaultTab, defaultTab = _v === void 0 ? RunTabs.details : _v, _w = _a.getValue, getValue = _w === void 0 ? function (run) { return undefined; } : _w, _x = _a.interval, interval = _x === void 0 ? 5000 : _x, _y = _a.canWrite, canWrite = _y === void 0 ? false : _y, _z = _a.localRun, localRun = _z === void 0 ? false : _z, _0 = _a.loaderNode, loaderNode = _0 === void 0 ? undefined : _0;
49056
+ var _1 = usePollinationPanel(), fetchLocalRun = _1.fetchLocalRun, fetchLocalJob = _1.fetchLocalJob, fileExplorer = _1.fileExplorer, deleteJob = _1.deleteJob;
49030
49057
  var disabled = React.useMemo(function () {
49031
49058
  if (!localRun)
49032
49059
  return;
@@ -49036,23 +49063,23 @@ var RunCard = function (_a) {
49036
49063
  * Fetch run
49037
49064
  */
49038
49065
  var fetchJob = useJobs(client).fetchJob;
49039
- var _y = useRuns(client), fetchRun = _y.fetchRun, statusMap = _y.statusMap, getDuration = _y.getDuration, cancelRun = _y.cancelRun;
49040
- var _z = useWindowDimensions(), width = _z.width; _z.height;
49041
- var _0 = React.useState(false), seeDescription = _0[0], setSeeDescription = _0[1];
49042
- var _1 = React.useState(false), seeAction = _1[0], setSeeAction = _1[1];
49043
- var _2 = React.useState(false), stopRefresh = _2[0], setStopRefresh = _2[1];
49044
- var _3 = React.useState(false), isReady = _3[0], setIsReady = _3[1];
49066
+ var _2 = useRuns(client), fetchRun = _2.fetchRun, statusMap = _2.statusMap, getDuration = _2.getDuration, cancelRun = _2.cancelRun;
49067
+ var _3 = useWindowDimensions(), width = _3.width; _3.height;
49068
+ var _4 = React.useState(false), seeDescription = _4[0], setSeeDescription = _4[1];
49069
+ var _5 = React.useState(false), seeAction = _5[0], setSeeAction = _5[1];
49070
+ var _6 = React.useState(false), stopRefresh = _6[0], setStopRefresh = _6[1];
49071
+ var _7 = React.useState(false), isReady = _7[0], setIsReady = _7[1];
49045
49072
  /*
49046
49073
  * From run and stop when it is done
49047
49074
  */
49048
- var _4 = useSWR(authUser && _run ? (!localRun ? [projectOwner, projectName, _run.id] : [_run.id]) : undefined, localRun ? fetchLocalRun : fetchRun, {
49075
+ var _8 = useSWR(authUser && _run ? (!localRun ? [projectOwner, projectName, _run.id] : [_run.id, _run['subfolder']]) : undefined, localRun ? fetchLocalRun : fetchRun, {
49049
49076
  revalidateOnFocus: false,
49050
49077
  refreshInterval: stopRefresh ? undefined : interval,
49051
49078
  fallbackData: localRun ? undefined : _run,
49052
49079
  errorRetryCount: 3,
49053
49080
  onSuccess: function (run, key, config) {
49054
49081
  if (localRun) {
49055
- var jobInfo = fetchLocalJob(_run.id);
49082
+ var jobInfo = fetchLocalJob(_run.id, _run['subfolder']);
49056
49083
  setLocalStudy(jobInfo);
49057
49084
  } // It is written at the end of the simulation
49058
49085
  sendRun(run);
@@ -49060,7 +49087,7 @@ var RunCard = function (_a) {
49060
49087
  setStopRefresh(true);
49061
49088
  setIsReady(true);
49062
49089
  },
49063
- }), run = _4.data, error = _4.error;
49090
+ }), run = _8.data, error = _8.error;
49064
49091
  var sendRun = React.useCallback(function (run) { return getValue(run); }, [run]);
49065
49092
  /**
49066
49093
  * Fetch job just one time
@@ -49084,9 +49111,9 @@ var RunCard = function (_a) {
49084
49111
  return undefined;
49085
49112
  return run.status.status;
49086
49113
  }, [run]);
49087
- var _5 = React.useState(), study = _5[0], setStudy = _5[1];
49088
- var _6 = React.useState(), localStudy = _6[0], setLocalStudy = _6[1];
49089
- var _7 = React.useState(getDuration(run)), duration = _7[0], setDuration = _7[1];
49114
+ var _9 = React.useState(), study = _9[0], setStudy = _9[1];
49115
+ var _10 = React.useState(), localStudy = _10[0], setLocalStudy = _10[1];
49116
+ var _11 = React.useState(getDuration(run)), duration = _11[0], setDuration = _11[1];
49090
49117
  React.useEffect(function () {
49091
49118
  if (!run)
49092
49119
  return undefined;
@@ -49117,7 +49144,7 @@ var RunCard = function (_a) {
49117
49144
  info: false,
49118
49145
  settings: false,
49119
49146
  };
49120
- var _8 = React.useState(__assign(__assign({}, initialValues), (_b = {}, _b[defaultTab] = true, _b))), hover = _8[0], setHover = _8[1];
49147
+ var _12 = React.useState(__assign(__assign({}, initialValues), (_b = {}, _b[defaultTab] = true, _b))), hover = _12[0], setHover = _12[1];
49121
49148
  var toggleHover = React.useCallback(function (id, value) {
49122
49149
  if (value === void 0) { value = false; }
49123
49150
  setHover(function (prevHover) {
@@ -49167,7 +49194,7 @@ var RunCard = function (_a) {
49167
49194
  window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id, "/runs/").concat(run.id);
49168
49195
  }
49169
49196
  else {
49170
- window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/localStudies/").concat(localStudyURLname, "/?path=").concat(_run.id);
49197
+ window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/localStudies/").concat(localStudyURLname, "/?path=").concat(_run.id, "&subfolder=").concat(_run['subfolder']);
49171
49198
  }
49172
49199
  } },
49173
49200
  React__default["default"].createElement("div", { className: 'item1' },
@@ -49238,7 +49265,9 @@ var RunCard = function (_a) {
49238
49265
  getTab(RunTabs.debug);
49239
49266
  if (localRun) {
49240
49267
  // Get study name
49241
- var path = "".concat(_run.id, "/").concat(localStudyURLname, "/__logs__/logs.log");
49268
+ var path = !_run['subfolder']
49269
+ ? "".concat(_run.id, "/").concat(localStudyURLname, "/__logs__/logs.log")
49270
+ : "".concat(_run.id, "/").concat(_run['subfolder'], "/").concat(localStudyURLname, "/__logs__/logs.log");
49242
49271
  fileExplorer(path);
49243
49272
  }
49244
49273
  else {
@@ -49287,15 +49316,22 @@ var RunCard = function (_a) {
49287
49316
  React__default["default"].createElement("div", { className: 'item4', title: run && dayjs_min(run.status.started_at).format('[on] MMM DD YYYY [at] hh:mm') }, run ? dayjs_min(run.status.started_at).format('[on] MMM DD YYYY') : '--'),
49288
49317
  React__default["default"].createElement("div", { className: 'item5' },
49289
49318
  React__default["default"].createElement("span", { style: { marginRight: '0.75rem' } },
49290
- React__default["default"].createElement(Avatar, { color: hover.author ? '#40a9ff' : undefined, src: run ? (_j = run.author) === null || _j === void 0 ? void 0 : _j.picture_url : '', size: 24 })),
49319
+ !localRun && React__default["default"].createElement(Avatar, { color: hover.author ? '#40a9ff' : undefined, src: run ? (_j = run.author) === null || _j === void 0 ? void 0 : _j.picture_url : '', size: 24 }),
49320
+ localRun && run && localStudy && React__default["default"].createElement(Avatar, { color: hover.author ? '#40a9ff' : undefined, src: (localStudy === null || localStudy === void 0 ? void 0 : localStudy.author) ? (_k = localStudy.author) === null || _k === void 0 ? void 0 : _k.picture_url : (_l = run.author) === null || _l === void 0 ? void 0 : _l.picture_url, size: 24 })),
49291
49321
  React__default["default"].createElement("a", { className: 'link', onClick: function (e) {
49322
+ var _a;
49292
49323
  e.stopPropagation();
49324
+ if (!run)
49325
+ return;
49293
49326
  if (!localRun) {
49294
- if (!run)
49295
- return;
49296
49327
  window.location.href = "/".concat(run.author.name);
49297
49328
  }
49298
- }, title: 'Go to author page', target: '_blank', rel: 'noreferrer', onMouseOver: function (e) { return toggleHover('author', true); }, onMouseLeave: function (e) { return toggleHover('author', false); }, style: hover.author ? { color: '#40a9ff' } : {} }, run ? ((_l = (_k = run.author) === null || _k === void 0 ? void 0 : _k.display_name) !== null && _l !== void 0 ? _l : (_m = run.author) === null || _m === void 0 ? void 0 : _m.name) : '--')),
49329
+ else {
49330
+ window.location.href = "/".concat((_a = localStudy === null || localStudy === void 0 ? void 0 : localStudy.author) === null || _a === void 0 ? void 0 : _a.name);
49331
+ }
49332
+ }, title: 'Go to author page', target: '_blank', rel: 'noreferrer', onMouseOver: function (e) { return toggleHover('author', true); }, onMouseLeave: function (e) { return toggleHover('author', false); }, style: hover.author ? { color: '#40a9ff' } : {} },
49333
+ !localRun && run && ((_o = (_m = run.author) === null || _m === void 0 ? void 0 : _m.display_name) !== null && _o !== void 0 ? _o : (_p = run.author) === null || _p === void 0 ? void 0 : _p.name),
49334
+ localRun && localStudy && ((_r = (_q = localStudy.author) === null || _q === void 0 ? void 0 : _q.display_name) !== null && _r !== void 0 ? _r : run.author.display_name))),
49299
49335
  React__default["default"].createElement("div", { className: 'item6' },
49300
49336
  React__default["default"].createElement("span", { style: { marginRight: '0.75rem' } },
49301
49337
  React__default["default"].createElement(Avatar, { color: hover.recipe ? '#40a9ff' : undefined, src: run ? run.recipe.metadata.icon : '', size: 24 })),
@@ -49345,9 +49381,9 @@ var RunCard = function (_a) {
49345
49381
  e.stopPropagation();
49346
49382
  if (!run)
49347
49383
  return;
49348
- var count = deleteJob("".concat(projectOwner, "/").concat(projectName), _run.id);
49384
+ var count = deleteJob("".concat(projectOwner, "/").concat(projectName), _run.id, _run['subfolder']);
49349
49385
  if (count > 0) {
49350
- if (window.location.href.includes("?path=".concat(_run.id))) {
49386
+ if (window.location.href.includes("?path=")) {
49351
49387
  window.history.back();
49352
49388
  }
49353
49389
  else {