{% extends "base.html" %} {% block title %}{{title}}{% endblock %} {% block css_link %} {% endblock %} {% block body %}
{% endblock %} {% block init_script %} require( ['sources/generated/psql_tool'], function(pgBrowser) { const term = self.pgAdmin.Browser.psql.psql_terminal(); const fitAddon = self.pgAdmin.Browser.psql.psql_Addon(term); self.pgAdmin.Browser.psql.set_theme(term); term.open(document.getElementById('psql-terminal')); const socket = self.pgAdmin.Browser.psql.psql_socket(); self.pgAdmin.Browser.psql.psql_socket_io(socket, '{{is_enable}}', '{{sid}}', '{{db|safe}}', '{{server_type}}', fitAddon, term, '{{role|safe}}'); self.pgAdmin.Browser.psql.psql_terminal_io(term, socket, '{{platform}}'); self.pgAdmin.Browser.psql.check_db_name_change('{{db|safe}}', '{{o_db_name|safe}}'); setTimeout(function(){ socket.emit("resize", {"cols": term.cols, "rows": term.rows}) }, 1000); function fitToscreen(){ fitAddon.fit() socket.emit("resize", {"cols": term.cols, "rows": term.rows}) } function debounce(func, wait_ms) { let timeout return function(...args) { const context = this clearTimeout(timeout) timeout = setTimeout(() => func.apply(context, args), wait_ms) } } const wait_ms = 25; window.onresize = debounce(fitToscreen, wait_ms); }); {% endblock %}