JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr(function($) { let css = PhpDebugBar.utils.makecsscls('phpdebugbar-'); let csscls = PhpDebugBar.utils.makecsscls('phpdebugbar-widgets-'); /** * Widget for displaying sql queries. * * Options: * - data */ const QueriesWidget = PhpDebugBar.Widgets.LaravelQueriesWidget = PhpDebugBar.Widget.extend({ className: csscls('sqlqueries'), duplicateQueries: new Set(), hiddenConnections: new Set(), copyToClipboard: function (code) { if (document.selection) { const range = document.body.createTextRange(); range.moveToElementText(code); range.select(); } else if (window.getSelection) { const range = document.createRange(); range.selectNodeContents(code); window.getSelection().removeAllRanges(); window.getSelection().addRange(range); } var isCopied = false; try { isCopied = document.execCommand('copy'); console.log('Query copied to the clipboard'); } catch (err) { alert('Oops, unable to copy'); } window.getSelection().removeAllRanges(); return isCopied; }, explainMysql: function ($element, statement, rows, visual) { const headings = []; for (const key in rows[0]) { headings.push($('').text(key)); } const values = []; for (const row of rows) { const $tr = $(''); for (const key in row) { $tr.append($('').text(row[key])); } values.push($tr); } const $table = $('
').addClass(csscls('explain')); $table.find('thead').append($('').append(headings)); $table.find('tbody').append(values); $element.append($table); if (visual) { $element.append(this.explainVisual(statement, visual.confirm)); } }, explainPgsql: function ($element, statement, rows, visual) { const $ul = $('