all files / packages/base/ BasePackage.js

93.62% Statements 44/47
50% Branches 1/2
100% Functions 1/1
93.62% Lines 44/47
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109                                                                                                                                 
import { platform } from '../../util'
import { Tool, InsertNodeCommand } from '../../ui'
import ButtonPackage from '../button/ButtonPackage'
import ContextMenuPackage from '../context-menu/ContextMenuPackage'
import GridPackage from '../grid/GridPackage'
import GutterPackage from '../gutter/GutterPackage'
import InputPackage from '../input/InputPackage'
import LayoutPackage from '../layout/LayoutPackage'
import ModalPackage from '../modal/ModalPackage'
import OverlayPackage from '../overlay/OverlayPackage'
import DropzonesPackage from '../dropzones/DropzonesPackage'
import ScrollbarPackage from '../scrollbar/ScrollbarPackage'
import ScrollPanePackage from '../scroll-pane/ScrollPanePackage'
import BodyScrollPanePackage from '../body-scroll-pane/BodyScrollPanePackage'
import SplitPanePackage from '../split-pane/SplitPanePackage'
import TabbedPanePackage from '../tabbed-pane/TabbedPanePackage'
import FilePackage from '../file/FilePackage'
import UndoCommand from './UndoCommand'
import RedoCommand from './RedoCommand'
import SelectAllCommand from './SelectAllCommand'
 
export default {
  name: 'base',
  configure: function(config) {
    config.import(FilePackage)
    config.import(ScrollPanePackage)
    config.import(BodyScrollPanePackage)
    config.import(SplitPanePackage)
    config.import(TabbedPanePackage)
    config.import(ScrollbarPackage)
    config.import(GridPackage)
    config.import(ModalPackage)
    config.import(InputPackage)
    config.import(ButtonPackage)
    config.import(LayoutPackage)
    config.import(ContextMenuPackage)
    config.import(OverlayPackage)
    config.import(DropzonesPackage)
    config.import(GutterPackage)
 
    // Setup base toolgroups
    config.addToolGroup('document')
    config.addToolGroup('annotations')
    config.addToolGroup('default')
    config.addToolGroup('context-menu-primary')
    config.addToolGroup('context-menu-document')
    config.addToolGroup('insert')
 
    // Commands
    config.addCommand('undo', UndoCommand)
    config.addCommand('redo', RedoCommand)
    config.addCommand('select-all', SelectAllCommand)
 
    config.addCommand('insert-node', InsertNodeCommand)
 
    // Tools
    config.addTool('undo', Tool, {toolGroup: ['document', 'context-menu-document']})
    config.addTool('redo', Tool, {toolGroup: ['document', 'context-menu-document']})
    config.addTool('select-all', Tool, {toolGroup: ['context-menu-document']})
 
    // Icons
    config.addIcon('undo', { 'fontawesome': 'fa-undo' })
    config.addIcon('redo', { 'fontawesome': 'fa-repeat' })
    config.addIcon('edit', { 'fontawesome': 'fa-cog' })
    config.addIcon('delete', { 'fontawesome': 'fa-times' })
    config.addIcon('expand', { 'fontawesome': 'fa-arrows-h' })
    config.addIcon('truncate', { 'fontawesome': 'fa-arrows-h' })
 
    // Labels
    config.addLabel('undo', {
      en: 'Undo',
      de: 'Rückgängig'
    })
    config.addLabel('redo', {
      en: 'Redo',
      de: 'Wiederherstellen'
    })
    config.addLabel('select-all', {
      en: 'Select All',
      de: 'Alles Auswählen'
    })
    config.addLabel('container-selection', {
      en: 'Container',
      de: 'Container'
    })
    config.addLabel('container', {
      en: 'Container',
      de: 'Container'
    })
    config.addLabel('insert-container', {
      en: 'Insert Container',
      de: 'Container einfügen'
    })
 
    Eif (platform.isMac) {
      config.addKeyboardShortcut('cmd+z', { command: 'undo' })
      config.addKeyboardShortcut('cmd+shift+z', { command: 'redo' })
      config.addKeyboardShortcut('cmd+a', { command: 'select-all' })
    } else {
      config.addKeyboardShortcut('ctrl+z', { command: 'undo' })
      config.addKeyboardShortcut('ctrl+shift+z', { command: 'redo' })
      config.addKeyboardShortcut('ctrl+a', { command: 'select-all' })
    }
  },
  UndoCommand,
  RedoCommand,
  SelectAllCommand
}