{"version":3,"file":"a460703a4c.js","mappings":"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","sources":["webpack://influxdb-ui/./src/onboarding/components/OnboardingButtons.tsx","webpack://influxdb-ui/./src/shared/components/wizard/WizardFullScreen.tsx","webpack://influxdb-ui/./src/onboarding/components/InitStep.tsx","webpack://influxdb-ui/./src/onboarding/components/AdminStep.tsx","webpack://influxdb-ui/./src/shared/components/resource_fetcher/ResourceFetcher.tsx","webpack://influxdb-ui/./src/shared/components/resource_fetcher/index.ts","webpack://influxdb-ui/./src/onboarding/components/CompletionAdvancedButton.tsx","webpack://influxdb-ui/./src/onboarding/components/CompletionQuickStartButton.tsx","webpack://influxdb-ui/./src/onboarding/components/CompletionStep.tsx","webpack://influxdb-ui/./src/onboarding/components/OnboardingStepSwitcher.tsx","webpack://influxdb-ui/./src/shared/components/wizard/ProgressBar.tsx","webpack://influxdb-ui/./src/shared/components/wizard/WizardProgressHeader.tsx","webpack://influxdb-ui/./src/onboarding/actions/index.ts","webpack://influxdb-ui/./src/onboarding/containers/OnboardingWizard.tsx","webpack://influxdb-ui/./src/onboarding/containers/OnboardingWizardPage.tsx","webpack://influxdb-ui/./src/organizations/apis/index.ts","webpack://influxdb-ui/./src/shared/components/CodeSnippet.tsx","webpack://influxdb-ui/./src/shared/components/CopyButton.tsx","webpack://influxdb-ui/./src/templates/constants/defaultTemplates.ts"],"sourcesContent":["// Libraries\nimport React, {PureComponent, RefObject} from 'react'\nimport {\n Button,\n ComponentColor,\n ComponentSize,\n ButtonType,\n ComponentStatus,\n Overlay,\n} from '@influxdata/clockface'\n\ninterface Props {\n onClickBack?: () => void\n skipButtonText?: string\n nextButtonText?: string\n backButtonText?: string\n onClickSkip?: () => void\n nextButtonStatus?: ComponentStatus\n showSkip?: boolean\n autoFocusNext?: boolean\n className?: string\n}\n\nclass OnboardingButtons extends PureComponent {\n public static defaultProps: Props = {\n nextButtonStatus: ComponentStatus.Default,\n showSkip: false,\n autoFocusNext: true,\n skipButtonText: 'Skip',\n backButtonText: 'Previous',\n nextButtonText: 'Continue',\n }\n\n private submitRef: RefObject = React.createRef()\n\n public componentDidMount() {\n if (this.props.autoFocusNext) {\n const buttonRef = this.submitRef.current\n if (buttonRef) {\n buttonRef.focus()\n }\n }\n }\n\n public componentDidUpdate() {\n if (this.props.autoFocusNext) {\n const buttonRef = this.submitRef.current\n if (buttonRef) {\n buttonRef.focus()\n }\n }\n }\n\n public render() {\n const {nextButtonText, nextButtonStatus, className} = this.props\n return (\n \n {this.backButton}\n \n {this.skipButton}\n \n )\n }\n\n private get backButton(): JSX.Element {\n const {backButtonText, onClickBack} = this.props\n\n if (!onClickBack || !backButtonText) {\n return\n }\n\n return (\n \n )\n }\n\n private get skipButton(): JSX.Element {\n const {skipButtonText, onClickSkip, showSkip} = this.props\n if (!showSkip) {\n return\n }\n\n return (\n
\n \n
\n )\n }\n}\n\nexport default OnboardingButtons\n","// Libraries\nimport React, {FC} from 'react'\n\ninterface Props {\n children: any\n}\n\nexport const WizardFullScreen: FC = (props: Props) => {\n return (\n <>\n
\n {props.children}\n
\n Powered by {' '}\n \n InfluxData\n \n
\n
\n
\n \n )\n}\n","// Libraries\nimport React, {PureComponent} from 'react'\n// Components\nimport {ErrorHandling} from 'src/shared/decorators/errors'\n\n// Types\nimport {StepStatus} from 'src/shared/constants/wizard'\nimport {Button, ComponentColor, ComponentSize} from '@influxdata/clockface'\nimport {OnboardingStepProps} from 'src/onboarding/containers/OnboardingWizard'\n\n@ErrorHandling\nclass InitStep extends PureComponent {\n public render() {\n return (\n
\n
\n

\n Welcome to InfluxDB\n

