import React, { Component, version } from 'react';
import ReactDOM from 'react-dom';
import Axios from 'axios';
import { Modal, Collapse, Button } from 'react-bootstrap';
export default class Changelog extends Component {
constructor(props) {
super(props)
this.state = {
changelog: {},
modal: false,
loading: true,
hidden: false,
}
}
componentDidMount = () => {
this.getChangelog();
}
getChangelog = () => {
Axios.get('api/update/changelog')
.then((resp) => {
this.setState({
changelog: resp.data.data,
loading: false
});
})
}
showModal = () => {
this.setState({
modal: true,
});
}
hideModal = () => {
this.setState({
modal: false,
});
}
toggleHidden = () => {
var hidden = this.state.hidden;
if(hidden) {
this.setState({
hidden: false
});
} else {
this.setState({
hidden: true
});
}
}
versionList = (key, data) => {
return (
Version: {key}
{data.map((e,i) => {
if(e.link == '') {
return - {e.description}
} else {
return - {e.description}
}
})}
);
}
makeChangelog() {
var changelog = this.state.changelog;
var versionsVis = [];
var versionsHid = [];
var i = 0;
for(var key in changelog) {
if(i <= 5) {
versionsVis.push(this.versionList(key, changelog[key]));
} else {
versionsHid.push(this.versionList(key, changelog[key]));
}
i++;
}
return {
visible: versionsVis,
hidden: versionsHid
};
}
render() {
var show = this.state.modal;
var loading = this.state.loading;
var showHidden = this.state.hidden;
if(loading) {
return <>>
} else {
var changelog = this.makeChangelog();
return (
Changelog:
{changelog.visible}
{changelog.hidden.length > 5 &&
<>
{changelog.hidden}
{showHidden ?
:
}
>
}
);
}
}
}
if (document.getElementById('Changelog')) {
ReactDOM.render(, document.getElementById('Changelog'));
}