UNPKG

@openshift-console/dynamic-plugin-sdk

Version:

Provides core APIs, types and utilities used by dynamic plugins at runtime.

21 lines (20 loc) 737 B
import * as React from 'react'; const MEMO = {}; const CamelCaseWrap = ({ value, dataTest }) => { if (!value) { return '-'; } if (MEMO[value]) { return MEMO[value]; } // Add word break points before capital letters (but keep consecutive capital letters together). const words = value.match(/[A-Z]+[^A-Z]*|[^A-Z]+/g); const rendered = (React.createElement("span", { "data-test": dataTest }, words.map((word, i) => ( // eslint-disable-next-line react/no-array-index-key React.createElement(React.Fragment, { key: i }, word, i !== words.length - 1 && React.createElement("wbr", null)))))); MEMO[value] = rendered; return rendered; }; export default CamelCaseWrap;