Sha256: cf0bf297fb2b77e6bd9d64e51e93ba6029f1a6ceb591cfba79f7441da6eb307a

Contents?: true

Size: 1.24 KB

Versions: 674

Compression:

Stored size: 1.24 KB

Contents

/* eslint-disable react/no-multi-comp, flowtype/space-before-type-colon */
import Highlighter from 'react-highlight-words'
import React from 'react'
import classnames from 'classnames'
import { globalProps, GlobalProps } from '../utilities/globalProps'
import { buildHtmlProps } from '../utilities/props'

type HighlightProps = {
  className?: string,
  data?: {[key: string]: string},
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  children?: React.ReactChild[] | React.ReactChild | string,
  text?: string,
  highlightedText?: string[],
} & GlobalProps

const Highlight = (props: HighlightProps): React.ReactElement => {
  const {
    children,
    className = 'pb_highlight_kit',
    data = {},
    highlightedText = ['highlight'],
    htmlOptions = {},
    id = '',
    text = '',
  } = props

  const htmlProps = buildHtmlProps(htmlOptions)
  const highlightContent: any = text || children;

  return (
    <Highlighter
        autoEscape
        data={data}
        highlightClassName={classnames(globalProps(props), className)}
        highlightTag="mark"
        id={id}
        searchWords={highlightedText}
        textToHighlight={highlightContent}
        {...htmlProps}
    />
  )
}

export default Highlight

Version data entries

674 entries across 674 versions & 1 rubygems

Version Path
playbook_ui-14.12.0.pre.alpha.play1790darkaudittable5802 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.play1752updatecontenttag5801 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.6 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.5 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1602lightboxoverlapnitrobug5781 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.4 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.playrailsinputmaskissue5775 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5757 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5754 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1602lightboxoverlapnitrobugzindextoken5751 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5738 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.3 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1865reactdatepickerreinitializingbug5732 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5728 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.play1862buttondisabledlinkbug5716 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.play1862buttondisabledlinkbug5714 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.2 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.1 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.13.0.pre.rc.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-14.12.0.pre.alpha.advancedtablealignmentfixes5693 app/pb_kits/playbook/pb_highlight/_highlight.tsx