1- import { $$ , ajax , controller , resetAbortController } from "./utils.js" ;
1+ import {
2+ $$ ,
3+ ajax ,
4+ controller ,
5+ resetAbortController ,
6+ replaceToolbarState ,
7+ } from "./utils.js" ;
28
39function onKeyDown ( event ) {
410 if ( event . keyCode === 27 ) {
@@ -8,7 +14,7 @@ function onKeyDown(event) {
814
915const djdt = {
1016 handleDragged : false ,
11- abort ( ) {
17+ abort ( ) {
1218 controller . abort ( ) ;
1319 resetAbortController ( ) ;
1420 } ,
@@ -146,19 +152,23 @@ const djdt = {
146152 } ) ;
147153 } ) ;
148154
149- document
150- . getElementById ( "djHideToolBarButton" )
151- . addEventListener ( "click" , function ( event ) {
155+ document . getElementById ( "djHideToolBarButton" ) . addEventListener (
156+ "click" ,
157+ function ( event ) {
152158 event . preventDefault ( ) ;
153159 djdt . hide_toolbar ( ) ;
154- } , { 'signal' : controller . signal } ) ;
155- document
156- . getElementById ( "djShowToolBarButton" )
157- . addEventListener ( "click" , function ( ) {
160+ } ,
161+ { signal : controller . signal }
162+ ) ;
163+ document . getElementById ( "djShowToolBarButton" ) . addEventListener (
164+ "click" ,
165+ function ( ) {
158166 if ( ! djdt . handleDragged ) {
159167 djdt . show_toolbar ( ) ;
160168 }
161- } , { 'signal' : controller . signal } ) ;
169+ } ,
170+ { signal : controller . signal }
171+ ) ;
162172 let startPageY , baseY ;
163173 const handle = document . getElementById ( "djDebugToolbarHandle" ) ;
164174 function onHandleMove ( event ) {
@@ -178,25 +188,31 @@ const djdt = {
178188 djdt . handleDragged = true ;
179189 }
180190 }
181- document
182- . getElementById ( "djShowToolBarButton" )
183- . addEventListener ( "mousedown" , function ( event ) {
191+ document . getElementById ( "djShowToolBarButton" ) . addEventListener (
192+ "mousedown" ,
193+ function ( event ) {
184194 event . preventDefault ( ) ;
185195 startPageY = event . pageY ;
186196 baseY = handle . offsetTop - startPageY ;
187197 document . addEventListener ( "mousemove" , onHandleMove ) ;
188- } , { 'signal' : controller . signal } ) ;
189- document . addEventListener ( "mouseup" , function ( event ) {
190- document . removeEventListener ( "mousemove" , onHandleMove ) ;
191- if ( djdt . handleDragged ) {
192- event . preventDefault ( ) ;
193- localStorage . setItem ( "djdt.top" , handle . offsetTop ) ;
194- requestAnimationFrame ( function ( ) {
195- djdt . handleDragged = false ;
196- } ) ;
197- djdt . ensure_handle_visibility ( ) ;
198- }
199- } , { 'signal' : controller . signal } ) ;
198+ } ,
199+ { signal : controller . signal }
200+ ) ;
201+ document . addEventListener (
202+ "mouseup" ,
203+ function ( event ) {
204+ document . removeEventListener ( "mousemove" , onHandleMove ) ;
205+ if ( djdt . handleDragged ) {
206+ event . preventDefault ( ) ;
207+ localStorage . setItem ( "djdt.top" , handle . offsetTop ) ;
208+ requestAnimationFrame ( function ( ) {
209+ djdt . handleDragged = false ;
210+ } ) ;
211+ djdt . ensure_handle_visibility ( ) ;
212+ }
213+ } ,
214+ { signal : controller . signal }
215+ ) ;
200216 const show =
201217 localStorage . getItem ( "djdt.show" ) || djDebug . dataset . defaultShow ;
202218 if ( show === "true" ) {
@@ -232,7 +248,9 @@ const djdt = {
232248 const handle = document . getElementById ( "djDebugToolbarHandle" ) ;
233249 $$ . show ( handle ) ;
234250 djdt . ensure_handle_visibility ( ) ;
235- window . addEventListener ( "resize" , djdt . ensure_handle_visibility , { 'signal' : controller . signal } ) ;
251+ window . addEventListener ( "resize" , djdt . ensure_handle_visibility , {
252+ signal : controller . signal ,
253+ } ) ;
236254 document . removeEventListener ( "keydown" , onKeyDown ) ;
237255
238256 localStorage . setItem ( "djdt.show" , "false" ) ;
@@ -251,7 +269,9 @@ const djdt = {
251269 }
252270 } ,
253271 show_toolbar ( ) {
254- document . addEventListener ( "keydown" , onKeyDown , { 'signal' : controller . signal } ) ;
272+ document . addEventListener ( "keydown" , onKeyDown , {
273+ signal : controller . signal ,
274+ } ) ;
255275 $$ . hide ( document . getElementById ( "djDebugToolbarHandle" ) ) ;
256276 $$ . show ( document . getElementById ( "djDebugToolbar" ) ) ;
257277 localStorage . setItem ( "djdt.show" , "true" ) ;
@@ -299,6 +319,31 @@ const djdt = {
299319 } ,
300320 } ,
301321} ;
322+
323+ const origOpen = XMLHttpRequest . prototype . open ;
324+ XMLHttpRequest . prototype . open = function ( ) {
325+ this . addEventListener ( "load" , function ( ) {
326+ if (
327+ this . responseURL !== "" &&
328+ this . responseURL . indexOf ( "__debug__" ) === - 1
329+ ) {
330+ let signed = this . getResponseHeader ( "dj-toolbar-signature" ) ;
331+ const store_id = this . getResponseHeader ( "dj-toolbar-store-id" ) ;
332+ const history_sidebar_url = this . getResponseHeader (
333+ "dj-history-sidebar-url"
334+ ) ;
335+ if ( signed !== null ) {
336+ signed = encodeURIComponent ( signed ) ;
337+ const dest = `${ history_sidebar_url } ?signed=${ signed } ` ;
338+ ajax ( dest ) . then ( function ( data ) {
339+ replaceToolbarState ( store_id , data ) ;
340+ } ) ;
341+ }
342+ }
343+ } ) ;
344+ origOpen . apply ( this , arguments ) ;
345+ } ;
346+
302347window . djdt = {
303348 show_toolbar : djdt . show_toolbar ,
304349 hide_toolbar : djdt . hide_toolbar ,
@@ -311,5 +356,7 @@ window.djdt = {
311356if ( document . readyState !== "loading" ) {
312357 djdt . init ( ) ;
313358} else {
314- document . addEventListener ( "DOMContentLoaded" , djdt . init , { 'signal' : controller . signal } ) ;
359+ document . addEventListener ( "DOMContentLoaded" , djdt . init , {
360+ signal : controller . signal ,
361+ } ) ;
315362}
0 commit comments