aboutsummaryrefslogtreecommitdiff
path: root/src/content/index.ts
blob: 4024b9833f76d17b6b45b1e7bc9225c4ca6fe2bb (plain) (blame)
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
import TopContentComponent from './components/top-content';
import FrameContentComponent from './components/frame-content';
import consoleFrameStyle from './site-style';
import { newStore } from './store';
import MessageListener from './MessageListener';
import FindController from './controllers/FindController';
import * as messages from '../shared/messages';

const store = newStore();

if (window.self === window.top) {
  new TopContentComponent(window, store); // eslint-disable-line no-new

  let findController = new FindController();
  new MessageListener().onWebMessage((message: messages.Message) => {
    switch (message.type) {
    case messages.CONSOLE_ENTER_FIND:
      return findController.start(message);
    case messages.FIND_NEXT:
      return findController.next(message);
    case messages.FIND_PREV:
      return findController.prev(message);
    }
    return undefined;
  });
} else {
  new FrameContentComponent(window, store); // eslint-disable-line no-new
}

let style = window.document.createElement('style');
style.textContent = consoleFrameStyle;
window.document.head.appendChild(style);