# All files / mixins wordWrap.js

100% Statements 2/2
100% Branches 3/3
100% Functions 1/1
100% Lines 2/2

    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

    2x
    2x

     // @flow

    /**
     * Provides an easy way to change the `word-wrap` property.
     *
     * @example
     * // Styles as object usage
     * const styles = {
     *   ...wordWrap('break-all')
     * }
     *
     * // styled-components usage
     * const div = styled.div`
     *   ${wordWrap('break-all')}
     * `
     *
     * // CSS as JS Output
     *
     * const styles = {
     *   overflow-wrap: 'break-all',
     *   word-wrap: 'break-all',
     *   word-break: 'break-all',
     * }
     */

    function wordWrap(wrap: string = 'break-word') {
      const wordBreak = wrap === 'break-word' ? 'break-all' : wrap
      return {
        'overflow-wrap': wrap,
        'word-wrap': wrap,
        'word-break': wordBreak,
      }
    }

    export default wordWrap