mirror of
https://github.com/Ionaru/easy-markdown-editor
synced 2025-06-28 05:31:06 -06:00
Refactor into using a map for icon classes
This commit is contained in:
parent
aca4b5c816
commit
9d74ea296c
@ -1439,62 +1439,90 @@ function wordCount(data) {
|
||||
return count;
|
||||
}
|
||||
|
||||
var iconClassMap = {
|
||||
toggleBold: 'fa fa-bold',
|
||||
toggleItalic: 'fa fa-italic',
|
||||
toggleStrikethrough: 'fa fa-strikethrough',
|
||||
toggleHeading: 'fa fa-header fa-heading',
|
||||
toggleHeadingSmaller: 'fa fa-header fa-heading header-smaller',
|
||||
toggleHeadingBigger: 'fa fa-header fa-heading header-bigger',
|
||||
toggleHeading1: 'fa fa-header fa-heading header-1',
|
||||
toggleHeading2: 'fa fa-header fa-heading header-2',
|
||||
toggleHeading3: 'fa fa-header fa-heading header-3',
|
||||
toggleCodeBlock: 'fa fa-code',
|
||||
toggleBlockquote: 'fa fa-quote-left',
|
||||
toggleOrderedList: 'fa fa-list-ol',
|
||||
toggleUnorderedList: 'fa fa-list-ul',
|
||||
cleanBlock: 'fa fa-eraser',
|
||||
drawLink: 'fa fa-link',
|
||||
drawImage: 'fa fa-image',
|
||||
drawUploadedImage: 'fa fa-image',
|
||||
drawTable: 'fa fa-table',
|
||||
drawHorizontalRule: 'fa fa-minus',
|
||||
togglePreview: 'fa fa-eye',
|
||||
toggleSideBySide: 'fa fa-columns',
|
||||
toggleFullScreen: 'fa fa-arrows-alt',
|
||||
guide: 'fa fa-question-circle',
|
||||
undo: 'fa fa-undo',
|
||||
redo: 'fa fa-repeat fa-redo'
|
||||
};
|
||||
|
||||
var toolbarBuiltInButtons = {
|
||||
'bold': {
|
||||
name: 'bold',
|
||||
action: toggleBold,
|
||||
className: 'fa fa-bold',
|
||||
className: iconClassMap.toggleBold,
|
||||
title: 'Bold',
|
||||
default: true,
|
||||
},
|
||||
'italic': {
|
||||
name: 'italic',
|
||||
action: toggleItalic,
|
||||
className: 'fa fa-italic',
|
||||
className: iconClassMap.toggleItalic,
|
||||
title: 'Italic',
|
||||
default: true,
|
||||
},
|
||||
'strikethrough': {
|
||||
name: 'strikethrough',
|
||||
action: toggleStrikethrough,
|
||||
className: 'fa fa-strikethrough',
|
||||
className: iconClassMap.toggleStrikethrough,
|
||||
title: 'Strikethrough',
|
||||
},
|
||||
'heading': {
|
||||
name: 'heading',
|
||||
action: toggleHeadingSmaller,
|
||||
className: 'fa fa-header fa-heading',
|
||||
className: iconClassMap.toggleHeading,
|
||||
title: 'Heading',
|
||||
default: true,
|
||||
},
|
||||
'heading-smaller': {
|
||||
name: 'heading-smaller',
|
||||
action: toggleHeadingSmaller,
|
||||
className: 'fa fa-header fa-heading header-smaller',
|
||||
className: iconClassMap.toggleHeadingSmaller,
|
||||
title: 'Smaller Heading',
|
||||
},
|
||||
'heading-bigger': {
|
||||
name: 'heading-bigger',
|
||||
action: toggleHeadingBigger,
|
||||
className: 'fa fa-header fa-heading header-bigger',
|
||||
className: iconClassMap.toggleHeadingBigger,
|
||||
title: 'Bigger Heading',
|
||||
},
|
||||
'heading-1': {
|
||||
name: 'heading-1',
|
||||
action: toggleHeading1,
|
||||
className: 'fa fa-header fa-heading header-1',
|
||||
className: iconClassMap.toggleHeading1,
|
||||
title: 'Big Heading',
|
||||
},
|
||||
'heading-2': {
|
||||
name: 'heading-2',
|
||||
action: toggleHeading2,
|
||||
className: 'fa fa-header fa-heading header-2',
|
||||
className: iconClassMap.toggleHeading2,
|
||||
title: 'Medium Heading',
|
||||
},
|
||||
'heading-3': {
|
||||
name: 'heading-3',
|
||||
action: toggleHeading3,
|
||||
className: 'fa fa-header fa-heading header-3',
|
||||
className: iconClassMap.toggleHeading3,
|
||||
title: 'Small Heading',
|
||||
},
|
||||
'separator-1': {
|
||||
@ -1503,34 +1531,34 @@ var toolbarBuiltInButtons = {
|
||||
'code': {
|
||||
name: 'code',
|
||||
action: toggleCodeBlock,
|
||||
className: 'fa fa-code',
|
||||
className: iconClassMap.toggleCodeBlock,
|
||||
title: 'Code',
|
||||
},
|
||||
'quote': {
|
||||
name: 'quote',
|
||||
action: toggleBlockquote,
|
||||
className: 'fa fa-quote-left',
|
||||
className: iconClassMap.toggleBlockquote,
|
||||
title: 'Quote',
|
||||
default: true,
|
||||
},
|
||||
'unordered-list': {
|
||||
name: 'unordered-list',
|
||||
action: toggleUnorderedList,
|
||||
className: 'fa fa-list-ul',
|
||||
className: iconClassMap.toggleUnorderedList,
|
||||
title: 'Generic List',
|
||||
default: true,
|
||||
},
|
||||
'ordered-list': {
|
||||
name: 'ordered-list',
|
||||
action: toggleOrderedList,
|
||||
className: 'fa fa-list-ol',
|
||||
className: iconClassMap.toggleOrderedList,
|
||||
title: 'Numbered List',
|
||||
default: true,
|
||||
},
|
||||
'clean-block': {
|
||||
name: 'clean-block',
|
||||
action: cleanBlock,
|
||||
className: 'fa fa-eraser',
|
||||
className: iconClassMap.cleanBlock,
|
||||
title: 'Clean block',
|
||||
},
|
||||
'separator-2': {
|
||||
@ -1539,33 +1567,33 @@ var toolbarBuiltInButtons = {
|
||||
'link': {
|
||||
name: 'link',
|
||||
action: drawLink,
|
||||
className: 'fa fa-link',
|
||||
className: iconClassMap.drawLink,
|
||||
title: 'Create Link',
|
||||
default: true,
|
||||
},
|
||||
'image': {
|
||||
name: 'image',
|
||||
action: drawImage,
|
||||
className: 'fa fa-image',
|
||||
className: iconClassMap.drawImage,
|
||||
title: 'Insert Image',
|
||||
default: true,
|
||||
},
|
||||
'upload-image': {
|
||||
name: 'upload-image',
|
||||
action: drawUploadedImage,
|
||||
className: 'fa fa-image',
|
||||
className: iconClassMap.drawUploadedImage,
|
||||
title: 'Import an image',
|
||||
},
|
||||
'table': {
|
||||
name: 'table',
|
||||
action: drawTable,
|
||||
className: 'fa fa-table',
|
||||
className: iconClassMap.drawTable,
|
||||
title: 'Insert Table',
|
||||
},
|
||||
'horizontal-rule': {
|
||||
name: 'horizontal-rule',
|
||||
action: drawHorizontalRule,
|
||||
className: 'fa fa-minus',
|
||||
className: iconClassMap.drawHorizontalRule,
|
||||
title: 'Insert Horizontal Line',
|
||||
},
|
||||
'separator-3': {
|
||||
@ -1574,7 +1602,7 @@ var toolbarBuiltInButtons = {
|
||||
'preview': {
|
||||
name: 'preview',
|
||||
action: togglePreview,
|
||||
className: 'fa fa-eye',
|
||||
className: iconClassMap.togglePreview,
|
||||
noDisable: true,
|
||||
title: 'Toggle Preview',
|
||||
default: true,
|
||||
@ -1582,7 +1610,7 @@ var toolbarBuiltInButtons = {
|
||||
'side-by-side': {
|
||||
name: 'side-by-side',
|
||||
action: toggleSideBySide,
|
||||
className: 'fa fa-columns',
|
||||
className: iconClassMap.toggleSideBySide,
|
||||
noDisable: true,
|
||||
noMobile: true,
|
||||
title: 'Toggle Side by Side',
|
||||
@ -1591,7 +1619,7 @@ var toolbarBuiltInButtons = {
|
||||
'fullscreen': {
|
||||
name: 'fullscreen',
|
||||
action: toggleFullScreen,
|
||||
className: 'fa fa-arrows-alt',
|
||||
className: iconClassMap.toggleFullScreen,
|
||||
noDisable: true,
|
||||
noMobile: true,
|
||||
title: 'Toggle Fullscreen',
|
||||
@ -1603,7 +1631,7 @@ var toolbarBuiltInButtons = {
|
||||
'guide': {
|
||||
name: 'guide',
|
||||
action: 'https://www.markdownguide.org/basic-syntax/',
|
||||
className: 'fa fa-question-circle',
|
||||
className: iconClassMap.guide,
|
||||
noDisable: true,
|
||||
title: 'Markdown Guide',
|
||||
default: true,
|
||||
@ -1614,14 +1642,14 @@ var toolbarBuiltInButtons = {
|
||||
'undo': {
|
||||
name: 'undo',
|
||||
action: undo,
|
||||
className: 'fa fa-undo',
|
||||
className: iconClassMap.undo,
|
||||
noDisable: true,
|
||||
title: 'Undo',
|
||||
},
|
||||
'redo': {
|
||||
name: 'redo',
|
||||
action: redo,
|
||||
className: 'fa fa-repeat fa-redo',
|
||||
className: iconClassMap.redo,
|
||||
noDisable: true,
|
||||
title: 'Redo',
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user