Source: control/Icons.js

(function() {
    /**
     * @namespace control
     * @memberof Help4
     */

    /**
     * @enum {string}
     */
    Help4.control.ICONS = {
        add: '\ue058',
        attachment: '\ue04a',
        automation: '\ue22c',
        blur: '\ue272',
        bpm: '\ue0e5',
        bubble_auto: '\ue101',
        bubble_e: '\ue1bf',
        bubble_n: '\ue1b8',
        bubble_s: '\ue1b9',
        bubble_w: '\ue0c7',
        bubble_start: '\ue156',
        bubble_end: '\ue05b',
        bubble_action: '\ue0fe',
        bubble_info: '\ue05c',
        bubble_important: '\ue094',
        bubble_note: '\ue01f',
        bubble_tip: '\ue024',
        bug: '\ue0e4',
        category: '\ue1af',
        calendar: '\ue050',
        center: '\ue072',
        checkbox: '\ue05b',
        cnt_book: '\ue098',
        cnt_cdoc: '\ue1a3',
        cnt_group: '\ue08e',
        cnt_slide: '\ue013',
        cnt_project: '\ue1d3',
        cnt_media_doc: '\ue03b',
        cnt_media_pdf: '\ue01a',
        cnt_media_image: '\ue016',
        cnt_media_audio: '\ue19d',
        cnt_media_video: '\ue006',
        cnt_media_default: '\ue19a',
        cnt_media_file: '\ue19a',
        close: '\ue03e',
        condition: '\ue0e1',
        copy: '\ue245',
        cpackage: '\ue1a2',  // should be package but package is a reserved JS keyword (will break the xRay build process if you use it)
        crossapp: '\ue189',
        del: '\ue069',
        design: '\ue136',
        down: '\ue1ef',
        edit: '\ue038',
        error: '\ue03e',
        external: '\ue05a',
        finish: '\ue05b',
        first: '\ue14e',
        flag: '\ue28b',
        flash: '\ue075',
        folder: '\ue08e',
        fullscreen: '\ue166',
        fullscreenClose: '\ue1f5',
        gear: '\ue0a6',
        grid: '\ue071',
        height: '\ue210',
        help: '\ue1c3',
        helpCircle: '\ue1c4',
        helpPanel: '\ue063',
        hide: '\ue1ea',
        hint: '\ue0e2',
        hotspot: '\ue0af',
        hotspotstyle_circle: '\ue254',
        hotspotstyle_icon: '\ue0d0',
        hotspotstyle_none: '\ue0b6',
        hotspotstyle_rectangle: '\ue083',
        hotspotstyle_triangle: '\ue25b',
        hotspotstyle_underline: '\ue28d',
        icon_noicon: '\ue02e',
        icon_attachment: '\ue04a',
        icon_change: '\ue010',
        icon_compliance: '\ue260',
        icon_external: '\ue05a',
        icon_faq: '\ue175',
        icon_help: '\ue1c3',
        icon_info: '\ue289',
        icon_learn: '\ue0fc',
        icon_link: '\ue088',
        icon_maintain: '\ue002',
        icon_news: '\ue164',
        icon_note: '\ue01f',
        icon_pdf: '\ue01a',
        icon_prerequisites: '\ue04f',
        icon_star: '\ue0a1',
        icon_step: '\ue0fe',
        icon_support: '\ue221',
        icon_tip: '\ue024',
        icon_tour: '\ue156',
        icon_update: '\ue00a',
        icon_image: '\ue016',
        icon_video: '\ue006',
        icon_warning: '\ue094',
        icon_whatsnew: '\ue0b0',
        icon_whatsthisapp: '\ue202',
        info: '\ue289',
        infoAbout: '\ue202',
        infoSquare: '\ue05c',
        last: '\ue14a',
        lightbox_full: '\ue17f',
        lightbox_client: '\ue180',
        lightbox_explicit: '\ue305',
        lightbox_explicitfull: '\ue140',
        link: '\ue088',
        link_free: '\ue088',
        link_applink: '\ue24b',
        link_help4api: '\ue22d',
        list: '\ue0a5',
        loading: '\uf600',
        logout: '\ue022',
        mail: '\ue037',
        marginTop: '\ue04b',
        marginRight: '\ue04c',
        marginBottom: '\ue04e',
        marginLeft: '\ue04d',
        min: '\ue1f9',
        minus: '\ue069',
        next: '\ue066',
        new_: '\ue164',  // need to be different from "new" as this is a keyword and will destroy validators
        noresult: '\ue116',
        nocontent: '\ue29a',
        nosort: '\ue095',
        openFolder: '\ue1c9',
        offset: '\ue0a7',
        offsethor: '\ue1d0',
        offsetvert: '\ue1ce',
        palette: '\ue145',
        panelBottom: '\ue20f',
        panelTop: '\ue1d7',
        placeholder: '\ue117',
        play: '\ue09b',
        plus: '\ue058',
        positionhor: '\ue1cd',
        positionvert: '\ue1cf',
        position_a: '\ue191',
        position_b: '\ue02c',
        position_c: '\ue215',
        position_d: '\ue263',
        position_e: '\ue182',
        position_f: '\ue023',
        position_g: '\ue274',
        position_h: '\ue193',
        position_i: '\ue21e',
        position_j: '\ue052',
        position_k: '\ue183',
        position_l: '\ue049',
        position_m: '\ue11f',
        position_n: '\ue214',
        position_o: '\ue18e',
        position_p: '\ue17e',
        position_q: '\ue18c',
        position_r: '\ue02e',
        position_triangle_f: '\ue196',
        position_triangle_g: '\ue11a',
        position_triangle_j: '\ue195',
        position_triangle_k: '\ue12b',
        prev: '\ue067',
        publish: '\ue155',
        radio: '\ue255',
        redo: '\ue1df',
        reload: '\ue010',
        reset: '\ue1e0',
        resetSquare: '\ue1c6',
        save: '\ue219',
        saveDisk: '\ue09a',
        search: '\ue00d',
        share: '\ue13d',
        show: '\ue1e9',
        sortdown: '\ue1fc',
        sortup: '\ue1fd',
        spotlight: '\ue035',
        starEmpty: '\ue0a1',
        starFull: '\ue065',
        strokeWidth: '\ue0fb',
        success: '\ue05b',
        successSquare: '\ue03f',
        support: '\ue221',
        tag: '\ue1af',
        textBold: '\ue22f',
        textItalic: '\ue230',
        textUnderline: '\ue231',
        textStrike: '\ue27a',
        textClean: '\ue28c',
        textLeft: '\ue233',
        textCenter: '\ue234',
        textRight: '\ue235',
        textOrderedList: '\ue237',
        textUnorderedList: '\ue236',
        textIndent: '\ue266',
        textOutdent: '\ue267',
        textInsert: '\ue24d',
        tile: '\ue1ff',
        toc: '\ue0dc',
        tour: '\ue156',
        tourstep: '\ue0fe',
        trash: '\ue03d',
        triangle: '\ue257',
        triangle_rtl: '\ue259',
        tutor: '\ue0fc',
        up: '\ue1e1',
        update: '\ue00a',
        upload: '\ue12e',
        user: '\ue0ca',
        users: '\ue05d',
        value_help: '\ue1f3',
        warning: '\ue0e2',
        warningSign: '\ue094',
        whatsnew: '\ue0b0',
        width: '\ue1d4',
        workarea: '\ue096',
        world: '\ue0e8',
        zoomin: '\ue1d5',
        zoomout: '\ue1d6'
    };

    Help4.control.getClass = _getClass;
    Help4.control.correctIcon = _correctIcon;

    function _getClass(name) {
        var type = name.split('.');
        var obj = Help4.control;
        do {
            obj = obj[type.shift()];
        } while (type.length > 0);
        return obj;
    }

    function _correctIcon(icon) {
        var icons = this.ICONS;

        // id exists in icons, e.g. "close"
        if (icons[icon]) return icon;

        for (var key in icons) {
            if (icons.hasOwnProperty(key) && icons[key] === icon) {
                // id exists as value of a key, use the key instead
                return key;
            }
        }

        // definetly wrong icon
        return 'bug';
    }
})();