UNPKG

@formio/bootstrap

Version:

Bootstrap templates for Form.io forms

189 lines (188 loc) 6.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = (iconset, name, spinning) => { let iconName = name; if (iconset === 'bi') { switch (name) { case 'cog': iconName = 'gear'; break; case 'copy': iconName = 'back'; break; case 'bars': iconName = 'list'; break; case 'remove': iconName = 'trash'; break; case 'font': iconName = 'type'; break; case 'hashtag': iconName = 'hash'; break; case 'th-list': iconName = 'menu-button-wide'; break; case 'dot-circle-o': iconName = 'ui-radios'; break; case 'plus-square-o': iconName = 'plus-square'; break; case 'minus-square-o': iconName = 'dash-square'; break; case 'plus-square': iconName = 'ui-checks'; break; case 'phone-square': iconName = 'phone'; break; case 'home': iconName = 'house'; break; case 'clock-o': iconName = 'clock'; break; case 'usd': iconName = 'currency-dollar'; break; case 'html5': iconName = 'file-richtext'; break; case 'pencil-square-o': iconName = 'pencil-square'; break; case 'columns': iconName = 'layout-three-columns'; break; case 'list-alt': iconName = 'window'; break; case 'th-large': iconName = 'grid-fill'; break; case 'folder-o': iconName = 'folder'; break; case 'square-o': iconName = 'square'; break; case 'user-secret': iconName = 'person-fill-slash'; break; case 'folder-open': iconName = 'folder2-open'; break; case 'th': iconName = 'grid-3x3-gap-fill'; break; case 'tasks': iconName = 'view-stacked'; break; case 'indent': iconName = 'text-indent-left'; break; case 'refresh': iconName = 'arrow-repeat'; break; case 'files-o': iconName = 'files'; break; case 'wpforms': iconName = 'window-stack'; break; case 'cube': iconName = 'box'; break; case 'cubes': iconName = 'boxes'; break; case 'check-square-o': iconName = 'check-square'; break; case 'plus': iconName = 'plus-lg'; break; case 'question-sign': name = 'question-circle'; iconName = 'question-circle'; break; case 'remove-circle': case 'circle-xmark': iconName = 'x-circle'; break; case 'new-window': name = 'window-restore'; iconName = 'window-plus'; break; case 'move': name = 'arrows'; iconName = 'arrows-move'; break; case 'edit': iconName = 'pencil'; break; case 'time': iconName = 'clock'; break; case 'video': iconName = 'camera-video'; break; case 'microphone': iconName = 'mic'; break; case 'folder-open': iconName = 'folder2-open'; break; case 'check-circle': iconName = 'check-circle-fill'; break; case 'times-circle': iconName = 'x-circle-fill'; break; case 'pencil': iconName = 'pencil-fill'; break; case 'minus': iconName = 'dash'; break; case 'circle': iconName = 'circle-fill'; break; case 'search-plus': iconName = 'zoom-in'; break; case 'search-minus': iconName = 'zoom-out'; break; case 'hand-paper-o': iconName = 'hand-index'; break; case 'undo': iconName = 'arrow-counterclockwise'; break; case 'repeat': iconName = 'arrow-clockwise'; break; } } function generateIconClass() { if (spinning) { return 'spinner-border spinner-border-sm'; } // Handles legacy icons names. For example, fa-remove-circle was changed to fa-circle-xmark in a major version // update of font-awesome. To handle cases where customers are still on a very old version of font-awesome add // a fallback if statement to handle such cases function handleLegacyIconNames() { if (iconName === 'circle-xmark') { return `${iconset}-${iconName} ${iconset}-remove-circle`; } return `${iconset}-${iconName}`; } return `${iconset} ${handleLegacyIconNames()}`; } return generateIconClass(); };