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.
@@ -8,4 +8,5 @@ export interface RecipeFormProps {
8
8
  client: APIClient;
9
9
  style?: CSSProperties;
10
10
  onSubmit?: (name: string, jobArguments: any[], description?: string, localConfig?: any) => Promise<void> | Promise<PanelMessageIn | undefined>;
11
+ initAsLocal?: boolean;
11
12
  }
@@ -14,4 +14,5 @@ export declare const usePollinationPanel: () => {
14
14
  getJob: (projectSlug: string) => ProjectJobInfo[];
15
15
  deleteJob: (projectSlug: string, path: string, subfolder: string) => any;
16
16
  getPlatforms: (projectSlug: string) => {};
17
+ simulationPath: string;
17
18
  };
@@ -38014,6 +38014,14 @@ var usePollinationPanel = function () {
38014
38014
  var panel = useMemo(function () {
38015
38015
  return checkPollinationPanel() && window.parent.chrome.webview.hostObjects.sync.study;
38016
38016
  }, []);
38017
+ /**
38018
+ * Get local simulation path from po-panel
38019
+ */
38020
+ var simulationPath = useMemo(function () {
38021
+ if (!panel)
38022
+ return;
38023
+ return panel.GetSimulationFolder();
38024
+ }, [panel]);
38017
38025
  /**
38018
38026
  * From base64 to file
38019
38027
  */
@@ -38214,7 +38222,8 @@ var usePollinationPanel = function () {
38214
38222
  getPaginatedJob: getPaginatedJob,
38215
38223
  getJob: getJob,
38216
38224
  deleteJob: deleteJob,
38217
- getPlatforms: getPlatforms
38225
+ getPlatforms: getPlatforms,
38226
+ simulationPath: simulationPath
38218
38227
  };
38219
38228
  };
38220
38229
 
@@ -41406,7 +41415,7 @@ var ConfigureLocalRun = function (_a) {
41406
41415
  }
41407
41416
  } })),
41408
41417
  React__default.createElement(Label, { label: "Select a Local Run Folder", disabled: !localConfig.isLocalJob },
41409
- React__default.createElement(SelectLocalArtifactNative, { disabled: !localConfig.isLocalJob, onChange: handleLocalPathChange, mode: 'directory', buttonLabel: 'Local Run Folder' }))));
41418
+ React__default.createElement(SelectLocalArtifactNative, { disabled: !localConfig.isLocalJob, onChange: handleLocalPathChange, mode: 'directory', buttonLabel: 'Local Run Folder', value: localConfig && localConfig.localRunFolder }))));
41410
41419
  };
41411
41420
 
41412
41421
  function makeTypeChecker(tabsRole) {
@@ -44746,8 +44755,9 @@ var InputType;
44746
44755
  })(InputType || (InputType = {}));
44747
44756
  var RecipeForm = function (_a) {
44748
44757
  var _b, _c;
44749
- var recipe = _a.recipe, projectName = _a.projectName, projectOwner = _a.projectOwner, client = _a.client, onSubmit = _a.onSubmit, _d = _a.style, style = _d === void 0 ? {} : _d;
44750
- var getJob = usePollinationPanel().getJob;
44758
+ 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;
44759
+ var _f = usePollinationPanel(), getJob = _f.getJob, simulationPath = _f.simulationPath;
44760
+ var _g = useState(false), loading = _g[0], setLoading = _g[1];
44751
44761
  /**
44752
44762
  * Input mapping
44753
44763
  */
@@ -44788,17 +44798,18 @@ var RecipeForm = function (_a) {
44788
44798
  /**
44789
44799
  * Hooks
44790
44800
  */
44791
- var _e = useForm({
44801
+ var _h = useForm({
44792
44802
  resolver: Oe(schema),
44793
44803
  mode: 'onChange'
44794
- }), control = _e.control, register = _e.register, handleSubmit = _e.handleSubmit, resetField = _e.resetField, watch = _e.watch, _f = _e.formState, errors = _f.errors, isValid = _f.isValid;
44804
+ }), control = _h.control, register = _h.register, handleSubmit = _h.handleSubmit, resetField = _h.resetField, watch = _h.watch, _j = _h.formState, errors = _j.errors, isValid = _j.isValid;
44795
44805
  var watchStudyName = watch('study-name');
44796
44806
  /**
44797
44807
  * Form actions
44798
44808
  * @param data Output data
44799
44809
  */
44800
44810
  var _onSubmit = function (data) {
44801
- console.log(data);
44811
+ // console.log(data)
44812
+ setLoading(true);
44802
44813
  // Get study name and description
44803
44814
  // Remove them from inputs
44804
44815
  var studyName = data['study-name'];
@@ -44811,7 +44822,10 @@ var RecipeForm = function (_a) {
44811
44822
  if (!val)
44812
44823
  delete data[key];
44813
44824
  });
44814
- onSubmit(studyName, data, studyDescription, localConfig);
44825
+ onSubmit(studyName, data, studyDescription, localConfig)
44826
+ .finally(function () {
44827
+ setLoading(false);
44828
+ });
44815
44829
  };
44816
44830
  var onErrors = function (err) {
44817
44831
  console.log(err);
@@ -44864,7 +44878,7 @@ var RecipeForm = function (_a) {
44864
44878
  /**
44865
44879
  * Local study
44866
44880
  */
44867
- var _g = useState(__assign(__assign({}, _defaultConfig), { cloudProjectName: projectName, cloudProjectOwner: projectOwner })), localConfig = _g[0], setLocalConfig = _g[1];
44881
+ var _k = useState(__assign(__assign({}, _defaultConfig), { isLocalJob: initAsLocal, cloudProjectName: projectName, cloudProjectOwner: projectOwner, localRunFolder: simulationPath })), localConfig = _k[0], setLocalConfig = _k[1];
44868
44882
  /**
44869
44883
  * Warning for local study folder
44870
44884
  */
@@ -44960,13 +44974,12 @@ var RecipeForm = function (_a) {
44960
44974
  React__default.createElement(Ie, null),
44961
44975
  host === 'web' && React__default.createElement(Button, { type: 'submit', style: { width: '100%',
44962
44976
  margin: '10px 0 0 0',
44963
- justifyContent: 'center' }, disabled: isValid !== true, form: recipe.metadata.name }, "Create Study"),
44977
+ justifyContent: 'center' }, disabled: !isValid || loading, form: recipe.metadata.name, loading: loading }, "Create Study"),
44964
44978
  host !== 'web' && React__default.createElement(Button, { type: 'submit', style: { width: '100%',
44965
44979
  margin: '10px 0 0 0',
44966
- justifyContent: 'center' }, disabled: isValid !== true ||
44967
- localConfig.isLocalJob
44968
- ? localConfig.localRunFolder == null
44969
- : false, form: recipe.metadata.name }, "Create Study")));
44980
+ justifyContent: 'center' }, disabled: !localConfig.isLocalJob
44981
+ ? !isValid || loading
44982
+ : !isValid || loading || localConfig.localRunFolder == null, form: recipe.metadata.name, loading: loading }, "Create Study")));
44970
44983
  };
