pollination-react-io 1.53.8 → 1.54.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.
@@ -1,13 +1,13 @@
1
1
  import type { Project, RecipeInterface, UserPrivate } from '@pollination-solutions/pollination-sdk';
2
2
  import { CSSProperties } from 'react';
3
- import { APIClient } from '../hooks';
3
+ import { APIClient, ProjectJobInfo } from '../hooks';
4
4
  import { Account } from '../SelectAccount/SelectAccount.types';
5
5
  export declare type CreateStudyProps = {
6
6
  style?: CSSProperties;
7
7
  defaultAccount?: Account;
8
8
  defaultProject?: Project;
9
9
  defaultRecipe?: RecipeInterface;
10
- onSuccess?: (accountName: string, projectName: string, studyId: string, isCloud: boolean) => any;
10
+ onSuccess?: (projectJobInfo: ProjectJobInfo, isCloud: boolean) => any;
11
11
  authUser?: UserPrivate;
12
12
  client?: APIClient;
13
13
  };
@@ -11,6 +11,14 @@ interface JobArgs {
11
11
  recipe: RecipeInterface;
12
12
  description?: string;
13
13
  }
14
+ export interface ProjectJobInfo {
15
+ accountName: string;
16
+ studyId: string;
17
+ projectName?: string;
18
+ projectDescription?: string;
19
+ jobName?: string;
20
+ jobDescription?: string;
21
+ }
14
22
  export interface LocalConfig {
15
23
  localCPUCount: number;
16
24
  localRunFolder: string;
@@ -20,7 +28,7 @@ export interface LocalConfig {
20
28
  }
21
29
  export declare const useCreateStudy: (accountName: string, projectName: string, client: APIClient) => {
22
30
  host: string;
23
- createStudy: ({ name, recipe, description }: JobArgs, data: object, onSuccess?: (accountName: string, projectName: string, studyId: string) => void) => Promise<void>;
24
- createLocalStudy: ({ name, description, recipe }: JobArgs, data: object, { localCPUCount, localRunFolder, isLocalJob, cloudProjectName, cloudProjectOwner }: LocalConfig, onSuccess?: (accountName: string, projectName: string, studyId: string) => void, key?: string) => Promise<any>;
31
+ createStudy: ({ name, recipe, description }: JobArgs, data: object, onSuccess?: (projectJobInfo: ProjectJobInfo) => void) => Promise<void>;
32
+ createLocalStudy: ({ name, description, recipe }: JobArgs, data: object, { localCPUCount, localRunFolder, isLocalJob, cloudProjectName, cloudProjectOwner }: LocalConfig, onSuccess?: (projectJobInfo: ProjectJobInfo) => void, key?: string) => Promise<any>;
25
33
  };
26
34
  export {};
@@ -1,7 +1,9 @@
1
1
  import { PanelMessageOut } from './types';
2
+ import { Run } from '@pollination-solutions/pollination-sdk';
2
3
  export declare const usePollinationPanel: () => {
3
4
  getFileBase64: (key?: any, accept?: any) => PanelMessageOut;
4
5
  saveFileBase64: (key: string, file: File | Blob, subFolder: string, fileName: string) => Promise<PanelMessageOut>;
5
6
  fromFileToBase64: (filePath: string) => PanelMessageOut;
6
7
  getFilesFromDir: (root: any) => PanelMessageOut;
8
+ fetchLocalRun: (projectOwner?: any, projectName?: any, runPath?: any) => Run;
7
9
  };
@@ -38005,11 +38005,24 @@ var usePollinationPanel = function () {
38005
38005
  return;
38006
38006
  return panel.FromFileToBase64(filePath);
38007
38007
  }, [panel]);
38008
+ var fetchLocalRun = useCallback(function (projectOwner, projectName, runPath) {
38009
+ var _a;
38010
+ if (projectOwner === void 0) { projectOwner = 'project-owner'; }
38011
+ if (projectName === void 0) { projectName = 'project-name'; }
38012
+ if (runPath === void 0) { runPath = ''; }
38013
+ if (!panel)
38014
+ return;
38015
+ var message = panel.FetchLocalRun(projectOwner, projectName, runPath);
38016
+ var runContent = (_a = JSON.parse(message.data)) === null || _a === void 0 ? void 0 : _a.runContent;
38017
+ var run = JSON.parse(runContent);
38018
+ return run;
38019
+ }, [panel]);
38008
38020
  return {
38009
38021
  getFileBase64: getFileBase64,
38010
38022
  saveFileBase64: saveFileBase64,
38011
38023
  fromFileToBase64: fromFileToBase64,
38012
- getFilesFromDir: getFilesFromDir
38024
+ getFilesFromDir: getFilesFromDir,
38025
+ fetchLocalRun: fetchLocalRun
38013
38026
  };
38014
38027
  };
38015
38028
 
@@ -38166,7 +38179,13 @@ var useCreateStudy = function (accountName, projectName, client) {
38166
38179
  job: job
38167
38180
  })
38168
38181
  .then(function (res) {
38169
- onSuccess && onSuccess(accountName, projectName, res.data.id);
38182
+ onSuccess && onSuccess({
38183
+ accountName: accountName,
38184
+ projectName: projectName,
38185
+ jobName: name,
38186
+ jobDescription: description,
38187
+ studyId: res.data.id
38188
+ });
38170
38189
  })
