Refactor websocket into separate services, clean up socket status communication (#4433)

* Refactor websocket into separate services, clean up socket status communication

* cleanup

* add EOF lines

* fix keepalive logged in check

* undo change

* fix keepalive connection check

* cleanup

* add typings

* secure connection

Co-authored-by: Jeremy Letto <jeremy.letto@datasite.com>
This commit is contained in:
Jeremy Letto 2021-10-17 00:07:30 -05:00 committed by GitHub
parent 19333c53f6
commit e9ba195d7d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
52 changed files with 815 additions and 757 deletions

View file

@ -1,6 +1,6 @@
import $ from "jquery";
export function sanitizeHtml(msg) {
export function sanitizeHtml(msg: string): string {
const $div = $("<div>").html(msg);
const whitelist = {
tags: "br,a,img,center,b,font",
@ -16,13 +16,13 @@ export function sanitizeHtml(msg) {
return $div.html();
}
function enforceTagWhitelist($el, tags) {
function enforceTagWhitelist($el: JQuery<HTMLElement>, tags: string): void {
$el.find("*").not(tags).each(function() {
$(this).replaceWith(this.innerHTML);
});
}
function enforceAttrWhitelist($el, attrs) {
function enforceAttrWhitelist($el: JQuery<HTMLElement>, attrs: string[]): void {
$el.find("*").each(function() {
var attributes = this.attributes;
var i = attributes.length;
@ -34,7 +34,7 @@ function enforceAttrWhitelist($el, attrs) {
});
}
function enforceHrefWhitelist($el, hrefs) {
function enforceHrefWhitelist($el: JQuery<HTMLElement>, hrefs: string[]): void {
$el.find("[href]").each(function() {
const $_el = $(this);
const attributeValue = $_el.attr("href");