Merge branch 'group_property_feature' of https://github.com/vladfreeze/jupyterhub into group_property_feature

This commit is contained in:
vpopescu
2022-09-22 15:11:42 +02:00

View File

@@ -2,13 +2,11 @@ import React, { useState, useEffect } from "react";
import "./table-select.css"; import "./table-select.css";
import PropTypes from "prop-types"; import PropTypes from "prop-types";
const DynamicTable = (props) => { const DynamicTable = (props) => {
var [message, setMessage] = useState(""), var [message, setMessage] = useState(""),
[message2, setMessage2] = useState(""); [message2, setMessage2] = useState("");
var {current_propobject} = props; var { current_propobject } = props;
var propobject = current_propobject; var propobject = current_propobject;
if (current_propobject) { if (current_propobject) {
@@ -18,12 +16,11 @@ const DynamicTable = (props) => {
var updateMessageKey = (event) => { var updateMessageKey = (event) => {
setMessage(event.target.value); setMessage(event.target.value);
} };
var updateMessageValue = (event) => { var updateMessageValue = (event) => {
setMessage2(event.target.value); setMessage2(event.target.value);
} };
const handleRefresh = () => { const handleRefresh = () => {
var propobject = {}; var propobject = {};
propkeys.forEach((key, i) => (propobject[key] = propvalues[i])); propkeys.forEach((key, i) => (propobject[key] = propvalues[i]));
props.setProp(propobject); props.setProp(propobject);
@@ -31,9 +28,8 @@ const DynamicTable = (props) => {
props.setPropValues(propvalues); props.setPropValues(propvalues);
setMessage(""); setMessage("");
setMessage2(""); setMessage2("");
};
}
const handleClick = () => { const handleClick = () => {
if (message != "") { if (message != "") {
if (message2 != "") { if (message2 != "") {
@@ -57,8 +53,7 @@ const DynamicTable = (props) => {
console.log(propkeys); console.log(propkeys);
console.log(propvalues); console.log(propvalues);
console.log(propobject); console.log(propobject);
} };
const renderKeyRows = () => { const renderKeyRows = () => {
return propkeys.map(function (o, i) { return propkeys.map(function (o, i) {
@@ -70,26 +65,25 @@ const DynamicTable = (props) => {
type="text" type="text"
value={propkeys[i]} value={propkeys[i]}
id={o} id={o}
onChange= {(e) => { onChange={(e) => {
if (e.target.value != "") { if (e.target.value != "") {
propkeys[i] = e.target.value ; propkeys[i] = e.target.value;
} else{ } else {
propvalues.splice(i, 1); propvalues.splice(i, 1);
propkeys.splice(i, 1); propkeys.splice(i, 1);
} }
setOwnKeys(propkeys); setOwnKeys(propkeys);
props.setPropKeys(propkeys); props.setPropKeys(propkeys);
props.setProp(propobject) props.setProp(propobject);
handleRefresh(); handleRefresh();
}} }}
/> />
</td> </td>
</tr> </tr>
); );
}); });
} };
const renderValueRows = () => { const renderValueRows = () => {
return propvalues.map(function (o, i) { return propvalues.map(function (o, i) {
//console.log("ValRows" +i) //console.log("ValRows" +i)
//console.log("ValRows" +o) //console.log("ValRows" +o)
@@ -111,9 +105,8 @@ const DynamicTable = (props) => {
</tr> </tr>
); );
}); });
} };
const renderDelete = () => { const renderDelete = () => {
return propvalues.map(function (o, i) { return propvalues.map(function (o, i) {
return ( return (
<tr key={"item-" + i}> <tr key={"item-" + i}>
@@ -139,9 +132,7 @@ const DynamicTable = (props) => {
</tr> </tr>
); );
}); });
} };
return ( return (
<div> <div>
@@ -171,13 +162,13 @@ const DynamicTable = (props) => {
/> />
</td> </td>
<td> <td>
<input <input
className="form-control" className="form-control"
type="text" type="text"
value={message2} value={message2}
onChange={(e) => updateMessageValue(e)} onChange={(e) => updateMessageValue(e)}
/> />
</td> </td>
<td> <td>
<button <button
id="add-item" id="add-item"
@@ -194,7 +185,7 @@ const DynamicTable = (props) => {
<hr /> <hr />
</div> </div>
); );
} };
DynamicTable.propTypes = { DynamicTable.propTypes = {
current_keys: PropTypes.array, current_keys: PropTypes.array,
current_values: PropTypes.array, current_values: PropTypes.array,
@@ -202,4 +193,4 @@ DynamicTable.propTypes = {
setPropValues: PropTypes.array, setPropValues: PropTypes.array,
setProp: PropTypes.func, setProp: PropTypes.func,
}; };
export default DynamicTable; export default DynamicTable;