pollination-react-io 1.68.1 → 1.69.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
@@ -38040,6 +38040,14 @@ var usePollinationPanel = function () {
38040
38040
  var panel = React.useMemo(function () {
38041
38041
  return checkPollinationPanel() && window.parent.chrome.webview.hostObjects.sync.study;
38042
38042
  }, []);
38043
+ /**
38044
+ * Get local simulation path from po-panel
38045
+ */
38046
+ var simulationPath = React.useMemo(function () {
38047
+ if (!panel)
38048
+ return;
38049
+ return panel.GetSimulationFolder();
38050
+ }, [panel]);
38043
38051
  /**
38044
38052
  * From base64 to file
38045
38053
  */
@@ -38240,7 +38248,8 @@ var usePollinationPanel = function () {
38240
38248
  getPaginatedJob: getPaginatedJob,
38241
38249
  getJob: getJob,
38242
38250
  deleteJob: deleteJob,
38243
- getPlatforms: getPlatforms
38251
+ getPlatforms: getPlatforms,
38252
+ simulationPath: simulationPath
38244
38253
  };
38245
38254
  };
38246
38255
 
@@ -41432,7 +41441,7 @@ var ConfigureLocalRun = function (_a) {
41432
41441
  }
41433
41442
  } })),
41434
41443
  React__default["default"].createElement(Label, { label: "Select a Local Run Folder", disabled: !localConfig.isLocalJob },
41435
- React__default["default"].createElement(SelectLocalArtifactNative, { disabled: !localConfig.isLocalJob, onChange: handleLocalPathChange, mode: 'directory', buttonLabel: 'Local Run Folder' }))));
41444
+ React__default["default"].createElement(SelectLocalArtifactNative, { disabled: !localConfig.isLocalJob, onChange: handleLocalPathChange, mode: 'directory', buttonLabel: 'Local Run Folder', value: localConfig && localConfig.localRunFolder }))));
41436
41445
  };
41437
41446
 
41438
41447
  function makeTypeChecker(tabsRole) {
@@ -44772,8 +44781,9 @@ var InputType;
44772
44781
  })(InputType || (InputType = {}));
