class App extends PureComponent {
// Add event handler method
handleCredentialAdded = ({ id, appKey }) => {
console.log(`New credential added - ID: ${id}, App: ${appKey}`);
// Add your custom logic here
};
componentDidMount() {
fetch("/rollout-token")
.then((resp) => resp.json())
.then((data) => data.token)
.then((token) => {
// ... existing setup code ...
Promise.all([
import(/* webpackIgnore: true */ "https://esm.sh/react@18"),
import(/* webpackIgnore: true */ "https://esm.sh/react-dom@18/client"),
import(/* webpackIgnore: true */ "https://esm.sh/@rollout/link-react@latest?deps=react@18,react-dom@18")
]).then(([React, ReactDOM, rollout]) => {
const root = ReactDOM.createRoot(this.rolloutContainer.current);
root.render(
React.createElement(
rollout.RolloutLinkProvider,
{ token },
React.createElement(rollout.CredentialsManager, {
entitiesToSync: { notes: true, tasks: true },
onCredentialAdded: this.handleCredentialAdded
})
)
);
});
});
}
}