// Copyright (C) The Arvados Authors. All rights reserved. // // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; import { Dialog, DialogActions, DialogTitle, DialogContent, WithStyles, withStyles, StyleRulesCallback, Button, Typography, Paper } from '@material-ui/core'; import { ArvadosTheme } from '~/common/custom-theme'; import { withDialog } from '~/store/dialog/with-dialog'; import { WithDialogProps } from '~/store/dialog/with-dialog'; import { compose } from 'redux'; import { connect } from 'react-redux'; import { CurrentTokenDialogData, getCurrentTokenDialogData } from '~/store/current-token-dialog/current-token-dialog-actions'; import { RootState } from '~/store/store'; import { DefaultCodeSnippet } from '~/components/default-code-snippet/default-code-snippet'; type CssRules = 'link' | 'paper' | 'button'; const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ link: { color: theme.palette.primary.main, textDecoration: 'none', margin: '0px 4px' }, paper: { padding: theme.spacing.unit, marginBottom: theme.spacing.unit * 2, backgroundColor: theme.palette.grey["200"], border: `1px solid ${theme.palette.grey["300"]}` }, button: { fontSize: '0.8125rem', fontWeight: 600 } }); type CurrentTokenProps = CurrentTokenDialogData & WithDialogProps<{}> & WithStyles; export const CurrentTokenDialog = compose( withStyles(styles), connect(getCurrentTokenDialogData), withDialog('currentTokenDialog') )(class extends React.Component { render() { const { classes, open, closeDialog, ...data } = this.props; return Current Token The Arvados API token is a secret key that enables the Arvados SDKs to access Arvados with the proper permissions. For more information see Getting an API token. Paste the following lines at a shell prompt to set up the necessary environment for Arvados SDKs to authenticate to your klingenc account. Arvados virtual machines do this for you automatically. This setup is needed only when you use the API remotely (e.g., from your own workstation). ; } } ); const getSnippet = ({ apiHost, currentToken }: CurrentTokenDialogData) => `HISTIGNORE=$HISTIGNORE:'export ARVADOS_API_TOKEN=*' export ARVADOS_API_TOKEN=${currentToken} export ARVADOS_API_HOST=${apiHost} unset ARVADOS_API_HOST_INSECURE`;