44773
44782
  var RecipeForm = function (_a) {
44774
44783
  var _b, _c;
44775
- var recipe = _a.recipe, projectName = _a.projectName, projectOwner = _a.projectOwner, client = _a.client, onSubmit = _a.onSubmit, _d = _a.style, style = _d === void 0 ? {} : _d;
44776
- var getJob = usePollinationPanel().getJob;
44784
+ var recipe = _a.recipe, projectName = _a.projectName, projectOwner = _a.projectOwner, client = _a.client, onSubmit = _a.onSubmit, _d = _a.style, style = _d === void 0 ? {} : _d, _e = _a.initAsLocal, initAsLocal = _e === void 0 ? false : _e;
44785
+ var _f = usePollinationPanel(), getJob = _f.getJob, simulationPath = _f.simulationPath;
44786
+ var _g = React.useState(false), loading = _g[0], setLoading = _g[1];
44777
44787
  /**
44778
44788
  * Input mapping
44779
44789
  */
@@ -44814,17 +44824,18 @@ var RecipeForm = function (_a) {
44814
44824
  /**
44815
44825
  * Hooks
44816
44826
  */
44817
- var _e = useForm({
44827
+ var _h = useForm({
44818
44828
  resolver: Oe(schema),
44819
44829
  mode: 'onChange'
44820
- }), control = _e.control, register = _e.register, handleSubmit = _e.handleSubmit, resetField = _e.resetField, watch = _e.watch, _f = _e.formState, errors = _f.errors, isValid = _f.isValid;
44830
+ }), control = _h.control, register = _h.register, handleSubmit = _h.handleSubmit, resetField = _h.resetField, watch = _h.watch, _j = _h.formState, errors = _j.errors, isValid = _j.isValid;
44821
44831
  var watchStudyName = watch('study-name');
44822
44832
  /**
44823
44833
  * Form actions
44824
44834
  * @param data Output data
44825
44835
  */
44826
44836
  var _onSubmit = function (data) {
44827
- console.log(data);
44837
+ // console.log(data)
44838
+ setLoading(true);
44828
44839
  // Get study name and description
44829
44840
  // Remove them from inputs
44830
44841
  var studyName = data['study-name'];
@@ -44837,7 +44848,10 @@ var RecipeForm = function (_a) {
44837
44848
  if (!val)
44838
44849
  delete data[key];
44839
44850
  });
44840
- onSubmit(studyName, data, studyDescription, localConfig);
44851
+ onSubmit(studyName, data, studyDescription, localConfig)
44852
+ .finally(function () {
44853
+ setLoading(false);
44854
+ });
44841
44855
  };
44842
44856
  var onErrors = function (err) {
44843
44857
  console.log(err);
@@ -44890,7 +44904,7 @@ var RecipeForm = function (_a) {
44890
44904
  /**
44891
44905
  * Local study
44892
44906
  */
44893
- var _g = React.useState(__assign(__assign({}, _defaultConfig), { cloudProjectName: projectName, cloudProjectOwner: projectOwner })), localConfig = _g[0], setLocalConfig = _g[1];
44907
+ var _k = React.useState(__assign(__assign({}, _defaultConfig), { isLocalJob: initAsLocal, cloudProjectName: projectName, cloudProjectOwner: projectOwner, localRunFolder: simulationPath })), localConfig = _k[0], setLocalConfig = _k[1];
44894
44908
  /**
44895
44909
  * Warning for local study folder
44896
44910
  */
@@ -44986,13 +45000,12 @@ var RecipeForm = function (_a) {
44986
45000
  React__default["default"].createElement(Ie, null),
44987
45001
  host === 'web' && React__default["default"].createElement(Button, { type: 'submit', style: { width: '100%',
44988
45002
  margin: '10px 0 0 0',
44989
- justifyContent: 'center' }, disabled: isValid !== true, form: recipe.metadata.name }, "Create Study"),
45003
+ justifyContent: 'center' }, disabled: !isValid || loading, form: recipe.metadata.name, loading: loading }, "Create Study"),
44990
45004
  host !== 'web' && React__default["default"].createElement(Button, { type: 'submit', style: { width: '100%',
44991
45005
  margin: '10px 0 0 0',
44992
- justifyContent: 'center' }, disabled: isValid !== true ||
44993
- localConfig.isLocalJob
44994
- ? localConfig.localRunFolder == null
44995
- : false, form: recipe.metadata.name }, "Create Study")));
45006
+ justifyContent: 'center' }, disabled: !localConfig.isLocalJob
45007
+ ? !isValid || loading
45008
+ : !isValid || loading || localConfig.localRunFolder == null, form: recipe.metadata.name, loading: loading }, "Create Study")));
44996
45009
  };
44997
45010
 
44998
45011
  var defaultStyle = {
@@ -47244,7 +47257,7 @@ var JobTabs;
47244
47257
  JobTabs["workspace"] = "workspace";
47245
47258
  })(JobTabs || (JobTabs = {}));
47246
47259
 
