diff --git a/src/HtmlUtils.js b/src/HtmlUtils.js
deleted file mode 100644
index 824f59ab2..000000000
--- a/src/HtmlUtils.js
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
-Copyright 2015 OpenMarket Ltd
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-'use strict';
-
-var React = require('react');
-var sanitizeHtml = require('sanitize-html');
-var highlight = require('highlight.js');
-
-var sanitizeHtmlParams = {
- allowedTags: [
- 'font', // custom to matrix. deliberately no h1/h2 to stop people shouting.
- 'h3', 'h4', 'h5', 'h6', 'blockquote', 'p', 'a', 'ul', 'ol',
- 'nl', 'li', 'b', 'i', 'strong', 'em', 'strike', 'code', 'hr', 'br', 'div',
- 'table', 'thead', 'caption', 'tbody', 'tr', 'th', 'td', 'pre'
- ],
- allowedAttributes: {
- // custom ones first:
- font: [ 'color' ], // custom to matrix
- a: [ 'href', 'name', 'target' ], // remote target: custom to matrix
- // We don't currently allow img itself by default, but this
- // would make sense if we did
- img: [ 'src' ],
- },
- // Lots of these won't come up by default because we don't allow them
- selfClosing: [ 'img', 'br', 'hr', 'area', 'base', 'basefont', 'input', 'link', 'meta' ],
- // URL schemes we permit
- allowedSchemes: [ 'http', 'https', 'ftp', 'mailto' ],
- allowedSchemesByTag: {},
-
- transformTags: { // custom to matrix
- // add blank targets to all hyperlinks
- 'a': sanitizeHtml.simpleTransform('a', { target: '_blank'} )
- },
-};
-
-module.exports = {
- bodyToHtml: function(content, searchTerm) {
- var originalBody = content.body;
- var body;
-
- if (searchTerm) {
- var lastOffset = 0;
- var bodyList = [];
- var k = 0;
- var offset;
-
- // XXX: rather than searching for the search term in the body,
- // we should be looking at the match delimiters returned by the FTS engine
- if (content.format === "org.matrix.custom.html") {
-
- var safeBody = sanitizeHtml(content.formatted_body, sanitizeHtmlParams);
- var safeSearchTerm = sanitizeHtml(searchTerm, sanitizeHtmlParams);
- while ((offset = safeBody.indexOf(safeSearchTerm, lastOffset)) >= 0) {
- // FIXME: we need to apply the search highlighting to only the text elements of HTML, which means
- // hooking into the sanitizer parser rather than treating it as a string. Otherwise
- // the act of highlighting a or whatever will break the HTML badly.
- bodyList.push();
- bodyList.push();
- lastOffset = offset + safeSearchTerm.length;
- }
- bodyList.push();
- }
- else {
- while ((offset = originalBody.indexOf(searchTerm, lastOffset)) >= 0) {
- bodyList.push({ originalBody.substring(lastOffset, offset) });
- bodyList.push({ searchTerm });
- lastOffset = offset + searchTerm.length;
- }
- bodyList.push({ originalBody.substring(lastOffset) });
- }
- body = bodyList;
- }
- else {
- if (content.format === "org.matrix.custom.html") {
- var safeBody = sanitizeHtml(content.formatted_body, sanitizeHtmlParams);
- body = ;
- }
- else {
- body = originalBody;
- }
- }
-
- return body;
- },
-
- highlightDom: function(element) {
- var blocks = element.getElementsByTagName("code");
- for (var i = 0; i < blocks.length; i++) {
- highlight.highlightBlock(blocks[i]);
- }
- },
-
-}
-