44971
44984
 
44972
44985
  var defaultStyle = {
@@ -47218,7 +47231,7 @@ var JobTabs;
47218
47231
  JobTabs["workspace"] = "workspace";
47219
47232
  })(JobTabs || (JobTabs = {}));
47220
47233
 
47221
- 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}";
47234
+ 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}";
47222
47235
  styleInject(css_248z$6);
47223
47236
 
47224
47237
  var IconContext = /*#__PURE__*/createContext({});
@@ -48948,15 +48961,15 @@ var StudyCard = function (_a) {
48948
48961
  ? '#40a9ff' : '#000')
48949
48962
  } }))))),
48950
48963
  React__default.createElement("div", { className: 'item3' },
48951
- React__default.createElement("div", null,
48964
+ React__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) {
48965
+ e.stopPropagation();
48966
+ setSeeDescription(function (prev) { return !prev; });
48967
+ setSeeAction(false);
48968
+ } },
48969
+ React__default.createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })),
48970
+ React__default.createElement("span", null,
48952
48971
  study ? (_g = study.spec.name) !== null && _g !== void 0 ? _g : "Study: ".concat(study.id) : '--',
48953
- study && total > 1 && "(#".concat(total, ")"),
48954
- React__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) {
48955
- e.stopPropagation();
48956
- setSeeDescription(function (prev) { return !prev; });
48957
- setSeeAction(false);
48958
- } },
48959
- React__default.createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })))),
48972
+ study && total > 1 && "(#".concat(total, ")"))),
48960
48973
  React__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') : '--'),
48961
48974
  React__default.createElement("div", { className: 'item5' },
48962
48975
  React__default.createElement("span", { style: { marginRight: '0.75rem' } },
@@ -49270,23 +49283,22 @@ var RunCard = function (_a) {
49270
49283
  ? '#40a9ff' : '#000')
49271
49284
  } }))))),
49272
49285
  React__default.createElement("div", { className: 'item3' },
49273
- React__default.createElement("div", null,
49274
- React__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) {
49275
- e.stopPropagation();
49276
- if (!localRun) {
49277
- if (!projectName || !study)
49278
- return;
49279
- window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id);
49280
- }
49281
- }, style: { all: 'unset', cursor: 'pointer', color: "".concat(hover.study
49282
- ? '#40a9ff' : '#000') } }, localRun ? (localStudy ? localStudy.name : _run['studyName'] // Get name from _run
49283
- ) : (study ? (_h = study.spec.name) !== null && _h !== void 0 ? _h : "Study: ".concat(study.id) : '--')),
49284
- React__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) {
49285
- e.stopPropagation();
49286
- setSeeDescription(function (prev) { return !prev; });
49287
- setSeeAction(false);
49288
- } },
49289
- React__default.createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })))),
49286
+ React__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) {
49287
+ e.stopPropagation();
49288
+ setSeeDescription(function (prev) { return !prev; });
49289
+ setSeeAction(false);
49290
+ } },
49291
+ React__default.createElement(InfoCircle$1, { size: 14, style: hover.info ? { color: '#40a9ff' } : {} })),
49292
+ React__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) {
49293
+ e.stopPropagation();
49294
+ if (!localRun) {
49295
+ if (!projectName || !study)
49296
+ return;
49297
+ window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id);
49298
+ }
49299
+ }, style: { all: 'unset', cursor: 'pointer', color: "".concat(hover.study
49300
+ ? '#40a9ff' : '#000') } }, localRun ? (localStudy ? localStudy.name : _run['studyName'] // Get name from _run
49301
+ ) : (study ? (_h = study.spec.name) !== null && _h !== void 0 ? _h : "Study: ".concat(study.id) : '--'))),
49290
49302
  React__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') : '--'),
49291
49303
  React__default.createElement("div", { className: 'item5' },
49292
49304
  React__default.createElement("span", { style: { marginRight: '0.75rem' } },