\n \n Get started in just a few easy steps\n \n \n
\n )\n }\n\n private handleNext = () => {\n const {onSetStepStatus, currentStepIndex, onIncrementCurrentStepIndex} =\n this.props\n onSetStepStatus(currentStepIndex, StepStatus.Complete)\n onIncrementCurrentStepIndex()\n }\n}\n\nexport default InitStep\n","// Libraries\nimport React, {PureComponent, ChangeEvent} from 'react'\nimport {getDeep} from 'src/utils/wrappers'\n\n// Components\nimport {Form, Input, Grid, QuestionMarkTooltip} from '@influxdata/clockface'\nimport OnboardingButtons from 'src/onboarding/components/OnboardingButtons'\n\n// Actions\nimport {setupAdmin} from 'src/onboarding/actions'\n\n// Types\nimport {OnboardingRequest} from 'src/client'\nimport {\n Columns,\n IconFont,\n InputType,\n ComponentSize,\n ComponentStatus,\n ComponentColor,\n} from '@influxdata/clockface'\nimport {StepStatus} from 'src/shared/constants/wizard'\nimport {OnboardingStepProps} from 'src/onboarding/containers/OnboardingWizard'\n\n// Decorators\nimport {ErrorHandling} from 'src/shared/decorators/errors'\n\ninterface State extends OnboardingRequest {\n confirmPassword: string\n isPassMismatched: boolean\n isPassTooShort: boolean\n}\n\ninterface Props extends OnboardingStepProps {\n onSetupAdmin: typeof setupAdmin\n}\n\n@ErrorHandling\nclass AdminStep extends PureComponent {\n constructor(props: Props) {\n super(props)\n const {setupParams} = props\n\n const username = getDeep(setupParams, 'username', '')\n const password = getDeep(setupParams, 'password', '')\n const confirmPassword = getDeep(setupParams, 'password', '')\n const org = getDeep(setupParams, 'org', '')\n const bucket = getDeep(setupParams, 'bucket', '')\n\n this.state = {\n username,\n password,\n confirmPassword,\n org,\n bucket,\n isPassMismatched: false,\n isPassTooShort: false,\n }\n }\n\n public render() {\n const {username, password, confirmPassword, org, bucket} = this.state\n const icon = this.InputIcon\n const status = this.InputStatus\n return (\n
\n
\n
\n
\n \n Setup Initial User\n \n \n You will be able to create additional Users, Buckets and\n Organizations later\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n \n \n
\n )\n }\n\n private get passwordError(): string {\n return this.state.isPassTooShort && 'Password must be at least 8 characters'\n }\n\n private get confirmError(): string {\n return this.state.isPassMismatched && 'Passwords do not match'\n }\n\n private get isAdminSet(): boolean {\n const {stepStatuses, currentStepIndex} = this.props\n if (stepStatuses[currentStepIndex] === StepStatus.Complete) {\n return true\n }\n return false\n }\n\n private handleUsername = (e: ChangeEvent): void => {\n const username = e.target.value\n this.setState({username})\n }\n\n private handlePassword = (e: ChangeEvent): void => {\n const {confirmPassword} = this.state\n const password = e.target.value\n const isPassMismatched = confirmPassword && password !== confirmPassword\n const isPassTooShort = password && password.length < 8\n this.setState({password, isPassMismatched, isPassTooShort})\n }\n\n private handleConfirmPassword = (e: ChangeEvent): void => {\n const {password} = this.state\n const confirmPassword = e.target.value\n const isPassMismatched = confirmPassword && password !== confirmPassword\n this.setState({confirmPassword, isPassMismatched})\n }\n\n private handleOrg = (e: ChangeEvent): void => {\n const org = e.target.value\n this.setState({org})\n }\n\n private handleBucket = (e: ChangeEvent): void => {\n const bucket = e.target.value\n this.setState({bucket})\n }\n\n private orgTip = (): JSX.Element => {\n return (\n \n )\n }\n\n private bucketTip = (): JSX.Element => {\n return (\n \n )\n }\n\n private get nextButtonStatus(): ComponentStatus {\n if (this.areInputsValid) {\n return ComponentStatus.Default\n }\n return ComponentStatus.Disabled\n }\n\n private get areInputsValid(): boolean {\n const {\n username,\n password,\n org,\n bucket,\n confirmPassword,\n isPassMismatched,\n isPassTooShort,\n } = this.state\n\n return (\n username &&\n password &&\n confirmPassword &&\n org &&\n bucket &&\n !isPassMismatched &&\n !isPassTooShort\n )\n }\n\n private get passwordStatus(): ComponentStatus {\n const {isPassMismatched} = this.state\n if (this.isAdminSet) {\n return ComponentStatus.Disabled\n }\n if (isPassMismatched) {\n return ComponentStatus.Error\n }\n return ComponentStatus.Default\n }\n\n private get InputStatus(): ComponentStatus {\n if (this.isAdminSet) {\n return ComponentStatus.Disabled\n }\n return ComponentStatus.Default\n }\n\n private get InputIcon(): IconFont {\n if (this.isAdminSet) {\n return IconFont.CheckMark_New\n }\n return null\n }\n\n private handleNext = async () => {\n const {\n onIncrementCurrentStepIndex,\n onSetupAdmin: onSetupAdmin,\n onSetStepStatus,\n currentStepIndex,\n } = this.props\n\n const {username, password, org, bucket} = this.state\n\n if (this.isAdminSet) {\n onSetStepStatus(currentStepIndex, StepStatus.Complete)\n onIncrementCurrentStepIndex()\n return\n }\n\n const setupParams = {\n username,\n password,\n org,\n bucket,\n }\n\n const isAdminSet = await onSetupAdmin(setupParams)\n if (isAdminSet) {\n onIncrementCurrentStepIndex()\n }\n }\n}\n\nexport default AdminStep\n","// Libraries\nimport {PureComponent} from 'react'\n\n// Types\nimport {RemoteDataState} from 'src/types'\n\ninterface Props {\n fetcher: () => Promise\n children: (resources: T, loading: RemoteDataState) => JSX.Element\n}\n\ninterface State {\n resources: T\n loading: RemoteDataState\n}\n\nexport default class ResourceFetcher extends PureComponent<\n Props,\n State\n> {\n constructor(props) {\n super(props)\n this.state = {\n resources: null,\n loading: RemoteDataState.NotStarted,\n }\n }\n\n public async componentDidMount() {\n const {fetcher} = this.props\n let resources\n try {\n resources = await fetcher()\n } catch (error) {\n console.error(error)\n }\n\n this.setState({resources, loading: RemoteDataState.Done})\n }\n\n public render() {\n const {resources, loading} = this.state\n return this.props.children(resources, loading)\n }\n}\n","import ResourceFetcher from 'src/shared/components/resource_fetcher/ResourceFetcher'\n\nexport default ResourceFetcher\n","// Libraries\nimport React, {FC, memo} from 'react'\nimport {useHistory} from 'react-router-dom'\nimport {useSelector} from 'react-redux'\n\n// Components\nimport {Button, ComponentColor, ComponentSize} from '@influxdata/clockface'\nimport ErrorBoundary from 'src/shared/components/ErrorBoundary'\n\n// Types\nimport {AppState} from 'src/types'\n\ninterface Props {\n onExit: () => void\n}\n\nconst CompletionAdvancedButton: FC = ({onExit}) => {\n const orgID = useSelector((state: AppState) => state.onboarding.orgID)\n const history = useHistory()\n\n const handleAdvanced = (): void => {\n if (orgID) {\n history.push(`/orgs/${orgID}/load-data/buckets`)\n } else {\n onExit()\n }\n }\n return (\n \n \n \n )\n}\n\nexport default memo(CompletionAdvancedButton)\n","// Libraries\nimport React, {FC, memo} from 'react'\nimport {useHistory} from 'react-router-dom'\nimport {get} from 'lodash'\n\n// Components\nimport {Button, ComponentColor, ComponentSize} from '@influxdata/clockface'\nimport ErrorBoundary from 'src/shared/components/ErrorBoundary'\n\n// Types\nimport {Dashboard} from 'src/types'\n\ninterface Props {\n dashboards: Dashboard[]\n onExit: () => void\n}\n\nconst CompletionQuickStartButton: FC = ({onExit, dashboards}) => {\n const history = useHistory()\n const handleAdvanced = (): void => {\n const id = get(dashboards, '[0].id', null)\n if (id) {\n history.push(`/dashboards/${id}`)\n } else {\n onExit()\n }\n }\n return (\n \n \n \n )\n}\n\nexport default memo(CompletionQuickStartButton)\n","// Libraries\nimport React, {PureComponent} from 'react'\n\n// Components\nimport {ErrorHandling} from 'src/shared/decorators/errors'\nimport ResourceFetcher from 'src/shared/components/resource_fetcher'\nimport CompletionAdvancedButton from 'src/onboarding/components/CompletionAdvancedButton'\nimport CompletionQuickStartButton from 'src/onboarding/components/CompletionQuickStartButton'\n\nimport {\n FlexBox,\n Alert,\n IconFont,\n AlignItems,\n FlexDirection,\n} from '@influxdata/clockface'\nimport CodeSnippet from 'src/shared/components/CodeSnippet'\n\n// Constants\nimport {\n QuickstartScraperCreationSuccess,\n QuickstartScraperCreationError,\n QuickstartDashboardCreationSuccess,\n QuickstartDashboardCreationError,\n} from 'src/shared/copy/notifications'\nimport {ossMetricsTemplate} from 'src/templates/constants/defaultTemplates'\n\n// APIs\nimport {getDashboards} from 'src/organizations/apis'\nimport {createDashboardFromTemplate as createDashboardFromTemplateAJAX} from 'src/templates/api'\n\n// Types\nimport {\n Button,\n ComponentColor,\n ComponentSize,\n Columns,\n Grid,\n DapperScrollbars,\n} from '@influxdata/clockface'\nimport {Dashboard} from 'src/types'\nimport {OnboardingStepProps} from 'src/onboarding/containers/OnboardingWizard'\nimport {QUICKSTART_SCRAPER_TARGET_URL} from 'src/dataLoaders/constants/pluginConfigs'\nimport {CLOUD} from 'src/shared/constants'\n\nlet postScraper\n\nif (!CLOUD) {\n postScraper = require('src/client').postScraper\n}\n\ninterface Props extends OnboardingStepProps {\n orgID: string\n bucketID: string\n token: string\n}\n\n@ErrorHandling\nclass CompletionStep extends PureComponent {\n public componentDidMount() {\n window.addEventListener('keydown', this.handleKeydown)\n }\n\n public componentWillUnmount() {\n window.removeEventListener('keydown', this.handleKeydown)\n }\n\n public render() {\n const {onExit} = this.props\n\n return (\n
\n
\n \n
\n

