All files / modules/72-triggers/pages/triggers/views TriggerOverviewPanel.tsx

100% Statements 12/12
80% Branches 4/5
100% Functions 1/1
100% Lines 12/12

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59              5x 5x 5x 5x 5x 5x             5x           12x 12x   12x 12x                                                       5x  
/*
 * Copyright 2021 Harness Inc. All rights reserved.
 * Use of this source code is governed by the PolyForm Shield 1.0.0 license
 * that can be found in the licenses directory at the root of this repository, also available at
 * https://polyformproject.org/wp-content/uploads/2020/06/PolyForm-Shield-1.0.0.txt.
 */
 
import React from 'react'
import { HarnessDocTooltip, Layout, Text, PageSpinner } from '@wings-software/uicore'
import cx from 'classnames'
import { NameIdDescriptionTags } from '@common/components'
import { useStrings } from 'framework/strings'
import css from './TriggerOverviewPanel.module.scss'
 
export interface TriggerOverviewPanelPropsInterface {
  formikProps?: any
  isEdit?: boolean
}
 
const TriggerOverviewPanel: React.FC<TriggerOverviewPanelPropsInterface> = ({
  formikProps,
  isEdit = false
}): JSX.Element => {
  const {
    values: { originalPipeline, pipeline }
  } = formikProps
  const { getString } = useStrings()
  // originalPipeline for new, pipeline for onEdit
  const hasLoadedPipeline = originalPipeline || pipeline
  return (
    <Layout.Vertical className={cx(css.triggerOverviewPanelContainer)} spacing="large" padding="xxlarge">
      {!hasLoadedPipeline && (
        <div style={{ position: 'relative', height: 'calc(100vh - 128px)' }}>
          <PageSpinner />
        </div>
      )}
      <>
        <Text className={css.formContentTitle} inline={true}>
          {getString('triggers.triggerOverviewPanel.title')}
          <HarnessDocTooltip tooltipId="triggerOverview" useStandAlone={true} />
        </Text>
      </>
      <Layout.Vertical className={css.formContent}>
        <NameIdDescriptionTags
          className={css.nameIdDescriptionTags}
          formikProps={formikProps}
          identifierProps={{
            isIdentifierEditable: !isEdit
          }}
          tooltipProps={{
            dataTooltipId: 'triggerOverview'
          }}
        />
      </Layout.Vertical>
    </Layout.Vertical>
  )
}
export default TriggerOverviewPanel