import * as React from "react";
import * as System from "~/components/system";
import SystemPage from "~/components/system/SystemPage";
import ViewSourceLink from "~/components/system/ViewSourceLink";
import CodeBlock from "~/components/system/CodeBlock";
import { dispatchCustomEvent } from "~/common/custom-events";
const EXAMPLE_CODE = `import * as React from "react";
import { CreateFilecoinAddress } from "slate-react-system";
import { createPow } from "@textile/powergate-client";
const PowerGate = createPow({ host: "https://grpcweb.slate.textile.io" });
class Example extends React.Component {
componentDidMount = async () => {
const FFS = await PowerGate.ffs.create();
const token = FFS.token ? FFS.token : null;
PowerGate.setToken(token);
this.setState({ token });
};
_handleCreateAddress = async ({ name, type, makeDefault }) => {
const response = await PowerGate.ffs.newAddr(name, type, makeDefault);
console.log(response);
};
render() {
return ;
}
}
`;
export default class SystemPageCreateAddress extends React.Component {
_handleSubmit = ({ name, type, makeDefault }) => {
dispatchCustomEvent({
name: "create-alert",
detail: {
alert: { message: JSON.stringify({ name, type, makeDefault }) },
status: "INFO",
},
});
};
render() {
return (
Create a Filecoin Address{" "}
Here is an example of an experience for generating a filecoin address
using{" "}
Textile's Powergate
Code
{EXAMPLE_CODE}
);
}
}