Merge changes Ia6823f9d,I549e570f,Ibcac9d5e,I75c48a1c into stable-3.12

* changes:
  Resize CodeMirror dynamically
  Remove outline on textbox
  Display cursor position in the bottom
  Fix going to line
diff --git a/web/element/language.ts b/web/element/language.ts
index d26b034..c8a492c 100644
--- a/web/element/language.ts
+++ b/web/element/language.ts
@@ -81,7 +81,6 @@
 import {sparql} from '@codemirror/legacy-modes/mode/sparql';
 import {spreadsheet} from '@codemirror/legacy-modes/mode/spreadsheet';
 import {solr} from '@codemirror/legacy-modes/mode/solr';
-import {pgSQL, plSQL, cassandra} from '@codemirror/legacy-modes/mode/sql';
 import {squirrel} from '@codemirror/legacy-modes/mode/clike';
 import {stex} from '@codemirror/legacy-modes/mode/stex';
 import {swift} from '@codemirror/legacy-modes/mode/swift';
@@ -117,7 +116,7 @@
 import {python} from '@codemirror/lang-python';
 import {rust} from '@codemirror/lang-rust';
 import {sass} from '@codemirror/lang-sass';
-import {sql} from '@codemirror/lang-sql';
+import {Cassandra, PLSQL, PostgreSQL, sql} from '@codemirror/lang-sql';
 import {vue} from '@codemirror/lang-vue';
 import {xml} from '@codemirror/lang-xml';
 import {yaml} from '@codemirror/lang-yaml';
@@ -182,11 +181,11 @@
     case 'text/x-gss':
       return StreamLanguage.define(gss);
     case 'text/x-cassandra':
-      return StreamLanguage.define(cassandra);
+      return sql({dialect: Cassandra});
     case 'text/x-pgsql':
-      return StreamLanguage.define(pgSQL);
+      return sql({dialect: PostgreSQL});
     case 'text/x-plsql':
-      return StreamLanguage.define(plSQL);
+      return sql({dialect: PLSQL});
     case 'application/x-cypher-query':
       return StreamLanguage.define(cypher);
     case 'text/x-d':
@@ -213,11 +212,10 @@
     case 'text/x-ruby':
       return StreamLanguage.define(ruby);
     case 'text/javascript':
-      return javascript();
-    case 'text/x-erlang':
-      return StreamLanguage.define(erlang);
     case 'text/jsx':
       return javascript({jsx: true});
+    case 'text/x-erlang':
+      return StreamLanguage.define(erlang);
     case 'text/x-spreadsheet':
       return StreamLanguage.define(spreadsheet);
     case 'text/x-fortran':
@@ -345,6 +343,8 @@
       return StreamLanguage.define(toml);
     case 'application/typescript':
       return javascript({typescript: true});
+    case 'text/tsx':
+      return javascript({jsx: true, typescript: true});
     case 'text/x-ttcn':
       return StreamLanguage.define(ttcn);
     case 'text/turtle':