You are ready to go!

\n {!CLOUD && (\n \n \n

Make sure to copy your operator API token now.

\n This token enables superuser privileges like creating users,\n orgs, etc. You won't be able to see it again!\n \n\n \n \n )}\n
\n Your InfluxDB has 1 organization, 1 user, and 1 bucket.\n
\n
\n

\n Let’s start collecting data!\n

\n
\n \n \n \n
\n fetcher={getDashboards}>\n {dashboards => (\n \n )}\n \n
Timing is everything!
\n
\n This will set up local metric collection and allow you\n to explore the features of InfluxDB quickly.\n
\n
\n \n \n
\n \n
Whoa looks like you’re an expert!
\n
\n This allows you to set up Telegraf, scrapers, and much\n more.\n
\n
\n \n \n
\n \n
I've got this...
\n
\n Jump into InfluxDB and set up data collection when\n you’re ready.\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n )\n }\n\n private handleQuickStart = async () => {\n try {\n await postScraper({\n data: {\n name: 'new target',\n type: 'prometheus',\n url: QUICKSTART_SCRAPER_TARGET_URL,\n bucketID: this.props.bucketID,\n orgID: this.props.orgID,\n },\n })\n this.props.notify(QuickstartScraperCreationSuccess)\n } catch (err) {\n this.props.notify(QuickstartScraperCreationError)\n }\n try {\n await createDashboardFromTemplateAJAX(\n ossMetricsTemplate(),\n this.props.orgID\n )\n this.props.notify(QuickstartDashboardCreationSuccess)\n } catch (err) {\n this.props.notify(QuickstartDashboardCreationError)\n }\n this.props.onExit()\n }\n\n private handleKeydown = (e: KeyboardEvent): void => {\n if (e.key === 'Enter') {\n this.props.onExit()\n }\n }\n}\n\nexport default CompletionStep\n","// Libraries\nimport React, {PureComponent} from 'react'\n\n// Components\nimport InitStep from 'src/onboarding/components/InitStep'\nimport AdminStep from 'src/onboarding/components/AdminStep'\nimport CompletionStep from 'src/onboarding/components/CompletionStep'\nimport {ErrorHandling} from 'src/shared/decorators/errors'\n\n// Types\nimport {OnboardingRequest} from 'src/client'\nimport {OnboardingStepProps} from 'src/onboarding/containers/OnboardingWizard'\n\ninterface Props {\n onboardingStepProps: OnboardingStepProps\n setupParams: OnboardingRequest\n currentStepIndex: number\n onSetupAdmin: any\n orgID: string\n bucketID: string\n token: string\n}\n\n@ErrorHandling\nclass OnboardingStepSwitcher extends PureComponent {\n public render() {\n const {\n currentStepIndex,\n orgID,\n bucketID,\n token,\n onboardingStepProps,\n onSetupAdmin,\n } = this.props\n\n switch (currentStepIndex) {\n case 0:\n return \n case 1:\n return (\n \n )\n case 2:\n return (\n \n )\n default:\n return
\n }\n }\n}\n\nexport default OnboardingStepSwitcher\n","// Libraries\nimport React, {PureComponent} from 'react'\n\n// Components\nimport {ErrorHandling} from 'src/shared/decorators/errors'\n\n// constants\nimport {StepStatus} from 'src/shared/constants/wizard'\n\nenum ConnectorState {\n None = 'none',\n Some = 'some',\n Full = 'full',\n}\n\ninterface Props {\n currentStepIndex: number\n handleSetCurrentStep: (stepNumber: number) => void\n stepStatuses: StepStatus[]\n stepTitles: string[]\n stepTestIds: string[]\n stepSkippable: boolean[]\n hideFirstStep?: boolean\n}\n\n@ErrorHandling\nexport class ProgressBar extends PureComponent {\n public render() {\n return
{this.WizardProgress}
\n }\n\n private handleSetCurrentStep = (i: number) => () => {\n const {handleSetCurrentStep, currentStepIndex} = this.props\n\n const isAfterCurrentUnskippableStep =\n !this.isStepSkippable && i > currentStepIndex\n const isAfterNextUnskippableStep =\n this.nextNonSkippableStep !== -1 && i > this.nextNonSkippableStep\n\n const preventSkip =\n isAfterCurrentUnskippableStep || isAfterNextUnskippableStep\n\n if (preventSkip) {\n return\n }\n\n handleSetCurrentStep(i)\n }\n\n private get nextNonSkippableStep(): number {\n const {currentStepIndex, stepSkippable, stepStatuses} = this.props\n return stepSkippable.findIndex((isSkippable, i) => {\n return (\n !isSkippable &&\n i > currentStepIndex &&\n stepStatuses[i] !== StepStatus.Complete\n )\n })\n }\n\n private get isStepSkippable(): boolean {\n const {stepSkippable, stepStatuses, currentStepIndex} = this.props\n\n return (\n stepSkippable[currentStepIndex] ||\n stepStatuses[currentStepIndex] === StepStatus.Complete\n )\n }\n\n private getStepClass(i: number): string {\n if (!this.isStepSkippable && i > this.props.currentStepIndex) {\n return 'wizard--progress-button unclickable'\n }\n return 'wizard--progress-button'\n }\n\n private get WizardProgress(): JSX.Element[] {\n const {\n hideFirstStep,\n stepStatuses,\n stepTitles,\n stepTestIds,\n currentStepIndex,\n } = this.props\n\n const lastIndex = stepStatuses.length - 1\n\n const progressBar: JSX.Element[] = stepStatuses.reduce(\n (acc, stepStatus, i) => {\n if (hideFirstStep && i === 0) {\n return [...acc]\n }\n\n let currentStep = ''\n\n // STEP STATUS\n if (i === currentStepIndex && stepStatus !== StepStatus.Error) {\n currentStep = 'current'\n }\n\n const stepEle = (\n \n \n \n \n \n {stepTitles[i]}\n
\n
\n )\n\n if (i === lastIndex) {\n return [...acc, stepEle]\n }\n\n // PROGRESS BAR CONNECTOR\n let connectorStatus = ConnectorState.None\n\n if (i === currentStepIndex && stepStatus !== StepStatus.Error) {\n connectorStatus = ConnectorState.Some\n }\n if (i === lastIndex || stepStatus === StepStatus.Complete) {\n connectorStatus = ConnectorState.Full\n }\n const connectorEle = (\n \n )\n return [...acc, stepEle, connectorEle]\n },\n []\n )\n return progressBar\n }\n}\n","// Libraries\nimport React, {FC} from 'react'\n\ninterface Props {\n children: any\n}\n\nexport const WizardProgressHeader: FC = (props: Props) => {\n const {children} = props\n return
{children}
\n}\n","// Libraries\nimport {get} from 'lodash'\n\n// Constants\nimport {StepStatus} from 'src/shared/constants/wizard'\nimport {SetupSuccess, SetupError} from 'src/shared/copy/notifications'\n\nimport {CLOUD} from 'src/shared/constants'\n\n// Actions\nimport {notify} from 'src/shared/actions/notifications'\n\n// APIs\nimport * as api from 'src/client'\n\n// Types\nimport {AppThunk} from 'src/types'\nimport {OnboardingRequest} from 'src/client'\n\nexport type Action =\n | SetSetupParams\n | SetStepStatus\n | SetOrganizationID\n | SetBucketID\n | SetToken\n\ninterface SetSetupParams {\n type: 'SET_SETUP_PARAMS'\n payload: {setupParams: OnboardingRequest}\n}\n\nexport const setSetupParams = (\n setupParams: OnboardingRequest\n): SetSetupParams => ({\n type: 'SET_SETUP_PARAMS',\n payload: {setupParams},\n})\n\ninterface SetStepStatus {\n type: 'SET_STEP_STATUS'\n payload: {index: number; status: StepStatus}\n}\n\nexport const setStepStatus = (\n index: number,\n status: StepStatus\n): SetStepStatus => ({\n type: 'SET_STEP_STATUS',\n payload: {\n index,\n status,\n },\n})\n\ninterface SetOrganizationID {\n type: 'SET_ORG_ID'\n payload: {orgID: string}\n}\n\nconst setOrganizationID = (orgID: string): SetOrganizationID => ({\n type: 'SET_ORG_ID',\n payload: {orgID},\n})\n\ninterface SetBucketID {\n type: 'SET_ONBOARDING_BUCKET_ID'\n payload: {bucketID: string}\n}\n\nexport const setBucketID = (bucketID: string): SetBucketID => ({\n type: 'SET_ONBOARDING_BUCKET_ID',\n payload: {bucketID},\n})\n\ninterface SetToken {\n type: 'SET_OPERATOR_TOKEN'\n payload: {token: string}\n}\n\nexport const setToken = (token: string): SetToken => ({\n type: 'SET_OPERATOR_TOKEN',\n payload: {token},\n})\n\nexport const setupAdmin =\n (params: OnboardingRequest): AppThunk> =>\n async dispatch => {\n try {\n dispatch(setSetupParams(params))\n const response = await api.postSetup({data: params})\n\n if (response.status !== 201) {\n throw new Error(response.data.message)\n }\n\n if (!CLOUD) {\n dispatch(setToken(response.data.auth.token))\n }\n\n const {id: orgID} = response.data.org\n const {id: bucketID} = response.data.bucket\n\n dispatch(setOrganizationID(orgID))\n dispatch(setBucketID(bucketID))\n\n const {username, password} = params\n\n const resp = await api.postSignin({auth: {username, password}})\n\n if (resp.status !== 204) {\n throw new Error(resp.data.message)\n }\n\n dispatch(notify(SetupSuccess))\n dispatch(setStepStatus(1, StepStatus.Complete))\n return true\n } catch (err) {\n console.error(err)\n const message = get(err, 'response.data.message', '')\n dispatch(notify(SetupError(message)))\n dispatch(setStepStatus(1, StepStatus.Error))\n }\n }\n","// Libraries\nimport React, {PureComponent} from 'react'\nimport {withRouter, RouteComponentProps} from 'react-router-dom'\nimport {connect, ConnectedProps} from 'react-redux'\n\n// Components\nimport OnboardingStepSwitcher from 'src/onboarding/components/OnboardingStepSwitcher'\nimport {ErrorHandling} from 'src/shared/decorators/errors'\nimport {ProgressBar} from 'src/shared/components/wizard/ProgressBar'\nimport {WizardFullScreen} from 'src/shared/components/wizard/WizardFullScreen'\nimport {WizardProgressHeader} from 'src/shared/components/wizard/WizardProgressHeader'\n\n// Actions\nimport {notify as notifyAction} from 'src/shared/actions/notifications'\nimport {setSetupParams, setStepStatus, setupAdmin} from 'src/onboarding/actions'\n\n// Constants\nimport {StepStatus} from 'src/shared/constants/wizard'\n\n// Types\nimport {OnboardingRequest} from 'src/client'\nimport {AppState} from 'src/types'\n\nexport interface OnboardingStepProps {\n currentStepIndex: number\n onSetCurrentStepIndex: (stepNumber: number) => void\n onIncrementCurrentStepIndex: () => void\n onDecrementCurrentStepIndex: () => void\n onSetStepStatus: (index: number, status: StepStatus) => void\n stepStatuses: StepStatus[]\n stepTitles: string[]\n stepTestIds: string[]\n setupParams: OnboardingRequest\n handleSetSetupParams: (setupParams: OnboardingRequest) => void\n notify: typeof notifyAction\n onCompleteSetup: () => void\n onExit: () => void\n}\n\ninterface OwnProps {\n startStep?: number\n stepStatuses?: StepStatus[]\n onCompleteSetup: () => void\n currentStepIndex: number\n onIncrementCurrentStepIndex: () => void\n onDecrementCurrentStepIndex: () => void\n onSetCurrentStepIndex: (stepNumber: number) => void\n}\n\ntype ReduxProps = ConnectedProps\ntype Props = OwnProps & ReduxProps & RouteComponentProps\n\n@ErrorHandling\nclass OnboardingWizard extends PureComponent {\n public stepTitles = ['Welcome', 'Initial User Setup', 'Complete']\n public stepTestIds = [\n 'nav-step--welcome',\n 'nav-step--setup',\n 'nav-step--complete',\n ]\n\n public stepSkippable = [true, false, false]\n\n constructor(props: Props) {\n super(props)\n }\n\n public render() {\n const {\n currentStepIndex,\n orgID,\n bucketID,\n token,\n setupParams,\n onSetupAdmin,\n } = this.props\n\n return (\n \n {this.progressHeader}\n
\n
\n \n
\n
\n
\n )\n }\n\n private get progressHeader(): JSX.Element {\n const {stepStatuses, currentStepIndex, onSetCurrentStepIndex} = this.props\n\n if (currentStepIndex === 0) {\n return
\n }\n\n return (\n \n \n \n )\n }\n\n private handleExit = () => {\n const {history, onCompleteSetup} = this.props\n onCompleteSetup()\n history.push('/')\n }\n\n private get onboardingStepProps(): OnboardingStepProps {\n const {\n stepStatuses,\n notify,\n onCompleteSetup,\n setupParams,\n currentStepIndex,\n onSetStepStatus,\n onSetSetupParams,\n onSetCurrentStepIndex,\n onDecrementCurrentStepIndex,\n onIncrementCurrentStepIndex,\n } = this.props\n\n return {\n stepStatuses,\n stepTitles: this.stepTitles,\n stepTestIds: this.stepTestIds,\n currentStepIndex,\n onSetCurrentStepIndex,\n onIncrementCurrentStepIndex,\n onDecrementCurrentStepIndex,\n onSetStepStatus,\n setupParams,\n handleSetSetupParams: onSetSetupParams,\n notify,\n onCompleteSetup,\n onExit: this.handleExit,\n }\n }\n}\n\nconst mstp = ({\n onboarding: {stepStatuses, setupParams, orgID, bucketID, token},\n}: AppState) => ({\n stepStatuses,\n setupParams,\n orgID,\n bucketID,\n token,\n})\n\nconst mdtp = {\n notify: notifyAction,\n onSetSetupParams: setSetupParams,\n onSetStepStatus: setStepStatus,\n onSetupAdmin: setupAdmin,\n}\n\nconst connector = connect(mstp, mdtp)\n\nexport default connector(withRouter(OnboardingWizard))\n","// Libraries\nimport React, {ReactElement, PureComponent} from 'react'\nimport {withRouter, RouteComponentProps} from 'react-router-dom'\n\n// APIs\nimport {getSetup} from 'src/client'\n\n// Components\nimport {\n Button,\n EmptyState,\n AppWrapper,\n TechnoSpinner,\n SpinnerContainer,\n} from '@influxdata/clockface'\nimport {WizardFullScreen} from 'src/shared/components/wizard/WizardFullScreen'\nimport {ErrorHandling} from 'src/shared/decorators/errors'\nimport OnboardingWizard from 'src/onboarding/containers/OnboardingWizard'\nimport Notifications from 'src/shared/components/notifications/Notifications'\n\n// Types\nimport {ComponentColor, ComponentSize} from '@influxdata/clockface'\nimport {RemoteDataState} from 'src/types'\n\ninterface State {\n loading: RemoteDataState\n isSetupComplete: boolean\n}\n\ninterface PassedProps {\n children: ReactElement\n}\n\ntype Props = PassedProps & RouteComponentProps<{stepID: string}>\n\n@ErrorHandling\nexport class OnboardingWizardPage extends PureComponent {\n constructor(props: Props) {\n super(props)\n\n this.state = {\n loading: RemoteDataState.NotStarted,\n isSetupComplete: false,\n }\n }\n\n public async componentDidMount() {\n this.setState({loading: RemoteDataState.Loading})\n try {\n const resp = await getSetup({})\n\n if (resp.status !== 200) {\n throw new Error('There was an error onboarding')\n }\n\n const {allowed} = resp.data\n if (!allowed) {\n this.setState({isSetupComplete: true})\n }\n this.setState({loading: RemoteDataState.Done})\n } catch (error) {\n console.error(error)\n this.setState({loading: RemoteDataState.Error})\n }\n }\n\n public render() {\n const {match} = this.props\n const {isSetupComplete} = this.state\n\n if (isSetupComplete) {\n return (\n }\n >\n \n
\n
\n \n \n Initial User is already set up, nothing to see here\n folks!\n \n \n \n
\n
\n
\n \n )\n }\n\n return (\n \n }\n >\n \n \n \n \n )\n }\n\n public handleCompleteSetup = () => {\n this.setState({isSetupComplete: true})\n }\n\n private redirectToHome = () => {\n this.props.history.push('/')\n }\n\n private handleDecrementStepIndex = () => {\n const {\n match: {\n params: {stepID},\n },\n } = this.props\n\n this.setStepIndex(+stepID - 1)\n }\n\n private handleIncrementStepIndex = () => {\n const {\n match: {\n params: {stepID},\n },\n } = this.props\n\n this.setStepIndex(+stepID + 1)\n }\n\n private setStepIndex = (index: number) => {\n const {history} = this.props\n\n history.replace(`/onboarding/${index}`)\n }\n}\n\nexport default withRouter(OnboardingWizardPage)\n","// API\nimport {getDashboards as apiGetDashboards, getOrgs} from 'src/client'\n\n// Types\nimport {Dashboard, Organization} from 'src/types'\n\n// Utils\nimport {addDashboardDefaults} from 'src/schemas/dashboards'\n\n// Metrics\nimport {event} from 'src/cloud/utils/reporting'\n\n// CRUD APIs for Organizations and Organization resources\n// i.e. Organization Members, Buckets, Dashboards etc\n\nexport const getDashboards = async (\n org?: Organization\n): Promise => {\n try {\n let result\n if (org) {\n result = await apiGetDashboards({query: {orgID: org.id}})\n } else {\n result = await apiGetDashboards({})\n }\n\n if (result.status !== 200) {\n throw new Error(result.data.message)\n }\n\n const dashboards = result.data.dashboards.map(d => addDashboardDefaults(d))\n\n return dashboards\n } catch (error) {\n console.error('Could not get buckets for org', error)\n throw error\n }\n}\n\nexport const getOrg = async () => {\n try {\n const resp = await getOrgs({})\n\n if (resp.status !== 200) {\n throw new Error(resp.data.message)\n }\n\n const {orgs} = resp.data\n\n if (Array.isArray(orgs) && orgs.length) {\n return orgs[0]\n }\n\n throw new Error('Orgs was not an array')\n } catch (error) {\n event('api.getOrg.fetch.error', {error})\n }\n}\n","// Libraries\nimport React, {FC, createContext, useContext, useEffect, useState} from 'react'\nimport {useDispatch} from 'react-redux'\n\nimport {Prism as SyntaxHighlighter} from 'react-syntax-highlighter'\nimport {darcula} from 'react-syntax-highlighter/dist/cjs/styles/prism'\n\n// Components\nimport {DapperScrollbars, InfluxColors} from '@influxdata/clockface'\nimport CopyButton from 'src/shared/components/CopyButton'\n\n// Constants\nimport {copyToClipboardSuccess} from 'src/shared/copy/notifications'\nimport {notify} from 'src/shared/actions/notifications'\n\ninterface VariableMap {\n [name: string]: string\n}\n\ninterface TemplateContextType {\n variables: VariableMap\n update: (vars: VariableMap) => void\n transform: (text: string) => string\n}\n\nconst DEFAULT_TEMPLATE_CONTEXT: TemplateContextType = {\n variables: {},\n update: _ => {},\n transform: (text: string) => text,\n}\n\nexport const Context = createContext(\n DEFAULT_TEMPLATE_CONTEXT\n)\n\nexport const transform = (text: string, vars: VariableMap) => {\n // based off of this: https://johnresig.com/blog/javascript-micro-templating/\n // see the previous implementation (search for TemplatedCodeSnippet)\n // removed in this PR for more context: https://github.com/influxdata/ui/pull/1346/files\n // eslint-disable-next-line @typescript-eslint/no-implied-eval\n const output = new Function(\n 'vars',\n 'var output=' +\n JSON.stringify(text).replace(/<%=(.+?)%>/g, '\"+(vars[\"$1\".trim()])+\"') +\n ';return output;'\n )\n return output(vars)\n}\n\ninterface ProviderProps {\n variables?: VariableMap\n}\n\nexport const Provider: FC = ({variables, children}) => {\n const [vars, setVars] = useState(variables || {})\n const _transform = (text: string) => transform(text, vars)\n\n useEffect(() => {\n if (variables) {\n setVars(variables)\n }\n }, [variables])\n\n return (\n \n {children}\n \n )\n}\n\ninterface Props {\n text: string\n label?: string\n testID?: string\n onCopy?: () => void\n type?: string\n showCopyControl?: boolean\n language?: string\n}\n\nconst CodeSnippet: FC = ({\n text,\n label,\n testID,\n type,\n onCopy,\n showCopyControl = true,\n language = null,\n}) => {\n const {transform} = useContext(Context)\n const dispatch = useDispatch()\n const _text = transform(text)\n const handleCopy = () => {\n if (typeof onCopy === 'function') {\n onCopy()\n }\n dispatch(\n notify(\n copyToClipboardSuccess(\n `${_text.slice(0, 30).trimRight()}...`,\n type ?? 'Script'\n )\n )\n )\n }\n\n return (\n
\n \n
\n {language === null ? (\n
\n              {_text}\n            
\n ) : (\n \n {_text}\n \n )}\n
\n \n {(showCopyControl || label) && (\n
\n {showCopyControl && }\n {label && }\n
\n )}\n
\n )\n}\n\nexport default CodeSnippet\n","// Libraries\nimport React, {PureComponent, MouseEvent} from 'react'\n\n// Components\nimport {\n Button,\n ComponentColor,\n ComponentSize,\n ButtonShape,\n} from '@influxdata/clockface'\nimport CopyToClipboard from 'src/shared/components/CopyToClipboard'\n\ninterface Props {\n text: string\n size?: ComponentSize\n testID?: string\n onCopy?: () => void\n}\n\nclass CopyButton extends PureComponent {\n public render() {\n const {text, testID, size} = this.props\n return (\n \n \n \n )\n }\n private handleClickCopy = (e: MouseEvent) => {\n e.stopPropagation()\n e.preventDefault()\n }\n\n private handleCopyAttempt = (): void => {\n const {onCopy} = this.props\n\n if (onCopy) {\n onCopy()\n return\n }\n }\n}\n\nexport default CopyButton\n","import {\n apache,\n docker,\n gettingStarted,\n github,\n jmeter,\n kubernetes,\n nginx,\n ossMetrics,\n redis,\n system,\n} from '@influxdata/influxdb-templates'\nimport {DashboardTemplate} from 'src/types'\n\nexport const ossMetricsTemplate = (): DashboardTemplate => {\n return ossMetrics\n}\n\nexport const staticTemplates: {[k: string]: DashboardTemplate} = {\n Apache: apache,\n Docker: docker,\n 'getting-started': gettingStarted,\n Github: github,\n JMeter: jmeter,\n Kubernetes: kubernetes,\n Nginx: nginx,\n 'oss-metrics': ossMetrics,\n Redis: redis,\n System: system,\n}\n\nexport const influxdbTemplateList: DashboardTemplate[] = [\n apache,\n docker,\n gettingStarted,\n github,\n jmeter,\n kubernetes,\n nginx,\n ossMetrics,\n redis,\n system,\n].map((t, i) => ({...t, id: `influxdb-template-${i}`}))\n"],"names":["OnboardingButtons","PureComponent","submitRef","componentDidMount","this","props","autoFocusNext","buttonRef","current","focus","componentDidUpdate","render","nextButtonText","nextButtonStatus","className","Overlay","backButton","Button","color","ComponentColor","text","type","ButtonType","testID","ref","status","tabIndex","skipButton","backButtonText","onClickBack","onClick","skipButtonText","onClickSkip","showSkip","size","ComponentSize","defaultProps","ComponentStatus","WizardFullScreen","children","href","target","rel","InitStep","handleNext","onSetStepStatus","currentStepIndex","onIncrementCurrentStepIndex","AdminStep","constructor","super","handleUsername","e","username","value","setState","handlePassword","confirmPassword","state","password","isPassMismatched","isPassTooShort","length","handleConfirmPassword","handleOrg","org","handleBucket","bucket","orgTip","QuestionMarkTooltip","diameter","style","marginLeft","tooltipStyle","width","tooltipContents","bucketTip","async","onSetupAdmin","isAdminSet","setupParams","icon","InputIcon","InputStatus","Form","onSubmit","Grid","widthXS","Columns","widthMD","offsetMD","label","Input","onChange","titleText","disabledTitleText","autoFocus","errorMessage","passwordError","InputType","confirmError","passwordStatus","labelAddOn","placeholder","stepStatuses","areInputsValid","IconFont","ResourceFetcher","resources","loading","fetcher","error","console","memo","onExit","orgID","onboarding","history","ErrorBoundary","push","dashboards","id","get","postScraper","CompletionStep","handleQuickStart","data","name","url","bucketID","notify","err","handleKeydown","key","window","addEventListener","componentWillUnmount","removeEventListener","DapperScrollbars","autoHide","FlexBox","direction","FlexDirection","margin","alignItems","AlignItems","Alert","CodeSnippet","token","widthSM","OnboardingStepSwitcher","onboardingStepProps","ConnectorState","ProgressBar","handleSetCurrentStep","i","isAfterCurrentUnskippableStep","isStepSkippable","isAfterNextUnskippableStep","nextNonSkippableStep","WizardProgress","stepSkippable","findIndex","isSkippable","getStepClass","hideFirstStep","stepTitles","stepTestIds","lastIndex","reduce","acc","stepStatus","currentStep","stepEle","connectorStatus","None","Some","Full","connectorEle","WizardProgressHeader","setSetupParams","payload","setStepStatus","index","OnboardingWizard","handleExit","onCompleteSetup","progressHeader","onSetCurrentStepIndex","onSetSetupParams","onDecrementCurrentStepIndex","handleSetSetupParams","mdtp","params","dispatch","response","Error","message","auth","setOrganizationID","setBucketID","resp","OnboardingWizardPage","handleCompleteSetup","isSetupComplete","redirectToHome","handleDecrementStepIndex","match","stepID","setStepIndex","handleIncrementStepIndex","replace","allowed","SpinnerContainer","spinnerComponent","TechnoSpinner","EmptyState","AppWrapper","Notifications","getDashboards","result","query","map","d","getOrg","orgs","Array","isArray","Context","createContext","variables","update","_","transform","vars","Function","JSON","stringify","output","Provider","setVars","useState","useEffect","onCopy","showCopyControl","language","useContext","_text","autoSizeHeight","customStyle","backgroundColor","InfluxColors","codeTagProps","fontFamily","slice","trimRight","CopyButton","handleClickCopy","stopPropagation","preventDefault","handleCopyAttempt","shape","ButtonShape","ossMetricsTemplate","ossMetrics","influxdbTemplateList","apache","docker","gettingStarted","github","jmeter","kubernetes","nginx","redis","system","t"],"sourceRoot":""}