pollination-react-io 1.18.1 → 1.19.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/SelectAccount/SelectAccount.types.d.ts +1 -0
- package/build/SelectProject/SelectProject.types.d.ts +2 -1
- package/build/SelectRun/SelectRun.types.d.ts +1 -0
- package/build/SelectStudy/SelectStudy.types.d.ts +1 -0
- package/build/atoms/ComboBox/ComboBox.types.d.ts +1 -0
- package/build/index.esm.js +184 -84
- package/build/index.esm.js.map +1 -1
- package/build/index.js +184 -84
- package/build/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,6 +8,7 @@ export interface ComboBoxProps {
|
|
|
8
8
|
}[];
|
|
9
9
|
renderItem?: (item: any, i?: number, arr?: any[]) => ReactNode;
|
|
10
10
|
setSelected?: (item: any) => void;
|
|
11
|
+
onClear?: () => void;
|
|
11
12
|
onScrollReachEnd?: (...args: any) => void;
|
|
12
13
|
stateReducer?: (state: UseComboboxState<{
|
|
13
14
|
id: string;
|
package/build/index.esm.js
CHANGED
|
@@ -8647,12 +8647,11 @@ var ScrollZone = function (_a) {
|
|
|
8647
8647
|
|
|
8648
8648
|
var ICON_SIZE = 18;
|
|
8649
8649
|
var ComboBox = React__default.forwardRef(function ComboBox(_a, ref) {
|
|
8650
|
-
var _b
|
|
8651
|
-
var items = _a.items, renderItem = _a.renderItem, setSelected = _a.setSelected, onScrollReachEnd = _a.onScrollReachEnd, _c = _a.stateReducer, stateReducer = _c === void 0 ? function (state, _a) {
|
|
8650
|
+
var items = _a.items, renderItem = _a.renderItem, setSelected = _a.setSelected, onClear = _a.onClear, onScrollReachEnd = _a.onScrollReachEnd, _b = _a.stateReducer, stateReducer = _b === void 0 ? function (state, _a) {
|
|
8652
8651
|
_a.type; var changes = _a.changes;
|
|
8653
8652
|
return changes;
|
|
8654
|
-
} :
|
|
8655
|
-
var
|
|
8653
|
+
} : _b, _c = _a.disabled, disabled = _c === void 0 ? false : _c, hidden = _a.hidden, _d = _a.loading, loading = _d === void 0 ? false : _d, _e = _a.icon, icon = _e === void 0 ? React__default.createElement(CursorText$1, null) : _e, inputStyle = _a.inputStyle, menuStyle = _a.menuStyle, _f = _a.maxHeight, maxHeight = _f === void 0 ? 180 : _f, inputProps = _a.inputProps, header = _a.header, footer = _a.footer, _g = _a.noMatchText, noMatchText = _g === void 0 ? 'No matching items' : _g;
|
|
8654
|
+
var _h = useState(items), inputItems = _h[0], setInputItems = _h[1];
|
|
8656
8655
|
useEffect(function () {
|
|
8657
8656
|
setInputItems(items);
|
|
8658
8657
|
}, [items]);
|
|
@@ -8661,7 +8660,7 @@ var ComboBox = React__default.forwardRef(function ComboBox(_a, ref) {
|
|
|
8661
8660
|
lodash_debounce(onScrollReachEnd, 1000, { leading: true, trailing: false })
|
|
8662
8661
|
: undefined;
|
|
8663
8662
|
}, [onScrollReachEnd]);
|
|
8664
|
-
var
|
|
8663
|
+
var _j = useCombobox({
|
|
8665
8664
|
items: inputItems,
|
|
8666
8665
|
onInputValueChange: function (_a) {
|
|
8667
8666
|
var inputValue = _a.inputValue;
|
|
@@ -8676,20 +8675,22 @@ var ComboBox = React__default.forwardRef(function ComboBox(_a, ref) {
|
|
|
8676
8675
|
stateReducer: stateReducer
|
|
8677
8676
|
// to what extent is this necessary?
|
|
8678
8677
|
// environment: environment ? environment : undefined
|
|
8679
|
-
}), isOpen =
|
|
8678
|
+
}), isOpen = _j.isOpen, getToggleButtonProps = _j.getToggleButtonProps, getMenuProps = _j.getMenuProps, getInputProps = _j.getInputProps, getComboboxProps = _j.getComboboxProps, highlightedIndex = _j.highlightedIndex, getItemProps = _j.getItemProps, openMenu = _j.openMenu, closeMenu = _j.closeMenu, selectItem = _j.selectItem, selectedItem = _j.selectedItem, inputValue = _j.inputValue, setInputValue = _j.setInputValue;
|
|
8680
8679
|
useImperativeHandle(ref, function () { return ({
|
|
8681
8680
|
selectItem: selectItem,
|
|
8682
8681
|
selectedItem: selectedItem,
|
|
8683
|
-
inputValue: inputValue
|
|
8682
|
+
inputValue: inputValue,
|
|
8683
|
+
setInputValue: setInputValue,
|
|
8684
8684
|
}); });
|
|
8685
8685
|
useEffect(function () {
|
|
8686
|
-
|
|
8687
|
-
// console.log('combobox: ', selectedItem && (selectedItem.name || selectedItem.file_name) ? selectedItem.name ?? selectedItem.file_name : undefined,)
|
|
8686
|
+
var _a;
|
|
8688
8687
|
if (!selectedItem)
|
|
8689
8688
|
return;
|
|
8689
|
+
// @ts-ignore
|
|
8690
|
+
setInputValue((_a = selectedItem.name) !== null && _a !== void 0 ? _a : selectedItem.file_name);
|
|
8690
8691
|
setSelected && setSelected(selectedItem);
|
|
8691
8692
|
closeMenu();
|
|
8692
|
-
}, [closeMenu, selectedItem, setSelected]);
|
|
8693
|
+
}, [closeMenu, selectedItem, setInputValue, setSelected]);
|
|
8693
8694
|
return (React__default.createElement("div", { "data-testid": "ComboBoxSelect", className: hidden ? undefined : 'poll-combobox' },
|
|
8694
8695
|
React__default.createElement(ButtonGroup, { wrapperProps: __assign(__assign({}, getComboboxProps()), { style: __assign(__assign({}, inputStyle), { position: 'relative', width: '100%' }) }), disabled: disabled },
|
|
8695
8696
|
React__default.createElement("input", __assign({}, getInputProps(__assign(__assign({ placeholder: 'Search for something...', spellCheck: false, disabled: disabled, style: {
|
|
@@ -8698,9 +8699,7 @@ var ComboBox = React__default.forwardRef(function ComboBox(_a, ref) {
|
|
|
8698
8699
|
borderBottomLeftRadius: isOpen ? 0 : 4,
|
|
8699
8700
|
flex: 12,
|
|
8700
8701
|
lineHeight: '1.5rem',
|
|
8701
|
-
},
|
|
8702
|
-
// @ts-ignore
|
|
8703
|
-
value: selectedItem && (selectedItem.name || selectedItem.file_name) ? (_b = selectedItem.name) !== null && _b !== void 0 ? _b : selectedItem.file_name : '' }, inputProps), { onFocus: function () {
|
|
8702
|
+
} }, inputProps), { onFocus: function () {
|
|
8704
8703
|
openMenu();
|
|
8705
8704
|
}, type: hidden ? 'hidden' : undefined })))),
|
|
8706
8705
|
!hidden &&
|
|
@@ -8731,6 +8730,7 @@ var ComboBox = React__default.forwardRef(function ComboBox(_a, ref) {
|
|
|
8731
8730
|
return (React__default.createElement("button", { type: 'button', tabIndex: -1, disabled: disabled, onClick: function () {
|
|
8732
8731
|
selectItem(null);
|
|
8733
8732
|
setSelected && setSelected(undefined);
|
|
8733
|
+
onClear && onClear();
|
|
8734
8734
|
}, style: {
|
|
8735
8735
|
borderBottomRightRadius: isOpen ? 0 : 4,
|
|
8736
8736
|
} },
|
|
@@ -40503,6 +40503,7 @@ var SelectCloudArtifacts = function (_a) {
|
|
|
40503
40503
|
// Support default values
|
|
40504
40504
|
var defaultValueRef = useRef(defaultValue ? defaultValue.split('/').splice(-1)[0] : undefined);
|
|
40505
40505
|
var _g = useState(defaultValue ? defaultValue.split('/').slice(0, -1) : []), path = _g[0], setPath = _g[1];
|
|
40506
|
+
var pathRef = useRef(defaultValue ? defaultValue.split('/').slice(0, -1) : []);
|
|
40506
40507
|
var _h = useState(), selArtifact = _h[0], setSelArtifact = _h[1];
|
|
40507
40508
|
useEffect(function () {
|
|
40508
40509
|
setLoading(true);
|
|
@@ -40517,22 +40518,35 @@ var SelectCloudArtifacts = function (_a) {
|
|
|
40517
40518
|
if (defaultFile) {
|
|
40518
40519
|
comboBoxRef.current.selectItem(defaultFile);
|
|
40519
40520
|
defaultValueRef.current = undefined;
|
|
40520
|
-
|
|
40521
|
+
setSelArtifact(defaultFile);
|
|
40521
40522
|
}
|
|
40522
40523
|
}
|
|
40523
40524
|
})
|
|
40524
40525
|
.finally(function () { return setLoading(false); });
|
|
40525
|
-
}, [
|
|
40526
|
+
}, [
|
|
40527
|
+
client,
|
|
40528
|
+
defaultValue,
|
|
40529
|
+
fileNameMatch,
|
|
40530
|
+
host,
|
|
40531
|
+
jobId,
|
|
40532
|
+
listArtifacts,
|
|
40533
|
+
onChange,
|
|
40534
|
+
path,
|
|
40535
|
+
]);
|
|
40526
40536
|
useEffect(function () {
|
|
40527
40537
|
if (!selArtifact || selArtifact.file_type !== 'folder')
|
|
40528
40538
|
return;
|
|
40529
|
-
setPath(function (path) {
|
|
40539
|
+
setPath(function (path) {
|
|
40540
|
+
var newPath = ["".concat(path, "/").concat(selArtifact.file_name)];
|
|
40541
|
+
pathRef.current = ["".concat(path, "/").concat(selArtifact.file_name)];
|
|
40542
|
+
return newPath;
|
|
40543
|
+
});
|
|
40530
40544
|
}, [onChange, selArtifact]);
|
|
40531
40545
|
useEffect(function () {
|
|
40532
40546
|
if (!selArtifact || selArtifact.file_type !== 'file')
|
|
40533
40547
|
return;
|
|
40534
|
-
onChange && onChange(__assign(__assign({}, selArtifact), { pollination_cloud_path: "".concat(
|
|
40535
|
-
}, [onChange,
|
|
40548
|
+
onChange && onChange(__assign(__assign({}, selArtifact), { pollination_cloud_path: "".concat(pathRef.current, "/").concat(selArtifact.file_name) }));
|
|
40549
|
+
}, [onChange, selArtifact]);
|
|
40536
40550
|
var stateReducer = useCallback(function (state, actionAndChanges) {
|
|
40537
40551
|
var type = actionAndChanges.type, changes = actionAndChanges.changes;
|
|
40538
40552
|
switch (type) {
|
|
@@ -40570,7 +40584,7 @@ var SelectCloudArtifacts = function (_a) {
|
|
|
40570
40584
|
} },
|
|
40571
40585
|
icon,
|
|
40572
40586
|
item.name));
|
|
40573
|
-
}, setSelected: setSelArtifact, loading: loading, disabled: !projectName || !projectOwner, hidden: hidden, icon: React__default.createElement(CloudPlus$1, null), header: path.length > 0 &&
|
|
40587
|
+
}, setSelected: setSelArtifact, onClear: function () { return setPath([]); }, loading: loading, disabled: !projectName || !projectOwner, hidden: hidden, icon: React__default.createElement(CloudPlus$1, null), header: path.length > 0 &&
|
|
40574
40588
|
React__default.createElement("div", { key: "header", style: {
|
|
40575
40589
|
width: '100%',
|
|
40576
40590
|
display: 'flex',
|
|
@@ -41596,24 +41610,26 @@ TabPanel.defaultProps = defaultProps;
|
|
|
41596
41610
|
|
|
41597
41611
|
var SelectProject = function (_a) {
|
|
41598
41612
|
var _b, _c;
|
|
41599
|
-
var authUser = _a.authUser, client = _a.client, projectOwner = _a.projectOwner, setSelProject = _a.setSelProject;
|
|
41613
|
+
var authUser = _a.authUser, client = _a.client, projectOwner = _a.projectOwner, _defaultValue = _a.defaultValue, setSelProject = _a.setSelProject;
|
|
41600
41614
|
var comboBoxRef = useRef();
|
|
41601
|
-
var _d = useState(),
|
|
41602
|
-
var _e = useState(
|
|
41603
|
-
var
|
|
41615
|
+
var _d = useState(_defaultValue ? [_defaultValue] : undefined), defaultValue = _d[0], setDefaultValue = _d[1];
|
|
41616
|
+
var _e = useState([]), projects = _e[0], setProjects = _e[1];
|
|
41617
|
+
var _f = useState(false), loading = _f[0], setLoading = _f[1];
|
|
41618
|
+
var totalProjectsRef = useRef({
|
|
41604
41619
|
loaded: 0,
|
|
41605
41620
|
total: undefined
|
|
41606
41621
|
});
|
|
41607
|
-
var
|
|
41608
|
-
var
|
|
41622
|
+
var _g = useState(0), total = _g[0], setTotal = _g[1];
|
|
41623
|
+
var _h = useState({
|
|
41609
41624
|
owner: (_b = [projectOwner]) !== null && _b !== void 0 ? _b : (authUser && [authUser.username]),
|
|
41610
41625
|
page: 1,
|
|
41611
41626
|
perPage: 10,
|
|
41612
|
-
|
|
41627
|
+
ids: defaultValue
|
|
41628
|
+
}), queryConfig = _h[0], setQueryConfig = _h[1];
|
|
41613
41629
|
// resetting query
|
|
41614
41630
|
useEffect(function () {
|
|
41615
41631
|
// reset total loaded
|
|
41616
|
-
|
|
41632
|
+
totalProjectsRef.current = {
|
|
41617
41633
|
loaded: 0,
|
|
41618
41634
|
total: undefined
|
|
41619
41635
|
};
|
|
@@ -41622,14 +41638,14 @@ var SelectProject = function (_a) {
|
|
|
41622
41638
|
comboBoxRef.current.selectItem(null);
|
|
41623
41639
|
}
|
|
41624
41640
|
setProjects([]);
|
|
41625
|
-
setQueryConfig(function (q) { return (__assign(__assign({}, q), { owner: [projectOwner], page: 1 })); });
|
|
41626
|
-
}, [projectOwner]);
|
|
41641
|
+
setQueryConfig(function (q) { return (__assign(__assign({}, q), { owner: [projectOwner], ids: defaultValue, page: 1 })); });
|
|
41642
|
+
}, [defaultValue, projectOwner]);
|
|
41627
41643
|
var fetchProjects = useCallback(function (queryConfig) {
|
|
41628
|
-
if (!authUser)
|
|
41644
|
+
if (!authUser || !client || !client.projects)
|
|
41629
41645
|
return;
|
|
41630
41646
|
if (!queryConfig.owner)
|
|
41631
41647
|
return;
|
|
41632
|
-
var _a =
|
|
41648
|
+
var _a = totalProjectsRef.current, total = _a.total, loaded = _a.loaded;
|
|
41633
41649
|
if (total && loaded >= total)
|
|
41634
41650
|
return;
|
|
41635
41651
|
setLoading(true);
|
|
@@ -41638,24 +41654,36 @@ var SelectProject = function (_a) {
|
|
|
41638
41654
|
var data = _a.data;
|
|
41639
41655
|
setProjects(function (state) { return state ? __spreadArray(__spreadArray([], state, true), data.resources, true) : __spreadArray([], data.resources, true); });
|
|
41640
41656
|
setTotal(data.total_count);
|
|
41641
|
-
|
|
41642
|
-
|
|
41657
|
+
totalProjectsRef.current.loaded += data.resources.length;
|
|
41658
|
+
totalProjectsRef.current.total = data.total_count;
|
|
41643
41659
|
})
|
|
41644
41660
|
.finally(function () {
|
|
41645
41661
|
setLoading(false);
|
|
41646
41662
|
});
|
|
41647
|
-
}, [authUser, client
|
|
41663
|
+
}, [authUser, client]);
|
|
41648
41664
|
useEffect(function () {
|
|
41649
41665
|
fetchProjects(queryConfig);
|
|
41650
41666
|
}, [fetchProjects, queryConfig]);
|
|
41667
|
+
useEffect(function () {
|
|
41668
|
+
if (!defaultValue || !projects.length)
|
|
41669
|
+
return;
|
|
41670
|
+
// if this were to become a multiselect could use defaultValue.includes(p.id)
|
|
41671
|
+
// other things would have to change
|
|
41672
|
+
var selDefault = projects.find(function (p) { return p.id === defaultValue[0]; });
|
|
41673
|
+
if (selDefault) {
|
|
41674
|
+
setSelProject(selDefault);
|
|
41675
|
+
comboBoxRef.current.selectItem(selDefault);
|
|
41676
|
+
return;
|
|
41677
|
+
}
|
|
41678
|
+
}, [defaultValue, projects, setSelProject]);
|
|
41651
41679
|
var onScrollReachEnd = useCallback(function () {
|
|
41652
41680
|
// already loaded all runs
|
|
41653
|
-
var _a =
|
|
41681
|
+
var _a = totalProjectsRef.current, total = _a.total, loaded = _a.loaded;
|
|
41654
41682
|
if (total && loaded >= total)
|
|
41655
41683
|
return;
|
|
41656
41684
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { page: q.page ? q.page + 1 : 1 })); });
|
|
41657
41685
|
}, []);
|
|
41658
|
-
return (React__default.createElement(ComboBox, { ref: comboBoxRef, items: projects !== null && projects !== void 0 ? projects : [], setSelected: setSelProject, inputProps: {
|
|
41686
|
+
return (React__default.createElement(ComboBox, { ref: comboBoxRef, items: projects !== null && projects !== void 0 ? projects : [], setSelected: setSelProject, onClear: function () { return setDefaultValue(undefined); }, inputProps: {
|
|
41659
41687
|
placeholder: 'Select a project...',
|
|
41660
41688
|
}, loading: loading, disabled: !authUser || !queryConfig.owner, footer: (React__default.createElement("div", { key: "footer", style: {
|
|
41661
41689
|
width: '100%',
|
|
@@ -41667,11 +41695,11 @@ var SelectProject = function (_a) {
|
|
|
41667
41695
|
|
|
41668
41696
|
var SelectAccount = function (_a) {
|
|
41669
41697
|
var _b;
|
|
41670
|
-
var authUser = _a.authUser, client = _a.client, setSelAccount = _a.setSelAccount;
|
|
41698
|
+
var authUser = _a.authUser, client = _a.client, defaultValue = _a.defaultValue, setSelAccount = _a.setSelAccount;
|
|
41671
41699
|
var comboBoxRef = useRef();
|
|
41672
41700
|
var _c = useState(function () { return authUser ? [authUser] : []; }), accounts = _c[0], setAccounts = _c[1];
|
|
41673
41701
|
var _d = useState(false), loading = _d[0], setLoading = _d[1];
|
|
41674
|
-
var
|
|
41702
|
+
var totalAccountsRef = useRef({
|
|
41675
41703
|
loaded: 0,
|
|
41676
41704
|
total: undefined
|
|
41677
41705
|
});
|
|
@@ -41682,8 +41710,10 @@ var SelectAccount = function (_a) {
|
|
|
41682
41710
|
}), queryConfig = _f[0], setQueryConfig = _f[1];
|
|
41683
41711
|
// resetting query
|
|
41684
41712
|
useEffect(function () {
|
|
41713
|
+
if (!authUser)
|
|
41714
|
+
return;
|
|
41685
41715
|
// reset total loaded
|
|
41686
|
-
|
|
41716
|
+
totalAccountsRef.current = {
|
|
41687
41717
|
loaded: 0,
|
|
41688
41718
|
total: undefined
|
|
41689
41719
|
};
|
|
@@ -41691,16 +41721,16 @@ var SelectAccount = function (_a) {
|
|
|
41691
41721
|
if (comboBoxRef.current) {
|
|
41692
41722
|
comboBoxRef.current.selectItem(null);
|
|
41693
41723
|
}
|
|
41694
|
-
setAccounts(
|
|
41695
|
-
setQueryConfig(function (q) { return (__assign(__assign({}, q), { member:
|
|
41696
|
-
}, [authUser]);
|
|
41724
|
+
setAccounts([authUser]);
|
|
41725
|
+
setQueryConfig(function (q) { return (__assign(__assign({}, q), { member: [authUser === null || authUser === void 0 ? void 0 : authUser.username], page: 1 })); });
|
|
41726
|
+
}, [authUser, defaultValue, setSelAccount]);
|
|
41697
41727
|
var fetchOrganizations = useCallback(function (queryConfig) {
|
|
41698
|
-
if (!authUser)
|
|
41728
|
+
if (!authUser || !client || !client.orgs)
|
|
41699
41729
|
return;
|
|
41700
41730
|
if (!queryConfig.member)
|
|
41701
41731
|
return;
|
|
41702
|
-
|
|
41703
|
-
|
|
41732
|
+
var _a = totalAccountsRef.current, total = _a.total, loaded = _a.loaded;
|
|
41733
|
+
// we've already loaded all accounts
|
|
41704
41734
|
if (total && loaded >= total)
|
|
41705
41735
|
return;
|
|
41706
41736
|
setLoading(true);
|
|
@@ -41709,19 +41739,30 @@ var SelectAccount = function (_a) {
|
|
|
41709
41739
|
var data = _a.data;
|
|
41710
41740
|
setAccounts(function (state) { return state ? __spreadArray(__spreadArray([], state, true), data.resources, true) : __spreadArray([], data.resources, true); });
|
|
41711
41741
|
setTotal(data.total_count);
|
|
41712
|
-
|
|
41713
|
-
|
|
41742
|
+
totalAccountsRef.current.loaded += data.resources.length;
|
|
41743
|
+
totalAccountsRef.current.total = data.total_count;
|
|
41714
41744
|
})
|
|
41715
41745
|
.finally(function () {
|
|
41716
41746
|
setLoading(false);
|
|
41717
41747
|
});
|
|
41718
|
-
}, [authUser, client
|
|
41748
|
+
}, [authUser, client]);
|
|
41719
41749
|
useEffect(function () {
|
|
41720
41750
|
fetchOrganizations(queryConfig);
|
|
41721
41751
|
}, [fetchOrganizations, queryConfig]);
|
|
41752
|
+
useEffect(function () {
|
|
41753
|
+
if (!defaultValue || !accounts.length)
|
|
41754
|
+
return;
|
|
41755
|
+
// @ts-ignore
|
|
41756
|
+
var selDefault = accounts.find(function (a) { return typeof a.username !== 'undefined' ? a.username === defaultValue : a.account_name === defaultValue; });
|
|
41757
|
+
if (selDefault) {
|
|
41758
|
+
setSelAccount(selDefault);
|
|
41759
|
+
comboBoxRef.current.selectItem(selDefault);
|
|
41760
|
+
return;
|
|
41761
|
+
}
|
|
41762
|
+
}, [defaultValue, accounts, setSelAccount, authUser]);
|
|
41722
41763
|
var onScrollReachEnd = useCallback(function () {
|
|
41723
41764
|
// already loaded all runs
|
|
41724
|
-
var _a =
|
|
41765
|
+
var _a = totalAccountsRef.current, total = _a.total, loaded = _a.loaded;
|
|
41725
41766
|
if (total && loaded >= total)
|
|
41726
41767
|
return;
|
|
41727
41768
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { page: q.page ? q.page + 1 : 1 })); });
|
|
@@ -41787,7 +41828,7 @@ var SelectRecipe = function (_a) {
|
|
|
41787
41828
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { owner: projectOwner, name: projectName, page: 1 })); });
|
|
41788
41829
|
}, [projectOwner, projectName]);
|
|
41789
41830
|
var fetchRecipes = useCallback(function (queryConfig) {
|
|
41790
|
-
if (!authUser)
|
|
41831
|
+
if (!authUser || !client || !client.projects)
|
|
41791
41832
|
return;
|
|
41792
41833
|
if (!queryConfig.owner || !queryConfig.name)
|
|
41793
41834
|
return;
|
|
@@ -43856,7 +43897,7 @@ var RecipeInputsForm = function (_a) {
|
|
|
43856
43897
|
var _e = useForm({
|
|
43857
43898
|
resolver: Oe(schema),
|
|
43858
43899
|
mode: 'all'
|
|
43859
|
-
}), control = _e.control, register = _e.register, handleSubmit = _e.handleSubmit, resetField = _e.resetField, _f = _e.formState, errors = _f.errors, isValid = _f.isValid; _f.isSubmitting;
|
|
43900
|
+
}), control = _e.control, register = _e.register, handleSubmit = _e.handleSubmit, reset = _e.reset, resetField = _e.resetField, _f = _e.formState, errors = _f.errors, isValid = _f.isValid; _f.isSubmitting;
|
|
43860
43901
|
var _onSubmit = function (_data) {
|
|
43861
43902
|
var data = __assign({}, _data);
|
|
43862
43903
|
// strip study name
|
|
@@ -43878,6 +43919,7 @@ var RecipeInputsForm = function (_a) {
|
|
|
43878
43919
|
setLoading(true);
|
|
43879
43920
|
onSubmit(studyName, data)
|
|
43880
43921
|
.finally(function () {
|
|
43922
|
+
reset();
|
|
43881
43923
|
setLoading(false);
|
|
43882
43924
|
});
|
|
43883
43925
|
}
|
|
@@ -45655,8 +45697,6 @@ var SelectLocalArtifacts = function (_a) {
|
|
|
45655
45697
|
if (!selArtifact)
|
|
45656
45698
|
return;
|
|
45657
45699
|
if (selArtifact.kind === 'file') {
|
|
45658
|
-
// console.log(selArtifact)
|
|
45659
|
-
// directoryRef.current[0].resolve(selArtifact).then((path) => console.log(path) )
|
|
45660
45700
|
var getFile = function (fileHandle) { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
45661
45701
|
var path, _a, _b;
|
|
45662
45702
|
return __generator$1(this, function (_c) {
|
|
@@ -45812,22 +45852,23 @@ var SelectLocalArtifacts = function (_a) {
|
|
|
45812
45852
|
|
|
45813
45853
|
var SelectRun = function (_a) {
|
|
45814
45854
|
var _b, _c;
|
|
45815
|
-
var authUser = _a.authUser, client = _a.client, projectOwner = _a.projectOwner, projectName = _a.projectName, jobId = _a.jobId, setSelRun = _a.setSelRun;
|
|
45855
|
+
var authUser = _a.authUser, client = _a.client, projectOwner = _a.projectOwner, projectName = _a.projectName, jobId = _a.jobId, _defaultValue = _a.defaultValue, setSelRun = _a.setSelRun;
|
|
45816
45856
|
var comboBoxRef = useRef();
|
|
45817
|
-
var _d = useState(),
|
|
45818
|
-
var _e = useState(
|
|
45857
|
+
var _d = useState(_defaultValue), defaultValue = _d[0], setDefaultValue = _d[1];
|
|
45858
|
+
var _e = useState(), runs = _e[0], setRuns = _e[1];
|
|
45859
|
+
var _f = useState(false), loading = _f[0], setLoading = _f[1];
|
|
45819
45860
|
var totalRunsRef = useRef({
|
|
45820
45861
|
loaded: 0,
|
|
45821
45862
|
total: undefined
|
|
45822
45863
|
});
|
|
45823
|
-
var
|
|
45824
|
-
var
|
|
45864
|
+
var _g = useState(0), total = _g[0], setTotal = _g[1];
|
|
45865
|
+
var _h = useState({
|
|
45825
45866
|
owner: projectOwner !== null && projectOwner !== void 0 ? projectOwner : (authUser && authUser.username),
|
|
45826
45867
|
name: projectName,
|
|
45827
45868
|
jobId: jobId,
|
|
45828
45869
|
page: 1,
|
|
45829
45870
|
perPage: 10,
|
|
45830
|
-
}), queryConfig =
|
|
45871
|
+
}), queryConfig = _h[0], setQueryConfig = _h[1];
|
|
45831
45872
|
// resetting query
|
|
45832
45873
|
useEffect(function () {
|
|
45833
45874
|
// reset total loaded
|
|
@@ -45837,13 +45878,14 @@ var SelectRun = function (_a) {
|
|
|
45837
45878
|
};
|
|
45838
45879
|
// deselect items
|
|
45839
45880
|
if (comboBoxRef.current) {
|
|
45881
|
+
console.log('clear selection');
|
|
45840
45882
|
comboBoxRef.current.selectItem(null);
|
|
45841
45883
|
}
|
|
45842
45884
|
setRuns([]);
|
|
45843
45885
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { jobId: jobId, owner: projectOwner, name: projectName, page: 1 })); });
|
|
45844
45886
|
}, [jobId, projectOwner, projectName]);
|
|
45845
45887
|
var fetchRuns = useCallback(function (queryConfig) {
|
|
45846
|
-
if (!authUser)
|
|
45888
|
+
if (!authUser || !client || !client.runs)
|
|
45847
45889
|
return;
|
|
45848
45890
|
if (!queryConfig.name || !queryConfig.owner || !queryConfig.jobId)
|
|
45849
45891
|
return;
|
|
@@ -45855,7 +45897,13 @@ var SelectRun = function (_a) {
|
|
|
45855
45897
|
client.runs.listRuns(queryConfig)
|
|
45856
45898
|
.then(function (_a) {
|
|
45857
45899
|
var data = _a.data;
|
|
45858
|
-
setRuns(function (state) {
|
|
45900
|
+
setRuns(function (state) {
|
|
45901
|
+
if (!state)
|
|
45902
|
+
return __spreadArray([], data.resources, true);
|
|
45903
|
+
var newRuns = __spreadArray(__spreadArray([], state, true), data.resources, true);
|
|
45904
|
+
var uniqueRuns = newRuns.filter(function (run, i, arr) { return arr.findIndex(function (v) { return v.id === run.id; }) === i; });
|
|
45905
|
+
return uniqueRuns;
|
|
45906
|
+
});
|
|
45859
45907
|
setTotal(data.total_count);
|
|
45860
45908
|
totalRunsRef.current.loaded += data.resources.length;
|
|
45861
45909
|
totalRunsRef.current.total = data.total_count;
|
|
@@ -45863,10 +45911,32 @@ var SelectRun = function (_a) {
|
|
|
45863
45911
|
.finally(function () {
|
|
45864
45912
|
setLoading(false);
|
|
45865
45913
|
});
|
|
45866
|
-
}, [authUser, client
|
|
45914
|
+
}, [authUser, client]);
|
|
45867
45915
|
useEffect(function () {
|
|
45868
45916
|
fetchRuns(queryConfig);
|
|
45869
45917
|
}, [fetchRuns, queryConfig]);
|
|
45918
|
+
useEffect(function () {
|
|
45919
|
+
if (!defaultValue || !client || !client.runs)
|
|
45920
|
+
return;
|
|
45921
|
+
client.runs.getRun({
|
|
45922
|
+
owner: projectOwner,
|
|
45923
|
+
name: projectName,
|
|
45924
|
+
runId: defaultValue
|
|
45925
|
+
}).then(function (_a) {
|
|
45926
|
+
var data = _a.data;
|
|
45927
|
+
if (!data)
|
|
45928
|
+
return;
|
|
45929
|
+
setRuns(function (state) {
|
|
45930
|
+
if (!state)
|
|
45931
|
+
return [data];
|
|
45932
|
+
var newRuns = __spreadArray(__spreadArray([], state, true), [data], false);
|
|
45933
|
+
var uniqueRuns = newRuns.filter(function (run, i, arr) { return arr.findIndex(function (v) { return v.id === run.id; }) === i; });
|
|
45934
|
+
return uniqueRuns;
|
|
45935
|
+
});
|
|
45936
|
+
setSelRun(data);
|
|
45937
|
+
comboBoxRef.current.selectItem(__assign(__assign({}, data), { name: "".concat(data.recipe.metadata.name, " : ").concat(data.status.status) }));
|
|
45938
|
+
});
|
|
45939
|
+
}, [client, defaultValue, projectName, projectOwner, setSelRun]);
|
|
45870
45940
|
var onScrollReachEnd = useCallback(function () {
|
|
45871
45941
|
// already loaded all runs
|
|
45872
45942
|
var _a = totalRunsRef.current, total = _a.total, loaded = _a.loaded;
|
|
@@ -45891,7 +45961,7 @@ var SelectRun = function (_a) {
|
|
|
45891
45961
|
width: 24,
|
|
45892
45962
|
display: 'flex',
|
|
45893
45963
|
justifyContent: 'flex-end'
|
|
45894
|
-
}, className: 'secondary' }, "".concat(i)))); }, setSelected: setSelRun, inputProps: {
|
|
45964
|
+
}, className: 'secondary' }, "".concat(i)))); }, setSelected: setSelRun, onClear: function () { return setDefaultValue(undefined); }, inputProps: {
|
|
45895
45965
|
placeholder: 'Select a run...',
|
|
45896
45966
|
}, loading: loading, disabled: !authUser || !queryConfig.name || !queryConfig.owner, footer: (React__default.createElement("div", { key: "footer", style: {
|
|
45897
45967
|
width: '100%',
|
|
@@ -45902,23 +45972,36 @@ var SelectRun = function (_a) {
|
|
|
45902
45972
|
} }, "Showing ".concat((_c = runs === null || runs === void 0 ? void 0 : runs.length) !== null && _c !== void 0 ? _c : 0, " of ").concat(total, " runs"))), onScrollReachEnd: onScrollReachEnd }));
|
|
45903
45973
|
};
|
|
45904
45974
|
|
|
45975
|
+
var formatStudy = function (study) {
|
|
45976
|
+
var name = study.spec.name;
|
|
45977
|
+
if (!name) {
|
|
45978
|
+
if (study.recipe && study.recipe.metadata) {
|
|
45979
|
+
name = "".concat(study.recipe.metadata.name, " : ").concat(study.status.id.slice(0, 5), "...");
|
|
45980
|
+
}
|
|
45981
|
+
else {
|
|
45982
|
+
name = 'No name';
|
|
45983
|
+
}
|
|
45984
|
+
}
|
|
45985
|
+
return (__assign(__assign({}, study), { name: name }));
|
|
45986
|
+
};
|
|
45905
45987
|
var SelectStudy = function (_a) {
|
|
45906
45988
|
var _b, _c;
|
|
45907
|
-
var authUser = _a.authUser, client = _a.client, projectName = _a.projectName, projectOwner = _a.projectOwner, setSelStudy = _a.setSelStudy;
|
|
45989
|
+
var authUser = _a.authUser, client = _a.client, projectName = _a.projectName, projectOwner = _a.projectOwner, _defaultValue = _a.defaultValue, setSelStudy = _a.setSelStudy;
|
|
45908
45990
|
var comboBoxRef = useRef();
|
|
45909
|
-
var _d = useState(),
|
|
45910
|
-
var _e = useState(
|
|
45991
|
+
var _d = useState(_defaultValue), defaultValue = _d[0], setDefaultValue = _d[1];
|
|
45992
|
+
var _e = useState([]), studies = _e[0], setStudies = _e[1];
|
|
45993
|
+
var _f = useState(false), loading = _f[0], setLoading = _f[1];
|
|
45911
45994
|
var totalRunsRef = useRef({
|
|
45912
45995
|
loaded: 0,
|
|
45913
45996
|
total: undefined
|
|
45914
45997
|
});
|
|
45915
|
-
var
|
|
45916
|
-
var
|
|
45998
|
+
var _g = useState(0), total = _g[0], setTotal = _g[1];
|
|
45999
|
+
var _h = useState({
|
|
45917
46000
|
owner: projectOwner !== null && projectOwner !== void 0 ? projectOwner : (authUser && authUser.username),
|
|
45918
46001
|
name: projectName,
|
|
45919
46002
|
page: 1,
|
|
45920
46003
|
perPage: 10,
|
|
45921
|
-
}), queryConfig =
|
|
46004
|
+
}), queryConfig = _h[0], setQueryConfig = _h[1];
|
|
45922
46005
|
// resetting query
|
|
45923
46006
|
useEffect(function () {
|
|
45924
46007
|
// reset total loaded
|
|
@@ -45934,7 +46017,7 @@ var SelectStudy = function (_a) {
|
|
|
45934
46017
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { owner: projectOwner, name: projectName, page: 1 })); });
|
|
45935
46018
|
}, [projectOwner, projectName]);
|
|
45936
46019
|
var fetchStudies = useCallback(function (queryConfig) {
|
|
45937
|
-
if (!authUser)
|
|
46020
|
+
if (!authUser || !client || !client.jobs)
|
|
45938
46021
|
return;
|
|
45939
46022
|
if (!queryConfig.name || !queryConfig.owner)
|
|
45940
46023
|
return;
|
|
@@ -45946,7 +46029,13 @@ var SelectStudy = function (_a) {
|
|
|
45946
46029
|
client.jobs.listJobs(queryConfig)
|
|
45947
46030
|
.then(function (_a) {
|
|
45948
46031
|
var data = _a.data;
|
|
45949
|
-
setStudies(function (state) {
|
|
46032
|
+
setStudies(function (state) {
|
|
46033
|
+
if (!state)
|
|
46034
|
+
return __spreadArray([], data.resources, true);
|
|
46035
|
+
var newStudies = __spreadArray(__spreadArray([], state, true), data.resources, true);
|
|
46036
|
+
var uniqueStudies = newStudies.filter(function (study, i, arr) { return arr.findIndex(function (v) { return v.id === study.id; }) === i; });
|
|
46037
|
+
return uniqueStudies;
|
|
46038
|
+
});
|
|
45950
46039
|
setTotal(data.total_count);
|
|
45951
46040
|
totalRunsRef.current.loaded += data.resources.length;
|
|
45952
46041
|
totalRunsRef.current.total = data.total_count;
|
|
@@ -45954,10 +46043,32 @@ var SelectStudy = function (_a) {
|
|
|
45954
46043
|
.finally(function () {
|
|
45955
46044
|
setLoading(false);
|
|
45956
46045
|
});
|
|
45957
|
-
}, [authUser, client
|
|
46046
|
+
}, [authUser, client]);
|
|
45958
46047
|
useEffect(function () {
|
|
45959
46048
|
fetchStudies(queryConfig);
|
|
45960
46049
|
}, [fetchStudies, queryConfig]);
|
|
46050
|
+
useEffect(function () {
|
|
46051
|
+
if (!defaultValue || !client || !client.jobs)
|
|
46052
|
+
return;
|
|
46053
|
+
client.jobs.getJob({
|
|
46054
|
+
owner: projectOwner,
|
|
46055
|
+
name: projectName,
|
|
46056
|
+
jobId: defaultValue
|
|
46057
|
+
}).then(function (_a) {
|
|
46058
|
+
var data = _a.data;
|
|
46059
|
+
if (!data)
|
|
46060
|
+
return;
|
|
46061
|
+
setStudies(function (state) {
|
|
46062
|
+
if (!state)
|
|
46063
|
+
return [data];
|
|
46064
|
+
var newStudies = __spreadArray(__spreadArray([], state, true), [data], false);
|
|
46065
|
+
var uniqueStudies = newStudies.filter(function (study, i, arr) { return arr.findIndex(function (v) { return v.id === study.id; }) === i; });
|
|
46066
|
+
return uniqueStudies;
|
|
46067
|
+
});
|
|
46068
|
+
setSelStudy(data);
|
|
46069
|
+
comboBoxRef.current.selectItem(formatStudy(data));
|
|
46070
|
+
});
|
|
46071
|
+
}, [client, defaultValue, projectName, projectOwner, setSelStudy]);
|
|
45961
46072
|
var onScrollReachEnd = useCallback(function () {
|
|
45962
46073
|
// already loaded all runs
|
|
45963
46074
|
var _a = totalRunsRef.current, total = _a.total, loaded = _a.loaded;
|
|
@@ -45965,18 +46076,7 @@ var SelectStudy = function (_a) {
|
|
|
45965
46076
|
return;
|
|
45966
46077
|
setQueryConfig(function (q) { return (__assign(__assign({}, q), { page: q.page ? q.page + 1 : 1 })); });
|
|
45967
46078
|
}, []);
|
|
45968
|
-
return (React__default.createElement(ComboBox, { ref: comboBoxRef, items: (_b = studies === null || studies === void 0 ? void 0 : studies.map(function (
|
|
45969
|
-
var name = r.spec.name;
|
|
45970
|
-
if (!name) {
|
|
45971
|
-
if (r.recipe && r.recipe.metadata) {
|
|
45972
|
-
name = "".concat(r.recipe.metadata.name, " : ").concat(r.status.id.slice(0, 5), "...");
|
|
45973
|
-
}
|
|
45974
|
-
else {
|
|
45975
|
-
name = 'No name';
|
|
45976
|
-
}
|
|
45977
|
-
}
|
|
45978
|
-
return (__assign(__assign({}, r), { name: name }));
|
|
45979
|
-
})) !== null && _b !== void 0 ? _b : [], setSelected: setSelStudy, inputProps: {
|
|
46079
|
+
return (React__default.createElement(ComboBox, { ref: comboBoxRef, items: (_b = studies === null || studies === void 0 ? void 0 : studies.map(formatStudy)) !== null && _b !== void 0 ? _b : [], setSelected: setSelStudy, onClear: function () { return setDefaultValue(undefined); }, inputProps: {
|
|
45980
46080
|
placeholder: 'Select a study...',
|
|
45981
46081
|
}, loading: loading, disabled: !authUser || !queryConfig.name || !queryConfig.owner, footer: (React__default.createElement("div", { key: "footer", style: {
|
|
45982
46082
|
width: '100%',
|