# All files / mixins ellipsis.js

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

    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

    3x

     // @flow

    /**
     * CSS to represent truncated text with an ellipsis.
     *
     * @example
     * // Styles as object usage
     * const styles = {
     *   ...ellipsis('250px')
     * }
     *
     * // styled-components usage
     * const div = styled.div`
     *   ${ellipsis('250px')}
     * `
     *
     * // CSS as JS Output
     *
     * div: {
     *   'display': 'inline-block',
     *   'max-width': '250px',
     *   'overflow': 'hidden',
     *   'text-overflow': 'ellipsis',
     *   'white-space': 'nowrap',
     *   'word-wrap': 'normal'
     * }
     */

    function ellipsis(width: string = '100%') {
      return {
        'display': 'inline-block',
        'max-width': width,
        'overflow': 'hidden',
        'text-overflow': 'ellipsis',
        'white-space': 'nowrap',
        'word-wrap': 'normal',
      }
    }

    export default ellipsis