38171
38190
  .catch(function (err) {
38172
38191
  var data = err.response.data;
@@ -38202,22 +38221,31 @@ var useCreateStudy = function (accountName, projectName, client) {
38202
38221
  });
38203
38222
  }).catch(function (err) {
38204
38223
  console.error(err);
38205
- })];
38224
+ })
38225
+ // JobInfo mapping
38226
+ ];
38206
38227
  case 1:
38207
38228
  job = _c.sent();
38208
38229
  jobInfo = {
38230
+ RecipeOwner: '',
38231
+ Recipe: recipe,
38209
38232
  Job: job,
38210
38233
  IsLocalJob: isLocalJob,
38234
+ ProjectSlug: "".concat(cloudProjectOwner, "/").concat(cloudProjectName),
38211
38235
  LocalCPUNumber: localCPUCount,
38212
38236
  LocalRunFolder: localRunFolder,
38213
- CloudProject: cloudProjectName,
38214
- ProjectOwner: cloudProjectOwner,
38215
- SubFolderPath: ''
38237
+ Platform: host
38216
38238
  };
38217
38239
  console.log(jobInfo);
38218
38240
  response = window.parent.chrome.webview.hostObjects.study.RunSimulation(JSON.stringify(jobInfo))
38219
38241
  .then(function (value) {
38220
- onSuccess && onSuccess(cloudProjectOwner, cloudProjectName, value);
38242
+ onSuccess && onSuccess({
38243
+ accountName: cloudProjectOwner,
38244
+ projectName: cloudProjectName,
38245
+ jobName: name,
38246
+ jobDescription: description,
38247
+ studyId: value
38248
+ });
38221
38249
  }, function (reason) {
38222
38250
  console.error(reason);
38223
38251
  });
@@ -44665,7 +44693,6 @@ var CreateStudy = function (_a) {
44665
44693
  var projectOwner = selAccount ? ((_b = selAccount.username) !== null && _b !== void 0 ? _b : selAccount.account_name) : undefined;
44666
44694
  var projectSlug = selProject ? selProject.slug.split('/')[1] : undefined;
44667
44695
  var _h = useCreateStudy(projectOwner, projectSlug, client), host = _h.host, createStudy = _h.createStudy, createLocalStudy = _h.createLocalStudy;
44668
- useRuns(client).listRuns;
44669
44696
  useEffect(function () {
44670
44697
  if (!selRecipe)
44671
44698
  return;
@@ -44674,33 +44701,33 @@ var CreateStudy = function (_a) {
44674
44701
  var basePath = useMemo(function () {
44675
44702
  return client.config.basePath.replace('api', 'app');
44676
44703
  }, [client]);
44677
- var _onSuccessCloud = function (accountName, projectName, studyId) {
44704
+ var _onSuccessCloud = function (projectJobInfo) {
44678
44705
  if (!basePath) {
44679
44706
  throw new Error('CreateStudy: client.configuration.basepath not defined.');
44680
44707
  }
44681
44708
  // Custom or default callback
44682
44709
  if (onSuccess) {
44683
- onSuccess(accountName, projectName, studyId, true);
44710
+ onSuccess(projectJobInfo, true);
44684
44711
  }
44685
44712
  else {
44686
44713
  _t.success('Study submitted!', { duration: 4000, position: 'bottom-left', style: { minWidth: '300px', fontSize: '12px' }
44687
44714
  });
44688
44715
  setTimeout(function () {
44689
- window.location.href = "".concat(basePath, "/").concat(accountName, "/projects/").concat(projectName, "/studies/").concat(studyId);
44716
+ window.location.href = "".concat(basePath, "/").concat(projectJobInfo.accountName, "/projects/").concat(projectJobInfo.projectName, "/studies/").concat(projectJobInfo.studyId, "?tab=details&perPage=5&status=null&page=1");
44690
44717
  }, 3000);
44691
44718
  }
44692
44719
  };
44693
- var _onSuccessLocal = function (accountName, projectName, studyId) {
44720
+ var _onSuccessLocal = function (projectJobInfo) {
44694
44721
  if (!basePath) {
44695
44722
  throw new Error('CreateStudy: client.configuration.basepath not defined.');
44696
44723
  }
44697
44724
  // Custom or default callback
44698
44725
  // local study ID === run ID
44699
44726
  if (onSuccess) {
44700
- onSuccess(accountName, projectName, studyId, false);
44727
+ onSuccess(projectJobInfo, false);
44701
44728
  }
44702
44729
  else {
44703
- _t.success("Study is running! Do not close the console.\nYou will find output here ".concat(studyId, "."), { duration: 4000, position: 'bottom-left', style: { minWidth: '300px', fontSize: '12px' } });
44730
+ _t.success("Study is running! Do not close the console.\nYou will find output here ".concat(projectJobInfo.studyId, "."), { duration: 4000, position: 'bottom-left', style: { minWidth: '300px', fontSize: '12px' } });
44704
44731
  }
44705
44732
  };
44706
44733
  var handleCreateStudy = useCallback(function (name, jobArgs, description, localConfig) {
@@ -48491,7 +48518,7 @@ var StudyCard = function (_a) {
48491
48518
  if (!enableClick)
48492
48519
  return;
48493
48520
  if (study && total > 1) {
48494
- window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id, "?tab=details&limit=5&status=null&page=1");
48521
+ window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id, "?tab=details&perPage=5&status=null&page=1");
48495
48522
  }
48496
48523
  else if (study && run) {
48497
48524
  window.location.href = "/".concat(projectOwner, "/projects/").concat(projectName, "/studies/").concat(study.id, "/runs/").concat(run.id, "?tab=details");