pollination-react-io 1.57.1 → 1.58.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/RunDetails/Cards/FileCard.d.ts +1 -0
- package/build/RunDetails/RunContent.types.d.ts +1 -0
- package/build/RunDetails/RunDetails.types.d.ts +2 -3
- package/build/index.esm.js +80 -42
- package/build/index.esm.js.map +1 -1
- package/build/index.js +80 -42
- package/build/index.js.map +1 -1
- package/package.json +1 -1
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Run
|
1
|
+
import { Run } from '@pollination-solutions/pollination-sdk';
|
2
2
|
import { CSSProperties } from 'react';
|
3
3
|
import { APIClient } from '../hooks';
|
4
4
|
import { FileCardProps } from './Cards/FileCard';
|
@@ -17,10 +17,9 @@ export interface RunDetailsProps {
|
|
17
17
|
projectOwner: string;
|
18
18
|
projectName: string;
|
19
19
|
run?: Run | LocalRun;
|
20
|
-
runId?: string;
|
21
|
-
authUser?: UserPrivate;
|
22
20
|
client?: APIClient;
|
23
21
|
style?: CSSProperties;
|
24
22
|
getFileCard?: (card: FileCardProps) => any;
|
25
23
|
getFolderCard?: (card: FolderCardProps) => any;
|
24
|
+
isCloud?: boolean;
|
26
25
|
}
|
package/build/index.esm.js
CHANGED
@@ -44751,7 +44751,7 @@ var CreateStudy = function (_a) {
|
|
44751
44751
|
var jobName_1 = toUnixPath(projectJobInfo.studyId).split('/').reverse()[0];
|
44752
44752
|
// Path is the full path of the local machine where the run input/output are
|
44753
44753
|
setTimeout(function () {
|
44754
|
-
window.location.href = "
|
44754
|
+
window.location.href = "".concat(basePath, "/").concat(projectJobInfo.accountName, "/projects/").concat(projectJobInfo.projectName, "/localStudies/").concat(jobName_1, "/?path=").concat(projectJobInfo.studyId);
|
44755
44755
|
}, 3000);
|
44756
44756
|
}
|
44757
44757
|
};
|
@@ -49325,26 +49325,27 @@ var CADtypeEnum;
|
|
49325
49325
|
})(CADtypeEnum || (CADtypeEnum = {}));
|
49326
49326
|
var FileCard = function (_a) {
|
49327
49327
|
var _b, _c;
|
49328
|
-
var projectOwner = _a.projectOwner, projectName = _a.projectName, client = _a.client, studyId = _a.studyId, runId = _a.runId, label = _a.label, path = _a.path, file = _a.file, description = _a.description, onClicked = _a.onClicked;
|
49328
|
+
var projectOwner = _a.projectOwner, projectName = _a.projectName, client = _a.client, studyId = _a.studyId, runId = _a.runId, label = _a.label, path = _a.path, file = _a.file, description = _a.description, onClicked = _a.onClicked, _d = _a.isCloud, isCloud = _d === void 0 ? true : _d;
|
49329
49329
|
var host = getHost();
|
49330
|
-
var
|
49331
|
-
var _e = useState(false),
|
49332
|
-
var _f = useState(
|
49333
|
-
var _g = useState(
|
49330
|
+
var fromFileToBase64 = usePollinationPanel().fromFileToBase64;
|
49331
|
+
var _e = useState(false), open = _e[0], setOpen = _e[1];
|
49332
|
+
var _f = useState(false), over = _f[0], setOver = _f[1];
|
49333
|
+
var _g = useState(true), isLoading = _g[0], setIsLoading = _g[1];
|
49334
|
+
var _h = useState(false), isInactive = _h[0], setIsInactive = _h[1];
|
49334
49335
|
// Data to use for CAD injections
|
49335
|
-
var
|
49336
|
+
var _j = useState(), CADdata = _j[0], setCADdata = _j[1];
|
49336
49337
|
// File to send to parent
|
49337
|
-
var
|
49338
|
-
/**
|
49339
|
-
|
49340
|
-
|
49341
|
-
|
49342
|
-
|
49343
|
-
|
49344
|
-
|
49345
|
-
|
49346
|
-
}
|
49347
|
-
|
49338
|
+
var _k = useState(), currFile = _k[0], setCurrFile = _k[1];
|
49339
|
+
// /**
|
49340
|
+
// * Check if run id is a valid UUID or file path (Local sim)
|
49341
|
+
// * @param str run id
|
49342
|
+
// * @returns true or false
|
49343
|
+
// */
|
49344
|
+
// const checkIfValidUUID = (str: string): boolean => {
|
49345
|
+
// const regexExp = /^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/gi
|
49346
|
+
// return regexExp.test(str)
|
49347
|
+
// }
|
49348
|
+
// const isCloud = useMemo(() => checkIfValidUUID(runId), [runId])
|
49348
49349
|
var downloadArtifact = useArtifacts(projectOwner, projectName, client).downloadArtifact;
|
49349
49350
|
var setCADintegration = useCallback(function (file) {
|
49350
49351
|
if (!file)
|
@@ -49395,9 +49396,39 @@ var FileCard = function (_a) {
|
|
49395
49396
|
setCADintegration(blob);
|
49396
49397
|
});
|
49397
49398
|
})
|
49398
|
-
.catch(function () {
|
49399
|
+
.catch(function (err) {
|
49400
|
+
console.error(err);
|
49401
|
+
})
|
49399
49402
|
.finally(function () { return setIsLoading(false); });
|
49400
49403
|
};
|
49404
|
+
var extension = useMemo(function () {
|
49405
|
+
return path.split('/').reverse()[0];
|
49406
|
+
}, [path]);
|
49407
|
+
/**
|
49408
|
+
* Read local file as Blob - Panel only
|
49409
|
+
*/
|
49410
|
+
var base64AndFetch = function (path) {
|
49411
|
+
if (!path)
|
49412
|
+
return;
|
49413
|
+
var data = fromFileToBase64(path);
|
49414
|
+
var base64Data = data === null || data === void 0 ? void 0 : data.data;
|
49415
|
+
if (!base64Data)
|
49416
|
+
return;
|
49417
|
+
// bas64 mapping
|
49418
|
+
var t;
|
49419
|
+
switch (extension) {
|
49420
|
+
case 'zip':
|
49421
|
+
t = 'application/zip';
|
49422
|
+
break;
|
49423
|
+
case 'hbjson':
|
49424
|
+
case 'vsf':
|
49425
|
+
t = 'text/plain';
|
49426
|
+
default:
|
49427
|
+
t = 'text/plain';
|
49428
|
+
break;
|
49429
|
+
}
|
49430
|
+
fetchAndSet("data:".concat(t, ";base64,").concat(base64Data));
|
49431
|
+
};
|
49401
49432
|
useEffect(function () {
|
49402
49433
|
if (isCloud) {
|
49403
49434
|
// Generate Blob on click
|
@@ -49406,8 +49437,15 @@ var FileCard = function (_a) {
|
|
49406
49437
|
.catch(function () { return onClicked({ label: label, path: path, file: undefined, description: description, runId: runId }); });
|
49407
49438
|
}
|
49408
49439
|
else {
|
49409
|
-
|
49410
|
-
|
49440
|
+
var isPanel = checkPollinationPanel();
|
49441
|
+
if (!isPanel) {
|
49442
|
+
setIsInactive(true);
|
49443
|
+
setCurrFile(undefined);
|
49444
|
+
setCADintegration(undefined);
|
49445
|
+
setIsLoading(false);
|
49446
|
+
return;
|
49447
|
+
}
|
49448
|
+
base64AndFetch(path);
|
49411
49449
|
}
|
49412
49450
|
}, [studyId, runId, label, path]);
|
49413
49451
|
return React__default.createElement("div", { className: isInactive
|
@@ -49489,11 +49527,11 @@ var css_248z$2 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --
|
|
49489
49527
|
styleInject(css_248z$2);
|
49490
49528
|
|
49491
49529
|
var RunContent = function (_a) {
|
49492
|
-
var inputData = _a.inputData, projectOwner = _a.projectOwner, projectName = _a.projectName, studyId = _a.studyId, runId = _a.runId, client = _a.client, title = _a.title, style = _a.style, getFileCard = _a.getFileCard, getFolderCard = _a.getFolderCard;
|
49493
|
-
var
|
49494
|
-
var
|
49495
|
-
var
|
49496
|
-
var
|
49530
|
+
var inputData = _a.inputData, projectOwner = _a.projectOwner, projectName = _a.projectName, studyId = _a.studyId, runId = _a.runId, client = _a.client, title = _a.title, style = _a.style, getFileCard = _a.getFileCard, getFolderCard = _a.getFolderCard, _b = _a.isCloud, isCloud = _b === void 0 ? true : _b;
|
49531
|
+
var _c = useState([]), currData = _c[0], setCurrData = _c[1];
|
49532
|
+
var _d = useState([]), currParams = _d[0], setCurrParams = _d[1];
|
49533
|
+
var _e = useState([]), currFiles = _e[0], setCurrFiles = _e[1];
|
49534
|
+
var _f = useState([]), currFolders = _f[0], setCurrFolders = _f[1];
|
49497
49535
|
useEffect(function () { return setCurrData(inputData); }, [inputData]);
|
49498
49536
|
useEffect(function () {
|
49499
49537
|
if (!currData || currData.length == 0)
|
@@ -49523,11 +49561,11 @@ var RunContent = function (_a) {
|
|
49523
49561
|
setCurrFiles(files);
|
49524
49562
|
setCurrFolders(folders);
|
49525
49563
|
}, [currData]);
|
49526
|
-
|
49527
|
-
|
49528
|
-
|
49529
|
-
}
|
49530
|
-
|
49564
|
+
// const checkIfValidUUID = (str: string): boolean => {
|
49565
|
+
// const regexExp = /^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/gi
|
49566
|
+
// return regexExp.test(str)
|
49567
|
+
// }
|
49568
|
+
// const isCloud = useMemo(() => checkIfValidUUID(runId), [runId])
|
49531
49569
|
/**
|
49532
49570
|
* Click event handler of the file card
|
49533
49571
|
* @param card File card props
|
@@ -49555,7 +49593,7 @@ var RunContent = function (_a) {
|
|
49555
49593
|
currFiles.length > 0 && projectOwner && projectName && client && runId && React__default.createElement("div", { style: { padding: '20px' } },
|
49556
49594
|
React__default.createElement("div", { className: 'cards' }, currFiles.map(function (_a, index) {
|
49557
49595
|
var label = _a.label, path = _a.path, description = _a.description;
|
49558
|
-
return React__default.createElement(FileCard, { projectOwner: projectOwner, projectName: projectName, studyId: studyId, runId: runId, client: client, key: "filecard-".concat(index), label: label, path: path, description: description, onClicked: onFileClicked });
|
49596
|
+
return React__default.createElement(FileCard, { projectOwner: projectOwner, projectName: projectName, studyId: studyId, runId: runId, client: client, key: "filecard-".concat(index), label: label, path: path, description: description, onClicked: onFileClicked, isCloud: isCloud });
|
49559
49597
|
}))),
|
49560
49598
|
currFolders.length > 0 && React__default.createElement("div", { style: { padding: '20px' } },
|
49561
49599
|
React__default.createElement("div", { className: 'cards' }, currFolders.map(function (_a, index) {
|
@@ -49571,11 +49609,10 @@ var RunContent = function (_a) {
|
|
49571
49609
|
|
49572
49610
|
var RunDetails = function (_a) {
|
49573
49611
|
var projectName = _a.projectName, projectOwner = _a.projectOwner, run = _a.run, // Cloud and Local
|
49574
|
-
|
49575
|
-
|
49576
|
-
var
|
49577
|
-
var
|
49578
|
-
var _d = useState([]), outputs = _d[0], setOutputs = _d[1];
|
49612
|
+
client = _a.client, style = _a.style, getFileCard = _a.getFileCard, getFolderCard = _a.getFolderCard, _b = _a.isCloud, isCloud = _b === void 0 ? true : _b;
|
49613
|
+
var _c = useState([]), extraInputs = _c[0], setExtraInputs = _c[1];
|
49614
|
+
var _d = useState([]), recipeInputs = _d[0], setRecipeInputs = _d[1];
|
49615
|
+
var _e = useState([]), outputs = _e[0], setOutputs = _e[1];
|
49579
49616
|
useEffect(function () {
|
49580
49617
|
if (!run)
|
49581
49618
|
return;
|
@@ -49586,6 +49623,7 @@ var RunDetails = function (_a) {
|
|
49586
49623
|
var outputs = [];
|
49587
49624
|
var recipeInputs = [];
|
49588
49625
|
var extraInputs = [];
|
49626
|
+
// If cloud
|
49589
49627
|
if (run.status) {
|
49590
49628
|
run.status.inputs.forEach(function (i) {
|
49591
49629
|
if (recipeInputNames.includes(i.name)) {
|
@@ -49603,11 +49641,11 @@ var RunDetails = function (_a) {
|
|
49603
49641
|
}, [run]);
|
49604
49642
|
return (React__default.createElement("div", null,
|
49605
49643
|
outputs &&
|
49606
|
-
React__default.createElement(RunContent, { title: 'Outputs', inputData: outputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id
|
49644
|
+
React__default.createElement(RunContent, { title: 'Outputs', inputData: outputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id, client: client, style: style, getFileCard: getFileCard, getFolderCard: getFolderCard, isCloud: isCloud }),
|
49607
49645
|
recipeInputs &&
|
49608
|
-
React__default.createElement(RunContent, { title: 'Inputs', inputData: recipeInputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id
|
49646
|
+
React__default.createElement(RunContent, { title: 'Inputs', inputData: recipeInputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id, client: client, style: style, getFileCard: getFileCard, getFolderCard: getFolderCard, isCloud: isCloud }),
|
49609
49647
|
extraInputs && extraInputs.length > 0 &&
|
49610
|
-
React__default.createElement(RunContent, { title: 'Extra Inputs', inputData: extraInputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id
|
49648
|
+
React__default.createElement(RunContent, { title: 'Extra Inputs', inputData: extraInputs, projectName: projectName, projectOwner: projectOwner, studyId: run.status.job_id, runId: run.id, client: client, style: style, getFileCard: getFileCard, getFolderCard: getFolderCard, isCloud: isCloud })));
|
49611
49649
|
};
|
49612
49650
|
|
49613
49651
|
var css_248z$1 = ":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.run-progress {\n grid-area: runprogress;\n font-size: 0.9rem;\n text-align: left !important;\n}\n\n.run-link {\n grid-area: runlink;\n text-align: right !important;\n font-size: 1rem;\n white-space: nowrap;\n}\n\n.run-details {\n grid-area: rundetails;\n font-size: 0.9rem;\n}\n\n.study-run-container {\n display: grid;\n grid-template-areas: \"runprogress runprogress runprogress runprogress runprogress runlink\" \"rundetails rundetails rundetails rundetails rundetails rundetails\";\n gap: 0.35rem;\n border: 0.1rem solid;\n align-items: center;\n padding: 0.75rem;\n transition: box-shadow 0.3s ease 0s, border-color 0.3s ease 0s;\n grid-template-rows: max-content auto;\n border-radius: 6px;\n line-height: 1.5;\n}\n\n.study-run-container:hover {\n cursor: pointer;\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}\n\n.run-navigator {\n display: grid;\n grid-template-columns: min-content auto min-content min-content;\n grid-auto-rows: auto;\n align-items: center;\n grid-gap: 0.9rem;\n}\n\n.run-pg-input {\n margin: 0 4px 0 4px;\n padding: 8px 8px;\n text-align: center;\n color: rgba(0, 0, 0, 0.8509803922);\n width: min-content;\n border-radius: 2px;\n font-size: 12px;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.container-scroll {\n display: inline-flex;\n flex-direction: row;\n overflow-x: auto;\n width: 100%;\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}";
|
@@ -50278,7 +50316,7 @@ styleInject(css_248z);
|
|
50278
50316
|
|
50279
50317
|
var RunRow = function (_a) {
|
50280
50318
|
var _b, _c;
|
50281
|
-
var projectOwner = _a.projectOwner, projectName = _a.projectName, run = _a.run, index = _a.index, client = _a.client
|
50319
|
+
var projectOwner = _a.projectOwner, projectName = _a.projectName, run = _a.run, index = _a.index, client = _a.client; _a.authUser; var style = _a.style, getFileCard = _a.getFileCard, getFolderCard = _a.getFolderCard;
|
50282
50320
|
var statusMap = useRuns(client).statusMap;
|
50283
50321
|
var _d = useState(false), open = _d[0], setOpen = _d[1];
|
50284
50322
|
/*
|
@@ -50378,7 +50416,7 @@ var RunRow = function (_a) {
|
|
50378
50416
|
: hover.debugOver ? '#40a9ff'
|
50379
50417
|
: '#000') } }))),
|
50380
50418
|
open && React__default.createElement("div", { className: 'run-details' },
|
50381
|
-
React__default.createElement(RunDetails, { projectOwner: projectOwner, projectName: projectName, run: run,
|
50419
|
+
React__default.createElement(RunDetails, { projectOwner: projectOwner, projectName: projectName, run: run, client: client, getFileCard: getFileCard, getFolderCard: getFolderCard, style: style })));
|
50382
50420
|
};
|
50383
50421
|
|
50384
50422
|
var RunTable = function (_a) {
|