...
 
Commits (6)
......@@ -19,6 +19,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Security
## [2.8.4 - 2019-11-21]
### Changed
- Update links to @fediversespace Mastodon account
### Removed
- Remove staging backend server
### Fixed
- Fixed frontend crash when instance node missing
## [2.8.3 - 2019-11-19]
### Changed
......
......@@ -2,16 +2,21 @@
The map of the fediverse that you always wanted.
Read the latest updates on Mastodon: [@fediversespace](https://cursed.technology/@fediversespace)
Read the latest updates on Mastodon: [@fediversespace](https://mastodon.social/@fediversespace)
![A screenshot of fediverse.space](screenshot.png)
1. [Requirements](#requirements)
2. [Running it](#running-it)
3. [Commands](#commands)
4. [Privacy](#privacy)
5. [Deployment](#deployment)
6. [Acknowledgements](#acknowledgements)
- [fediverse.space 🌐](#fediversespace-%f0%9f%8c%90)
- [Requirements](#requirements)
- [Running it](#running-it)
- [Backend](#backend)
- [Frontend](#frontend)
- [Commands](#commands)
- [Backend](#backend-1)
- [Frontend](#frontend-1)
- [Privacy](#privacy)
- [Deployment](#deployment)
- [Acknowledgements](#acknowledgements)
## Requirements
......
......@@ -57,8 +57,8 @@ config :backend, Backend.Repo,
pool_size: 10
config :backend, :crawler,
status_age_limit_days: 28,
status_count_limit: 1000,
status_age_limit_days: 14,
status_count_limit: 500,
personal_instance_threshold: 5,
crawl_interval_mins: 60,
crawl_workers: 10,
......
......@@ -40,7 +40,7 @@ class Cytoscape extends React.PureComponent<ICytoscapeProps> {
this.cy = cytoscape({
autoungrabify: true,
container: container as any,
elements: this.props.elements,
elements: this.cleanElements(this.props.elements),
hideEdgesOnViewport: true,
hideLabelsOnViewport: true,
layout: {
......@@ -341,6 +341,16 @@ class Cytoscape extends React.PureComponent<ICytoscapeProps> {
}
this.cy.edges().addClass("hidden");
};
/* Helper function to remove edges if source or target node is missing */
private cleanElements = (elements: cytoscape.ElementsDefinition): cytoscape.ElementsDefinition => {
const domains = new Set(elements.nodes.map(n => n.data.id));
const edges = elements.edges.filter(e => domains.has(e.data.source) && domains.has(e.data.target));
return {
edges,
nodes: elements.nodes
};
};
}
export default Cytoscape;
......@@ -79,11 +79,11 @@ class LoginScreen extends React.PureComponent<{}, ILoginScreenState> {
</p>
<p className={Classes.RUNNING_TEXT}>
It's currently only possible to administrate Mastodon and Pleroma instances. If you want to login with a
direct message, your instance must federate with cursed.technology and vice versa.
direct message, your instance must federate with mastodon.social and vice versa.
</p>
<p className={Classes.RUNNING_TEXT}>
If you run another server type, you can manually opt in or out by writing to{" "}
<a href="https://cursed.technology/@fediversespace">@fediversespace</a>.
<a href="https://mastodon.social/@fediversespace">@fediversespace</a>.
</p>
<FormContainer error={this.state.error}>{content}</FormContainer>
</Page>
......
......@@ -6,7 +6,7 @@ import { IAppState } from "./redux/types";
let API_ROOT = "http://localhost:4000/api/";
if (["true", true, 1, "1"].indexOf(process.env.REACT_APP_STAGING || "") > -1) {
API_ROOT = "https://phoenix.api-develop.fediverse.space/api/";
API_ROOT = "https://phoenix.api.fediverse.space/api/";
} else if (process.env.NODE_ENV === "production") {
API_ROOT = "https://phoenix.api.fediverse.space/api/";
}
......