47247
- var css_248z$6 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary1: #cceefe;\n --primary0: #e6f7ff;\n --secondary: #fff566;\n --primary3: #000;\n --success: #46A758;\n --warning: #F76809;\n --danger: #FF4616;\n /* radix-ui/colors */\n --slate1: hsl(206, 30.0%, 98.8%);\n --slate2: hsl(210, 16.7%, 97.6%);\n --slate3: hsl(209, 13.3%, 95.3%);\n --slate4: hsl(209, 12.2%, 93.2%);\n --slate5: hsl(208, 11.7%, 91.1%);\n --slate6: hsl(208, 11.3%, 88.9%);\n --slate7: hsl(207, 11.1%, 85.9%);\n --slate8: hsl(205, 10.7%, 78.0%);\n --slate9: hsl(206, 6.0%, 56.1%);\n --slate10: hsl(206, 5.8%, 52.3%);\n --slate11: hsl(206, 6.0%, 43.5%);\n --slate12: hsl(206, 24.0%, 9.0%);\n}\n\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n@keyframes Animation {\n 0% {\n background-position: 200%;\n }\n 50% {\n background-position: 100%;\n }\n 100% {\n background-position: 0%;\n }\n}\n.loading {\n background: linear-gradient(45deg, transparent, var(--primary), 12%, transparent);\n background-size: 200%;\n animation: Animation 3s ease infinite;\n}\n\n@keyframes open {\n from {\n height: 0;\n }\n to {\n height: var(--radix-collapsible-content-height);\n }\n}\n@keyframes close {\n from {\n height: var(--radix-collapsible-content-height);\n }\n to {\n height: 0;\n }\n}\n.collapse-content {\n overflow: hidden;\n font-size: inherit;\n color: inherit;\n}\n\n.collapse-content[data-state=open] {\n animation: open 300ms ease-out;\n}\n\n.collapse-content[data-state=closed] {\n animation: close 300ms ease-out;\n}\n\n.item1 {\n grid-area: accountprj;\n font-size: 1rem;\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item2 {\n grid-area: runworkspacedebug;\n text-align: right !important;\n font-size: 1.25rem;\n white-space: nowrap;\n}\n\n.item3 {\n grid-area: studyrun;\n font-size: 1.25rem;\n font-weight: 500;\n white-space: wrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item4 {\n grid-area: date;\n color: var(--slate10);\n font-size: 0.9rem;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: right !important;\n}\n\n.item5 {\n grid-area: author;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item6 {\n grid-area: recipe;\n white-space: wrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item7 {\n grid-area: description;\n white-space: wrap;\n color: var(--slate10);\n font-size: 0.9rem;\n}\n\n.item8 {\n grid-area: status;\n font-size: 0.9rem;\n}\n\n.status-label {\n font-weight: 500;\n}\n\n.item9 {\n grid-area: time;\n text-align: right !important;\n white-space: wrap;\n}\n\n.item10 {\n grid-area: cpu;\n text-align: right !important;\n white-space: wrap;\n}\n\n.link {\n text-decoration: none;\n color: var(--primary3);\n cursor: pointer;\n}\n\n.link:hover {\n color: var(--primary3);\n}\n\n.light-text {\n color: var(--slate10);\n font-size: 0.9rem;\n}\n\n.grid-container {\n display: grid;\n grid-template-areas: \"accountprj accountprj accountprj accountprj runworkspacedebug runworkspacedebug\" \"studyrun studyrun studyrun studyrun date date\" \"author recipe recipe recipe recipe recipe\" \"status status status status cpu time\" \"description description description description description description\";\n gap: 0.35rem;\n border: 0.1rem solid;\n align-items: center;\n padding: 0.35rem;\n transition: box-shadow 0.3s ease 0s, border-color 0.3s ease 0s;\n grid-template-rows: 52px 38px 46px 46px auto;\n border-radius: 6px;\n line-height: 1.5;\n}\n\n.grid-container:hover {\n box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px -2px, rgba(0, 0, 0, 0.12) 0px 3px 6px 0px, rgba(0, 0, 0, 0.09) 0px 5px 12px 4px;\n cursor: pointer;\n}\n\n.disable-click {\n box-shadow: none !important;\n cursor: default !important;\n}\n\n.grid-container > div {\n text-align: left;\n padding: 1rem;\n vertical-align: middle;\n}\n\n.description-expander {\n all: unset;\n}\n\n.description-expander:focus {\n outline: 0 !important;\n}\n\n@media (max-width: 600px) {\n .grid-container {\n display: grid;\n grid-template-areas: \"accountprj accountprj accountprj accountprj runworkspacedebug runworkspacedebug\" \"studyrun studyrun studyrun studyrun studyrun studyrun\" \"date date date date date date\" \"author author author recipe recipe recipe\" \"status status status status status status\" \"time time time cpu cpu cpu\" \"description description description description description description\";\n gap: 0.35rem;\n border: 0.1rem solid;\n align-items: center;\n padding: 0.15rem;\n transition: box-shadow 0.3s;\n grid-template-rows: 52px 52px 32px 32px 32px 32px auto;\n }\n .item1 {\n text-align: left !important;\n }\n .item2 {\n text-align: right !important;\n font-size: 1rem;\n white-space: nowrap;\n }\n .item3, .item4 {\n text-align: center !important;\n }\n .item5 {\n font-size: 0.8rem;\n }\n .item6 {\n white-space: nowrap;\n font-size: 0.8rem;\n }\n .item7 {\n font-size: 0.8rem;\n text-align: center !important;\n }\n .item8 {\n font-size: 1rem;\n text-align: center !important;\n }\n .item9 {\n text-align: left !important;\n font-size: 1rem;\n white-space: nowrap;\n }\n .item10 {\n text-align: right !important;\n }\n .grid-container > div {\n text-align: left;\n vertical-align: middle;\n }\n}\n.blink-effect {\n animation: blinker 5s linear infinite;\n}\n\n@keyframes blinker {\n 50% {\n border: 0.1rem solid white;\n }\n}";
47260
+ var css_248z$6 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary1: #cceefe;\n --primary0: #e6f7ff;\n --secondary: #fff566;\n --primary3: #000;\n --success: #46A758;\n --warning: #F76809;\n --danger: #FF4616;\n /* radix-ui/colors */\n --slate1: hsl(206, 30.0%, 98.8%);\n --slate2: hsl(210, 16.7%, 97.6%);\n --slate3: hsl(209, 13.3%, 95.3%);\n --slate4: hsl(209, 12.2%, 93.2%);\n --slate5: hsl(208, 11.7%, 91.1%);\n --slate6: hsl(208, 11.3%, 88.9%);\n --slate7: hsl(207, 11.1%, 85.9%);\n --slate8: hsl(205, 10.7%, 78.0%);\n --slate9: hsl(206, 6.0%, 56.1%);\n --slate10: hsl(206, 5.8%, 52.3%);\n --slate11: hsl(206, 6.0%, 43.5%);\n --slate12: hsl(206, 24.0%, 9.0%);\n}\n\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n@keyframes Animation {\n 0% {\n background-position: 200%;\n }\n 50% {\n background-position: 100%;\n }\n 100% {\n background-position: 0%;\n }\n}\n.loading {\n background: linear-gradient(45deg, transparent, var(--primary), 12%, transparent);\n background-size: 200%;\n animation: Animation 3s ease infinite;\n}\n\n@keyframes open {\n from {\n height: 0;\n }\n to {\n height: var(--radix-collapsible-content-height);\n }\n}\n@keyframes close {\n from {\n height: var(--radix-collapsible-content-height);\n }\n to {\n height: 0;\n }\n}\n.collapse-content {\n overflow: hidden;\n font-size: inherit;\n color: inherit;\n}\n\n.collapse-content[data-state=open] {\n animation: open 300ms ease-out;\n}\n\n.collapse-content[data-state=closed] {\n animation: close 300ms ease-out;\n}\n\n.item1 {\n grid-area: accountprj;\n font-size: 1rem;\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item2 {\n grid-area: runworkspacedebug;\n text-align: right !important;\n font-size: 1.25rem;\n white-space: nowrap;\n}\n\n.item3 {\n grid-area: studyrun;\n font-size: 1.25rem;\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item4 {\n grid-area: date;\n color: var(--slate10);\n font-size: 0.9rem;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: right !important;\n}\n\n.item5 {\n grid-area: author;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item6 {\n grid-area: recipe;\n white-space: wrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.item7 {\n grid-area: description;\n white-space: wrap;\n color: var(--slate10);\n font-size: 0.9rem;\n}\n\n.item8 {\n grid-area: status;\n font-size: 0.9rem;\n}\n\n.status-label {\n font-weight: 500;\n}\n\n.item9 {\n grid-area: time;\n text-align: right !important;\n white-space: wrap;\n}\n\n.item10 {\n grid-area: cpu;\n text-align: right !important;\n white-space: wrap;\n}\n\n.link {\n text-decoration: none;\n color: var(--primary3);\n cursor: pointer;\n}\n\n.link:hover {\n color: var(--primary3);\n}\n\n.light-text {\n color: var(--slate10);\n font-size: 0.9rem;\n}\n\n.grid-container {\n display: grid;\n grid-template-areas: \"accountprj accountprj accountprj accountprj runworkspacedebug runworkspacedebug\" \"studyrun studyrun studyrun studyrun date date\" \"author recipe recipe recipe recipe recipe\" \"status status status status cpu time\" \"description description description description description description\";\n gap: 0.35rem;\n border: 0.1rem solid;\n align-items: center;\n padding: 0.35rem;\n transition: box-shadow 0.3s ease 0s, border-color 0.3s ease 0s;\n grid-template-rows: 52px 38px 46px 46px auto;\n border-radius: 6px;\n line-height: 1.5;\n}\n\n.grid-container:hover {\n box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px -2px, rgba(0, 0, 0, 0.12) 0px 3px 6px 0px, rgba(0, 0, 0, 0.09) 0px 5px 12px 4px;\n cursor: pointer;\n}\n\n.disable-click {\n box-shadow: none !important;\n cursor: default !important;\n}\n\n.grid-container > div {\n text-align: left;\n padding: 1rem;\n vertical-align: middle;\n}\n\n.description-expander {\n all: unset;\n}\n\n.description-expander:focus {\n outline: 0 !important;\n}\n\n@media (max-width: 600px) {\n .grid-container {\n display: grid;\n grid-template-areas: \"accountprj accountprj accountprj accountprj runworkspacedebug runworkspacedebug\" \"studyrun studyrun studyrun studyrun studyrun studyrun\" \"date date date date date date\" \"author author author recipe recipe recipe\" \"status status status status status status\" \"time time time cpu cpu cpu\" \"description description description description description description\";\n gap: 0.35rem;\n border: 0.1rem solid;\n align-items: center;\n padding: 0.15rem;\n transition: box-shadow 0.3s;\n grid-template-rows: 52px 52px 32px 32px 32px 32px auto;\n }\n .item1 {\n text-align: left !important;\n }\n .item2 {\n text-align: right !important;\n font-size: 1rem;\n white-space: nowrap;\n }\n .item3, .item4 {\n text-align: center !important;\n }\n .item5 {\n font-size: 0.8rem;\n }\n .item6 {\n white-space: nowrap;\n font-size: 0.8rem;\n }\n .item7 {\n font-size: 0.8rem;\n text-align: center !important;\n }\n .item8 {\n font-size: 1rem;\n text-align: center !important;\n }\n .item9 {\n text-align: left !important;\n font-size: 1rem;\n white-space: nowrap;\n }\n .item10 {\n text-align: right !important;\n }\n .grid-container > div {\n text-align: left;\n vertical-align: middle;\n }\n}\n.blink-effect {\n animation: blinker 5s linear infinite;\n}\n\n@keyframes blinker {\n 50% {\n border: 0.1rem solid white;\n }\n}";
47248
47261
  styleInject(css_248z$6);
