Sha256: 7df555713ae8e63a84886e9865bc3844604ca9f8f2be495c5e0e67bae6b8075f

Contents?: true

Size: 1.02 KB

Versions: 384

Compression:

Stored size: 1.02 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'

type HighlightProps = {
  className?: string,
  data?: {[key: string]: string},
  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'],
    id = '',
    text = '',
  } = props

  const highlightContent: any = text || children;

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

export default Highlight

Version data entries

384 entries across 384 versions & 1 rubygems

Version Path
playbook_ui-12.37.0.pre.alpha.PLAYaddingdatapropselectkit1071 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.38.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.37.0.pre.alpha.svgiconmethods1064 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.37.0.pre.alpha.PLAY951collapsiblenav31062 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.37.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.svgiconmethods1059 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.PLAY936momentjs1058 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.PLAY936momentjs1050 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.PLAY936momentjs1047 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.svgiconmethods1043 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0.pre.alpha.PLAY942collapsiblenav21035 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.36.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.35.0.pre.alpha.iconpocwebfonts1023 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.35.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.34.0.pre.alpha.fixdialogcloseevents1004 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.34.0.pre.alpha.fixdialogcloseevents1003 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.34.0.pre.alpha.play716popoverkitcloseonclickissue998 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.34.0 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.33.1.pre.alpha.PLAY933navkitcollapsible994 app/pb_kits/playbook/pb_highlight/_highlight.tsx
playbook_ui-12.33.1 app/pb_kits/playbook/pb_highlight/_highlight.tsx