47249
47262
 
47250
47263
  var IconContext = /*#__PURE__*/React.createContext({});
@@ -48974,15 +48987,15 @@ var StudyCard = function (_a) {
48974
48987
  ? '#40a9ff' : '#000')
48975
48988
  } }))))),
48976
48989
  React__default["default"].createElement("div", { className: 'item3' },
48977
- React__default["default"].createElement("div", null,
48990
+ React__default["default"].createElement("button", { style: { all: 'unset', margin: '0 8px 0 0', cursor: 'pointer' }, title: 'See study info', onMouseOver: function (e) { return toggleHover('info', true); }, onMouseLeave: function (e) { return toggleHover('info', false); }, onClick: function (e) {
48991
+ e.stopPropagation();
48992
+ setSeeDescription(function (prev) { return !prev; });
48993
+ setSeeAction(false);
48994
+ } },
48995
+ React__default["default"].createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })),
48996
+ React__default["default"].createElement("span", null,
48978
48997
  study ? (_g = study.spec.name) !== null && _g !== void 0 ? _g : "Study: ".concat(study.id) : '--',
48979
- study && total > 1 && "(#".concat(total, ")"),
48980
- React__default["default"].createElement("button", { style: { all: 'unset', margin: '0 0 0 8px', cursor: 'pointer' }, title: 'See study info', onMouseOver: function (e) { return toggleHover('info', true); }, onMouseLeave: function (e) { return toggleHover('info', false); }, onClick: function (e) {
48981
- e.stopPropagation();
48982
- setSeeDescription(function (prev) { return !prev; });
48983
- setSeeAction(false);
48984
- } },
48985
- React__default["default"].createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })))),
48998
+ study && total > 1 && "(#".concat(total, ")"))),
48986
48999
  React__default["default"].createElement("div", { className: 'item4', title: study && dayjs_min(study.status.started_at).format('[on] MMM DD YYYY [at] hh:mm') }, study ? dayjs_min(study.status.started_at).format('[on] MMM DD YYYY') : '--'),
48987
49000
  React__default["default"].createElement("div", { className: 'item5' },
48988
49001
  React__default["default"].createElement("span", { style: { marginRight: '0.75rem' } },
@@ -49296,23 +49309,22 @@ var RunCard = function (_a) {
49296
49309
  ? '#40a9ff' : '#000')
49297
49310
  } }))))),
49298
49311
  React__default["default"].createElement("div", { className: 'item3' },
49299
- React__default["default"].createElement("div", null,
49300
- React__default["default"].createElement("button", { className: 'link', title: 'Go to study page', onMouseOver: function (e) { return toggleHover('study', true); }, onMouseLeave: function (e) { return toggleHover('study', false); }, onClick: function (e) {
49301
- e.stopPropagation();
49302
- if (!localRun) {
49303
- if (!projectName || !study)
49304
- return;
49305
- window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id);
49306
- }
49307
- }, style: { all: 'unset', cursor: 'pointer', color: "".concat(hover.study
49308
- ? '#40a9ff' : '#000') } }, localRun ? (localStudy ? localStudy.name : _run['studyName'] // Get name from _run
49309
- ) : (study ? (_h = study.spec.name) !== null && _h !== void 0 ? _h : "Study: ".concat(study.id) : '--')),
49310
- React__default["default"].createElement("button", { style: { all: 'unset', margin: '0 0 0 8px', cursor: 'pointer' }, onMouseOver: function (e) { return toggleHover('info', true); }, onMouseLeave: function (e) { return toggleHover('info', false); }, onClick: function (e) {
49311
- e.stopPropagation();
49312
- setSeeDescription(function (prev) { return !prev; });
49313
- setSeeAction(false);
49314
- } },
49315
- React__default["default"].createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })))),
49312
+ React__default["default"].createElement("button", { style: { all: 'unset', margin: '0 8px 0 0', cursor: 'pointer' }, onMouseOver: function (e) { return toggleHover('info', true); }, onMouseLeave: function (e) { return toggleHover('info', false); }, onClick: function (e) {
49313
+ e.stopPropagation();
49314
+ setSeeDescription(function (prev) { return !prev; });
49315
+ setSeeAction(false);
49316
+ } },
49317
+ React__default["default"].createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })),
49318
+ React__default["default"].createElement("a", { className: 'link', title: 'Go to study page', onMouseOver: function (e) { return toggleHover('study', true); }, onMouseLeave: function (e) { return toggleHover('study', false); }, onClick: function (e) {
49319
+ e.stopPropagation();
49320
+ if (!localRun) {
49321
+ if (!projectName || !study)
49322
+ return;
49323
+ window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id);
49324
+ }
49325
+ }, style: { all: 'unset', cursor: 'pointer', color: "".concat(hover.study
49326
+ ? '#40a9ff' : '#000') } }, localRun ? (localStudy ? localStudy.name : _run['studyName'] // Get name from _run
49327
+ ) : (study ? (_h = study.spec.name) !== null && _h !== void 0 ? _h : "Study: ".concat(study.id) : '--'))),
49316
49328
  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') : '--'),
49317
49329
  React__default["default"].createElement("div", { className: 'item5' },
49318
49330
  React__default["default"].createElement("span", { style: { marginRight: '0.75rem' } },