From 2adca6bbc4684362b7d0846ecc60783ad32c4bae Mon Sep 17 00:00:00 2001 From: Nikhil Mohite Date: Wed, 15 Jun 2022 11:37:54 +0530 Subject: [PATCH] 1) Added mouse over indication for breakpoint area in the Debugger. Fixes #2647 2) Added search text option to the Debugger panel. Fixes #2648 3) Port Debugger to React. Fixes #6132 --- docs/en_US/debugger.rst | 2 + docs/en_US/images/debug_error_message.png | Bin 48947 -> 109779 bytes docs/en_US/images/debug_ic_step_in.png | Bin 39653 -> 75005 bytes docs/en_US/images/debug_main.png | Bin 39679 -> 95803 bytes docs/en_US/images/debug_params.png | Bin 48886 -> 63455 bytes docs/en_US/images/debug_set_breakpoint.png | Bin 44271 -> 37288 bytes docs/en_US/images/debug_stack.png | Bin 31197 -> 105869 bytes docs/en_US/images/debug_step_in.png | Bin 39648 -> 75005 bytes docs/en_US/images/debug_toolbar.png | Bin 5795 -> 10160 bytes docs/en_US/images/debug_variables.png | Bin 39068 -> 134622 bytes docs/en_US/release_notes_6_11.rst | 3 + .../xss_checks_pgadmin_debugger_test.py | 13 +- .../static/js/components/CodeMirror.jsx | 21 +- .../static/scss/_codemirror.overrides.scss | 5 + web/pgadmin/tools/debugger/__init__.py | 36 +- .../debugger/static/js/DebuggerConstants.js | 57 + .../debugger/static/js/DebuggerModule.js | 727 ++++++ .../static/js/components/DebuggerArgs.ui.js | 124 ++ .../components/DebuggerArgumentComponent.jsx | 917 ++++++++ .../js/components/DebuggerComponent.jsx | 1234 +++++++++++ .../static/js/components/DebuggerEditor.jsx | 120 + .../static/js/components/DebuggerMessages.jsx | 47 + .../js/components/LocalVariablesAndParams.jsx | 177 ++ .../debugger/static/js/components/Results.jsx | 71 + .../debugger/static/js/components/Stack.jsx | 84 + .../debugger/static/js/components/ToolBar.jsx | 140 ++ .../tools/debugger/static/js/debugger.js | 670 ------ .../tools/debugger/static/js/debugger_ui.js | 1071 +-------- .../debugger/static/js/debugger_utils.js | 13 +- .../tools/debugger/static/js/direct.js | 1956 ----------------- web/pgadmin/tools/debugger/static/js/index.js | 22 + .../debugger/templates/debugger/direct.html | 78 +- .../test_debugger_clear_all_breakpoint.py | 6 +- .../tests/test_debugger_set_arguments.py | 3 +- .../debugger/MockDebuggerComponent.jsx | 32 + .../debugger/debugger_input_args_spec.js | 282 +++ .../javascript/debugger/debugger_spec.js | 282 +++ .../debugger/debugger_stack_spec.js | 291 +++ .../debugger/debugger_tool_bar_spec.js | 395 ++++ .../javascript/debugger_utils_spec.js | 64 +- .../schema_ui_files/debugger_args.ui.spec.js | 51 + .../python_test_utils/test_utils.py | 1 + web/webpack.config.js | 5 +- web/webpack.shim.js | 3 +- 44 files changed, 5162 insertions(+), 3841 deletions(-) create mode 100644 web/pgadmin/tools/debugger/static/js/DebuggerConstants.js create mode 100644 web/pgadmin/tools/debugger/static/js/DebuggerModule.js create mode 100644 web/pgadmin/tools/debugger/static/js/components/DebuggerArgs.ui.js create mode 100644 web/pgadmin/tools/debugger/static/js/components/DebuggerArgumentComponent.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/DebuggerComponent.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/DebuggerEditor.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/DebuggerMessages.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/LocalVariablesAndParams.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/Results.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/Stack.jsx create mode 100644 web/pgadmin/tools/debugger/static/js/components/ToolBar.jsx delete mode 100644 web/pgadmin/tools/debugger/static/js/debugger.js delete mode 100644 web/pgadmin/tools/debugger/static/js/direct.js create mode 100644 web/pgadmin/tools/debugger/static/js/index.js create mode 100644 web/regression/javascript/debugger/MockDebuggerComponent.jsx create mode 100644 web/regression/javascript/debugger/debugger_input_args_spec.js create mode 100644 web/regression/javascript/debugger/debugger_spec.js create mode 100644 web/regression/javascript/debugger/debugger_stack_spec.js create mode 100644 web/regression/javascript/debugger/debugger_tool_bar_spec.js create mode 100644 web/regression/javascript/schema_ui_files/debugger_args.ui.spec.js diff --git a/docs/en_US/debugger.rst b/docs/en_US/debugger.rst index 6223e55e0..6d3639533 100644 --- a/docs/en_US/debugger.rst +++ b/docs/en_US/debugger.rst @@ -117,6 +117,8 @@ The toolbar options are: +-------------------------+-----------------------------------------------------------------------------------------------------------+ | *Stop* | Click the *Stop* icon to halt the execution of a program. | +-------------------------+-----------------------------------------------------------------------------------------------------------+ +| *Help* | Click the *Help* icon to open debugger documentation. | ++-------------------------+-----------------------------------------------------------------------------------------------------------+ The top panel of the debugger window displays the program body; click in the grey margin next to a line number to add a breakpoint. The highlighted line in diff --git a/docs/en_US/images/debug_error_message.png b/docs/en_US/images/debug_error_message.png index b321d4918d5115a57fe8ec6c4b180d970b4f89de..41d1004baa1625c37f9480ba3c45e9a26c373070 100644 GIT binary patch literal 109779 zcmZ^J1z225(l#!^A-E4AKyVLkgS!QXKthng-92byEuGZ@6s<$dkMM)at8Obvk7#Iv$8K4>r3_J)12DT9e=_v<$t~3n>2Hny^ zLPAAWLV`-g!S;iNl_?C2Ojx28vbOqnf^F6Odilf{MD;RN-~#wK#Wu_=WS4!F6Ln z0LJ|MDEB9s2C1LEY%3Fs;Ad_g+C)i@XLh1U{BK{w2)63?M@2@$sUY374cwB#s9tEL zCFnnrJyv8hV)tLeP_0rc5%yg-V)MfJ*)GYOUc+D~dJHgJtI?*zSEZvPp&VP%4rweK z$bBvE#JJ}{wI>U$fDz3|Y1*aP5%(!!Wy1itoTT|uRK(<{ux z%c~qVKvfrbp%!W^*e-A{F!ZDCxB%#5b@-aK;eP|K39)4(iHuYrCv`#uXWlWW6s2tXe&LnxF+S^^NcA6#aaog=lmh7#O0t5K2=zR^Dof8f@y~eW<9ecdEUckg!#(jQ%PShk ztHeL=rV%v1x)~GLYLvdB@Zt-FBg2N%7KPR0?}OJ7otx8{MLpD@G4?}#Plbo#AFs>F zM$_mEgsV8t#J)p~#qLAiM7)fCCI&n1OFUj&u0)mNTbt=C#pCwOo+T84@5pdeM4n@d z8CB4qXT}h+As4=w+gpncQ2bX8;d!YYC(5d7^eMwwE8G z_>32bkRv+Os?ZgJ2Rp;7)Jow>dUuu`Tf@P|Y17hQLpkjT4iL2L5Yj_WkH23rd7-va zEPk9?DmW^+l4wDDl*`2Xgc^ll1eeT~6eIgtoF0&X>w=Amr_==*S8`K+f%^rhmrXbq z!O+dL;hrWBAQoLV>V>ZwdYE)S9e(U&>_tpeysqqiE=4uc%%?p$ zOqzl?+BNqzwG*2Yb_d35;>P4`#j5-(H4}Qcey)Cweiu2Rb&kBWpYjt~P__Fa)N!UA zeM@3+ibsk^^vxRyi7xRj>35%kwckZaed+aybR@yz7XImEfysqwEvP7_CpRk#%AL=L zzFq9RM^%XrFeQ(YWa^OZxso@^r265?e8(FBgiXeGj0Jo=~}Al400_A>;#u#oNH!_5Q_u(arje^!e;(qOsub zrW{x8JY$6!!#GMoXvT8S(^O#9$O7vh71Y#77aEuFLecr40eH`fAKX~+wwLxx+ zD7+4AB=5L-%;QHba)z=zB<_PxLI|*g*v_KZE%)A%nF-Fjr5@9++Tf|j+u;>`=Z}wn znU=3GMm5GXHj)2LLEs0`2iOlLH4`7c4H{OS=~%tNEcxUdK4EHOMPXddwrIIvwE!{( z#hSAZn`HEO%NOU>n+C624!j&-VdN|seZyH=Tza6bUJ5CboCK8(>-tt!fo1D-%+*1s zbCc~!AU$(EQ_tZj8$xs5nextq6rs_DS>aiqoO^ua@s2LBHI)Oq864*`r{@ATPFBQH zL>rt69Hl1HigYP>vqkMi{o7fbV|@MY>5gTmCChKR)I%zWd|a-y2(gmMlJ{9$rMIGp zxJ?#9Z*Xk&$@QaF(Al3^ zHeFBL0C()>*QdLdUg91)3L|8^&6p9!5T^7N@;>#(x_VgOTua`spFO;mnT_p?os|~8 zs6X1gwmr8+dyANhXoYHy#)Y+p_y$4vSv5K?!aj;eZ=IQ0)n%m-Vl%=(02Z?E(v`yp z2NH?On4_4Lm<^Trk?xW6EUZqZPL8hP&ZbVG&VmqLDQp0M<_&OeEyeD7PR?eEzCx8# zIxRd`vRAr1+Uxl`Hf=;PWn>fux5vbm=jh~U+!mAwyDL%$-%(_e$HigK_Fd>ZlWz&p z?j*bb8>zV&H>tbatNG(Yya2o;+BwBqd5sr5v=+3H%EbydF=TNq9F5j{M^&8P3>Dbr za05fM??r-REk*9kYSI?5wbs>#Yuxe8?_;aU z9e~1OhRGGkzB{Z8d(TA}CO5VP5dN|7` z-r(FAa(f*w@Ek{!CI0;SZY(JYlmb{hhhJ#$9&W>Orq|$((<;+a=w3Cu;vCUNfELc0(2$Ujhi!N-iz&BO_%638eS~H^}*T#})LljL&Gtu*sd-xy-~`Pe(&% zp1;I-V9MK&Ro53H*xorY3J>A4$u73U@evmd*#2Ux85zOrcQv9eWxy`du z7htViPiHN18*#~+DDcT8VehJ1y}HI)Ypz^9(J(QwIntH2M7-p=Cb?(tVPiG#ds_pr z`uU{y4{zGr4xgR}!nXW-k5$n%|NOuOlJ6 z>JX#*<;AbQvomiORD3iZx2oTbze9^UCubF0n5Vbi6O46Vu^-FLZ>IZ}-r{2UqiAC+ zwqQ67RlxCt>2~kf@nMr>=r&!%q2pG3UvfBtJ6Vv0{9%6evTHDXkUJT|GG%bwsJ6&a zy{-*1bmK7)*-ct+6V*23B5${Qz5jK#;_&(0Hbh{PV%hN6d;c~M z>l3BMo$=$hR-WOy94rY6LyzZ=TL z9DPu`sjjctQce@$ZK?Kj-m1uKV{wk$xAbN9oWK0=U9YQNV6m|cv=g=Ob0mD}eHgMr z(UopM2@y%ZPq^FGIZPPN9X2)EYa92Cyz{7Ft*=n-k3YWgMP!>E`GgL$u!rE64hI9D zK3lk|Vb>nGU5M|hHZQ*gAr4gkd=M(p#Am2%BsCM zf`NgXvCzSpoZo@^ZdJ*}q+vi>SzWoKby{a<8G79ajUWWP%O zMfTUc{?(n}ug3UQEZj`3w1F1ZPfPtYG+_=dp4WnZ_47y3e@FT+QcXuw2MJs2CrT&b z|8Ca5iT_^sJKioA)b`CDCzxVmKqQ8;;ngqX^siUox^RGqJw6Sm!<`884U)jG? z>HL>WnEh8@e-ZsX_jd~I|4H%p+}|mb9W0&}!uZ$FgxUYy!{77%U0;y(*XI9?8UDp- zf8{>0n(#A0*8gK$;b#mX5qvN(qA;>RF%37^y)@*n2AbfHXxz;QZzuu}xsf)$h;3LoM?LP|oy@ak0@2`R&803aaw+dkZba*&bJ5%AjO zOAwqrU||yo87Sx~ifwbe``me-`IT~Bm8VcbU~nBH!lAKyLyWiK>xaTw)R}H$d%a7 zho&i;FG)168E6}t6WpD2)WT6DS2IwhTap7E%Ys&knGPdUQ+(Q&FS$-jyhk3WT;qjF zO?~t(8;j=S7*cweU;E?8>+^qh26pReyw}L&ZgCQH7v~JPIhQpXCD<1%SrsnJ``4=f zXU8`U4KAi?#wp8xPpF4>qJughvGSY?U*{P#)0@C|%I5qKndi?uUOko$H z1S{J|v2bBzJ$69kwDQ8j1oO3aA0br0i=$$jfqak;5>a0>zc*Gft#&wuFENv_!?lhx zlNIvWJ}p2R7%fbtf9n^$bouep!77h0S&Z#aaZYBvX+w3g_FBzYXV+fUme?zBX| zC8*uxKWp~S$#Nt7PP;QT-VMg^LDnbo-wt0%tr4ZDosiDff1KmE_Ha6svS%N~ zCGH*{B_Vjgz&Hnt=Mt0d9Ku{ek=?NlnlJB9ZxPDpH$CsAeIb~a`}2XgufuhRvWdr- zQWMhL>ahNHK%ZE}P7QmhPnW8St;3I4^%XIjV-+vg23mQbN-Vva=xnBDB?YgHerBL; z1vj&HD5h;pAa>!l&R-M*(^ z3#)H;Z?9cjiXrYgH#c}Zw9rIUBV6Eq#HRh|HQn{lj4fAwCI{=;GkqKeAnpZ=6T|s* zK+XVgu`g9FtjW)wO5KQ^3Eh6bYiw@%;6H-sUq?ce?&S#2$8MSrKshQ)wn`h4!)AEj zPsKu2gij9;5NQ1vDxf_;IEM~@Di;;ko*FeMG+ge>6~5$bVb4K}<4TPu!U)KA7eGNK zpQC(j=f}ax=?>Asr=_DCTj~fbaqE*YcGxB zg_;+dvE#`p*h?JFCyIs^)Zhu?;Xqni1fgJ0LVSYfD(H(?#DYP=nB;P!Rigmti=SIf zD2J2axI=;fE{)C_iPL2V8yMV9gvdtGZjDTINt;er%&a#C28y$F);agLml0RwukENJ zi8+JS)YMuoBKPQlixc&`W953dga!(P z`gZ=IjKBeLG+ejyC&WTzNB23Js)7>}J^{fsWizLo;dz(T&|ynMkZZzQP=`qI6%K$U zC+D5GF3-5*^Cx*N4<*IW)U!Bn4PJa61f49?+a_$gLWCT3q75p182T!Ex#%mB=6x|^ z=jL|aC}o4Al8lezH7)jfC|Ot~DtbOOy$Zpn zA3>yL$eG#9-Kv(Bue|q5jN;W2I+UL)MpXbs`1Y;5&-`HJ{i1MF#I|3FRz>#IhqjkE zY&g35JRio*n;vd6zeh7BmeTf@q~-&7JGCyE`d*|ptu(@o^SNq1tI3h9%G}2p_Zb|jvE(! zb0CJe^<0Df&y!7&N4|OQ%lVU8_b0B{5?H*(9Q@24xZwNf9bng$B8Z~-+f|#%h-0o< zO05t8>tbR8IA2P8u-v7}Wn->R`Y@c%Jeu>FXu&*i{}m&nMfVX7ZeHh-2$3pCthNIa zu7WiJX40a1z=TYBT@UhsoY|mBBmdRpsT95)>}*MSQ%a7fkd9~_6_Csyxuf3v>6BDj zz3eASo#aL%uZIV$|e7$$ubbUkKGDeH!``XObr6pBpi;3JFT$(Sm)ED_a!v3HO zb1f*1D~i?9_hFbApBx!rZ37ya9`B+WJy_~4RYV`RhS2jntfAcB_%Etl9?XB_4FaJ{ zLorQFe`+1xJ;NY*?Ke~Z+*>1B`spqKSbh$;S$w=-G_l*xOa6)Fa|D00l@tA<(__lO z6(_&=VO!ZZ`*c{usNduAfVoYq7X1GIl&ZgYvgw)s8|gNpx8JIX^y<8bt!J9jKH|GX zmd2US=E}xz{oowV9#ayCR1!GnO0mB{4{HTW<}$o>VMQJOBH}B&zP5JsTr%4b;xXE| zna()&N?Byz$)|VQ>1NyPh{exKi8SI{{&$z1@85O4x~1O9AwOwp<2H*kH}=@8Hx==z!>hK z>?U2n>dX}~QIRCf&rauDC2LyWNOdcIXM58n(PozQrbC?(4-WK}l&D zUr)6?Xa>y;@-8wRvODjLzr8gbNJ6aG@BG_gemdDsv~Xp`xS!71;md+~1Fr5Rd^3eS zFTzk@bASF+d-dwo3fS_Bk-%8P&~TxAR1oO_o93{(-Tmf^84z2P(RdXVh55?)5!>{1 zTznURkd5a3V|X}ui~Q!(xf(V`fx;IBk=yNI^SRIVVjb~mY0RpWwV;|_e|4p!FmmP& zxBzrj0TeE+gk@oWtX!!z6dd70K4wS=UBp}D+ZI9Lf+${~SVXFA>&KT0pGC1A9>l&h z(Fa84ScZkka=mSb=^q?ipBKn8yE4}je{o(Yl3reHQerS9P9z}%Fb+&kWYp@fm7bF* zm6#KL;wmnaZj|Sv2lLIeu6%O--v1S8zvP>L{8!Nu6U9Z!0N74+K!3y;S2gylEC2zW zB&?XGh6a77^lU8yR*(hudZ+OSKmBF5u9#@yGVuZ>FsT0WE#m?_2@0G9FgQ5ywbm%C zf1pLgN<3oD*EWK2rH+U<6l)sDUM0Q-`P*^x9-tfOcE(_p3z}D^7WJJ?!vhk(^G(s2 zNLy>hGdHcit1CBmUIoS;0cU#I$I4{W(+9-Egm)odJtGsa7GMQL0LIYOQk@!LL)lVM zdMFv7sBCUJ6L&B7*WBz2RQ(o-BfW3_{gtjIBpu@HEDWd|j4DTc*zV(E+ ze64sd?$i1rf8Sab(M${zX7Rf3A`w&h#&o?Fb8HHtzU1V@u`ATo z?UMnPO9awdDMnc!P6W+YEToQLbF}=!{e_xT0w!(Iq84%pS07Mp+7(7@$K+}wz$`XQd#A~ifOm2vsAr#M(Y07 zOtMV|{hX*?p_|0EB{nXOiL_Mku8-zKuu?V4e~W4etBXWLHl4t6KB$GDqgy~Y-FfoM z*?8Nd;#j^?e57QhOJ#MnKTGo&$CricvoYndcCo-h)(p~+qL{J>u}gdG!j@ecv>~hX z-Y{-2H^-t%vMb-a2VYU+TYD(rfok5hkT zLtWZ|v0Yj-6gMaQo6e|3Gg7RLMf!?^plQ*nz$sE-|*0?rd7HKLp z0iO`xv$YWeX;)jG$ELI%+zdLDEJ?|iZ*uMcd9%2}dw=0O^};dxLYCP1k}{RYHm>ZJ zx(^!+t@ou&6LEYQ(WI`u#ARega5fW+#ugx&BD}BBv^(JX6Xf{ev{uEiE2P_-xLbTD zNzW$B=l-U~KruCnQdHea&&a@FKy}a_AV}%6X3V!kB_tHNh;{w~?ppcrmd+!6n8|bN z(l@41Q*SuCixX&dGQ<+P;Jw+_$~?-Q_6&77;vLM*($P^n$j2b<29O(E(clDJL-;Cn8Ehi38LfP=Zr?y zr&-hHM&DM@M!CuI@B2$Cex^8s*2%cYIQ?q6j_w#)ngdwc?i|84mgd(QTU+b43Fg;* zIB-(j7ZgZ@Jh=8}>y^7v0B&6&Ser7&#a0!IQ6Rv>=rUR%eeO;vqg@w@1tse_!Wamvs29$!&NnOe1u??;k3Y0Tg zQX}RZhlN(Qpr8s2{%)HuuiMEM!)X6$MU7~p0@pV1xd9{z-J6B$gaqpK2`{eED7?^* zJF-akPEh>E;`)xdwU{bqrkBA} z>Q#2J4DMfz2ks!ZHLp*`0%<-R<3jAcI|x9nM_->Vs=k!+R|i=6FEB}YJ|SUsVn#%A zAdYy8ps-%CFfbRGJjm~+0|JUF3xjUXl`d~!X^c+71*yZ~OEm2OuV_uMOl%=9cPmAt}60I)n3{u)AMM|=n+L`yN%#^~1c(0anUkV-3&vhO8OYohL zUr|uDNG?J!R01T;2Yna#h1-m@vlO`;`}x$UhGmuHGUd|cQjAm-@Osfdepf|3gfqHY zm@3nw+g$J;d{XY$O9e`GfNBEHnU~EM6u4PwP-dN0-il~T)5hP#c?$yD#(q+qOqtXq z5W8x+Ly8<*j;J<7IkcJ^0cki2U+UC24uwJ3NyqgO?HvJAZ^|ot%MS5NxaiJ|oDeD= z2!nsDV4|IZ9kTf3GXR%eJ1@ycTtGPppIH|vGz<4mE$32UxN{e~e>B;Sp|<`d=nQKN zr7BV+9~qM*h#|mG$ZKkR{Isc>4F^2=6`6v@yITiCI`8NnN#GD;G?dSS`1I^+Vf)EJ zi?VmJP0P#UmeZklk$Q?l)Kt4g*#?KH5ChUbPKj)(@!LUPq8BtzJ=m&Y_ff?iO(m^i z=8ls24w)}B8?)2ocnHShOT$Y;ph;|gSlZ#M?cDuvSmOCF)dmo;Ww9})1rfkUSte+p z&Xli6ccJjWYC-=sNIc!v2&QkSgMZlg^=&|bon8f{lI{2qL!9u9@VG*_Jzk|&-RF%^ z!d^TO-7{E_STXojdiYB(ooX+qX4@027SSVuS_Ms>0k) z^}f;Z4{St9kcEAHZJb#8Y-p_VCciZDua)=`>PiVifWmPBL$C!jGYNN+Kce4 zh@*)1G;nml)WSmSk2mORO56*iJ|rY9otfqiR&)9LO~JM{D*C!onk}eu{FFBsu>^#K zG%K$-1)`D8cDEtYDBrGzvQxb2lnTDebDg)gp)54k1Qo2mQT5QhY*)$>?!q3f0{nL9 zXHXEPN{t6R(3`93N?Wq!0585VTKV^(P0Dw;*4r?7XcIM=tbESwz{k3hm+Lo$=sJC> zAzf$ZlX_RNC>wUH2wDb;;#9mViQ%>zoxVSD3v#7;uXE*(!-Lz=#0un#CZzL1KGM>C zL%rC+o?}mLw}_+J9u?8h9y|{k|{R7G$j5r{+I~TAEpwa z2&OVVi}YhI2jHYez8!ef01Q_Avj~T&`UM&-%7)2Y)4sGI45{}`6cGrl9SnvY0tlp? zuhtyLqc6l9hh@hKD&`_6>NWD6zve6glGbTcnsDA{-%q}(l{~rp#+ayl zMvSaalYB@8gD~7l8AX27pC&~PSu^WC{=n`Rwa9qKt9%2eTTX6kvp#>ldv{ssFkn|E zd%p`wEis@cJul!fM;2gqyWgPO4gl;jq43A`}P$K2_p5F`*%DIwhR1`auaIkSmt^tVF3EF z0UgT7F^s=JzVz7Nu-qJ;K(>;g^`#V_DT&<3y3179<(}dIPd%(GKqfuGV`M%twTC

9tsu&S0BN2)*hG#0LqhjECkzD)mPf`0z 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
qw= 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 literal 48947 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%0DQ>ce7v~OHUb+1q&q!5y)+OU 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�+z@o<;*Sc8adB5}FHI%))> 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

  • fa`wz{4 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 jV3<|KNKb%=2zKJq!U!9%upijpMxPY>!NB|j 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 im+8;4wF(BlVQcVWF-nPoBALV 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 diff --git a/docs/en_US/images/debug_set_breakpoint.png b/docs/en_US/images/debug_set_breakpoint.png index e74d2aaa20fd768349c80fef52b63dba896da425..6fd99e81f2ea00ee4b25c4797b47759151169c86 100644 GIT binary patch literal 37288 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

    yrbnqT4%bw<3 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


    OUnN!5g!PjtQ<<-2 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 + ); +} diff --git a/web/pgadmin/tools/debugger/static/js/components/LocalVariablesAndParams.jsx b/web/pgadmin/tools/debugger/static/js/components/LocalVariablesAndParams.jsx new file mode 100644 index 000000000..6d774692e --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/LocalVariablesAndParams.jsx @@ -0,0 +1,177 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import _ from 'lodash'; +import clsx from 'clsx'; +import PropTypes from 'prop-types'; + +import React, { useCallback, useState } from 'react'; + +import { makeStyles } from '@material-ui/styles'; +import Paper from '@material-ui/core/Paper'; +import TableContainer from '@material-ui/core/TableContainer'; + +import gettext from 'sources/gettext'; + +import { DebuggerEventsContext } from './DebuggerComponent'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; +import { commonTableStyles } from '../../../../../static/js/Theme'; +import { InputText, InputDateTimePicker } from '../../../../../static/js/components/FormComponents'; + + +const useStyles = makeStyles(() => ({ + table: { + minWidth: 650, + }, + summaryContainer: { + flexGrow: 1, + minHeight: 0, + overflow: 'auto', + maxHeight: '100%' + }, + container: { + maxHeight: '100%' + }, + cell: { + textAlign: 'center' + } + +})); + +export function LocalVariablesAndParams({ type }) { + const classes = useStyles(); + const tableClasses = commonTableStyles(); + const eventBus = React.useContext(DebuggerEventsContext); + const [variablesData, setVariablesData] = useState([]); + const preValue = React.useRef({}); + const [disableVarChange, setDisableVarChange] = useState(false); + + + React.useEffect(() => { + /* For Parameters and Local variables use the component. + type = 1 means 'Parameters' + type = 2 means 'LocalVariables' + */ + if (type == 1) { + eventBus.registerListener(DEBUGGER_EVENTS.SET_PARAMETERS, (val) => { + setVariablesData(val); + }); + } else if (type == 2) { + eventBus.registerListener(DEBUGGER_EVENTS.SET_LOCAL_VARIABLES, (val) => { + setVariablesData(val); + }); + } + eventBus.registerListener(DEBUGGER_EVENTS.GET_TOOL_BAR_BUTTON_STATUS, (status) => { + setDisableVarChange(status.disabled); + }); + }, []); + + const changeLocalVarVal = useCallback((data) => { + if (type == 1) { + eventBus.fireEvent(DEBUGGER_EVENTS.SET_PARAMETERS_VALUE_CHANGE, data); + } else if (type == 2) { + eventBus.fireEvent(DEBUGGER_EVENTS.SET_LOCAL_VARIABLE_VALUE_CHANGE, data); + } + + }); + + const onValueChange = (name, value) => { + setVariablesData((prev) => { + let retVal = [...prev]; + let nameIndex = _.findIndex(retVal, (r) => (r.name == name)); + retVal[nameIndex].value = value; + return retVal; + }); + }; + + return ( + + + + + + + + + + + + {variablesData.map((row) => ( + + + + + + ))} + { + variablesData.length == 0 && + + + + } + + +
    {gettext('Name')}{gettext('Type')}{gettext('Value')}
    {row.name}{row.dtype} + {row.dtype == 'date' ? + { + onValueChange(row.name, val); + }} + onFocus={() => { + preValue.current[row.name] = row.value; + }} + onBlur={() => { + let data = [{ + name: row.name, + value: row.value, + type: row.type + }]; + if (preValue.current[row.name] != row.value && !disableVarChange) { + preValue.current[row.name] = row.value; + changeLocalVarVal(data); + } + + }} + > + : + + { + onValueChange(row.name, val); + }} + onFocus={() => { + preValue.current[row.name] = row.value; + }} + onBlur={() => { + let data = [{ + name: row.name, + value: row.value, + type: row.type + }]; + if (preValue.current[row.name] != row.value && !disableVarChange) { + preValue.current[row.name] = row.value; + changeLocalVarVal(data); + } + + }} + >}
    {gettext('No data found')}
    +
    +
    + ); +} + +LocalVariablesAndParams.propTypes = { + type: PropTypes.number +}; diff --git a/web/pgadmin/tools/debugger/static/js/components/Results.jsx b/web/pgadmin/tools/debugger/static/js/components/Results.jsx new file mode 100644 index 000000000..90dee9042 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/Results.jsx @@ -0,0 +1,71 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// +import _ from 'lodash'; +import clsx from 'clsx'; + +import React, { useState } from 'react'; + +import { makeStyles } from '@material-ui/styles'; +import Paper from '@material-ui/core/Paper'; + +import { DebuggerEventsContext } from './DebuggerComponent'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; +import { commonTableStyles } from '../../../../../static/js/Theme'; + + +const useStyles = makeStyles(() => ({ + table: { + minWidth: 650, + }, + summaryContainer: { + flexGrow: 1, + minHeight: 0, + overflow: 'auto', + } +})); + +export function Results() { + const classes = useStyles(); + const tableClasses = commonTableStyles(); + const eventBus = React.useContext(DebuggerEventsContext); + const [resultData, setResultData] = useState([]); + const [columns, setColumns] = useState([]); + React.useEffect(() => { + eventBus.registerListener(DEBUGGER_EVENTS.SET_RESULTS, (columnsData, values) => { + setResultData(values); + setColumns(columnsData); + }); + }, []); + return ( + + + + + { + columns.map((col) => ( + + )) + } + + + + {resultData.map((row) => ( + + { + columns.map((col) => ( + + )) + } + + ))} + +
    {col.name}
    {row[col.name]}
    +
    + ); +} diff --git a/web/pgadmin/tools/debugger/static/js/components/Stack.jsx b/web/pgadmin/tools/debugger/static/js/components/Stack.jsx new file mode 100644 index 000000000..d3728a28a --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/Stack.jsx @@ -0,0 +1,84 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import _ from 'lodash'; +import clsx from 'clsx'; +import gettext from 'sources/gettext'; + +import React, { useState } from 'react'; + +import { makeStyles } from '@material-ui/styles'; +import TableContainer from '@material-ui/core/TableContainer'; +import Paper from '@material-ui/core/Paper'; + +import { DebuggerEventsContext } from './DebuggerComponent'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; +import { commonTableStyles } from '../../../../../static/js/Theme'; +import { InputText } from '../../../../../static/js/components/FormComponents'; + + +const useStyles = makeStyles(() => ({ + table: { + minWidth: 650, + }, + summaryContainer: { + flexGrow: 1, + minHeight: 0, + overflow: 'auto', + maxHeight: '100%' + }, + container: { + maxHeight: '100%' + } +})); + +export function Stack() { + const classes = useStyles(); + const tableClasses = commonTableStyles(); + const eventBus = React.useContext(DebuggerEventsContext); + const [stackData, setStackData] = useState([]); + const [disableFrameSelection, setDisableFrameSelection] = useState(false); + + React.useEffect(() => { + eventBus.registerListener(DEBUGGER_EVENTS.SET_STACK, (stackValues) => { + setStackData(stackValues); + }); + eventBus.registerListener(DEBUGGER_EVENTS.GET_TOOL_BAR_BUTTON_STATUS, (status) => { + setDisableFrameSelection(status.disabled); + }); + }, []); + return ( + + + + + + + + + + + + {stackData?.map((row, index) => ( + + + + + + ))} + +
    {gettext('Name')}{gettext('Value')}{gettext('Line No.')}
    + {row.targetname} + {row.args} + { if(!disableFrameSelection)eventBus.fireEvent(DEBUGGER_EVENTS.SET_FRAME, index);}}> +
    +
    +
    + ); +} diff --git a/web/pgadmin/tools/debugger/static/js/components/ToolBar.jsx b/web/pgadmin/tools/debugger/static/js/components/ToolBar.jsx new file mode 100644 index 000000000..1516412d7 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/ToolBar.jsx @@ -0,0 +1,140 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import React, { useCallback, useContext, useEffect, useState } from 'react'; + +import { Box, makeStyles } from '@material-ui/core'; +import FormatIndentIncreaseIcon from '@material-ui/icons/FormatIndentIncrease'; +import FormatIndentDecreaseIcon from '@material-ui/icons/FormatIndentDecrease'; +import PlayCircleFilledWhiteIcon from '@material-ui/icons/PlayCircleFilledWhite'; +import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord'; +import NotInterestedIcon from '@material-ui/icons/NotInterested'; +import StopIcon from '@material-ui/icons/Stop'; +import HelpIcon from '@material-ui/icons/HelpRounded'; + +import gettext from 'sources/gettext'; +import { shortcut_key } from 'sources/keyboard_shortcuts'; +import url_for from 'sources/url_for'; + +import { PgButtonGroup, PgIconButton } from '../../../../../static/js/components/Buttons'; +import { DebuggerContext, DebuggerEventsContext } from './DebuggerComponent'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; + +const useStyles = makeStyles((theme) => ({ + root: { + padding: '2px 4px', + display: 'flex', + alignItems: 'center', + gap: '4px', + backgroundColor: theme.otherVars.editorToolbarBg, + flexWrap: 'wrap', + ...theme.mixins.panelBorder.bottom, + }, +})); + +export function ToolBar() { + const classes = useStyles(); + const debuggerCtx = useContext(DebuggerContext); + const eventBus = useContext(DebuggerEventsContext); + let preferences = debuggerCtx.preferences.debugger; + + const [buttonsDisabled, setButtonsDisabled] = useState({ + 'stop': true, + 'clear-all-breakpoints': true, + 'toggle-breakpoint': true, + 'start': true, + 'step-over': true, + 'step-into': true, + }); + + const setDisableButton = useCallback((name, disable = true) => { + setButtonsDisabled((prev) => ({ ...prev, [name]: disable })); + }, []); + + const clearAllBreakpoint = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_CLEAR_ALL_BREAKPOINTS); + }, []); + + const toggleBreakpoint = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_TOGGLE_BREAKPOINTS); + }, []); + + const stop = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_STOP_DEBUGGING); + }); + + const continueDebugger = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_CONTINUE_DEBUGGING); + }); + + + const stepOverDebugger = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_STEPOVER_DEBUGGING); + }); + + const stepInTODebugger = useCallback(() => { + eventBus.fireEvent(DEBUGGER_EVENTS.TRIGGER_STEINTO_DEBUGGING); + }); + + const onHelpClick=()=>{ + let url = url_for('help.static', {'filename': 'debugger.html'}); + window.open(url, 'pgadmin_help'); + }; + + useEffect(() => { + eventBus.registerListener(DEBUGGER_EVENTS.DISABLE_MENU, () => { + setDisableButton('start', true); + setDisableButton('step-into', true); + setDisableButton('step-over', true); + setDisableButton('clear-all-breakpoints', true); + setDisableButton('toggle-breakpoint', true); + setDisableButton('stop', true); + }); + + eventBus.registerListener(DEBUGGER_EVENTS.ENABLE_MENU, () => { + setDisableButton('start', false); + setDisableButton('step-into', false); + setDisableButton('step-over', false); + setDisableButton('clear-all-breakpoints', false); + setDisableButton('toggle-breakpoint', false); + setDisableButton('stop', false); + }); + + eventBus.registerListener(DEBUGGER_EVENTS.ENABLE_SPECIFIC_MENU, (key) => { + setDisableButton(key, false); + }); + }, []); + + + return ( + + + } onClick={() => { stepInTODebugger(); }} + accesskey={shortcut_key(preferences?.btn_step_into)} /> + } onClick={() => { stepOverDebugger(); }} + accesskey={shortcut_key(preferences?.btn_step_over)} /> + } onClick={() => { continueDebugger(); }} + accesskey={shortcut_key(preferences?.btn_start)} /> + + + } + accesskey={shortcut_key(preferences?.btn_toggle_breakpoint)} onClick={() => { toggleBreakpoint(); }} /> + } + accesskey={shortcut_key(preferences?.btn_clear_breakpoints)} onClick={() => { clearAllBreakpoint(); }} /> + + + } disabled={buttonsDisabled['stop']} onClick={() => { stop(); }} + accesskey={shortcut_key(preferences?.btn_stop)} /> + + + } onClick={onHelpClick} /> + + + ); +} diff --git a/web/pgadmin/tools/debugger/static/js/debugger.js b/web/pgadmin/tools/debugger/static/js/debugger.js deleted file mode 100644 index 0ac8293c3..000000000 --- a/web/pgadmin/tools/debugger/static/js/debugger.js +++ /dev/null @@ -1,670 +0,0 @@ -///////////////////////////////////////////////////////////// -// -// pgAdmin 4 - PostgreSQL Tools -// -// Copyright (C) 2013 - 2022, The pgAdmin Development Team -// This software is released under the PostgreSQL Licence -// -////////////////////////////////////////////////////////////// - -import Notify from '../../../../static/js/helpers/Notifier'; - -define([ - 'sources/gettext', 'sources/url_for', 'jquery', 'underscore', - 'alertify', 'sources/pgadmin', 'pgadmin.browser', - 'backbone', 'pgadmin.backgrid', 'codemirror', 'pgadmin.backform', - 'pgadmin.tools.debugger.ui', 'pgadmin.tools.debugger.utils', - 'tools/sqleditor/static/js/show_query_tool', 'sources/utils', - 'pgadmin.authenticate.kerberos', 'tools/sqleditor/static/js/sqleditor_title', - 'wcdocker', 'pgadmin.browser.frame', -], function( - gettext, url_for, $, _, Alertify, pgAdmin, pgBrowser, Backbone, Backgrid, - CodeMirror, Backform, get_function_arguments, debuggerUtils, showQueryTool, - pgadminUtils, Kerberos, panelTitleFunc -) { - var pgTools = pgAdmin.Tools = pgAdmin.Tools || {}, - wcDocker = window.wcDocker; - - /* Return back, this has been called more than once */ - if (pgAdmin.Tools.Debugger) - return pgAdmin.Tools.Debugger; - - pgTools.Debugger = { - init: function() { - // We do not want to initialize the module multiple times. - if (this.initialized) - return; - - this.initialized = true; - - // Initialize the context menu to display the debugging options when user open the context menu for functions - pgBrowser.add_menus([{ - name: 'direct_debugger', - node: 'function', - module: this, - applies: ['object', 'context'], - callback: 'get_function_information', - category: gettext('Debugging'), - priority: 10, - label: gettext('Debug'), - data: { - object: 'function', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'global_debugger', - node: 'function', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - category: gettext('Debugging'), - priority: 10, - label: gettext('Set Breakpoint'), - data: { - object: 'function', - debug_type: 'indirect', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'procedure_direct_debugger', - node: 'procedure', - module: this, - applies: ['object', 'context'], - callback: 'get_function_information', - category: gettext('Debugging'), - priority: 10, - label: gettext('Debug'), - data: { - object: 'procedure', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'procedure_indirect_debugger', - node: 'procedure', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - category: gettext('Debugging'), - priority: 10, - label: gettext('Set Breakpoint'), - data: { - object: 'procedure', - debug_type: 'indirect', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'trigger_function_indirect_debugger', - node: 'trigger_function', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - priority: 10, - label: gettext('Set Breakpoint'), - category: gettext('Debugging'), - icon: 'fa fa-arrow-circle-right', - data: { - object: 'trigger_function', - debug_type: 'indirect', - }, - enable: 'can_debug', - }, { - name: 'trigger_indirect_debugger', - node: 'trigger', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - priority: 10, - label: gettext('Set Breakpoint'), - category: gettext('Debugging'), - icon: 'fa fa-arrow-circle-right', - data: { - object: 'trigger', - debug_type: 'indirect', - }, - enable: 'can_debug', - }, { - name: 'package_function_direct_debugger', - node: 'edbfunc', - module: this, - applies: ['object', 'context'], - callback: 'get_function_information', - category: gettext('Debugging'), - priority: 10, - label: gettext('Debug'), - data: { - object: 'edbfunc', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'package_function_global_debugger', - node: 'edbfunc', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - category: gettext('Debugging'), - priority: 10, - label: gettext('Set Breakpoint'), - data: { - object: 'edbfunc', - debug_type: 'indirect', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'package_procedure_direct_debugger', - node: 'edbproc', - module: this, - applies: ['object', 'context'], - callback: 'get_function_information', - category: gettext('Debugging'), - priority: 10, - label: gettext('Debug'), - data: { - object: 'edbproc', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }, { - name: 'package_procedure_global_debugger', - node: 'edbproc', - module: this, - applies: ['object', 'context'], - callback: 'check_func_debuggable', - category: gettext('Debugging'), - priority: 10, - label: gettext('Set Breakpoint'), - data: { - object: 'edbproc', - debug_type: 'indirect', - }, - icon: 'fa fa-arrow-circle-right', - enable: 'can_debug', - }]); - - // Create and load the new frame required for debugger panel - this.frame = new pgBrowser.Frame({ - name: 'frm_debugger', - title: gettext('Debugger'), - width: 500, - isCloseable: true, - isPrivate: true, - icon: 'fa fa-bug', - url: 'about:blank', - }); - - this.frame.load(pgBrowser.docker); - - let self = this; - let cacheIntervalId = setInterval(function() { - if(pgBrowser.preference_version() > 0) { - self.preferences = pgBrowser.get_preferences_for_module('debugger'); - clearInterval(cacheIntervalId); - } - },0); - - pgBrowser.onPreferencesChange('debugger', function() { - self.preferences = pgBrowser.get_preferences_for_module('debugger'); - }); - }, - // It will check weather the function is actually debuggable or not with pre-required condition. - can_debug: function(itemData, item, data) { - var t = pgBrowser.tree, - i = item, - d = itemData; - // To iterate over tree to check parent node - while (i) { - if ('catalog' == d._type) { - //Check if we are not child of catalog - return false; - } - i = t.hasParent(i) ? t.parent(i) : null; - d = i ? t.itemData(i) : null; - } - - // Find the function is really available in database - var tree = pgBrowser.tree, - info = tree.selected(), - d_ = info ? tree.itemData(info) : undefined; - - if (!d_) - return false; - - var treeInfo = tree.getTreeNodeHierarchy(info); - - // For indirect debugging user must be super user - if (data && data.debug_type && data.debug_type == 'indirect' && - !treeInfo.server.user.is_superuser) - return false; - - // Fetch object owner - var obj_owner = treeInfo.function && treeInfo.function.funcowner || - treeInfo.procedure && treeInfo.procedure.funcowner || - treeInfo.edbfunc && treeInfo.edbfunc.funcowner || - treeInfo.edbproc && treeInfo.edbproc.funcowner; - - // Must be a super user or object owner to create breakpoints of any kind - if (!(treeInfo.server.user.is_superuser || obj_owner == treeInfo.server.user.name)) - return false; - - // For trigger node, language will be undefined - we should allow indirect debugging for trigger node - if ((d_.language == undefined && d_._type == 'trigger') || - (d_.language == undefined && d_._type == 'edbfunc') || - (d_.language == undefined && d_._type == 'edbproc')) { - return true; - } - - if (d_.language != 'plpgsql' && d_.language != 'edbspl') { - return false; - } - - return true; - }, - /* - For the direct debugging, we need to fetch the function information to display in the dialog so "generate_url" - will dynamically generate the URL from the server_id, database_id, schema_id and function id. - */ - generate_url: function(_url, treeInfo, node) { - var url = '{BASEURL}{URL}/{OBJTYPE}{REF}', - ref = ''; - - _.each( - _.sortBy( - _.values( - _.pick(treeInfo, - function(v, k) { - return (k != 'server_group'); - }) - ), - function(o) { - return o.priority; - } - ), - function(o) { - ref = pgadminUtils.sprintf('%s/%s', ref, encodeURI(o._id)); - }); - - var args = { - 'URL': _url, - 'BASEURL': url_for('debugger.index'), - 'REF': ref, - 'OBJTYPE': encodeURI(node.type), - }; - - return url.replace(/{(\w+)}/g, function(match, arg) { - return args[arg]; - }); - }, - - onFail: function(xhr) { - try { - var err = JSON.parse(xhr.responseText); - if (err.success == 0) { - Notify.alert(gettext('Debugger Error'), err.errormsg); - } - } catch (e) { - console.warn(e.stack || e); - } - }, - - check_func_debuggable: function(args, item) { - var t = pgBrowser.tree, - i = item || t.selected(), - d = i ? t.itemData(i) : undefined, - node = d && pgBrowser.Nodes[d._type]; - - if (!d) - return; - - var treeInfo = t.getTreeNodeHierarchy(i), - _url = this.generate_url('init', treeInfo, node); - - var self = this; - $.ajax({ - url: _url, - cache: false, - }) - .done(function(res) { - self.start_global_debugger(args, item, res.data.trans_id); - }) - .fail(function(xhr) { - self.onFail(xhr); - }); - }, - - panel_rename_event: function(panel_data, panel, treeInfo) { - Alertify.prompt('', panel_data.$titleText[0].textContent, - // We will execute this function when user clicks on the OK button - function(evt, value) { - if(value) { - // Remove the leading and trailing white spaces. - value = value.trim(); - let preferences = pgBrowser.get_preferences_for_module('browser'); - var name = debuggerUtils.getAppropriateLabel(treeInfo); - debuggerUtils.setDebuggerTitle(panel, preferences, name, treeInfo.schema.label, treeInfo.database.label, value, pgBrowser); - } - }, - // We will execute this function when user clicks on the Cancel - // button. Do nothing just close it. - function(evt) { evt.cancel = false; } - ).set({'title': gettext('Rename Panel')}); - }, - - //Callback function when user start the indirect debugging ( Listen to another session to invoke the target ) - start_global_debugger: function(args, item, trans_id) { - // Initialize the target and create asynchronous connection and unique transaction ID - - var self = this; - var t = pgBrowser.tree, - i = item || t.selected(), - d = i ? t.itemData(i) : undefined, - tree_data = pgBrowser.tree.translateTreeNodeIdFromReactTree(i), - db_data = pgBrowser.tree.findNode(tree_data[3]), - dbNode = db_data.domNode; - - if (!d) - return; - - var treeInfo = t.getTreeNodeHierarchy(i), - baseUrl; - - if (d._type == 'function' || d._type == 'edbfunc') { - baseUrl = url_for( - 'debugger.initialize_target_for_function', { - 'debug_type': 'indirect', - 'trans_id': trans_id, - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': debuggerUtils.getFunctionId(treeInfo), - } - ); - } else if (d._type == 'procedure' || d._type == 'edbproc') { - baseUrl = url_for( - 'debugger.initialize_target_for_function', { - 'debug_type': 'indirect', - 'trans_id': trans_id, - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': debuggerUtils.getProcedureId(treeInfo), - } - ); - } else if (d._type == 'trigger_function') { - baseUrl = url_for( - 'debugger.initialize_target_for_function', { - 'debug_type': 'indirect', - 'trans_id': trans_id, - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.trigger_function._id, - } - ); - } else if (d._type == 'trigger' && 'table' in treeInfo) { - baseUrl = url_for( - 'debugger.initialize_target_for_trigger', { - 'debug_type': 'indirect', - 'trans_id': trans_id, - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.table._id, - 'tri_id': treeInfo.trigger._id, - } - ); - } else if (d._type == 'trigger' && 'view' in treeInfo) { - baseUrl = url_for( - 'debugger.initialize_target_for_trigger', { - 'debug_type': 'indirect', - 'trans_id': trans_id, - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.view._id, - 'tri_id': treeInfo.trigger._id, - } - ); - } - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - var url = url_for('debugger.direct', { - 'trans_id': res.data.debuggerTransId, - }); - var browser_preferences = pgBrowser.get_preferences_for_module('browser'); - var open_new_tab = browser_preferences.new_browser_tab_open; - if (open_new_tab && open_new_tab.includes('debugger')) { - window.open(url, '_blank'); - // Send the signal to runtime, so that proper zoom level will be set. - setTimeout(function() { - pgBrowser.send_signal_to_runtime('Runtime new window opened'); - }, 500); - } else { - pgBrowser.Events.once( - 'pgadmin-browser:frame:urlloaded:frm_debugger', - function(frame) { - frame.openURL(url); - }); - - // Create the debugger panel as per the data received from user input dialog. - var dashboardPanel = pgBrowser.docker.findPanels( - 'properties' - ), - panel = pgBrowser.docker.addPanel( - 'frm_debugger', wcDocker.DOCK.STACKED, dashboardPanel[0] - ), - db_label = treeInfo.database.label; - - if(res.data.data_obj.db_name != treeInfo.database.label) { - db_label = res.data.data_obj.db_name; - var message = `Current database has been moved or renamed to ${db_label}. Click on the OK button to refresh the database name.`; - panelTitleFunc.refresh_db_node(message, dbNode); - } - - var label = debuggerUtils.getAppropriateLabel(treeInfo); - debuggerUtils.setDebuggerTitle(panel, browser_preferences, label, db_label, db_label, null, pgBrowser); - - panel.focus(); - - // Panel Closed event - panel.on(wcDocker.EVENT.CLOSED, function() { - var closeUrl = url_for('debugger.close', { - 'trans_id': res.data.debuggerTransId, - }); - $.ajax({ - url: closeUrl, - method: 'DELETE', - }); - }); - - // Panel Rename event - panel.on(wcDocker.EVENT.RENAME, function(panel_data) { - self.panel_rename_event(panel_data, panel, treeInfo); - }); - } - }) - .fail(function(xhr) { - try { - var err = JSON.parse(xhr.responseText); - if (err.errormsg.search('Ticket expired') !== -1) { - let fetchTicket = Kerberos.fetch_ticket(); - fetchTicket.then( - function() { - self.start_global_debugger(); - }, - function(error) { - Notify.alert(gettext('Debugger Error'), error); - } - ); - } else { - if (err.success == 0) { - Notify.alert(gettext('Debugger Error'), err.errormsg); - } - } - } catch (e) { - console.warn(e.stack || e); - } - }); - }, - - /* - Get the function information for the direct debugging to display the functions arguments and other informations - in the user input dialog - */ - get_function_information: function(args, item) { - - var self = this, - t = pgBrowser.tree, - i = item || t.selected(), - d = i ? t.itemData(i) : undefined, - node = d && pgBrowser.Nodes[d._type], - tree_data = pgBrowser.tree.translateTreeNodeIdFromReactTree(i), - db_data = pgBrowser.tree.findNode(tree_data[3]), - dbNode = db_data.domNode; - - if (!d) - return; - - var is_edb_proc = d._type == 'edbproc'; - - var treeInfo = t.getTreeNodeHierarchy(i), - _url = this.generate_url('init', treeInfo, node); - - $.ajax({ - url: _url, - cache: false, - }) - .done(function(res) { - - let debug_info = res.data.debug_info, - trans_id = res.data.trans_id; - // Open Alertify the dialog to take the input arguments from user if function having input arguments - if (debug_info[0]['require_input']) { - get_function_arguments(debug_info[0], 0, is_edb_proc, trans_id); - } else { - // Initialize the target and create asynchronous connection and unique transaction ID - // If there is no arguments to the functions then we should not ask for for function arguments and - // Directly open the panel - var _t = pgBrowser.tree, - _i = _t.selected(), - _d = _i ? _t.itemData(_i) : undefined; - - if (!_d) - return; - - var newTreeInfo = _t.getTreeNodeHierarchy(_i), - baseUrl; - - if (_d._type == 'function' || _d._type == 'edbfunc') { - baseUrl = url_for( - 'debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': trans_id, - 'sid': newTreeInfo.server._id, - 'did': newTreeInfo.database._id, - 'scid': newTreeInfo.schema._id, - 'func_id': debuggerUtils.getFunctionId(newTreeInfo), - } - ); - } else if(_d._type == 'procedure' || _d._type == 'edbproc') { - baseUrl = url_for( - 'debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': trans_id, - 'sid': newTreeInfo.server._id, - 'did': newTreeInfo.database._id, - 'scid': newTreeInfo.schema._id, - 'func_id': debuggerUtils.getProcedureId(newTreeInfo), - } - ); - } - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(result) { - - var data = result.data; - - var url = url_for('debugger.direct', { - 'trans_id': trans_id, - }); - - var browser_preferences = pgBrowser.get_preferences_for_module('browser'); - var open_new_tab = browser_preferences.new_browser_tab_open; - if (open_new_tab && open_new_tab.includes('debugger')) { - window.open(url, '_blank'); - // Send the signal to runtime, so that proper zoom level will be set. - setTimeout(function() { - pgBrowser.send_signal_to_runtime('Runtime new window opened'); - }, 500); - } else { - pgBrowser.Events.once( - 'pgadmin-browser:frame:urlloaded:frm_debugger', - function(frame) { - frame.openURL(url); - }); - - // Create the debugger panel as per the data received from user input dialog. - var dashboardPanel = pgBrowser.docker.findPanels( - 'properties' - ), - panel = pgBrowser.docker.addPanel( - 'frm_debugger', wcDocker.DOCK.STACKED, dashboardPanel[0] - ), - db_label = newTreeInfo.database.label; - pgadminUtils.registerDetachEvent(panel); - - if(data && data.data_obj && data.data_obj.db_name != newTreeInfo.database.label) { - db_label = data.data_obj.db_name; - var message = `Current database has been moved or renamed to ${db_label}. Click on the OK button to refresh the database name.`; - panelTitleFunc.refresh_db_node(message, dbNode); - } - - var label = debuggerUtils.getAppropriateLabel(newTreeInfo); - debuggerUtils.setDebuggerTitle(panel, browser_preferences, label, newTreeInfo.schema.label, db_label, null, pgBrowser); - - panel.focus(); - - // Register Panel Closed event - panel.on(wcDocker.EVENT.CLOSED, function() { - var closeUrl = url_for('debugger.close', { - 'trans_id': trans_id, - }); - $.ajax({ - url: closeUrl, - method: 'DELETE', - }); - }); - - // Panel Rename event - panel.on(wcDocker.EVENT.RENAME, function(panel_data) { - self.panel_rename_event(panel_data, panel, treeInfo); - }); - } - }) - .fail(function(e) { - Notify.alert( - gettext('Debugger Target Initialization Error'), - e.responseJSON.errormsg - ); - }); - } - }) - .fail(function(xhr) { - self.onFail(xhr); - }); - }, - }; - - return pgAdmin.Tools.Debugger; -}); diff --git a/web/pgadmin/tools/debugger/static/js/debugger_ui.js b/web/pgadmin/tools/debugger/static/js/debugger_ui.js index 149d1d5fa..5ad628de0 100644 --- a/web/pgadmin/tools/debugger/static/js/debugger_ui.js +++ b/web/pgadmin/tools/debugger/static/js/debugger_ui.js @@ -1,1053 +1,26 @@ -///////////////////////////////////////////////////////////// -// -// pgAdmin 4 - PostgreSQL Tools -// -// Copyright (C) 2013 - 2022, The pgAdmin Development Team -// This software is released under the PostgreSQL Licence -// -////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////////// +//// +//// pgAdmin 4 - PostgreSQL Tools +//// +//// Copyright (C) 2013 - 2022, The pgAdmin Development Team +//// This software is released under the PostgreSQL Licence +//// +//////////////////////////////////////////////////////////////// + +import React from 'react'; + +import gettext from 'sources/gettext'; +import pgAdmin from 'sources/pgadmin'; import Notify from '../../../../static/js/helpers/Notifier'; +import DebuggerArgumentComponent from './components/DebuggerArgumentComponent'; -define([ - 'sources/gettext', 'sources/url_for', 'jquery', 'underscore', 'backbone', - 'pgadmin.alertifyjs', 'sources/pgadmin', 'pgadmin.browser', - 'pgadmin.backgrid', 'sources/window', 'pgadmin.tools.debugger.utils','sources/utils', - 'wcdocker', -], function( - gettext, url_for, $, _, Backbone, Alertify, pgAdmin, pgBrowser, Backgrid, - pgWindow, debuggerUtils, commonUtils, -) { +export default class FunctionArguments { - var wcDocker = window.wcDocker; - - /* - * Function used to return the respective Backgrid control based on the data type - * of function input argument. - */ - var cellFunction = function(model) { - var variable_type = model.get('type'); - - // if variable type is an array then we need to render the custom control to take the input from user. - if (variable_type.indexOf('[]') != -1) { - var data_type = variable_type.replace('[]' ,''); - - switch (data_type) { - case 'boolean': - return Backgrid.Extension.InputBooleanArrayCell; - case 'integer': - case 'smallint': - case 'bigint': - case 'serial': - case 'smallserial': - case 'bigserial': - case 'oid': - case 'cid': - case 'xid': - case 'tid': - return Backgrid.Extension.InputIntegerArrayCell; - case 'real': - case 'numeric': - case 'double precision': - case 'decimal': - return Backgrid.Extension.InputNumberArrayCell; - default: - return Backgrid.Extension.InputStringArrayCell; - } - } else { - switch (variable_type) { - case 'boolean': - return Backgrid.BooleanCell.extend({ - formatter: Backgrid.BooleanCellFormatter, - }); - case 'integer': - case 'smallint': - case 'bigint': - case 'serial': - case 'smallserial': - case 'bigserial': - case 'oid': - case 'cid': - case 'xid': - case 'tid': - // As we are getting this value as text from sqlite database so we need to type cast it. - if (model.get('value') != undefined) { - model.set({ - 'value': isNaN(parseInt(model.get('value'))) ? null : parseInt(model.get('value')), - }, { - silent: true, - }); - } - - return Backgrid.IntegerCell; - case 'real': - case 'numeric': - case 'double precision': - case 'decimal': - // As we are getting this value as text from sqlite database so we need to type cast it. - if (model.get('value') != undefined) { - model.set({ - 'value': parseFloat(model.get('value')), - }, { - silent: true, - }); - } - return Backgrid.NumberCell; - case 'string': - return Backgrid.StringCell; - case 'date': - return Backgrid.DateCell; - default: - return Backgrid.Cell; - } - } - }; - - /* - * Function used to return the respective Backgrid string or boolean control based on the data type - * of function input argument. - */ - var cellExprControlFunction = function(model) { - var variable_type = model.get('type'); - if (variable_type.indexOf('[]') != -1) { - return Backgrid.StringCell; - } - return Backgrid.BooleanCell; - }; - - /** - * DebuggerInputArgsModel used to represent input parameters for the function to debug - * for function objects. - **/ - var DebuggerInputArgsModel = Backbone.Model.extend({ - defaults: { - name: undefined, - type: undefined, - is_null: undefined, - expr: undefined, - value: undefined, - use_default: undefined, - default_value: undefined, - }, - validate: function() { - if (_.isUndefined(this.get('value')) || - _.isNull(this.get('value')) || - String(this.get('value')).replace(/^\s+|\s+$/g, '') == '') { - var msg = gettext('Please enter a value for the parameter.'); - this.errorModel.set('value', msg); - return msg; - } else { - this.errorModel.unset('value'); - } - return null; - }, - }); - - // Collection which contains the model for function informations. - var DebuggerInputArgCollections = Backbone.Collection.extend({ - model: DebuggerInputArgsModel, - }); - - // function will enable/disable the use_default column based on the value received. - var disableDefaultCell = function(d) { - if (d instanceof Backbone.Model) { - return d.get('use_default'); - } - return false; - }; - - // Enable/Disable the control based on the array data type of the function input arguments - var disableExpressionControl = function(d) { - if (d instanceof Backbone.Model) { - var argType = d.get('type'); - if (argType.indexOf('[]') != -1) { - return false; - } - return true; - } - }; - - var raiseError = function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Unable to set the arguments on the server') - ); - }; - - return function(debugInfo, restartDebug, isEdbProc, transId) { - if (!Alertify.debuggerInputArgsDialog) { - Alertify.dialog('debuggerInputArgsDialog', function factory() { - return { - main: function(title, debug_info, restart_debug, is_edb_proc, trans_id) { - this.preferences = pgWindow.default.pgAdmin.Browser.get_preferences_for_module('debugger'); - this.set('title', title); - - // setting value in alertify settings allows us to access it from - // other functions other than main function. - this.set('debug_info', debug_info); - this.set('restart_debug', restart_debug); - this.set('trans_id', trans_id); - this.set('is_edb_proc', is_edb_proc); - - // Variables to store the data sent from sqlite database - var func_args_data = this.func_args_data = []; - - // As we are not getting pgBrowser.tree when we debug again - // so tree info will be updated from the server data - if (restart_debug == 0) { - var t = pgBrowser.tree, - i = t.selected(), - d = i ? t.itemData(i) : undefined; - - if (!d) - return; - - var treeInfo = t.getTreeNodeHierarchy(i), - _Url; - - if (d._type == 'function') { - // Get the existing function parameters available from sqlite database - _Url = url_for('debugger.get_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.function._id, - }); - } else if (d._type == 'procedure') { - // Get the existing function parameters available from sqlite database - _Url = url_for('debugger.get_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.procedure._id, - }); - } else if (d._type == 'edbfunc') { - // Get the existing function parameters available from sqlite database - _Url = url_for('debugger.get_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbfunc._id, - }); - } else if (d._type == 'edbproc') { - // Get the existing function parameters available from sqlite database - _Url = url_for('debugger.get_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbproc._id, - }); - } - } else { - // Get the existing function parameters available from sqlite database - _Url = url_for('debugger.get_arguments', { - 'sid': debug_info.server_id, - 'did': debug_info.database_id, - 'scid': debug_info.schema_id, - 'func_id': debug_info.function_id, - }); - } - $.ajax({ - url: _Url, - method: 'GET', - async: false, - }) - .done(function(res_get) { - if (res_get.data.args_count != 0) { - for (i = 0; i < res_get.data.result.length; i++) { - // Below will format the data to be stored in sqlite database - func_args_data.push({ - 'arg_id': res_get.data.result[i]['arg_id'], - 'is_null': res_get.data.result[i]['is_null'], - 'is_expression': res_get.data.result[i]['is_expression'], - 'use_default': res_get.data.result[i]['use_default'], - 'value': res_get.data.result[i]['value'], - }); - } - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Unable to fetch the arguments from server') - ); - }); - - var argname, argtype, argmode, default_args_count, default_args, arg_cnt; - - var value_header = Backgrid.HeaderCell.extend({ - // Add fixed width to the "value" column - className: 'width_percent_25', - }); - - var def_val_list = [], - gridCols = [{ - name: 'name', - label: gettext('Name'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'type', - label: gettext('Type'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'is_null', - label: gettext('Null?'), - type: 'boolean', - cell: 'boolean', - align_center: true, - }, - { - name: 'expr', - label: gettext('Expression?'), - type: 'boolean', - cellFunction: cellExprControlFunction, - editable: disableExpressionControl, - align_center: true, - }, - { - name: 'value', - label: gettext('Value'), - type: 'text', - editable: true, - cellFunction: cellFunction, - headerCell: value_header, - align_center: true, - }, - { - name: 'use_default', - label: gettext('Use Default?'), - type: 'boolean', - cell: 'boolean', - editable: disableDefaultCell, - }, - { - name: 'default_value', - label: gettext('Default'), - type: 'text', - editable: false, - cell: 'string', - }, - ]; - - var my_obj = []; - var func_obj = []; - - // Below will calculate the input argument id required to store in sqlite database - var input_arg_id = this.input_arg_id = [], - k; - if (debug_info['proargmodes'] != null) { - var argmode_1 = debug_info['proargmodes'].split(','); - for (k = 0; k < argmode_1.length; k++) { - if (argmode_1[k] == 'i' || argmode_1[k] == 'b' || - (is_edb_proc && argmode_1[k] == 'o')) { - input_arg_id.push(k); - } - } - } else { - var argtype_1 = debug_info['proargtypenames'].split(','); - for (k = 0; k < argtype_1.length; k++) { - input_arg_id.push(k); - } - } - - argtype = debug_info['proargtypenames'].split(','); - - if (debug_info['proargmodes'] != null) { - argmode = debug_info['proargmodes'].split(','); - } - - if (debug_info['pronargdefaults']) { - default_args_count = debug_info['pronargdefaults']; - default_args = debug_info['proargdefaults'].split(','); - arg_cnt = default_args_count; - } - - var vals, values, index, use_def_value, j; - - if (debug_info['proargnames'] != null) { - argname = debug_info['proargnames'].split(','); - - // It will assign default values to "Default value" column - for (j = (argname.length - 1); j >= 0; j--) { - if (debug_info['proargmodes'] != null) { - if (argmode && (argmode[j] == 'i' || argmode[j] == 'b' || - (is_edb_proc && argmode[j] == 'o'))) { - if (arg_cnt) { - arg_cnt = arg_cnt - 1; - def_val_list[j] = default_args[arg_cnt]; - } else { - def_val_list[j] = ''; - } - } - } else if (arg_cnt) { - arg_cnt = arg_cnt - 1; - def_val_list[j] = default_args[arg_cnt]; - } else { - def_val_list[j] = ''; - } - } - - if (argtype.length != 0) { - for (i = 0; i < argtype.length; i++) { - if (debug_info['proargmodes'] != null) { - if (argmode && (argmode[i] == 'i' || argmode[i] == 'b' || - (is_edb_proc && argmode[i] == 'o'))) { - use_def_value = false; - if (def_val_list[i] != '') { - use_def_value = true; - } - my_obj.push({ - 'name': argname[i], - 'type': argtype[i], - 'use_default': use_def_value, - 'default_value': def_val_list[i], - }); - } - } else { - use_def_value = false; - if (def_val_list[i] != '') { - use_def_value = true; - } - my_obj.push({ - 'name': argname[i], - 'type': argtype[i], - 'use_default': use_def_value, - 'default_value': def_val_list[i], - }); - } - } - } - - // Need to update the func_obj variable from sqlite database if available - if (func_args_data.length != 0) { - for (i = 0; i < func_args_data.length; i++) { - index = func_args_data[i]['arg_id']; - if (debug_info['proargmodes'] != null && - (argmode && argmode[index] == 'o' && !is_edb_proc)) { - continue; - } - - values = []; - if (argtype[index].indexOf('[]') != -1) { - vals = func_args_data[i]['value'].split(','); - _.each(vals, function(val) { - values.push({ - 'value': val, - }); - }); - } else { - values = func_args_data[i]['value']; - } - - func_obj.push({ - 'name': argname[index], - 'type': argtype[index], - 'is_null': func_args_data[i]['is_null'] ? true : false, - 'expr': func_args_data[i]['is_expression'] ? true : false, - 'value': values, - 'use_default': func_args_data[i]['use_default'] ? true : false, - 'default_value': def_val_list[index], - }); - } - } - } else { - /* - Generate the name parameter if function do not have arguments name - like dbgparam1, dbgparam2 etc. - */ - var myargname = []; - - for (i = 0; i < argtype.length; i++) { - myargname[i] = 'dbgparam' + (i + 1); - } - - // If there is no default arguments - if (!debug_info['pronargdefaults']) { - for (i = 0; i < argtype.length; i++) { - my_obj.push({ - 'name': myargname[i], - 'type': argtype[i], - 'use_default': false, - 'default_value': '', - }); - def_val_list[i] = ''; - } - } else { - // If there is default arguments - //Below logic will assign default values to "Default value" column - for (j = (myargname.length - 1); j >= 0; j--) { - if (arg_cnt) { - arg_cnt = arg_cnt - 1; - def_val_list[j] = default_args[arg_cnt]; - } else { - def_val_list[j] = ''; - } - } - - for (i = 0; i < argtype.length; i++) { - if (debug_info['proargmodes'] == null) { - use_def_value = false; - if (def_val_list[i] != '') { - use_def_value = true; - } - my_obj.push({ - 'name': myargname[i], - 'type': argtype[i], - 'use_default': use_def_value, - 'default_value': def_val_list[i], - }); - } else { - if (argmode && (argmode[i] == 'i' || argmode[i] == 'b' || - (is_edb_proc && argmode[i] == 'o'))) { - use_def_value = false; - if (def_val_list[i] != '') { - use_def_value = true; - } - my_obj.push({ - 'name': myargname[i], - 'type': argtype[i], - 'use_default': use_def_value, - 'default_value': def_val_list[i], - }); - } - } - } - } - - // Need to update the func_obj variable from sqlite database if available - if (func_args_data.length != 0) { - for (i = 0; i < func_args_data.length; i++) { - index = func_args_data[i]['arg_id']; - values = []; - if (argtype[index].indexOf('[]') != -1) { - vals = func_args_data[i]['value'].split(','); - _.each(vals, function(val) { - values.push({ - 'value': val, - }); - }); - } else { - values = func_args_data[i]['value']; - } - func_obj.push({ - 'name': myargname[index], - 'type': argtype[index], - 'is_null': func_args_data[i]['is_null'] ? true : false, - 'expr': func_args_data[i]['is_expression'] ? true : false, - 'value': values, - 'use_default': func_args_data[i]['use_default'] ? true : false, - 'default_value': def_val_list[index], - }); - } - } - } - - // Check if the arguments already available in the sqlite database - // then we should use the existing arguments - if (func_args_data.length == 0) { - this.debuggerInputArgsColl = - new DebuggerInputArgCollections(my_obj); - } else { - this.debuggerInputArgsColl = - new DebuggerInputArgCollections(func_obj); - } - - // Initialize a new Grid instance - if (this.grid) { - this.grid.remove(); - this.grid = null; - } - var grid = this.grid = new Backgrid.Grid({ - columns: gridCols, - collection: this.debuggerInputArgsColl, - className: 'backgrid table table-bordered table-noouter-border table-bottom-border', - }); - - grid.render(); - let wrap_div = document.createElement('div'); - wrap_div.classList.add('debugger-args'); - wrap_div.appendChild(grid.el); - $(this.elements.content).html(wrap_div); - - // For keyboard navigation in the grid - // we'll set focus on checkbox from the first row if any - var grid_checkbox = $(grid.el).find('input:checkbox').first(); - if (grid_checkbox.length) { - setTimeout(function() { - grid_checkbox.trigger('focus'); - }, 250); - } - - }, - settings: { - debug_info: undefined, - restart_debug: undefined, - trans_id: undefined, - }, - setup: function() { - return { - buttons: [{ - text: gettext('Clear All'), - className: 'btn btn-secondary pull-left fa fa-eraser pg-alertify-button', - },{ - text: gettext('Cancel'), - key: 27, - className: 'btn btn-secondary fa fa-times pg-alertify-button', - },{ - text: gettext('Debug'), - key: 13, - className: 'btn btn-primary fa fa-bug pg-alertify-button', - }], - // Set options for dialog - options: { - //disable both padding and overflow control. - padding: !1, - overflow: !1, - model: 0, - resizable: true, - maximizable: true, - pinnable: false, - closableByDimmer: false, - modal: false, - }, - }; - }, - // Callback functions when click on the buttons of the Alertify dialogs - callback: function(e) { - if (e.button.text === gettext('Debug')) { - - // Initialize the target once the debug button is clicked and - // create asynchronous connection and unique transaction ID - var self = this; - - // If the debugging is started again then treeInfo is already - // stored in this.data so we can use the same. - if (self.setting('restart_debug') == 0) { - var t = pgBrowser.tree, - i = t.selected(), - d = i ? t.itemData(i) : undefined; - - if (!d) - return; - - var treeInfo = t.getTreeNodeHierarchy(i); - } - - var args_value_list = []; - var sqlite_func_args_list = this.sqlite_func_args_list = []; - var int_count = 0; - - this.grid.collection.each(function(m) { - - // Check if value is set to NULL then we should ignore the value field - if (m.get('is_null')) { - args_value_list.push({ - 'name': m.get('name'), - 'type': m.get('type'), - 'value': 'NULL', - }); - } else { - // Check if default value to be used or not - if (m.get('use_default')) { - args_value_list.push({ - 'name': m.get('name'), - 'type': m.get('type'), - 'value': m.get('default_value'), - }); - } else { - args_value_list.push({ - 'name': m.get('name'), - 'type': m.get('type'), - 'value': m.get('value'), - }); - } - } - - if (self.setting('restart_debug') == 0) { - var f_id; - if (d._type == 'function') { - f_id = treeInfo.function._id; - } else if (d._type == 'procedure') { - f_id = treeInfo.procedure._id; - } else if (d._type == 'edbfunc') { - f_id = treeInfo.edbfunc._id; - } else if (d._type == 'edbproc') { - f_id = treeInfo.edbproc._id; - } - - // Below will format the data to be stored in sqlite database - sqlite_func_args_list.push({ - 'server_id': treeInfo.server._id, - 'database_id': treeInfo.database._id, - 'schema_id': treeInfo.schema._id, - 'function_id': f_id, - 'arg_id': self.input_arg_id[int_count], - 'is_null': m.get('is_null') ? 1 : 0, - 'is_expression': m.get('expr') ? 1 : 0, - 'use_default': m.get('use_default') ? 1 : 0, - 'value': m.get('value'), - }); - } else { - // Below will format the data to be stored in sqlite database - sqlite_func_args_list.push({ - 'server_id': self.setting('debug_info').server_id, - 'database_id': self.setting('debug_info').database_id, - 'schema_id': self.setting('debug_info').schema_id, - 'function_id': self.setting('debug_info').function_id, - 'arg_id': self.input_arg_id[int_count], - 'is_null': m.get('is_null') ? 1 : 0, - 'is_expression': m.get('expr') ? 1 : 0, - 'use_default': m.get('use_default') ? 1 : 0, - 'value': m.get('value'), - }); - } - - int_count = int_count + 1; - }); - - var baseUrl; - - // If debugging is not started again then we should initialize the target otherwise not - if (self.setting('restart_debug') == 0) { - if (d && d._type == 'function') { - baseUrl = url_for('debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': self.setting('trans_id'), - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.function._id, - }); - } else if (d && d._type == 'procedure') { - baseUrl = url_for('debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': self.setting('trans_id'), - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.procedure._id, - }); - } else if (d && d._type == 'edbfunc') { - baseUrl = url_for('debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': self.setting('trans_id'), - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbfunc._id, - }); - } else if (d && d._type == 'edbproc') { - baseUrl = url_for('debugger.initialize_target_for_function', { - 'debug_type': 'direct', - 'trans_id': self.setting('trans_id'), - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbproc._id, - }); - } - - $.ajax({ - url: baseUrl, - method: 'POST', - data: { - 'data': JSON.stringify(args_value_list), - }, - }) - .done(function(res_post) { - - var url = url_for( - 'debugger.direct', { - 'trans_id': res_post.data.debuggerTransId, - } - ); - - var browserPreferences = pgWindow.default.pgAdmin.Browser.get_preferences_for_module('browser'); - var open_new_tab = browserPreferences.new_browser_tab_open; - if (open_new_tab && open_new_tab.includes('debugger')) { - window.open(url, '_blank'); - // Send the signal to runtime, so that proper zoom level will be set. - setTimeout(function() { - pgBrowser.send_signal_to_runtime('Runtime new window opened'); - }, 500); - } else { - pgBrowser.Events.once( - 'pgadmin-browser:frame:urlloaded:frm_debugger', - function(frame) { - frame.openURL(url); - }); - - // Create the debugger panel as per the data received from user input dialog. - var dashboardPanel = pgBrowser.docker.findPanels('properties'), - panel = pgBrowser.docker.addPanel( - 'frm_debugger', wcDocker.DOCK.STACKED, dashboardPanel[0] - ); - var browser_pref = pgBrowser.get_preferences_for_module('browser'); - var label = debuggerUtils.getAppropriateLabel(treeInfo); - debuggerUtils.setDebuggerTitle(panel, browser_pref, label, treeInfo.schema.label, treeInfo.database.label, null, pgBrowser); - panel.focus(); - - // Panel Closed event - panel.on(wcDocker.EVENT.CLOSED, function() { - var closeUrl = url_for('debugger.close', { - 'trans_id': res_post.data.debuggerTransId, - }); - $.ajax({ - url: closeUrl, - method: 'DELETE', - }); - }); - commonUtils.registerDetachEvent(panel); - // Panel Rename event - panel.on(wcDocker.EVENT.RENAME, function(panel_data) { - Alertify.prompt('', panel_data.$titleText[0].textContent, - // We will execute this function when user clicks on the OK button - function(evt, value) { - if(value) { - // Remove the leading and trailing white spaces. - value = value.trim(); - var name = debuggerUtils.getAppropriateLabel(treeInfo); - debuggerUtils.setDebuggerTitle(panel, self.preferences, name, treeInfo.schema.label, treeInfo.database.label, value, pgBrowser); - } - }, - // We will execute this function when user clicks on the Cancel - // button. Do nothing just close it. - function(evt) { evt.cancel = false; } - ).set({'title': gettext('Rename Panel')}); - }); - } - var _url; - - if (d._type == 'function') { - _url = url_for('debugger.set_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.function._id, - }); - } else if (d._type == 'procedure') { - _url = url_for('debugger.set_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.procedure._id, - }); - } else if (d._type == 'edbfunc') { - // Get the existing function parameters available from sqlite database - _url = url_for('debugger.set_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbfunc._id, - }); - } else if (d._type == 'edbproc') { - // Get the existing function parameters available from sqlite database - _url = url_for('debugger.set_arguments', { - 'sid': treeInfo.server._id, - 'did': treeInfo.database._id, - 'scid': treeInfo.schema._id, - 'func_id': treeInfo.edbproc._id, - }); - } - - $.ajax({ - url: _url, - method: 'POST', - data: { - 'data': JSON.stringify(sqlite_func_args_list), - }, - }) - .done(function() {/*This is intentional (SonarQube)*/}) - .fail(raiseError); - }) - .fail(function(er) { - Notify.alert( - gettext('Debugger Target Initialization Error'), - er.responseJSON.errormsg - ); - }); - } else { - // If the debugging is started again then we should only set the - // arguments and start the listener again - baseUrl = url_for('debugger.start_listener', { - 'trans_id': self.setting('debug_info').trans_id, - }); - - $.ajax({ - url: baseUrl, - method: 'POST', - data: { - 'data': JSON.stringify(args_value_list), - }, - }) - .done(function() {/*This is intentional (SonarQube)*/}) - .fail(function(er) { - Notify.alert( - gettext('Debugger Listener Startup Error'), - er.responseJSON.errormsg - ); - }); - - // Set the new input arguments given by the user during debugging - var _Url = url_for('debugger.set_arguments', { - 'sid': self.setting('debug_info').server_id, - 'did': self.setting('debug_info').database_id, - 'scid': self.setting('debug_info').schema_id, - 'func_id': self.setting('debug_info').function_id, - }); - $.ajax({ - url: _Url, - method: 'POST', - data: { - 'data': JSON.stringify(sqlite_func_args_list), - }, - }) - .done(function() {/*This is intentional (SonarQube)*/}) - .fail(raiseError); - } - - return true; - } - - if (e.button.text === gettext('Cancel')) { - /* Clear the trans id */ - $.ajax({ - method: 'DELETE', - url: url_for('debugger.close', {'trans_id': this.setting('trans_id')}), - }); - - return false; - } - - if (e.button.text === gettext('Clear All')) { - let _self = this; - let base_url = null; - - if (_self.setting('restart_debug') == 0) { - let selected_item = pgBrowser.tree.selected(); - let item_data = pgBrowser.tree.itemData(selected_item); - if (!item_data) - return; - - let tree_info = pgBrowser.tree.getTreeNodeHierarchy(selected_item); - - base_url = url_for('debugger.clear_arguments', { - 'sid': tree_info.server._id, - 'did': tree_info.database._id, - 'scid': tree_info.schema._id, - 'func_id': item_data._id, - }); - } else { - base_url = url_for('debugger.clear_arguments', { - 'sid': _self.setting('debug_info').server_id, - 'did': _self.setting('debug_info').database_id, - 'scid': _self.setting('debug_info').schema_id, - 'func_id': _self.setting('debug_info').function_id, - }); - } - $.ajax({ - url: base_url, - method: 'POST', - data: { - 'data': JSON.stringify(args_value_list), - }, - }).done(function() { - /* Disable debug button */ - _self.__internal.buttons[2].element.disabled = true; - _self.main(_self.setting('title'), _self.setting('debug_info'), - _self.setting('restart_debug'), _self.setting('is_edb_proc'), - _self.setting('trans_id') - ); - _self.prepare(); - }).fail(function(er) { - Notify.alert( - gettext('Clear failed'), - er.responseJSON.errormsg - ); - }); - - e.cancel = true; - return true; - } - }, - build: function() { - Alertify.pgDialogBuild.apply(this); - }, - prepare: function() { - // Add our class to alertify - $(this.elements.body.childNodes[0]).addClass( - 'alertify_tools_dialog_properties obj_properties' - ); - - /* - If we already have data available in sqlite database then we should - enable the debug button otherwise disable the debug button. - */ - if (this.func_args_data.length == 0) { - this.__internal.buttons[2].element.disabled = true; - } else { - this.__internal.buttons[2].element.disabled = false; - } - - /* - Listen to the grid change event so that if any value changed by user then we can enable/disable the - debug button. - */ - this.grid.listenTo(this.debuggerInputArgsColl, 'backgrid:edited', - (function(obj) { - - return function() { - - var enable_btn = false; - - for (var i = 0; i < this.collection.length; i++) { - - if (this.collection.models[i].get('is_null')) { - obj.__internal.buttons[2].element.disabled = false; - enable_btn = true; - continue; - } - // TODO: Need to check the "Expression" column value to - // enable/disable the "Debug" button - if (this.collection.models[i].get('value') == null || - this.collection.models[i].get('value') == undefined) { - enable_btn = true; - - if (this.collection.models[i].get('use_default')) { - obj.__internal.buttons[2].element.disabled = false; - } else { - obj.__internal.buttons[2].element.disabled = true; - break; - } - } - } - if (!enable_btn) - obj.__internal.buttons[2].element.disabled = false; - }; - })(this) - ); - - this.grid.listenTo(this.debuggerInputArgsColl, 'backgrid:error', - (function(obj) { - return function() { - obj.__internal.buttons[2].element.disabled = true; - }; - })(this) - ); - }, - }; - }); - } - - Alertify.debuggerInputArgsDialog( - gettext('Debugger'), debugInfo, restartDebug, isEdbProc, transId - ).resizeTo(pgBrowser.stdW.md,pgBrowser.stdH.md); - - }; -}); + show(debugInfo, restartDebug, isEdbProc, transId) { + // Render Debugger argument component + Notify.showModal(gettext('Debugger'), (closeModal) => { + return ; + }, { isFullScreen: false, isResizeable: true, showFullScreen: true, isFullWidth: true, dialogWidth: pgAdmin.Browser.stdW.md, dialogHeight: pgAdmin.Browser.stdH.md }); + } +} diff --git a/web/pgadmin/tools/debugger/static/js/debugger_utils.js b/web/pgadmin/tools/debugger/static/js/debugger_utils.js index fbc2f4b7c..dc10091dc 100644 --- a/web/pgadmin/tools/debugger/static/js/debugger_utils.js +++ b/web/pgadmin/tools/debugger/static/js/debugger_utils.js @@ -6,20 +6,10 @@ // This software is released under the PostgreSQL Licence // ////////////////////////////////////////////////////////////////////////// + import {generateTitle} from '../../../sqleditor/static/js/sqleditor_title'; import {_set_dynamic_tab} from '../../../sqleditor/static/js/show_query_tool'; -function setFocusToDebuggerEditor(editor, command) { - const TAB = 9; - if (!command) - return; - let key = command.which || command.keyCode; - // Keys other than Tab key - if (key !== TAB) { - editor.focus(); - } -} - function getFunctionId(treeInfoObject) { let objectId; if(treeInfoObject) { @@ -99,7 +89,6 @@ function getAppropriateLabel(treeInfo) { } module.exports = { - setFocusToDebuggerEditor: setFocusToDebuggerEditor, getFunctionId: getFunctionId, getProcedureId: getProcedureId, setDebuggerTitle: setDebuggerTitle, diff --git a/web/pgadmin/tools/debugger/static/js/direct.js b/web/pgadmin/tools/debugger/static/js/direct.js deleted file mode 100644 index 00ad8dc6b..000000000 --- a/web/pgadmin/tools/debugger/static/js/direct.js +++ /dev/null @@ -1,1956 +0,0 @@ -///////////////////////////////////////////////////////////// -// -// pgAdmin 4 - PostgreSQL Tools -// -// Copyright (C) 2013 - 2022, The pgAdmin Development Team -// This software is released under the PostgreSQL Licence -// -////////////////////////////////////////////////////////////// - -import Notify from '../../../../static/js/helpers/Notifier'; - -define([ - 'sources/gettext', 'sources/url_for', 'jquery', 'underscore', - 'pgadmin.alertifyjs', 'sources/pgadmin', 'pgadmin.browser', 'backbone', - 'pgadmin.backgrid', 'pgadmin.backform', 'sources/../bundle/codemirror', - 'pgadmin.tools.debugger.ui', 'sources/keyboard_shortcuts', - 'pgadmin.tools.debugger.utils', 'sources/window', 'wcdocker', -], function( - gettext, url_for, $, _, Alertify, pgAdmin, pgBrowser, Backbone, Backgrid, - Backform, codemirror, debug_function_again, keyboardShortcuts, debuggerUtils, - pgWindow -) { - - var CodeMirror = codemirror.default, - wcDocker = window.wcDocker; - - if (pgAdmin.Browser.tree != null) { - pgAdmin = pgAdmin || window.pgAdmin || {}; - } - - var pgTools = pgAdmin.Tools = pgAdmin.Tools || {}; - - if (pgTools.DirectDebug) - return pgTools.DirectDebug; - - var controller = new(function() {/*This is intentional (SonarQube)*/}); - - _.extend( - controller, Backbone.Events, { - enable: function(btn, enable) { - // trigger the event and change the button view to enable/disable the buttons for debugging - this.trigger('pgDebugger:button:state:' + btn, enable); - }, - - enable_toolbar_buttons: function() { - var self = this; - self.enable('stop', true); - self.enable('step_over', true); - self.enable('step_into', true); - self.enable('toggle_breakpoint', true); - self.enable('clear_all_breakpoints', true); - self.enable('continue', true); - }, - - disable_toolbar_buttons: function() { - var self = this; - self.enable('stop', false); - self.enable('step_over', false); - self.enable('step_into', false); - self.enable('toggle_breakpoint', false); - self.enable('clear_all_breakpoints', false); - self.enable('continue', false); - }, - - /* - Function to set the breakpoint and send the line no. which is set to server - trans_id :- Unique Transaction ID, line_no - line no. to set the breakpoint, - set_type = 0 - clear , 1 - set - */ - set_breakpoint: function(trans_id, line_no, set_type) { - // Make ajax call to set/clear the break point by user - var baseUrl = url_for('debugger.set_breakpoint', { - 'trans_id': trans_id, - 'line_no': line_no, - 'set_type': set_type, - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - // Breakpoint has been set by the user - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while setting debugging breakpoint.') - ); - }); - }, - - // Function to get the latest breakpoint information and update the - // gutters of codemirror - UpdateBreakpoint: function(trans_id) { - var self = this; - - var br_list = self.GetBreakpointInformation(trans_id); - - // If there is no break point to clear then we should return from here. - if ((br_list.length == 1) && (br_list[0].linenumber == -1)) - return; - - var breakpoint_list = new Array(); - - for (let val of br_list) { - if (val.linenumber != -1) { - breakpoint_list.push(val.linenumber); - } - } - - for (let brk_val of breakpoint_list) { - var info = pgTools.DirectDebug.editor.lineInfo((brk_val - 1)); - - if (info.gutterMarkers != undefined) { - pgTools.DirectDebug.editor.setGutterMarker((brk_val - 1), 'breakpoints', null); - } else { - pgTools.DirectDebug.editor.setGutterMarker((brk_val - 1), 'breakpoints', function() { - var marker = document.createElement('div'); - marker.style.color = '#822'; - marker.innerHTML = '●'; - return marker; - }()); - } - } - }, - - // Function to get the breakpoint information from the server - GetBreakpointInformation: function(trans_id) { - var result = ''; - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'get_breakpoints', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - async: false, - }) - .done(function(res) { - if (res.data.status === 'Success') { - result = res.data.result; - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching breakpoint information.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching breakpoint information.') - ); - }); - - return result; - }, - - setActiveLine: function(lineNo) { - var self = this; - let editor = pgTools.DirectDebug.editor; - - /* If lineNo sent, remove active line */ - if(lineNo && self.active_line_no) { - editor.removeLineClass( - self.active_line_no, 'wrap', 'CodeMirror-activeline-background' - ); - } - - /* If lineNo not sent, set it to active line */ - if(!lineNo && self.active_line_no) { - lineNo = self.active_line_no; - } - - /* Set new active line only if positive */ - if(lineNo > 0) { - self.active_line_no = lineNo; - editor.addLineClass( - self.active_line_no, 'wrap', 'CodeMirror-activeline-background' - ); - - /* centerOnLine is codemirror extension in bundle/codemirror.js */ - editor.centerOnLine(self.active_line_no); - } - }, - - // Function to start the executer and execute the user requested option for debugging - start_execution: function(trans_id, port_num) { - var self = this; - // Make ajax call to listen the database message - var baseUrl = url_for( - 'debugger.start_execution', { - 'trans_id': trans_id, - 'port_num': port_num, - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - // If status is Success then find the port number to attach the executer. - self.execute_query(trans_id); - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while starting debugging session.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while starting debugging session.') - ); - }); - }, - - // Execute the query and get the first functions debug information from the server - execute_query: function(trans_id) { - var self = this; - // Make ajax call to listen the database message - var baseUrl = url_for( - 'debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'wait_for_breakpoint', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - // set the return code to the code editor text area - if ( - res.data.result[0].src != null && - res.data.result[0].linenumber != null - ) { - pgTools.DirectDebug.editor.setValue(res.data.result[0].src); - - self.setActiveLine(res.data.result[0].linenumber - 2); - } - // Call function to create and update local variables .... - self.GetStackInformation(trans_id); - if (pgTools.DirectDebug.debug_type) { - self.poll_end_execution_result(trans_id); - } - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing requested debugging information.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing requested debugging information.') - ); - }); - }, - - // Get the local variable information of the functions and update the grid - GetLocalVariables: function(trans_id) { - var self = this; - - // Make ajax call to listen the database message - var baseUrl = url_for( - 'debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'get_variables', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - // Call function to create and update local variables - self.AddLocalVariables(res.data.result); - self.AddParameters(res.data.result); - // If debug function is restarted then again start listener to - // read the updated messages. - if (pgTools.DirectDebug.debug_restarted) { - if (pgTools.DirectDebug.debug_type) { - self.poll_end_execution_result(trans_id); - } - pgTools.DirectDebug.debug_restarted = false; - } - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching variable information.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching variable information.') - ); - }); - }, - - raisePollingError: function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while polling result.') - ); - }, - - // Get the stack information of the functions and update the grid - GetStackInformation: function(trans_id) { - var self = this; - - // Make ajax call to listen the database message - var baseUrl = url_for( - 'debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'get_stack_info', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - // Call function to create and update stack information - self.AddStackInformation(res.data.result); - self.GetLocalVariables(pgTools.DirectDebug.trans_id); - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching stack information.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching stack information.') - ); - }); - }, - - /* - poll the actual result after user has executed the "continue", "step-into", - "step-over" actions and get the other updated information from the server. - */ - poll_result: function(trans_id) { - var self = this; - - // Do we need to poll? - if (!pgTools.DirectDebug.is_polling_required) { - return; - } - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.poll_result', { - 'trans_id': trans_id, - }), - poll_timeout; - - /* - During the execution we should poll the result in minimum seconds but - once the execution is completed and wait for the another debugging - session then we should decrease the polling frequency. - */ - if (pgTools.DirectDebug.polling_timeout_idle) { - // Poll the result after 1 second - poll_timeout = 1000; - } else { - // Poll the result after 200 ms - poll_timeout = 200; - } - - setTimeout( - function() { - $.ajax({ - url: baseUrl, - method: 'GET', - beforeSend: function(xhr) { - xhr.setRequestHeader( - pgAdmin.csrf_token_header, pgAdmin.csrf_token - ); - // set cursor to progress before every poll. - $('.debugger-container').addClass('show_progress'); - }, - }) - .done(function(res) { - // remove progress cursor - $('.debugger-container').removeClass('show_progress'); - - if (res.data.status === 'Success') { - // If no result then poll again to wait for results. - if (res.data.result == null || res.data.result.length == 0) { - self.poll_result(trans_id); - } else { - if (!pgTools.DirectDebug.debug_type && !pgTools.DirectDebug.first_time_indirect_debug) { - pgTools.DirectDebug.docker.finishLoading(50); - self.setActiveLine(-1); - self.clear_all_breakpoint(trans_id); - self.execute_query(trans_id); - pgTools.DirectDebug.first_time_indirect_debug = true; - pgTools.DirectDebug.polling_timeout_idle = false; - } else { - pgTools.DirectDebug.polling_timeout_idle = false; - pgTools.DirectDebug.docker.finishLoading(50); - // If the source is really changed then only update the breakpoint information - if (res.data.result[0].src != pgTools.DirectDebug.editor.getValue()) { - pgTools.DirectDebug.editor.setValue(res.data.result[0].src); - self.UpdateBreakpoint(trans_id); - } - - self.setActiveLine(res.data.result[0].linenumber - 2); - // Update the stack, local variables and parameters information - self.GetStackInformation(trans_id); - } - - // Enable all the buttons as we got the results - // TODO: Fix this properly so a timeout isn't required. - setTimeout(function() { - self.enable_toolbar_buttons(); - }, 500); - } - } else if (res.data.status === 'Busy') { - pgTools.DirectDebug.polling_timeout_idle = true; - // If status is Busy then poll the result by recursive call to the poll function - if (!pgTools.DirectDebug.debug_type) { - pgTools.DirectDebug.docker.startLoading( - gettext('Waiting for another session to invoke the target...') - ); - - // As we are waiting for another session to invoke the target,disable all the buttons - self.disable_toolbar_buttons(); - pgTools.DirectDebug.first_time_indirect_debug = false; - self.poll_result(trans_id); - } else { - self.poll_result(trans_id); - } - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while polling result.') - ); - } - }) - .fail(self.raisePollingError); - }, poll_timeout); - - }, - - // This function will update messages tab - update_messages: function(msg) { - // To prevent xss - msg = _.escape(msg); - - var old_msgs = '', - new_msgs = ''; - old_msgs = pgTools.DirectDebug.messages_panel.$container.find('.messages').html(); - if (old_msgs) { - new_msgs = (old_msgs + '\n' + msg) - .replace(/(?:\r\n|\r|\n)/g, '
    ') // Newlines with
    - .replace(/()+/g, '
    '); // multiple
    with single
    - } else { - new_msgs = msg; - } - pgTools.DirectDebug.messages_panel.$container.find('.messages').html(new_msgs); - }, - - /* - For the direct debugging, we need to check weather the functions execution - is completed or not. After completion of the debugging, we will stop polling - the result until new execution starts. - */ - poll_end_execution_result: function(trans_id) { - var self = this; - - // Do we need to poll? - if (!pgTools.DirectDebug.is_polling_required) { - return; - } - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.poll_end_execution_result', { - 'trans_id': trans_id, - }), - poll_end_timeout; - - /* - * During the execution we should poll the result in minimum seconds - * but once the execution is completed and wait for the another - * debugging session then we should decrease the polling frequency. - */ - if (pgTools.DirectDebug.polling_timeout_idle) { - // Poll the result to check that execution is completed or not - // after 1200 ms - poll_end_timeout = 1200; - } else { - // Poll the result to check that execution is completed or not - // after 350 ms - poll_end_timeout = 250; - } - - setTimeout( - function() { - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - if (res.data.result == undefined) { - /* - "result" is undefined only in case of EDB procedure. - As Once the EDB procedure execution is completed then we are - not getting any result so we need ignore the result. - */ - self.setActiveLine(-1); - pgTools.DirectDebug.direct_execution_completed = true; - pgTools.DirectDebug.polling_timeout_idle = true; - - //Set the alertify message to inform the user that execution is completed. - Notify.success(res.info, 3000); - - // Update the message tab of the debugger - if (res.data.status_message) { - self.update_messages(res.data.status_message); - } - - // remove progress cursor - $('.debugger-container').removeClass('show_progress'); - - // Execution completed so disable the buttons other than - // "Continue/Start" button because user can still - // start the same execution again. - setTimeout(self.disable_toolbar_buttons(), 500); - - // Stop further polling - pgTools.DirectDebug.is_polling_required = false; - } else { - // Call function to create and update local variables .... - if (res.data.result != null) { - self.setActiveLine(-1); - self.AddResults(res.data.col_info, res.data.result); - pgTools.DirectDebug.results_panel.focus(); - pgTools.DirectDebug.direct_execution_completed = true; - pgTools.DirectDebug.polling_timeout_idle = true; - - //Set the alertify message to inform the user that execution is completed. - Notify.success(res.info, 3000); - - // Update the message tab of the debugger - if (res.data.status_message) { - self.update_messages(res.data.status_message); - } - - // remove progress cursor - $('.debugger-container').removeClass('show_progress'); - - // Execution completed so disable the buttons other than - // "Continue/Start" button because user can still - // start the same execution again. - setTimeout(self.disable_toolbar_buttons(), 500); - - // Stop further pooling - pgTools.DirectDebug.is_polling_required = false; - } - } - } else if (res.data.status === 'Busy') { - // If status is Busy then poll the result by recursive call to - // the poll function - self.poll_end_execution_result(trans_id); - // Update the message tab of the debugger - if (res.data.status_message) { - self.update_messages(res.data.status_message); - } - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger poll end execution error'), - res.data.result - ); - } else if (res.data.status === 'ERROR') { - pgTools.DirectDebug.direct_execution_completed = true; - self.setActiveLine(-1); - - //Set the Alertify message to inform the user that execution is - // completed with error. - if (!pgTools.DirectDebug.is_user_aborted_debugging) { - Notify.error(res.info, 3000); - } - - // Update the message tab of the debugger - if (res.data.status_message) { - self.update_messages(res.data.status_message); - } - - pgTools.DirectDebug.messages_panel.focus(); - - // remove progress cursor - $('.debugger-container').removeClass('show_progress'); - - // Execution completed so disable the buttons other than - // "Continue/Start" button because user can still start the - // same execution again. - self.enable('stop', false); - self.enable('step_over', false); - self.enable('step_into', false); - self.enable('toggle_breakpoint', false); - self.enable('clear_all_breakpoints', false); - // If debugging is stopped by user then do not enable - // continue/restart button - if (!pgTools.DirectDebug.is_user_aborted_debugging) { - self.enable('continue', true); - pgTools.DirectDebug.is_user_aborted_debugging = false; - } - - // Stop further pooling - pgTools.DirectDebug.is_polling_required = false; - } - }) - .fail(self.raisePollingError); - }, poll_end_timeout); - - }, - - Restart: function(trans_id) { - - var self = this, - baseUrl = url_for('debugger.restart', {'trans_id': trans_id}); - - self.disable_toolbar_buttons(); - - // Clear msg tab - pgTools.DirectDebug - .messages_panel - .$container - .find('.messages') - .html(''); - - $.ajax({ - url: baseUrl, - }) - .done(function(res) { - // Restart the same function debugging with previous arguments - var restart_dbg = res.data.restart_debug ? 1 : 0; - - // Start pooling again - pgTools.DirectDebug.polling_timeout_idle = false; - pgTools.DirectDebug.is_polling_required = true; - self.poll_result(trans_id); - - if (restart_dbg) { - pgTools.DirectDebug.debug_restarted = true; - } - - /* - Need to check if restart debugging really require to open the input - dialog? If yes then we will get the previous arguments from database - and populate the input dialog, If no then we should directly start the - listener. - */ - if (res.data.result.require_input) { - debug_function_again(res.data.result, restart_dbg); - } else { - // Debugging of void function is started again so we need to start - // the listener again - var base_url = url_for('debugger.start_listener', { - 'trans_id': trans_id, - }); - - $.ajax({ - url: base_url, - method: 'GET', - }) - .done(function() { - if (pgTools.DirectDebug.debug_type) { - self.poll_end_execution_result(trans_id); - } - }) - .fail(self.raisePollingError); - } - }) - .fail(function(xhr) { - try { - var err = JSON.parse(xhr.responseText); - if (err.success == 0) { - Notify.alert(gettext('Debugger Error'), err.errormsg); - } - } catch (e) { - console.warn(e.stack || e); - } - }); - }, - - // Continue the execution until the next breakpoint - Continue: function(trans_id) { - var self = this; - self.disable_toolbar_buttons(); - - //Check first if previous execution was completed or not - if (pgTools.DirectDebug.direct_execution_completed && - pgTools.DirectDebug.direct_execution_completed == pgTools.DirectDebug.polling_timeout_idle) { - self.Restart(trans_id); - } else { - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'continue', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - self.poll_result(trans_id); - } else { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing continue in debugging session.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing continue in debugging session.') - ); - }); - } - }, - - Step_over: function(trans_id) { - var self = this; - self.disable_toolbar_buttons(); - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'step_over', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - self.poll_result(trans_id); - } else { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing step over in debugging session.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing step over in debugging session.') - ); - }); - }, - - Step_into: function(trans_id) { - var self = this; - self.disable_toolbar_buttons(); - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'step_into', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - self.poll_result(trans_id); - } else { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing step into in debugging session.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing step into in debugging session.') - ); - }); - }, - - Stop: function(trans_id) { - var self = this; - self.disable_toolbar_buttons(); - - // Make ajax call to listen the database message - var baseUrl = url_for( - 'debugger.execute_query', { - 'trans_id': trans_id, - 'query_type': 'abort_target', - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - // Call function to create and update local variables .... - self.setActiveLine(-1); - pgTools.DirectDebug.direct_execution_completed = true; - pgTools.DirectDebug.is_user_aborted_debugging = true; - - // Stop further pooling - pgTools.DirectDebug.is_polling_required = false; - - // Restarting debugging in the same transaction do not work - // We will give same behaviour as pgAdmin3 and disable all buttons - self.enable('continue', false); - - // Set the Alertify message to inform the user that execution - // is completed. - Notify.success(res.info, 3000); - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing stop in debugging session.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while executing stop in debugging session.') - ); - }); - }, - - toggle_breakpoint: function(trans_id) { - var self = this; - self.disable_toolbar_buttons(); - - - var info = pgTools.DirectDebug.editor.lineInfo(self.active_line_no); - var baseUrl = ''; - - // If gutterMarker is undefined that means there is no marker defined previously - // So we need to set the breakpoint command here... - if (info.gutterMarkers == undefined) { - baseUrl = url_for('debugger.set_breakpoint', { - 'trans_id': trans_id, - 'line_no': self.active_line_no + 1, - 'set_type': '1', - }); - } else { - baseUrl = url_for('debugger.set_breakpoint', { - 'trans_id': trans_id, - 'line_no': self.active_line_no + 1, - 'set_type': '0', - }); - } - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - // Call function to create and update local variables .... - var info_local = pgTools.DirectDebug.editor.lineInfo(self.active_line_no); - - if (info_local.gutterMarkers != undefined) { - pgTools.DirectDebug.editor.setGutterMarker(self.active_line_no, 'breakpoints', null); - } else { - pgTools.DirectDebug.editor.setGutterMarker(self.active_line_no, 'breakpoints', function() { - var marker = document.createElement('div'); - marker.style.color = '#822'; - marker.innerHTML = '●'; - return marker; - }()); - } - - self.enable_toolbar_buttons(); - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while toggling breakpoint.') - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while toggling breakpoint.') - ); - }); - }, - - clear_all_breakpoint: function(trans_id) { - var self = this, - br_list = self.GetBreakpointInformation(trans_id); - - // If there is no break point to clear then we should return from here. - if ((br_list.length == 1) && (br_list[0].linenumber == -1)) - return; - - self.disable_toolbar_buttons(); - - var breakpoint_list = new Array(); - - for (let val of br_list) { - if (val.linenumber != -1) { - breakpoint_list.push(val.linenumber); - } - } - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.clear_all_breakpoint', { - 'trans_id': trans_id, - }); - - $.ajax({ - url: baseUrl, - method: 'POST', - data: { - 'breakpoint_list': breakpoint_list.join(), - }, - }) - .done(function(res) { - if (res.data.status) { - for (let brk_val of breakpoint_list) { - var info = pgTools.DirectDebug.editor.lineInfo((brk_val - 1)); - - if (info) { - if (info.gutterMarkers != undefined) { - pgTools.DirectDebug.editor.setGutterMarker((brk_val - 1), 'breakpoints', null); - } - } - } - } - self.enable_toolbar_buttons(); - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while clearing all breakpoint.') - ); - }); - }, - - AddStackInformation: function(result) { - var self = this; - - // Remove the existing created grid and update the stack values - if (self.stack_grid) { - self.stack_grid.remove(); - self.stack_grid = null; - } - - var DebuggerStackModel = Backbone.Model.extend({ - defaults: { - frame_id: 0, - name: undefined, - value: undefined, - line_no: undefined, - }, - }); - - // Collection which contains the model for function informations. - var StackCollection = Backbone.Collection.extend({ - model: DebuggerStackModel, - }); - - var stackGridCols = [{ - name: 'name', - label: gettext('Name'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'value', - label: gettext('Value'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'line_no', - label: gettext('Line No.'), - type: 'text', - editable: false, - cell: 'string', - }, - ]; - - var my_obj = []; - for (var i = 0; i < result.length; i++) { - my_obj.push({ - 'frame_id': i, - 'name': result[i].targetname, - 'value': result[i].args, - 'line_no': result[i].linenumber, - }); - } - - var stackColl = this.stackColl = new StackCollection(my_obj); - this.stackColl.on('backgrid:row:selected', self.select_frame, self); - - // Initialize a new Grid instance - var stack_grid = this.stack_grid = new Backgrid.Grid({ - emptyText: gettext('No data found'), - columns: stackGridCols, - row: Backgrid.Row.extend({ - events: { - click: 'rowClick', - }, - rowClick: function() { - //Find which row is selected and depending on that send the frame id - self.frame_id = this.model.get('frame_id'); - this.model.trigger('backgrid:row:selected', this); - self.stack_grid.$el.find('td').css( - 'background-color', this.disabledColor - ); - this.$el.find('td').css('background-color', this.highlightColor); - }, - }), - collection: stackColl, - className: 'backgrid table table-bordered table-noouter-border table-bottom-border', - }); - - stack_grid.render(); - - // Render the stack grid into stack panel - pgTools.DirectDebug.stack_pane_panel - .$container - .find('.stack_pane') - .append(stack_grid.el); - - }, - - AddResults: function(columns, result) { - var self = this; - - // Remove the existing created grid and update the result values - if (self.result_grid) { - self.result_grid.remove(); - self.result_grid = null; - } - - var DebuggerResultsModel = Backbone.Model.extend({ - defaults: { - name: undefined, - }, - }); - - // Collection which contains the model for function informations. - var ResultsCollection = Backbone.Collection.extend({ - model: DebuggerResultsModel, - }); - - var resultGridCols = []; - if (_.size(columns)) { - _.each(columns, function(c) { - var column = { - type: 'text', - editable: false, - cell: 'string', - }; - column['name'] = column['label'] = c.name; - resultGridCols.push(column); - }); - } - - // Initialize a new Grid instance - var result_grid = this.result_grid = new Backgrid.Grid({ - emptyText: gettext('No data found'), - columns: resultGridCols, - collection: new ResultsCollection(result), - className: 'backgrid table table-bordered table-noouter-border table-bottom-border', - }); - - result_grid.render(); - - // Render the result grid into result panel - pgTools.DirectDebug.results_panel - .$container - .find('.debug_results') - .append(result_grid.el); - }, - - AddLocalVariables: function(result) { - var self = this; - - // Remove the existing created grid and update the variables values - if (self.variable_grid) { - self.variable_grid.remove(); - self.variable_grid = null; - } - - var DebuggerVariablesModel = Backbone.Model.extend({ - defaults: { - name: undefined, - type: undefined, - value: undefined, - }, - }); - - // Collection which contains the model for function information. - var VariablesCollection = Backbone.Collection.extend({ - model: DebuggerVariablesModel, - }); - - VariablesCollection.prototype.on( - 'change', self.deposit_parameter_value, self - ); - - var gridCols = [{ - name: 'name', - label: gettext('Name'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'type', - label: gettext('Type'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'value', - label: gettext('Value'), - type: 'text', - cell: 'string', - }, - ]; - - var my_obj = []; - if (result.length != 0) { - for (let res_val of result) { - if (res_val.varclass == 'L') { - my_obj.push({ - 'name': res_val.name, - 'type': res_val.dtype, - 'value': res_val.value, - }); - } - } - } - - // Initialize a new Grid instance - var variable_grid = this.variable_grid = new Backgrid.Grid({ - emptyText: gettext('No data found'), - columns: gridCols, - collection: new VariablesCollection(my_obj), - className: 'backgrid table table-bordered table-noouter-border table-bottom-border', - }); - - variable_grid.collection.on( - 'backgrid:edited', (ch1, ch2, command) => { - debuggerUtils.setFocusToDebuggerEditor( - pgTools.DirectDebug.editor, command - ); - } - ); - - variable_grid.render(); - - // Render the variables grid into local variables panel - pgTools.DirectDebug.local_variables_panel - .$container - .find('.local_variables') - .append(variable_grid.el); - }, - - AddParameters: function(result) { - var self = this; - - // Remove the existing created grid and update the parameter values - if (self.param_grid) { - self.param_grid.remove(); - self.param_grid = null; - } - - var DebuggerParametersModel = Backbone.Model.extend({ - defaults: { - name: undefined, - type: undefined, - value: undefined, - }, - }); - - // Collection which contains the model for function informations. - var ParametersCollection = self.ParametersCollection = Backbone.Collection.extend({ - model: DebuggerParametersModel, - }); - - ParametersCollection.prototype.on( - 'change', self.deposit_parameter_value, self - ); - - var paramGridCols = [{ - name: 'name', - label: gettext('Name'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'type', - label: gettext('Type'), - type: 'text', - editable: false, - cell: 'string', - }, - { - name: 'value', - label: gettext('Value'), - type: 'text', - cell: 'string', - }, - ]; - - var param_obj = []; - if (result.length != 0) { - for (let res_val of result) { - if (res_val.varclass == 'A') { - param_obj.push({ - 'name': res_val.name, - 'type': res_val.dtype, - 'value': res_val.value, - }); - } - } - } - - // Initialize a new Grid instance - var param_grid = this.param_grid = new Backgrid.Grid({ - emptyText: gettext('No data found'), - columns: paramGridCols, - collection: new ParametersCollection(param_obj), - className: 'backgrid table table-bordered table-noouter-border table-bottom-border', - }); - - param_grid.collection.on( - 'backgrid:edited', (ch1, ch2, command) => { - debuggerUtils.setFocusToDebuggerEditor( - pgTools.DirectDebug.editor, command - ); - } - ); - - param_grid.render(); - - // Render the parameters grid into parameter panel - pgTools.DirectDebug.parameters_panel - .$container - .find('.parameters') - .append(param_grid.el); - }, - deposit_parameter_value: function(model) { - var self = this; - - // variable name and value list that is changed by user - var name_value_list = []; - - name_value_list.push({ - 'name': model.get('name'), - 'type': model.get('type'), - 'value': model.get('value'), - }); - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.deposit_value', { - 'trans_id': pgTools.DirectDebug.trans_id, - }); - $.ajax({ - url: baseUrl, - method: 'POST', - data: { - 'data': JSON.stringify(name_value_list), - }, - }) - .done(function(res) { - if (res.data.status) { - // Get the updated variables value - self.GetLocalVariables(pgTools.DirectDebug.trans_id); - // Show the message to the user that deposit value is success or failure - if (res.data.result) { - Notify.success(res.data.info, 3000); - } else { - Notify.error(res.data.info, 3000); - } - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while depositing variable value.') - ); - }); - }, - - select_frame: function() { - var self = this; - - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.select_frame', { - 'trans_id': pgTools.DirectDebug.trans_id, - 'frame_id': self.frame_id, - }); - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - pgTools.DirectDebug.editor.setValue(res.data.result[0].src); - self.UpdateBreakpoint(pgTools.DirectDebug.trans_id); - self.setActiveLine(res.data.result[0].linenumber - 2); - // Call function to create and update local variables .... - self.GetLocalVariables(pgTools.DirectDebug.trans_id); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while selecting frame.') - ); - }); - }, - } - ); - - /* - Debugger tool var view to create the button toolbar and listen to the button click event and inform the - controller about the click and controller will take the action for the specified button click. - */ - var DebuggerToolbarView = Backbone.View.extend({ - el: '.debugger_main_container', - initialize: function() { - controller.on('pgDebugger:button:state:stop', this.enable_stop, this); - controller.on('pgDebugger:button:state:step_over', this.enable_step_over, this); - controller.on('pgDebugger:button:state:step_into', this.enable_step_into, this); - controller.on('pgDebugger:button:state:continue', this.enable_continue, this); - controller.on('pgDebugger:button:state:toggle_breakpoint', this.enable_toggle_breakpoint, this); - controller.on('pgDebugger:button:state:clear_all_breakpoints', this.enable_clear_all_breakpoints, this); - }, - events: { - 'click .btn-stop': 'on_stop', - 'click .btn-clear-breakpoint': 'on_clear_all_breakpoint', - 'click .btn-toggle-breakpoint': 'on_toggle_breakpoint', - 'click .btn-continue': 'on_continue', - 'click .btn-step-over': 'on_step_over', - 'click .btn-step-into': 'on_step_into', - 'keydown': 'keyAction', - }, - enable_stop: function(enable) { - var $btn = this.$el.find('.btn-stop'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - enable_step_over: function(enable) { - var $btn = this.$el.find('.btn-step-over'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - enable_step_into: function(enable) { - var $btn = this.$el.find('.btn-step-into'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - enable_continue: function(enable) { - var $btn = this.$el.find('.btn-continue'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - enable_toggle_breakpoint: function(enable) { - var $btn = this.$el.find('.btn-toggle-breakpoint'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - enable_clear_all_breakpoints: function(enable) { - var $btn = this.$el.find('.btn-clear-breakpoint'); - - if (enable) { - $btn.prop('disabled', false); - $btn.removeAttr('disabled'); - } else { - $btn.prop('disabled', true); - $btn.attr('disabled', 'disabled'); - } - }, - on_stop: function() { - controller.Stop(pgTools.DirectDebug.trans_id); - }, - on_clear_all_breakpoint: function() { - controller.clear_all_breakpoint(pgTools.DirectDebug.trans_id); - }, - on_toggle_breakpoint: function() { - controller.toggle_breakpoint(pgTools.DirectDebug.trans_id); - }, - on_continue: function() { - controller.Continue(pgTools.DirectDebug.trans_id); - }, - on_step_over: function() { - controller.Step_over(pgTools.DirectDebug.trans_id); - }, - on_step_into: function() { - controller.Step_into(pgTools.DirectDebug.trans_id); - }, - keyAction: function (event) { - let panel_type=''; - - panel_type = keyboardShortcuts.processEventDebugger( - this.$el, event, this.preferences, pgTools.DirectDebug.docker - ); - - - if(!_.isNull(panel_type) && !_.isUndefined(panel_type) && panel_type != '') { - setTimeout(function() { - pgBrowser.Events.trigger(`pgadmin:debugger:${panel_type}:focus`); - }, 100); - } - }, - }); - - - /* - Function is responsible to create the new wcDocker instance for debugger and - initialize the debugger panel inside the docker instance. - */ - var DirectDebug = function() {/*This is intentional (SonarQube)*/}; - - var raiseJSONError = function(xhr) { - try { - var err = JSON.parse(xhr.responseText); - if (err.success == 0) { - Notify.alert(gettext('Debugger Error'), err.errormsg); - } - } catch (e) { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while starting debugging listener.') - ); - } - }; - - _.extend(DirectDebug.prototype, { - /* We should get the transaction id from the server during initialization here */ - load: function(trans_id, debug_type, function_name_with_arguments, layout) { - // We do not want to initialize the module multiple times. - var self = this; - _.bindAll(pgTools.DirectDebug, 'messages'); - - if (this.initialized) - return; - - var baseUrl; - - this.initialized = true; - this.trans_id = trans_id; - this.debug_type = debug_type; - this.first_time_indirect_debug = false; - this.direct_execution_completed = false; - this.polling_timeout_idle = false; - this.debug_restarted = false; - this.is_user_aborted_debugging = false; - this.is_polling_required = true; // Flag to stop unwanted ajax calls - this.function_name_with_arguments = function_name_with_arguments; - this.layout = layout; - - let browser = pgWindow.default.pgAdmin.Browser; - this.preferences = browser.get_preferences_for_module('debugger'); - - this.docker = new wcDocker( - '#container', { - allowContextMenu: false, - allowCollapse: false, - loadingClass: 'pg-sp-icon', - themePath: url_for('static', { - 'filename': 'css', - }), - theme: 'webcabin.overrides.css', - }); - this.panels = []; - - // Below code will be executed for indirect debugging - // indirect debugging - 0 and for direct debugging - 1 - if (trans_id != undefined && !debug_type) { - // Make ajax call to execute the and start the target for execution - baseUrl = url_for('debugger.start_listener', { - 'trans_id': trans_id, - }); - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - self.intializePanels(); - controller.enable_toolbar_buttons(); - controller.poll_result(trans_id); - } - }) - .fail(raiseJSONError); - } else if (trans_id != undefined) { - // Make ajax call to execute the and start the target for execution - baseUrl = url_for('debugger.start_listener', { - 'trans_id': trans_id, - }); - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status) { - self.messages(trans_id); - } - }) - .fail(raiseJSONError); - } else { - this.intializePanels(); - } - }, - - // Read the messages of the database server and get the port ID and attach - // the executer to that port. - messages: function(trans_id) { - var self = this; - // Make ajax call to listen the database message - var baseUrl = url_for('debugger.messages', { - 'trans_id': trans_id, - }); - - $.ajax({ - url: baseUrl, - method: 'GET', - }) - .done(function(res) { - if (res.data.status === 'Success') { - self.intializePanels(); - controller.enable_toolbar_buttons(); - // If status is Success then find the port number to attach the executer. - controller.start_execution(trans_id, res.data.result); - } else if (res.data.status === 'Busy') { - // If status is Busy then poll the result by recursive call to the poll function - self.messages(trans_id); - } else if (res.data.status === 'NotConnected') { - Notify.alert( - gettext('Not connected to server or connection with the server has been closed.'), - res.data.result - ); - } - }) - .fail(function() { - Notify.alert( - gettext('Debugger Error'), - gettext('Error while fetching messages information.') - ); - }); - - }, - - // Callback function when user click on gutters of codemirror to set/clear the breakpoint - onBreakPoint: function(cm, m, gutter) { - var self = this; - - // If breakpoint gutter is clicked and execution is not completed then only set the breakpoint - if (gutter == 'breakpoints' && !pgTools.DirectDebug.polling_timeout_idle) { - // We may want to check, if break-point is allowed at this moment or not - var info = cm.lineInfo(m); - - // If gutterMarker is undefined that means there is no marker defined previously - // So we need to set the breakpoint command here... - if (info.gutterMarkers == undefined) { - controller.set_breakpoint(self.trans_id, m + 1, 1); //set the breakpoint - } else { - if (info.gutterMarkers.breakpoints == undefined) { - controller.set_breakpoint(self.trans_id, m + 1, 1); //set the breakpoint - } else { - controller.set_breakpoint(self.trans_id, m + 1, 0); //clear the breakpoint - } - } - - // If line folding is defined then gutterMarker will be defined so - // we need to find out 'breakpoints' information - var markers = info.gutterMarkers; - if (markers != undefined && info.gutterMarkers.breakpoints == undefined) - markers = info.gutterMarkers.breakpoints; - - cm.setGutterMarker( - m, 'breakpoints', markers ? null : function() { - var marker = document.createElement('div'); - - marker.style.color = '#822'; - marker.innerHTML = '●'; - - return marker; - }()); - } - }, - - buildDefaultLayout: function(docker) { - let code_editor_panel = docker.addPanel('code', wcDocker.DOCK.TOP); - - let parameters_panel = docker.addPanel('parameters', wcDocker.DOCK.BOTTOM, code_editor_panel); - docker.addPanel('local_variables',wcDocker.DOCK.STACKED, parameters_panel, { - tabOrientation: wcDocker.TAB.TOP, - }); - docker.addPanel('messages', wcDocker.DOCK.STACKED, parameters_panel); - docker.addPanel('results', wcDocker.DOCK.STACKED, parameters_panel); - docker.addPanel('stack_pane', wcDocker.DOCK.STACKED, parameters_panel); - }, - - /** - * This function is responsible for adjusting the message height - * so that the message does not cut down. - * @function setMessagePanelHeight - */ - setMessagePanelHeight: function() { - var self = this, - dockerPane = self.docker.$container[0]; - if(dockerPane.children.length > 2) { - var bottomPane = dockerPane.children[2], - message_height = $(bottomPane).height() - 75; - $($(dockerPane).find('#messages')[0]).css({ - 'height': message_height + 'px', - 'padding-bottom': 5 + 'px' - }); - } - }, - - // Create the debugger layout with splitter and display the appropriate data received from server. - intializePanels: function() { - var self = this; - this.registerPanel( - 'code', self.function_name_with_arguments, '100%', '50%', - function() { - - // Create the parameters panel to display the arguments of the functions - var parameters = new pgAdmin.Browser.Panel({ - name: 'parameters', - title: gettext('Parameters'), - width: '100%', - height: '100%', - isCloseable: false, - isPrivate: true, - content: '
    ', - }); - - // Create the Local variables panel to display the local variables of the function. - var local_variables = new pgAdmin.Browser.Panel({ - name: 'local_variables', - title: gettext('Local variables'), - width: '100%', - height: '100%', - isCloseable: false, - isPrivate: true, - content: '
    ', - }); - - // Create the messages panel to display the message returned from the database server - var messages = new pgAdmin.Browser.Panel({ - name: 'messages', - title: - gettext('Messages'), - width: '100%', - height: '100%', - isCloseable: false, - isPrivate: true, - content: '
    ', - }); - - // Create the result panel to display the result after debugging the function - var results = new pgAdmin.Browser.Panel({ - name: 'results', - title: gettext('Results'), - width: '100%', - height: '100%', - isCloseable: false, - isPrivate: true, - content: '
    ', - }); - - // Create the stack pane panel to display the debugging stack information. - var stack_pane = new pgAdmin.Browser.Panel({ - name: 'stack_pane', - title: gettext('Stack'), - width: '100%', - height: '100%', - isCloseable: false, - isPrivate: true, - content: '
    ', - }); - - // Load all the created panels - parameters.load(self.docker); - local_variables.load(self.docker); - messages.load(self.docker); - results.load(self.docker); - stack_pane.load(self.docker); - }); - - // restore the layout if present else fallback to buildDefaultLayout - pgBrowser.restore_layout(self.docker, self.layout, this.buildDefaultLayout.bind(this)); - self.setMessagePanelHeight(); - - self.docker.on(wcDocker.EVENT.LAYOUT_CHANGED, function() { - self.setMessagePanelHeight(); - pgBrowser.save_current_layout('Debugger/Layout', self.docker); - }); - - self.code_editor_panel = self.docker.findPanels('code')[0]; - self.parameters_panel = self.docker.findPanels('parameters')[0]; - self.local_variables_panel = self.docker.findPanels('local_variables')[0]; - self.messages_panel = self.docker.findPanels('messages')[0]; - self.results_panel = self.docker.findPanels('results')[0]; - self.stack_pane_panel = self.docker.findPanels('stack_pane')[0]; - - var editor_pane = $('
    '); - var code_editor_area = $('').appendTo(editor_pane); - self.code_editor_panel.layout().addItem(editor_pane); - - // To show the line-number and set breakpoint marker details by user. - self.editor = CodeMirror.fromTextArea( - code_editor_area.get(0), { - tabindex: -1, - lineNumbers: true, - foldOptions: { - widget: '\u2026', - }, - foldGutter: true, - gutters: [ - 'CodeMirror-linenumbers', 'CodeMirror-foldgutter', 'breakpoints', - ], - mode: 'text/x-pgsql', - readOnly: true, - extraKeys: pgAdmin.Browser.editor_shortcut_keys, - indentWithTabs: pgAdmin.Browser.editor_options.indent_with_tabs, - indentUnit: pgAdmin.Browser.editor_options.tabSize, - tabSize: pgAdmin.Browser.editor_options.tabSize, - lineWrapping: pgAdmin.Browser.editor_options.wrapCode, - autoCloseBrackets: pgAdmin.Browser.editor_options.insert_pair_brackets, - matchBrackets: pgAdmin.Browser.editor_options.brace_matching, - screenReaderLabel: gettext('Debugger SQL editor'), - }); - - // Useful for keyboard navigation, when user presses escape key we will - // defocus from the codemirror editor allow user to navigate further - CodeMirror.on(self.editor, 'keydown', function(cm,event) { - if(event.keyCode==27){ - document.activeElement.blur(); - } - }); - - pgBrowser.Events.on('pgadmin:debugger:code:focus', ()=>{ - self.editor.focus(); - }); - - // On loading the docker, register the callbacks - var onLoad = function() { - self.docker.finishLoading(100); - self.docker.off(wcDocker.EVENT.LOADED); - // Register the callback when user set/clear the breakpoint on gutter area. - self.editor.on('gutterClick', self.onBreakPoint.bind(self), self); - /* Set focus to the debugger container - * Focus does not work in firefox without tabindex attr - * so, setting focus to parent of $container which is #container - */ - if(self.docker.$container){ - self.docker.$container.parent().focus(); - } - - let cacheIntervalId = setInterval(function() { - try { - let browser = pgWindow.default.pgAdmin.Browser; - if(browser.preference_version() > 0) { - clearInterval(cacheIntervalId); - self.reflectPreferences(); - - /* If debugger is in a new tab, event fired is not available - * instead, a poller is set up who will check - */ - var browser_preferences = browser.get_preferences_for_module('browser'); - var open_new_tab = browser_preferences.new_browser_tab_open; - if (open_new_tab && open_new_tab.includes('debugger')) { - pgBrowser.bind_beforeunload(); - let pollIntervalId = setInterval(()=>{ - if(pgWindow.default.pgAdmin) { - self.reflectPreferences(); - } - else { - clearInterval(pollIntervalId); - } - }, 1000); - } - } - } - catch(err) { - clearInterval(cacheIntervalId); - throw err; - } - },0); - - }; - - self.docker.startLoading(gettext('Loading...')); - self.docker.on(wcDocker.EVENT.LOADED, onLoad); - - // Create the toolbar view for debugging the function - this.toolbarView = new DebuggerToolbarView(); - - /* wcDocker focuses on window always, and all our shortcuts are - * bind to editor-panel. So when we use wcDocker focus, editor-panel - * loses focus and events don't work. - */ - $(window).on('keydown', (e)=>{ - if(self.toolbarView.keyAction) { - self.toolbarView.keyAction(e); - } - }); - - /* Cache may take time to load for the first time - * Keep trying till available - */ - - - /* Register for preference changed event broadcasted in parent - * to reload the shorcuts. - */ - pgWindow.default.pgAdmin.Browser.onPreferencesChange('debugger', function() { - self.reflectPreferences(); - }); - - /* Register to log the activity */ - pgBrowser.register_to_activity_listener(document, ()=>{ - Notify.alert(gettext('Timeout'), gettext('Your session has timed out due to inactivity. Please close the window and login again.')); - }); - - controller.poll_result = pgBrowser.override_activity_event_decorator(controller.poll_result).bind(controller); - controller.poll_end_execution_result = pgBrowser.override_activity_event_decorator(controller.poll_end_execution_result).bind(controller); - }, - reflectPreferences: function() { - let self = this, - browser = pgWindow.default.pgAdmin.Browser; - self.preferences = browser.get_preferences_for_module('debugger'); - self.toolbarView.preferences = self.preferences; - - /* Update the shortcuts of the buttons */ - self.toolbarView.$el.find('#btn-step-into') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Step into'),self.preferences.btn_step_into)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Step into'),self.preferences.btn_step_into)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_step_into)); - - self.toolbarView.$el.find('#btn-step-over') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Step over'),self.preferences.btn_step_over)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Step over'),self.preferences.btn_step_over)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_step_over)); - - self.toolbarView.$el.find('#btn-continue') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Continue/Start'),self.preferences.btn_start)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Continue/Start'),self.preferences.btn_start)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_start)); - - self.toolbarView.$el.find('#btn-toggle-breakpoint') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Toggle breakpoint'),self.preferences.btn_toggle_breakpoint)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Toggle breakpoint'),self.preferences.btn_toggle_breakpoint)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_toggle_breakpoint)); - - self.toolbarView.$el.find('#btn-clear-breakpoint') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Clear all breakpoints'),self.preferences.btn_clear_breakpoints)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Clear all breakpoints'),self.preferences.btn_clear_breakpoints)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_clear_breakpoints)); - - self.toolbarView.$el.find('#btn-stop') - .attr('title', keyboardShortcuts.shortcut_accesskey_title(gettext('Stop'),self.preferences.btn_stop)) - .attr('aria-label', keyboardShortcuts.shortcut_accesskey_title(gettext('Stop'),self.preferences.btn_stop)) - .attr('accesskey', keyboardShortcuts.shortcut_key(self.preferences.btn_stop)); - }, - // Register the panel with new debugger docker instance. - registerPanel: function(name, title, width, height, onInit) { - var self = this; - - this.docker.registerPanelType(name, { - title: title, - isPrivate: true, - onCreate: function(panel) { - self.panels[name] = panel; - panel.initSize(width, height); - if (!title) - panel.title(false); - else - panel.title(title); - panel.closeable(false); - panel.layout().addItem( - $('
    ', { - 'class': 'pg-debugger-panel', - }) - ); - if (onInit) { - onInit.apply(self, [panel]); - } - }, - }); - }, - }); - - pgTools.DirectDebug = new DirectDebug(); - pgTools.DirectDebug['jquery'] = $; - - return pgTools.DirectDebug; -}); diff --git a/web/pgadmin/tools/debugger/static/js/index.js b/web/pgadmin/tools/debugger/static/js/index.js new file mode 100644 index 000000000..cca05364a --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/index.js @@ -0,0 +1,22 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import pgAdmin from 'sources/pgadmin'; +import pgBrowser from 'top/browser/static/js/browser'; +import Debugger from './DebuggerModule'; + +if (!pgAdmin.Tools) { + pgAdmin.Tools = {}; +} + +pgAdmin.Tools.Debugger = Debugger.getInstance(pgAdmin, pgBrowser); + +module.exports = { + Debugger: Debugger, +}; diff --git a/web/pgadmin/tools/debugger/templates/debugger/direct.html b/web/pgadmin/tools/debugger/templates/debugger/direct.html index a73f79b32..2a217aa59 100644 --- a/web/pgadmin/tools/debugger/templates/debugger/direct.html +++ b/web/pgadmin/tools/debugger/templates/debugger/direct.html @@ -4,12 +4,10 @@ try { require( - ['sources/generated/debugger_direct', 'sources/generated/browser_nodes', 'sources/generated/codemirror'], - function(pgDirectDebug) { - var pgDirectDebug = pgDirectDebug || pgAdmin.Tools.DirectDebug; - var $ = pgDirectDebug.jquery; - - pgDirectDebug.load({{ uniqueId }}, {{ debug_type }}, '{{ function_name_with_arguments }}', '{{layout|safe}}'); + ['sources/generated/debugger', 'sources/pgadmin', 'sources/generated/codemirror'], + function(pgDirectDebug, pgAdmin) { + var pgDebug = window.pgAdmin.Tools.Debugger; + pgDebug.load(document.getElementById('debugger-main-container'), {{ uniqueId }}, {{ debug_type }}, '{{ function_name_with_arguments }}', '{{layout|safe}}'); // Register unload event on window close. /* If opened in new tab, close the connection only on tab/window close and @@ -39,6 +37,13 @@ try { } {% endblock %} {% block body %} + {% if is_desktop_mode and is_linux %} {% endif %} -
    - -
    +
    {% endblock %} @@ -114,4 +61,5 @@ try { {% for stylesheet in stylesheets %} {% endfor %} + {% endblock %} diff --git a/web/pgadmin/tools/debugger/tests/test_debugger_clear_all_breakpoint.py b/web/pgadmin/tools/debugger/tests/test_debugger_clear_all_breakpoint.py index 3af6c3c2d..125dbddf6 100644 --- a/web/pgadmin/tools/debugger/tests/test_debugger_clear_all_breakpoint.py +++ b/web/pgadmin/tools/debugger/tests/test_debugger_clear_all_breakpoint.py @@ -58,13 +58,13 @@ class DebuggerClearAllBreakpoint(BaseTestGenerator): def clear_all_breakpoint(self): if hasattr(self, 'no_breakpoint') and self.no_breakpoint: - breakpoint_data = {"breakpoint_list": ''} + breakpoint_data = {"breakpoint_list": None} else: - breakpoint_data = {"breakpoint_list": 3} + breakpoint_data = {"breakpoint_list": '3'} return self.tester.post( self.url + str(self.trans_id), - data=breakpoint_data) + data=json.dumps(breakpoint_data)) def runTest(self): """ diff --git a/web/pgadmin/tools/debugger/tests/test_debugger_set_arguments.py b/web/pgadmin/tools/debugger/tests/test_debugger_set_arguments.py index 7d51084a0..1cd03b55d 100644 --- a/web/pgadmin/tools/debugger/tests/test_debugger_set_arguments.py +++ b/web/pgadmin/tools/debugger/tests/test_debugger_set_arguments.py @@ -52,11 +52,10 @@ class DebuggerSetArguments(BaseTestGenerator): debugger_utils.initialize_target(self, utils) def set_arguments(self): - args = {"data": json.dumps([ + args = json.dumps([ {"server_id": self.server_id, "database_id": self.db_id, "schema_id": self.schema_id, "function_id": self.func_id, "arg_id": 0, "is_null": 0, "is_expression": 0, "use_default": 1}]) - } return self.tester.post( self.url + str(self.server_id) + '/' + str(self.db_id) + '/' + diff --git a/web/regression/javascript/debugger/MockDebuggerComponent.jsx b/web/regression/javascript/debugger/MockDebuggerComponent.jsx new file mode 100644 index 000000000..0ae0b5e0e --- /dev/null +++ b/web/regression/javascript/debugger/MockDebuggerComponent.jsx @@ -0,0 +1,32 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import React from 'react'; +import PropTypes from 'prop-types'; + +import Theme from 'sources/Theme'; +import {DebuggerContext, DebuggerEventsContext} from '../../../pgadmin/tools/debugger/static/js/components/DebuggerComponent'; + +export default function MockDebuggerComponent({value, eventsvalue, children}) { + return ( + + + + {children} + + + + ); +} + +MockDebuggerComponent.propTypes = { + value: PropTypes.any, + eventsvalue: PropTypes.any, + children: PropTypes.any +}; diff --git a/web/regression/javascript/debugger/debugger_input_args_spec.js b/web/regression/javascript/debugger/debugger_input_args_spec.js new file mode 100644 index 000000000..5975261f5 --- /dev/null +++ b/web/regression/javascript/debugger/debugger_input_args_spec.js @@ -0,0 +1,282 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import $ from 'jquery'; +window.jQuery = window.$ = $; + +import 'wcdocker'; +import '../helper/enzyme.helper'; + +import jasmineEnzyme from 'jasmine-enzyme'; +import MockAdapter from 'axios-mock-adapter'; +import axios from 'axios/index'; + +import url_for from 'sources/url_for'; +import pgAdmin from 'sources/pgadmin'; + +import { messages } from '../fake_messages'; +import FunctionArguments from '../../../pgadmin/tools/debugger/static/js/debugger_ui'; +import Debugger from '../../../pgadmin/tools/debugger/static/js/DebuggerModule'; +import {TreeFake} from '../tree/tree_fake'; + + +describe('Debugger Component', () => { + let funcArgs; + let debuggerInstance; + let mountDOM; + let tree; + let params; + let networkMock; + + beforeEach(() => { + jasmineEnzyme(); + // Element for mount wcDocker panel + mountDOM = $('
    '); + $(document.body).append(mountDOM); + + $(document.body).append($('
    ')); + + /* messages used by validators */ + pgAdmin.Browser = pgAdmin.Browser || {}; + pgAdmin.Browser.messages = pgAdmin.Browser.messages || messages; + pgAdmin.Browser.utils = pgAdmin.Browser.utils || {}; + pgAdmin.Browser.stdH.md = 100; + pgAdmin.Browser.stdW.md = 100; + funcArgs = new FunctionArguments(); + debuggerInstance = new Debugger(pgAdmin, pgAdmin.Browser); + pgAdmin.Browser.preferences_cache = [ + { + 'id': 115, + 'cid': 13, + 'name': 'btn_step_into', + 'label': 'Accesskey (Step into)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 73, + 'char': 'i' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 116, + 'cid': 13, + 'name': 'btn_step_over', + 'label': 'Accesskey (Step over)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 79, + 'char': 'o' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, + { + 'id': 113, + 'cid': 13, + 'name': 'btn_start', + 'label': 'Accesskey (Continue/Start)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 67, + 'char': 'c' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 114, + 'cid': 13, + 'name': 'btn_stop', + 'label': 'Accesskey (Stop)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 83, + 'char': 's' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 117, + 'cid': 13, + 'name': 'btn_toggle_breakpoint', + 'label': 'Accesskey (Toggle breakpoint)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 84, + 'char': 't' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 118, + 'cid': 13, + 'name': 'btn_clear_breakpoints', + 'label': 'Accesskey (Clear all breakpoints)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 88, + 'char': 'x' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + } + + ]; + // eslint-disable-next-line + let docker = new wcDocker( + '.dockerContainer', { + allowContextMenu: false, + allowCollapse: false, + loadingClass: 'pg-sp-icon', + }); + + tree = new TreeFake(); + pgAdmin.Browser.tree = tree; + pgAdmin.Browser.docker = docker; + + params = { + transId: 1234, + directDebugger: debuggerInstance, + funcArgsInstance: funcArgs + }; + networkMock = new MockAdapter(axios); + }); + + it('Debugger Args', () => { + params.directDebugger.debug_type = 1; + networkMock.onGet(url_for('debugger.init', {'function': 1, 'schema': 1, 'database': 1, 'server': 1})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'debug_info':[{'name':'_test2','prosrc':'begin\nselect \'1\';\nend','lanname':'plpgsql','proretset':false,'prorettype':1043,'rettype':'varchar','proargtypenames':'date','proargtypes':'1082','proargnames':'test_date','proargmodes':null,'pkg':0,'pkgname':'','pkgconsoid':0,'schema':2200,'schemaname':'public','isfunc':true,'signature':'test_date date','proargdefaults':null,'pronargdefaults':0,'require_input':true}],'trans_id':'7165'}}); + + let debugInfo = { + 'name': '_test2', + 'prosrc': 'begin\nselect \'1\';\nend', + 'lanname': 'plpgsql', + 'proretset': false, + 'prorettype': 1043, + 'rettype': 'varchar', + 'proargtypenames': 'date', + 'proargtypes': '1082', + 'proargnames': 'test_date', + 'proargmodes': null, + 'pkg': 0, + 'pkgname': '', + 'pkgconsoid': 0, + 'schema': 2200, + 'schemaname': 'public', + 'isfunc': true, + 'signature': 'test_date date', + 'proargdefaults': null, + 'pronargdefaults': 0, + 'require_input': true, + }; + + funcArgs.show(debugInfo, 0, false, '123'); + }); +}); + diff --git a/web/regression/javascript/debugger/debugger_spec.js b/web/regression/javascript/debugger/debugger_spec.js new file mode 100644 index 000000000..58c423372 --- /dev/null +++ b/web/regression/javascript/debugger/debugger_spec.js @@ -0,0 +1,282 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import $ from 'jquery'; +window.jQuery = window.$ = $; + +import 'wcdocker'; +import '../helper/enzyme.helper'; + +import React from 'react'; +import { createMount } from '@material-ui/core/test-utils'; +import jasmineEnzyme from 'jasmine-enzyme'; +import MockAdapter from 'axios-mock-adapter'; +import axios from 'axios/index'; + +import url_for from 'sources/url_for'; +import pgAdmin from 'sources/pgadmin'; + +import { messages } from '../fake_messages'; +import DebuggerComponent from '../../../pgadmin/tools/debugger/static/js/components/DebuggerComponent'; +import FunctionArguments from '../../../pgadmin/tools/debugger/static/js/debugger_ui'; +import Debugger from '../../../pgadmin/tools/debugger/static/js/DebuggerModule'; +import {TreeFake} from '../tree/tree_fake'; + + +describe('Debugger Component', () => { + let mount; + let funcArgs; + let debuggerInstance; + let nodeInfo; + let mountDOM; + let tree; + let params; + let networkMock; + + /* Use createMount so that material ui components gets the required context */ + /* https://material-ui.com/guides/testing/#api */ + beforeAll(() => { + mount = createMount(); + }); + + beforeEach(() => { + jasmineEnzyme(); + // Element for mount wcDocker panel + mountDOM = $('
    '); + $(document.body).append(mountDOM); + + $(document.body).append($('
    ')); + + /* messages used by validators */ + pgAdmin.Browser = pgAdmin.Browser || {}; + pgAdmin.Browser.messages = pgAdmin.Browser.messages || messages; + pgAdmin.Browser.utils = pgAdmin.Browser.utils || {}; + funcArgs = new FunctionArguments(); + debuggerInstance = new Debugger(pgAdmin, pgAdmin.Browser); + nodeInfo = { parent: {} }; + pgAdmin.Browser.preferences_cache = [ + { + 'id': 115, + 'cid': 13, + 'name': 'btn_step_into', + 'label': 'Accesskey (Step into)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 73, + 'char': 'i' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 116, + 'cid': 13, + 'name': 'btn_step_over', + 'label': 'Accesskey (Step over)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 79, + 'char': 'o' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, + { + 'id': 113, + 'cid': 13, + 'name': 'btn_start', + 'label': 'Accesskey (Continue/Start)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 67, + 'char': 'c' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 114, + 'cid': 13, + 'name': 'btn_stop', + 'label': 'Accesskey (Stop)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 83, + 'char': 's' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 117, + 'cid': 13, + 'name': 'btn_toggle_breakpoint', + 'label': 'Accesskey (Toggle breakpoint)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 84, + 'char': 't' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 118, + 'cid': 13, + 'name': 'btn_clear_breakpoints', + 'label': 'Accesskey (Clear all breakpoints)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 88, + 'char': 'x' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + } + + ]; + // eslint-disable-next-line + let docker = new wcDocker( + '.dockerContainer', { + allowContextMenu: false, + allowCollapse: false, + loadingClass: 'pg-sp-icon', + }); + + tree = new TreeFake(); + pgAdmin.Browser.tree = tree; + pgAdmin.Browser.docker = docker; + + params = { + transId: 1234, + directDebugger: debuggerInstance, + funcArgsInstance: funcArgs + }; + networkMock = new MockAdapter(axios); + }); + + it('DebuggerInit Indirect', () => { + params.directDebugger.debug_type = 1; + networkMock.onGet(url_for('debugger.start_listener', {'trans_id': params.transId})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':true,'result':2}}); + networkMock.onGet(url_for('debugger.messages', {'trans_id': params.transId})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':'Success','result':'10'}}); + networkMock.onGet(url_for('debugger.execute_query', {'trans_id': params.transId, 'query_type': 'get_stack_info'})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':'Success','result':[{'level':0,'targetname':'_test()','func':3138947,'linenumber':9,'args':''}]}}); + networkMock.onGet(url_for('debugger.poll_result', {'trans_id': params.transId})).reply(200, {'success':0,'errormsg':'','info':'','result':null,'data':{'status':'Success','result':[{'pldbg_wait_for_target':28298}]}}); + let ctrl = mount( + + + ); + + ctrl.find('PgIconButton[data-test="debugger-contiue"]').props().onClick(); + }); +}); + diff --git a/web/regression/javascript/debugger/debugger_stack_spec.js b/web/regression/javascript/debugger/debugger_stack_spec.js new file mode 100644 index 000000000..bf4ca1a5e --- /dev/null +++ b/web/regression/javascript/debugger/debugger_stack_spec.js @@ -0,0 +1,291 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import $ from 'jquery'; +window.jQuery = window.$ = $; + +import 'wcdocker'; +import '../helper/enzyme.helper'; + +import React from 'react'; +import { createMount } from '@material-ui/core/test-utils'; +import jasmineEnzyme from 'jasmine-enzyme'; +import MockAdapter from 'axios-mock-adapter'; +import axios from 'axios/index'; + +import url_for from 'sources/url_for'; +import pgAdmin from 'sources/pgadmin'; + +import { messages } from '../fake_messages'; +import FunctionArguments from '../../../pgadmin/tools/debugger/static/js/debugger_ui'; +import Debugger from '../../../pgadmin/tools/debugger/static/js/DebuggerModule'; +import { TreeFake } from '../tree/tree_fake'; +import MockDebuggerComponent from './MockDebuggerComponent'; +import EventBus from '../../../pgadmin/static/js/helpers/EventBus'; +import { Stack } from '../../../pgadmin/tools/debugger/static/js/components/Stack'; + + +describe('Debugger Stack', () => { + let mount; + let funcArgs; + let debuggerInstance; + let mountDOM; + let tree; + let params; + let networkMock; + let pref; + + /* Use createMount so that material ui components gets the required context */ + /* https://material-ui.com/guides/testing/#api */ + beforeAll(() => { + mount = createMount(); + }); + + afterAll(() => { + mount.cleanUp(); + networkMock.restore(); + }); + + afterEach(() => { + networkMock.restore(); + }); + + + beforeEach(() => { + jasmineEnzyme(); + // Element for mount wcDocker panel + mountDOM = $('
    '); + $(document.body).append(mountDOM); + + $(document.body).append($('
    ')); + + /* messages used by validators */ + pgAdmin.Browser = pgAdmin.Browser || {}; + pgAdmin.Browser.messages = pgAdmin.Browser.messages || messages; + pgAdmin.Browser.utils = pgAdmin.Browser.utils || {}; + funcArgs = new FunctionArguments(); + debuggerInstance = new Debugger(pgAdmin, pgAdmin.Browser); + pref = [ + { + 'id': 115, + 'cid': 13, + 'name': 'btn_step_into', + 'label': 'Accesskey (Step into)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 73, + 'char': 'i' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 116, + 'cid': 13, + 'name': 'btn_step_over', + 'label': 'Accesskey (Step over)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 79, + 'char': 'o' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, + { + 'id': 113, + 'cid': 13, + 'name': 'btn_start', + 'label': 'Accesskey (Continue/Start)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 67, + 'char': 'c' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 114, + 'cid': 13, + 'name': 'btn_stop', + 'label': 'Accesskey (Stop)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 83, + 'char': 's' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 117, + 'cid': 13, + 'name': 'btn_toggle_breakpoint', + 'label': 'Accesskey (Toggle breakpoint)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 84, + 'char': 't' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 118, + 'cid': 13, + 'name': 'btn_clear_breakpoints', + 'label': 'Accesskey (Clear all breakpoints)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 88, + 'char': 'x' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + } + + ]; + + pgAdmin.Browser.preferences_cache = pref; + // eslint-disable-next-line + let docker = new wcDocker( + '.dockerContainer', { + allowContextMenu: false, + allowCollapse: false, + loadingClass: 'pg-sp-icon', + }); + + tree = new TreeFake(); + pgAdmin.Browser.tree = tree; + pgAdmin.Browser.docker = docker; + + params = { + transId: 1234, + directDebugger: debuggerInstance, + funcArgsInstance: funcArgs + }; + networkMock = new MockAdapter(axios); + }); + + it('Statck Init', () => { + networkMock.onGet(url_for('debugger.select_frame', { 'trans_id': params.transId, 'frame_id': 3 })).reply(200, {'success':0,'errormsg':'','info':'','result':null,'data':{'status':true,'result':[{'func':3138947,'targetname':'_test()','linenumber':10,'src':'\nDECLARE\n v_deptno NUMERIC;\n v_empno NUMERIC;\n v_ename VARCHAR;\n v_rows INTEGER;\n r_emp_query EMP_QUERY_TYPE;\nBEGIN\n v_deptno := 30;\n v_empno := 0;\n v_ename := \'Martin\';\n r_emp_query := emp_query(v_deptno, v_empno, v_ename);\n RAISE INFO \'Department : %\', v_deptno;\n RAISE INFO \'Employee No: %\', (r_emp_query).empno;\n RAISE INFO \'Name : %\', (r_emp_query).ename;\n RAISE INFO \'Job : %\', (r_emp_query).job;\n RAISE INFO \'Hire Date : %\', (r_emp_query).hiredate;\n RAISE INFO \'Salary : %\', (r_emp_query).sal;\n RETURN \'1\';\nEXCEPTION\n WHEN OTHERS THEN\n RAISE INFO \'The following is SQLERRM : %\', SQLERRM;\n RAISE INFO \'The following is SQLSTATE: %\', SQLSTATE;\n RETURN \'1\';\nEND;\n','args':''}]}}); + mount( + + + + ); + }); +}); + diff --git a/web/regression/javascript/debugger/debugger_tool_bar_spec.js b/web/regression/javascript/debugger/debugger_tool_bar_spec.js new file mode 100644 index 000000000..4f8caf9ab --- /dev/null +++ b/web/regression/javascript/debugger/debugger_tool_bar_spec.js @@ -0,0 +1,395 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import $ from 'jquery'; +window.jQuery = window.$ = $; + +import 'wcdocker'; +import '../helper/enzyme.helper'; + +import React from 'react'; +import { createMount } from '@material-ui/core/test-utils'; +import jasmineEnzyme from 'jasmine-enzyme'; +import MockAdapter from 'axios-mock-adapter'; +import axios from 'axios/index'; + +import url_for from 'sources/url_for'; +import pgAdmin from 'sources/pgadmin'; + +import { messages } from '../fake_messages'; +import FunctionArguments from '../../../pgadmin/tools/debugger/static/js/debugger_ui'; +import Debugger from '../../../pgadmin/tools/debugger/static/js/DebuggerModule'; +import { TreeFake } from '../tree/tree_fake'; +import MockDebuggerComponent from './MockDebuggerComponent'; +import EventBus from '../../../pgadmin/static/js/helpers/EventBus'; +import { ToolBar } from '../../../pgadmin/tools/debugger/static/js/components/ToolBar'; + + +describe('Debugger Toolbar', () => { + let mount; + let funcArgs; + let debuggerInstance; + let mountDOM; + let tree; + let params; + let networkMock; + let pref; + + /* Use createMount so that material ui components gets the required context */ + /* https://material-ui.com/guides/testing/#api */ + beforeAll(() => { + mount = createMount(); + }); + + afterAll(() => { + mount.cleanUp(); + networkMock.restore(); + }); + + afterEach(() => { + networkMock.restore(); + }); + + beforeEach(() => { + jasmineEnzyme(); + // Element for mount wcDocker panel + mountDOM = $('
    '); + $(document.body).append(mountDOM); + + $(document.body).append($('
    ')); + + /* messages used by validators */ + pgAdmin.Browser = pgAdmin.Browser || {}; + pgAdmin.Browser.messages = pgAdmin.Browser.messages || messages; + pgAdmin.Browser.utils = pgAdmin.Browser.utils || {}; + funcArgs = new FunctionArguments(); + debuggerInstance = new Debugger(pgAdmin, pgAdmin.Browser); + pref = [ + { + 'id': 115, + 'cid': 13, + 'name': 'btn_step_into', + 'label': 'Accesskey (Step into)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 73, + 'char': 'i' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 116, + 'cid': 13, + 'name': 'btn_step_over', + 'label': 'Accesskey (Step over)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 79, + 'char': 'o' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, + { + 'id': 113, + 'cid': 13, + 'name': 'btn_start', + 'label': 'Accesskey (Continue/Start)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 67, + 'char': 'c' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 114, + 'cid': 13, + 'name': 'btn_stop', + 'label': 'Accesskey (Stop)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 83, + 'char': 's' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 117, + 'cid': 13, + 'name': 'btn_toggle_breakpoint', + 'label': 'Accesskey (Toggle breakpoint)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 84, + 'char': 't' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + }, { + 'id': 118, + 'cid': 13, + 'name': 'btn_clear_breakpoints', + 'label': 'Accesskey (Clear all breakpoints)', + 'type': 'keyboardshortcut', + 'help_str': null, + 'control_props': {}, + 'min_val': null, + 'max_val': null, + 'options': null, + 'select': null, + 'value': { + 'key': { + 'key_code': 88, + 'char': 'x' + } + }, + 'fields': [ + { + 'name': 'key', + 'type': 'keyCode', + 'label': 'Key' + } + ], + 'disabled': false, + 'dependents': null, + 'mid': 83, + 'module': 'debugger', + } + + ]; + + pgAdmin.Browser.preferences_cache = pref; + // eslint-disable-next-line + let docker = new wcDocker( + '.dockerContainer', { + allowContextMenu: false, + allowCollapse: false, + loadingClass: 'pg-sp-icon', + }); + + tree = new TreeFake(); + pgAdmin.Browser.tree = tree; + pgAdmin.Browser.docker = docker; + + params = { + transId: 1234, + directDebugger: debuggerInstance, + funcArgsInstance: funcArgs + }; + networkMock = new MockAdapter(axios); + }); + + it('Toolbar clearbreakpoints', () => { + networkMock.onGet(url_for('debugger.clear_all_breakpoint', { 'trans_id': params.transId })).reply(200, { 'success': 1, 'errormsg': '', 'info': '', 'result': null, 'data': { 'status': true, 'result': 2 } }); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="clear-breakpoint"]').props().onClick(); + }); + + it('Toolbar Stop Debugger', () => { + networkMock.onGet(url_for('debugger.execute_query', { 'trans_id': params.transId, 'query_type': 'abort_target'})).reply(200, {'success':1,'errormsg':'','info':'Debugging aborted successfully.','result':null,'data':{'status':'Success','result':{'columns':[{'name':'pldbg_abort_target','type_code':16,'display_size':null,'internal_size':1,'precision':null,'scale':null,'null_ok':null,'table_oid':null,'table_column':null,'display_name':'pldbg_abort_target'}],'rows':[{'pldbg_abort_target':true}]}}}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="stop-debugger"]').props().onClick(); + }); + + + it('Toolbar Toggle Breakpoint', () => { + networkMock.onGet(url_for('debugger.set_breakpoint', { 'trans_id': params.transId, 'line_no': '1', 'set_type': 1})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':true,'result':[{'pldbg_set_breakpoint':true}]}}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="toggle-breakpoint"]').props().onClick(); + }); + + + it('Toolbar StepIn', () => { + networkMock.onGet(url_for('debugger.execute_query', { 'trans_id': params.transId, 'query_type': 'step_into'})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':true,'result':1}}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="step-in"]').props().onClick(); + }); + + it('Toolbar StepOver', () => { + networkMock.onGet(url_for('debugger.execute_query', { 'trans_id': params.transId, 'query_type': 'step_over'})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':true,'result':1}}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="step-over"]').props().onClick(); + }); + + it('Toolbar Contiue', () => { + networkMock.onGet(url_for('debugger.execute_query', { 'trans_id': params.transId, 'query_type': 'continue'})).reply(200, {'success':1,'errormsg':'','info':'','result':null,'data':{'status':true,'result':2}}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="debugger-contiue"]').props().onClick(); + }); + + it('Toolbar Help', () => { + networkMock.onGet(url_for('help.static', {'filename': 'debugger.html'})).reply(200, {}); + let ctrl = mount( + + + + ); + ctrl.find('PgIconButton[data-test="debugger-help"]').props().onClick(); + }); +}); + diff --git a/web/regression/javascript/debugger_utils_spec.js b/web/regression/javascript/debugger_utils_spec.js index 1f8bb62d6..196f3a328 100644 --- a/web/regression/javascript/debugger_utils_spec.js +++ b/web/regression/javascript/debugger_utils_spec.js @@ -8,44 +8,10 @@ ////////////////////////////////////////////////////////////////////////// import { - setFocusToDebuggerEditor, getProcedureId, + getFunctionId, } from '../../pgadmin/tools/debugger/static/js/debugger_utils'; -describe('setFocusToDebuggerEditor', function () { - let editor; - editor = jasmine.createSpyObj('editor', ['focus']); - - let tab_key = { - which: 9, - keyCode: 9, - }; - - let enter_key = { - which: 13, - keyCode: 13, - }; - - describe('setFocusToDebuggerEditor', function () { - it('returns undefined if no command is passed', function () { - expect(setFocusToDebuggerEditor(editor, null)).toEqual(undefined); - }); - }); - - describe('setFocusToDebuggerEditor', function () { - it('should call focus on editor', function () { - setFocusToDebuggerEditor(editor, enter_key); - expect(editor.focus).toHaveBeenCalled(); - }); - }); - - describe('setFocusToDebuggerEditor', function () { - it('should not call focus on editor and returns undefined', function () { - expect(setFocusToDebuggerEditor(editor, tab_key)).toEqual(undefined); - }); - }); -}); - describe('getProcedureId', function () { let treeInfroProc = { 'procedure': { @@ -83,3 +49,31 @@ describe('getProcedureId', function () { }); }); +describe('getFunctionId', function () { + let treeInfroFunc = { + 'function': { + '_id': 123, + }, + }; + let treeInfroInvalidFuncId = { + 'function': { + '_id': null, + }, + }; + + let fakeTreeInfro; + + describe('Should return proper object id', function () { + it('returns valid function id', function () { + expect(getFunctionId(treeInfroFunc)).toEqual(123); + }); + + it('returns undefined for fake tree info', function () { + expect(getFunctionId(fakeTreeInfro)).toEqual(undefined); + }); + + it('returns undefined for invalid function id', function () { + expect(getFunctionId(treeInfroInvalidFuncId)).toEqual(undefined); + }); + }); +}); diff --git a/web/regression/javascript/schema_ui_files/debugger_args.ui.spec.js b/web/regression/javascript/schema_ui_files/debugger_args.ui.spec.js new file mode 100644 index 000000000..dc3a1b2d5 --- /dev/null +++ b/web/regression/javascript/schema_ui_files/debugger_args.ui.spec.js @@ -0,0 +1,51 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import '../helper/enzyme.helper'; + +import React from 'react'; +import { createMount } from '@material-ui/core/test-utils'; + +import SchemaView from '../../../pgadmin/static/js/SchemaView'; +import {DebuggerArgumentSchema} from '../../../pgadmin/tools/debugger/static/js/components/DebuggerArgs.ui'; +import {genericBeforeEach} from '../genericFunctions'; + +describe('DebuggerArgs', () => { + let mount; + let schemaObj = new DebuggerArgumentSchema( + ); + + /* Use createMount so that material ui components gets the required context */ + /* https://material-ui.com/guides/testing/#api */ + beforeAll(() => { + mount = createMount(); + }); + + afterAll(() => { + mount.cleanUp(); + }); + + beforeEach(() => { + genericBeforeEach(); + }); + + it('create', () => { + mount( {/*This is intentional (SonarQube)*/}} + showFooter={false} + isTabView={false} + />); + }); +}); + diff --git a/web/regression/python_test_utils/test_utils.py b/web/regression/python_test_utils/test_utils.py index d7dfc5f1b..db4192476 100644 --- a/web/regression/python_test_utils/test_utils.py +++ b/web/regression/python_test_utils/test_utils.py @@ -358,6 +358,7 @@ def create_debug_function(server, db_name, function_name="test_func"): connection.set_isolation_level(0) pg_cursor = connection.cursor() pg_cursor.execute(''' + CREATE EXTENSION pldbgapi; CREATE OR REPLACE FUNCTION public."%s"() RETURNS text LANGUAGE 'plpgsql' diff --git a/web/webpack.config.js b/web/webpack.config.js index 4818f028f..533a2682e 100644 --- a/web/webpack.config.js +++ b/web/webpack.config.js @@ -378,7 +378,7 @@ module.exports = [{ codemirror: sourceDir + '/bundle/codemirror.js', slickgrid: sourceDir + '/bundle/slickgrid.js', sqleditor: './pgadmin/tools/sqleditor/static/js/index.js', - debugger_direct: './pgadmin/tools/debugger/static/js/direct.js', + debugger: './pgadmin/tools/debugger/static/js/index.js', schema_diff: './pgadmin/tools/schema_diff/static/js/schema_diff_hook.js', erd_tool: './pgadmin/tools/erd/static/js/erd_tool_hook.js', psql_tool: './pgadmin/tools/psql/static/js/index.js', @@ -543,8 +543,7 @@ module.exports = [{ 'pure|pgadmin.tools.maintenance', 'pure|pgadmin.tools.import_export', 'pure|pgadmin.tools.import_export_servers', - 'pure|pgadmin.tools.debugger.controller', - 'pure|pgadmin.tools.debugger.direct', + 'pure|pgadmin.tools.debugger', 'pure|pgadmin.node.pga_job', 'pure|pgadmin.tools.schema_diff', 'pure|pgadmin.tools.storage_manager', diff --git a/web/webpack.shim.js b/web/webpack.shim.js index 39ba3fc37..4d5d13d9b 100644 --- a/web/webpack.shim.js +++ b/web/webpack.shim.js @@ -275,8 +275,7 @@ var webpackShimConfig = { 'pgadmin.server.supported_servers': '/browser/server/supported_servers', 'pgadmin.tables.js': path.join(__dirname, './pgadmin/browser/server_groups/servers/databases/schemas/tables/static/js/'), 'pgadmin.tools.backup': path.join(__dirname, './pgadmin/tools/backup/static/js/backup'), - 'pgadmin.tools.debugger.controller': path.join(__dirname, './pgadmin/tools/debugger/static/js/debugger'), - 'pgadmin.tools.debugger.direct': path.join(__dirname, './pgadmin/tools/debugger/static/js/direct'), + 'pgadmin.tools.debugger': path.join(__dirname, './pgadmin/tools/debugger/static/js/'), 'pgadmin.tools.debugger.ui': path.join(__dirname, './pgadmin/tools/debugger/static/js/debugger_ui'), 'pgadmin.tools.debugger.utils': path.join(__dirname, './pgadmin/tools/debugger/static/js/debugger_utils'), 'pgadmin.tools.grant_wizard': path.join(__dirname, './pgadmin/tools/grant_wizard/static/js/grant_wizard'),

    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�`eweN8C5BfULnYsvDfFf$>;P>ZT|OET zUv`!pLtWv1xwRDqTM)8qTraaw-wONQ-M7E3E;4*!iXE7Ujc$Y584_( zjYH%wsNDAe7Hft=snQlTqKevD47g3uCG^Xnrrw&F?D7vI6zRYKV}5_6GqYk>3XUzk zeLbfvYTn=Fxh)m^gAi_jQM4CZ`2IbykcH*H*LLiS2kBW|wrCGs)Zx%$ZIF?hk)6R^ zmX+hP!hG;k6zjoDXfN?Xt%K3X(y68sJC0i;v$A{JWRp+wkTUg_&6gFvB{*oY1{4ql zC4d`7E=)(iJdO0!rJQGHE`*+~EO@IFB)*A?B3?Vc$&w56S%F0+mSquaLm6fW9)*U( zzurwr<7@n~LC+@m384rwe#RgBQ-`&*s;*|34^{1~&zIwDn* zvE;4x;uOK3W;^v4u diff --git a/docs/en_US/images/debug_toolbar.png b/docs/en_US/images/debug_toolbar.png index c3066c1f066cae6b5f470edbf6e6496ed45ae60f..1bc1f581187c82870d2bfb4cd75949f6c2cfc5cb 100644 GIT binary patch literal 10160 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 diff --git a/docs/en_US/images/debug_variables.png b/docs/en_US/images/debug_variables.png index 7ac50dede65b368d9f4abb62fd9654e6c604a594..fd97970f61ae299839bb69af73f7ac7e9f410499 100644 GIT binary patch literal 134622 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 tW10RBf;}c3{BHQXr{=*5wcU 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 literal 39068 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 - Added mouse over indication for breakpoint area in the Debugger. + | `Issue #2648 `_ - Added search text option to the Debugger panel. | `Issue #7178 `_ - Added capability to deploy PostgreSQL servers on Microsoft Azure. | `Issue #7332 `_ - Added support for passing password using Docker Secret to Docker images. | `Issue #7351 `_ - Added the option 'Show template databases?' to display template databases regardless of the setting of 'Show system objects?'. @@ -16,6 +18,7 @@ New features Housekeeping ************ + | `Issue #6132 `_ - Port Debugger to React. | `Issue #7315 `_ - Updates documentation for the Traefik v2 container deployment. | `Issue #7411 `_ - Update pgcli to latest release 3.4.1. | `Issue #7469 `_ - Upgrade Chartjs to the latest 3.8.0. diff --git a/web/pgadmin/feature_tests/xss_checks_pgadmin_debugger_test.py b/web/pgadmin/feature_tests/xss_checks_pgadmin_debugger_test.py index 3f54a23c3..818bdf3b4 100644 --- a/web/pgadmin/feature_tests/xss_checks_pgadmin_debugger_test.py +++ b/web/pgadmin/feature_tests/xss_checks_pgadmin_debugger_test.py @@ -114,15 +114,15 @@ class CheckDebuggerForXssFeatureTest(BaseFeatureTest): ) wait.until(EC.presence_of_element_located( - (By.XPATH, "//td[contains(@class,'test_function') and " - "contains(.,'Hello, pgAdmin4')]")) + (By.XPATH, "//div[@id='id-results']//td " + "[contains(.,'Hello, pgAdmin4')]")) ) # Only this tab is vulnerable rest are BackGrid & Code Mirror # control which are already tested in Query tool test case - self.page.click_tab("Messages") + self.page.click_tab('id-debugger-messages', rc_dock=True) source_code = self.page.find_by_xpath( - "//*[@id='messages']" + "//div[@id='id-debugger-messages'] //div[@id='debugger-msg']" ).get_attribute('innerHTML') self._check_escaped_characters( source_code, @@ -140,5 +140,6 @@ class CheckDebuggerForXssFeatureTest(BaseFeatureTest): def _check_escaped_characters(self, source_code, string_to_find, source): # For XSS we need to search against element's html code - assert source_code.find(string_to_find) != - \ - 1, "{0} might be vulnerable to XSS ".format(source) + assert source_code.find( + string_to_find) != -1, "{0} might be vulnerable to XSS ".format( + source) diff --git a/web/pgadmin/static/js/components/CodeMirror.jsx b/web/pgadmin/static/js/components/CodeMirror.jsx index 292541a07..7e3adff53 100644 --- a/web/pgadmin/static/js/components/CodeMirror.jsx +++ b/web/pgadmin/static/js/components/CodeMirror.jsx @@ -330,7 +330,7 @@ function handlePaste(editor, e) { } /* React wrapper for CodeMirror */ -export default function CodeMirror({currEditor, name, value, options, events, readonly, disabled, className, autocomplete=false}) { +export default function CodeMirror({currEditor, name, value, options, events, readonly, disabled, className, autocomplete=false, gutters=['CodeMirror-linenumbers', 'CodeMirror-foldgutter']}) { const taRef = useRef(); const editor = useRef(); const cmWrapper = useRef(); @@ -355,7 +355,7 @@ export default function CodeMirror({currEditor, name, value, options, events, re widget: '\u2026', }, foldGutter: true, - gutters: ['CodeMirror-linenumbers', 'CodeMirror-foldgutter'], + gutters: gutters, extraKeys: { // Autocomplete sql command ...(autocomplete ? { @@ -416,22 +416,6 @@ export default function CodeMirror({currEditor, name, value, options, events, re } Object.keys(events||{}).forEach((eventName)=>{ - if(eventName === 'change') { - let timeoutId; - const change = (...args)=>{ - /* In case of indent, change is triggered for each line */ - /* This can be avoided and taking only the latest */ - if(timeoutId) { - clearTimeout(timeoutId); - } - timeoutId = setTimeout(()=>{ - events[eventName](...args); - timeoutId = null; - }, 0); - }; - editor.current.on(eventName, change); - return; - } editor.current.on(eventName, events[eventName]); }); editor.current.on('drop', handleDrop); @@ -531,4 +515,5 @@ CodeMirror.propTypes = { disabled: PropTypes.bool, className: CustomPropTypes.className, autocomplete: PropTypes.bool, + gutters: PropTypes.array }; diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss index f49fe7f52..ca119965d 100644 --- a/web/pgadmin/static/scss/_codemirror.overrides.scss +++ b/web/pgadmin/static/scss/_codemirror.overrides.scss @@ -114,6 +114,11 @@ width: .9em; } +.breakpoints { + width: .9em; + cursor: pointer; +} + .CodeMirror-foldgutter-open, .CodeMirror-foldgutter-folded { cursor: pointer; diff --git a/web/pgadmin/tools/debugger/__init__.py b/web/pgadmin/tools/debugger/__init__.py index e13516856..05ae5625c 100644 --- a/web/pgadmin/tools/debugger/__init__.py +++ b/web/pgadmin/tools/debugger/__init__.py @@ -65,9 +65,9 @@ class DebuggerModule(PgAdminModule): def get_own_javascripts(self): scripts = list() for name, script in [ + ['pgadmin.tools.debugger', 'js/index'], ['pgadmin.tools.debugger.controller', 'js/debugger'], ['pgadmin.tools.debugger.ui', 'js/debugger_ui'], - ['pgadmin.tools.debugger.direct', 'js/direct'] ]: scripts.append({ 'name': name, @@ -266,17 +266,6 @@ def index(): ) -@blueprint.route("/js/debugger.js") -@login_required -def script(): - """render the main debugger javascript file""" - return Response( - response=render_template("debugger/js/debugger.js", _=gettext), - status=200, - mimetype=MIMETYPE_APP_JS - ) - - @blueprint.route("/js/debugger_ui.js") @login_required def script_debugger_js(): @@ -288,7 +277,7 @@ def script_debugger_js(): ) -@blueprint.route("/js/direct.js") +@blueprint.route("/js/debugger.js") @login_required def script_debugger_direct_js(): """ @@ -296,7 +285,7 @@ def script_debugger_direct_js(): from server for debugging """ return Response( - response=render_template("debugger/js/direct.js", _=gettext), + response=render_template("debugger/js/debugger.js", _=gettext), status=200, mimetype=MIMETYPE_APP_JS ) @@ -885,7 +874,7 @@ def initialize_target(debug_type, trans_id, sid, did, # be be required if request.method == 'POST': de_inst.function_data['args_value'] = \ - json.loads(request.values['data'], encoding='utf-8') + json.loads(request.data, encoding='utf-8') # Update the debugger data session variable # Here frame_id is required when user debug the multilevel function. @@ -1562,10 +1551,17 @@ def clear_all_breakpoint(trans_id): else: template_path = DEBUGGER_SQL_V3_PATH + status = True + result = '' if conn.connected(): # get the data sent through post from client - if request.form['breakpoint_list']: - line_numbers = request.form['breakpoint_list'].split(",") + if 'breakpoint_list' in json.loads(request.data): + line_numbers = [] + if json.loads(request.data)['breakpoint_list'] is not None and \ + json.loads(request.data)['breakpoint_list'] != '': + line_numbers = json.loads(request.data)[ + 'breakpoint_list'].split(",") + for line_no in line_numbers: sql = render_template( "/".join([template_path, "clear_breakpoint.sql"]), @@ -1629,7 +1625,7 @@ def deposit_parameter_value(trans_id): if conn.connected(): # get the data sent through post from client - data = json.loads(request.values['data'], encoding='utf-8') + data = json.loads(request.data, encoding='utf-8') if data: sql = render_template( @@ -1842,8 +1838,8 @@ def set_arguments_sqlite(sid, did, scid, func_id): - Function Id """ - if request.values['data']: - data = json.loads(request.values['data'], encoding='utf-8') + if request.data: + data = json.loads(request.data, encoding='utf-8') try: for i in range(0, len(data)): diff --git a/web/pgadmin/tools/debugger/static/js/DebuggerConstants.js b/web/pgadmin/tools/debugger/static/js/DebuggerConstants.js new file mode 100644 index 000000000..64e7c2e37 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/DebuggerConstants.js @@ -0,0 +1,57 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +export const DEBUGGER_EVENTS = { + TRIGGER_CLEAR_ALL_BREAKPOINTS: 'TRIGGER_CLEAR_ALL_BREAKPOINTS', + TRIGGER_TOGGLE_BREAKPOINTS: 'TRIGGER_TOGGLE_BREAKPOINTS', + TRIGGER_STOP_DEBUGGING: 'TRIGGER_STOP_DEBUGGING', + TRIGGER_CONTINUE_DEBUGGING: 'TRIGGER_CONTINUE_DEBUGGING', + TRIGGER_STEPOVER_DEBUGGING: 'TRIGGER_STEPOVER_DEBUGGING', + TRIGGER_STEINTO_DEBUGGING: 'TRIGGER_STEINTO_DEBUGGING', + + SET_STACK: 'SET_STACK', + SET_MESSAGES: 'SET_MESSAGES', + SET_RESULTS: 'SET_RESULTS', + SET_LOCAL_VARIABLES: 'SET_LOCAL_VARIABLES', + SET_PARAMETERS: 'SET_PARAMETERS', + SET_FRAME: 'SET_FRAME', + + SET_LOCAL_VARIABLE_VALUE_CHANGE: 'SET_LOCAL_VARIABLE_VALUE_CHANGE', + SET_PARAMETERS_VALUE_CHANGE: 'SET_PARAMETERS_VALUE_CHANGE', + + DISABLE_MENU: 'DISABLE_MENU', + ENABLE_MENU: 'ENABLE_MENU', + ENABLE_SPECIFIC_MENU: 'ENABLE_SPECIFIC_MENU', + + FOCUS_PANEL: 'FOCUS_PANEL', + GET_TOOL_BAR_BUTTON_STATUS: 'GET_TOOL_BAR_BUTTON_STATUS' +}; + +export const PANELS = { + DEBUGGER: 'id-debugger', + PARAMETERS: 'id-parameters', + LOCAL_VARIABLES: 'id-local-variables', + MESSAGES: 'id-debugger-messages', + RESULTS: 'id-results', + STACK: 'id-stack', +}; + +export const MENUS = { + STEPINTO: 'step-into', + STEPOVER: 'step-over', + STOP: 'stop', + CONTINUE: 'continue', + CLEAR_ALL_BREAKPOINT: 'clear-al-breakpoint', + TOGGLE_BREAKPOINT: 'toggle-breakpoint' +}; + +export const DEBUGGER_ARGS = { + NO_DEFAULT: '', + NO_DEFAULT_VALUE: '', +}; diff --git a/web/pgadmin/tools/debugger/static/js/DebuggerModule.js b/web/pgadmin/tools/debugger/static/js/DebuggerModule.js new file mode 100644 index 000000000..cc5016a6e --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/DebuggerModule.js @@ -0,0 +1,727 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import $ from 'jquery'; + +import React from 'react'; +import ReactDOM from 'react-dom'; + +import gettext from 'sources/gettext'; +import { sprintf, registerDetachEvent } from 'sources/utils'; +import url_for from 'sources/url_for'; +import pgWindow from 'sources/window'; +import alertify from 'pgadmin.alertifyjs'; +import Kerberos from 'pgadmin.authenticate.kerberos'; + +import { refresh_db_node } from 'tools/sqleditor/static/js/sqleditor_title'; +import { _set_dynamic_tab } from '../../../sqleditor/static/js/show_query_tool'; +import getApiInstance from '../../../../static/js/api_instance'; +import Notify from '../../../../static/js/helpers/Notifier'; +import { getFunctionId, getProcedureId, getAppropriateLabel, setDebuggerTitle } from './debugger_utils'; +import FunctionArguments from './debugger_ui'; +import ModalProvider from '../../../../static/js/helpers/ModalProvider'; +import DebuggerComponent from './components/DebuggerComponent'; + +export default class Debugger { + static instance; + + static getInstance(...args) { + if (!Debugger.instance) { + Debugger.instance = new Debugger(...args); + } + return Debugger.instance; + } + + constructor(pgAdmin, pgBrowser) { + this.pgAdmin = pgAdmin; + this.pgBrowser = pgBrowser; + this.funcArgs = new FunctionArguments(); + this.wcDocker = window.wcDocker; + this.api = getApiInstance(); + } + + init() { + if (this.initialized) + return; + this.initialized = true; + // Initialize the context menu to display the debugging options when user open the context menu for functions, procedures, triggers and trigger functions. + this.pgBrowser.add_menus([ + { + name: 'direct_debugger', + node: 'function', + module: this, + applies: ['object', 'context'], + callback: 'getFunctionInformation', + category: gettext('Debugging'), + priority: 10, + label: gettext('Debug'), + data: { + object: 'function', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'canDebug', + }, { + name: 'global_debugger', + node: 'function', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + category: gettext('Debugging'), + priority: 10, + label: gettext('Set Breakpoint'), + data: { + object: 'function', + debug_type: 'indirect', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'canDebug', + }, { + name: 'procedure_direct_debugger', + node: 'procedure', + module: this, + applies: ['object', 'context'], + callback: 'getFunctionInformation', + category: gettext('Debugging'), + priority: 10, + label: gettext('Debug'), + data: { + object: 'procedure', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + }, { + name: 'procedure_indirect_debugger', + node: 'procedure', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + category: gettext('Debugging'), + priority: 10, + label: gettext('Set Breakpoint'), + data: { + object: 'procedure', + debug_type: 'indirect', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + }, { + name: 'trigger_function_indirect_debugger', + node: 'trigger_function', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + priority: 10, + label: gettext('Set Breakpoint'), + category: gettext('Debugging'), + icon: 'fa fa-arrow-circle-right', + data: { + object: 'trigger_function', + debug_type: 'indirect', + }, + enable: 'can_debug', + }, { + name: 'trigger_indirect_debugger', + node: 'trigger', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + priority: 10, + label: gettext('Set Breakpoint'), + category: gettext('Debugging'), + icon: 'fa fa-arrow-circle-right', + data: { + object: 'trigger', + debug_type: 'indirect', + }, + enable: 'can_debug', + }, { + name: 'package_function_direct_debugger', + node: 'edbfunc', + module: this, + applies: ['object', 'context'], + callback: 'getFunctionInformation', + category: gettext('Debugging'), + priority: 10, + label: gettext('Debug'), + data: { + object: 'edbfunc', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + }, { + name: 'package_function_global_debugger', + node: 'edbfunc', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + category: gettext('Debugging'), + priority: 10, + label: gettext('Set Breakpoint'), + data: { + object: 'edbfunc', + debug_type: 'indirect', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + }, { + name: 'package_procedure_direct_debugger', + node: 'edbproc', + module: this, + applies: ['object', 'context'], + callback: 'getFunctionInformation', + category: gettext('Debugging'), + priority: 10, + label: gettext('Debug'), + data: { + object: 'edbproc', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + }, { + name: 'package_procedure_global_debugger', + node: 'edbproc', + module: this, + applies: ['object', 'context'], + callback: 'checkFuncDebuggable', + category: gettext('Debugging'), + priority: 10, + label: gettext('Set Breakpoint'), + data: { + object: 'edbproc', + debug_type: 'indirect', + }, + icon: 'fa fa-arrow-circle-right', + enable: 'can_debug', + } + ]); + + /* Create and load the new frame required for debugger panel */ + this.frame = new this.pgBrowser.Frame({ + name: 'frm_debugger', + title: gettext('Debugger'), + showTitle: true, + isCloseable: true, + isRenamable: true, + isPrivate: true, + icon: 'fa fa-bug', + url: 'about:blank', + }); + + this.frame.load(this.pgBrowser.docker); + } + + // It will check weather the function is actually debuggable or not with pre-required condition. + canDebug(itemData, item, data) { + var t = this.pgBrowser.tree, + i = item, + d = itemData; + // To iterate over tree to check parent node + while (i) { + if ('catalog' == d._type) { + //Check if we are not child of catalog + return false; + } + i = t.hasParent(i) ? t.parent(i) : null; + d = i ? t.itemData(i) : null; + } + + // Find the function is really available in database + var tree = this.pgBrowser.tree, + info = tree.selected(), + d_ = info ? tree.itemData(info) : undefined; + + if (!d_) + return false; + + var treeInfo = tree.getTreeNodeHierarchy(info); + + // For indirect debugging user must be super user + if (data && data.debug_type && data.debug_type == 'indirect' && + !treeInfo.server.user.is_superuser) + return false; + + // Fetch object owner + var obj_owner = treeInfo.function && treeInfo.function.funcowner || + treeInfo.procedure && treeInfo.procedure.funcowner || + treeInfo.edbfunc && treeInfo.edbfunc.funcowner || + treeInfo.edbproc && treeInfo.edbproc.funcowner; + + // Must be a super user or object owner to create breakpoints of any kind + if (!(treeInfo.server.user.is_superuser || obj_owner == treeInfo.server.user.name)) + return false; + + // For trigger node, language will be undefined - we should allow indirect debugging for trigger node + if ((d_.language == undefined && d_._type == 'trigger') || + (d_.language == undefined && d_._type == 'edbfunc') || + (d_.language == undefined && d_._type == 'edbproc')) { + return true; + } + + let returnValue = true; + if (d_.language != 'plpgsql' && d_.language != 'edbspl') { + returnValue = false; + } + + return returnValue; + } + /* + For the direct debugging, we need to fetch the function information to display in the dialog so "generate_url" + will dynamically generate the URL from the server_id, database_id, schema_id and function id. + */ + generate_url(_url, treeInfo, node) { + var url = '{BASEURL}{URL}/{OBJTYPE}{REF}', + ref = ''; + + _.each( + _.sortBy( + _.values( + _.pick(treeInfo, + function (v, k) { + return (k != 'server_group'); + }) + ), + function (o) { + return o.priority; + } + ), + function (o) { + ref = sprintf('%s/%s', ref, encodeURI(o._id)); + }); + + var args = { + 'URL': _url, + 'BASEURL': url_for('debugger.index'), + 'REF': ref, + 'OBJTYPE': encodeURI(node.type), + }; + + return url.replace(/{(\w+)}/g, function (match, arg) { + return args[arg]; + }); + } + + getUrl(_d, newTreeInfo, trans_id) { + let baseUrl = undefined; + if (_d._type == 'function' || _d._type == 'edbfunc') { + baseUrl = url_for( + 'debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': trans_id, + 'sid': newTreeInfo.server._id, + 'did': newTreeInfo.database._id, + 'scid': newTreeInfo.schema._id, + 'func_id': getFunctionId(newTreeInfo), + } + ); + } else if (_d._type == 'procedure' || _d._type == 'edbproc') { + baseUrl = url_for( + 'debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': trans_id, + 'sid': newTreeInfo.server._id, + 'did': newTreeInfo.database._id, + 'scid': newTreeInfo.schema._id, + 'func_id': getProcedureId(newTreeInfo), + } + ); + } + return baseUrl; + } + + checkDbNameChange(data, dbNode, newTreeInfo, db_label) { + if (data && data.data_obj && data.data_obj.db_name != newTreeInfo.database.label) { + db_label = data.data_obj.db_name; + var message = `Current database has been moved or renamed to ${db_label}. Click on the OK button to refresh the database name.`; + refresh_db_node(message, dbNode); + } + return db_label; + } + /* + Get the function information for the direct debugging to display the functions arguments and other informations + in the user input dialog + */ + getFunctionInformation(args, item) { + var self = this, + t = this.pgBrowser.tree, + i = item || t.selected(), + d = i ? t.itemData(i) : undefined, + node = d && this.pgBrowser.Nodes[d._type], + tree_data = this.pgBrowser.tree.translateTreeNodeIdFromReactTree(i), + db_data = this.pgBrowser.tree.findNode(tree_data[3]), + dbNode = db_data.domNode; + + if (!d) + return; + + var is_edb_proc = d._type == 'edbproc'; + + var treeInfo = t.getTreeNodeHierarchy(i), + _url = this.generate_url('init', treeInfo, node); + + this.api({ + url: _url, + method: 'GET', + }).then((res) => { + let debug_info = res.data.data.debug_info, + trans_id = res.data.data.trans_id; + // Open dialog to take the input arguments from user if function having input arguments + if (debug_info[0]['require_input']) { + self.funcArgs.show(debug_info[0], 0, is_edb_proc, trans_id); + } else { + /* Initialize the target and create asynchronous connection and unique transaction ID + If there is no arguments to the functions then we should not ask for for function arguments and + Directly open the panel */ + var _t = this.pgBrowser.tree, + _i = _t.selected(), + _d = _i ? _t.itemData(_i) : undefined; + + var newTreeInfo = _t.getTreeNodeHierarchy(_i); + + var baseUrl = self.getUrl(_d, newTreeInfo, trans_id); + + self.api({ + url: baseUrl, + method: 'GET', + }) + .then(function (result) { + + var data = result.data.data; + + var url = url_for('debugger.direct', { + 'trans_id': trans_id, + }); + + var browser_preferences = self.pgBrowser.get_preferences_for_module('browser'); + var open_new_tab = browser_preferences.new_browser_tab_open; + if (open_new_tab && open_new_tab.includes('debugger')) { + window.open(url, '_blank'); + // Send the signal to runtime, so that proper zoom level will be set. + setTimeout(function () { + self.pgBrowser.send_signal_to_runtime('Runtime new window opened'); + }, 500); + } else { + self.pgBrowser.Events.once( + 'pgadmin-browser:frame:urlloaded:frm_debugger', + function (frame) { + frame.openURL(url); + }); + + // Create the debugger panel as per the data received from user input dialog. + var dashboardPanel = self.pgBrowser.docker.findPanels( + 'properties' + ), + panel = self.pgBrowser.docker.addPanel( + 'frm_debugger', self.wcDocker.DOCK.STACKED, dashboardPanel[0] + ), + db_label = newTreeInfo.database.label; + panel.trans_id = trans_id; + + _set_dynamic_tab(self.pgBrowser, browser_preferences['dynamic_tabs']); + registerDetachEvent(panel); + + db_label = self.checkDbNameChange(data, dbNode, newTreeInfo, db_label); + + var label = getAppropriateLabel(newTreeInfo); + setDebuggerTitle(panel, browser_preferences, label, newTreeInfo.schema.label, db_label, null, self.pgBrowser); + + panel.focus(); + + // Register Panel Closed event + panel.on(self.wcDocker.EVENT.CLOSED, function () { + var closeUrl = url_for('debugger.close', { + 'trans_id': trans_id, + }); + self.api({ + url: closeUrl, + method: 'DELETE', + }); + }); + + panel.on(self.wcDocker.EVENT.RENAME, function (panel_data) { + self.panel_rename_event(panel_data, panel, treeInfo); + }); + } + }) + .catch(function (e) { + Notify.alert( + gettext('Debugger Target Initialization Error'), + e.responseJSON.errormsg + ); + }); + } + }) + .catch((err) => { + Notify.alert(gettext('Debugger Error'), err.response.data.errormsg); + }); + } + + checkFuncDebuggable(args, item) { + var self = this, + t = this.pgBrowser.tree, + i = item || t.selected(), + d = i ? t.itemData(i) : undefined, + node = d && this.pgBrowser.Nodes[d._type]; + + if (!d) + return; + + var treeInfo = t.getTreeNodeHierarchy(i), + _url = this.generate_url('init', treeInfo, node); + + self.api({ + url: _url, + cache: false, + }) + .then(function (res) { + self.startGlobalDebugger(args, item, res.data.data.trans_id); + }) + .catch(function (xhr) { + self.onFail(xhr); + }); + } + + getGlobalUrl(d, treeInfo, trans_id) { + var baseUrl = null; + if (d._type == 'function' || d._type == 'edbfunc') { + baseUrl = url_for( + 'debugger.initialize_target_for_function', { + 'debug_type': 'indirect', + 'trans_id': trans_id, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': getFunctionId(treeInfo), + } + ); + } else if (d._type == 'procedure' || d._type == 'edbproc') { + baseUrl = url_for( + 'debugger.initialize_target_for_function', { + 'debug_type': 'indirect', + 'trans_id': trans_id, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': getProcedureId(treeInfo), + } + ); + } else if (d._type == 'trigger_function') { + baseUrl = url_for( + 'debugger.initialize_target_for_function', { + 'debug_type': 'indirect', + 'trans_id': trans_id, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.trigger_function._id, + } + ); + } else if (d._type == 'trigger' && 'table' in treeInfo) { + baseUrl = url_for( + 'debugger.initialize_target_for_trigger', { + 'debug_type': 'indirect', + 'trans_id': trans_id, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.table._id, + 'tri_id': treeInfo.trigger._id, + } + ); + } else if (d._type == 'trigger' && 'view' in treeInfo) { + baseUrl = url_for( + 'debugger.initialize_target_for_trigger', { + 'debug_type': 'indirect', + 'trans_id': trans_id, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.view._id, + 'tri_id': treeInfo.trigger._id, + } + ); + } + + return baseUrl; + } + + updatedDbLabel(res, db_label, treeInfo, dbNode) { + if (res.data.data.data_obj.db_name != treeInfo.database.label) { + db_label = res.data.data.data_obj.db_name; + var message = gettext(`Current database has been moved or renamed to ${db_label}. Click on the OK button to refresh the database name.`); + refresh_db_node(message, dbNode); + } + } + + //Callback function when user start the indirect debugging ( Listen to another session to invoke the target ) + startGlobalDebugger(args, item, trans_id) { + // Initialize the target and create asynchronous connection and unique transaction ID + var self = this; + var t = this.pgBrowser.tree, + i = item || t.selected(), + d = i ? t.itemData(i) : undefined, + tree_data = this.pgBrowser.tree.translateTreeNodeIdFromReactTree(i), + db_data = this.pgBrowser.tree.findNode(tree_data[3]), + dbNode = db_data.domNode; + + if (!d) + return; + + var treeInfo = t.getTreeNodeHierarchy(i); + var baseUrl = self.getGlobalUrl(d, treeInfo, trans_id); + + self.api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + var url = url_for('debugger.direct', { + 'trans_id': res.data.data.debuggerTransId, + }); + var browser_preferences = self.pgBrowser.get_preferences_for_module('browser'); + var open_new_tab = browser_preferences.new_browser_tab_open; + if (open_new_tab && open_new_tab.includes('debugger')) { + window.open(url, '_blank'); + // Send the signal to runtime, so that proper zoom level will be set. + setTimeout(function () { + self.pgBrowser.send_signal_to_runtime('Runtime new window opened'); + }, 500); + } else { + self.pgBrowser.Events.once( + 'pgadmin-browser:frame:urlloaded:frm_debugger', + function (frame) { + frame.openURL(url); + }); + + // Create the debugger panel as per the data received from user input dialog. + var dashboardPanel = self.pgBrowser.docker.findPanels( + 'properties' + ), + panel = self.pgBrowser.docker.addPanel( + 'frm_debugger', self.wcDocker.DOCK.STACKED, dashboardPanel[0] + ), + db_label = treeInfo.database.label; + panel.trans_id = trans_id; + + self.updatedDbLabel(res, db_label, treeInfo, dbNode); + + var label = getAppropriateLabel(treeInfo); + setDebuggerTitle(panel, browser_preferences, label, db_label, db_label, null, self.pgBrowser); + + panel.focus(); + + // Panel Closed event + panel.on(self.wcDocker.EVENT.CLOSED, function () { + var closeUrl = url_for('debugger.close', { + 'trans_id': res.data.data.debuggerTransId, + }); + $.ajax({ + url: closeUrl, + method: 'DELETE', + }); + }); + + // Panel Rename event + panel.on(self.wcDocker.EVENT.RENAME, function (panel_data) { + self.panel_rename_event(panel_data, panel, treeInfo); + }); + } + }) + .catch(self.raiseError); + } + + raiseError(xhr) { + try { + var err = xhr.response.data; + if (err.errormsg.search('Ticket expired') !== -1) { + let fetchTicket = Kerberos.fetch_ticket(); + fetchTicket.then( + function () { + self.startGlobalDebugger(); + }, + function (error) { + Notify.alert(gettext('Debugger Error'), error); + } + ); + } else { + if (err.success == 0) { + Notify.alert(gettext('Debugger Error'), err.errormsg); + } + } + } catch (e) { + console.warn(e.stack || e); + } + } + + /* We should get the transaction id from the server during initialization here */ + load(container, trans_id, debug_type, function_name_with_arguments, layout) { + this.trans_id = trans_id; + this.debug_type = debug_type; + this.first_time_indirect_debug = false; + this.direct_execution_completed = false; + this.polling_timeout_idle = false; + this.debug_restarted = false; + this.is_user_aborted_debugging = false; + this.is_polling_required = true; // Flag to stop unwanted ajax calls + this.function_name_with_arguments = function_name_with_arguments; + this.layout = layout; + this.preferences = this.pgBrowser.get_preferences_for_module('debugger'); + + let panel = null; + let selectedNodeInfo = pgWindow.pgAdmin.Browser.tree.getTreeNodeHierarchy( + pgWindow.pgAdmin.Browser.tree.selected() + ); + + // Find debugger panel. + pgWindow.pgAdmin.Browser.docker.findPanels('frm_debugger').forEach(p => { + if (parseInt(p.trans_id) == trans_id) { + panel = p; + } + }); + + ReactDOM.render( + + + , + container + ); + } + + onFail(xhr) { + try { + var err = xhr.response.data; + if (err.success == 0) { + Notify.alert(gettext('Debugger Error'), err.errormsg); + } + } catch (e) { + console.warn(e.stack || e); + } + } + + panel_rename_event(panel_data, panel, treeInfo) { + alertify.prompt('', panel_data.$titleText[0].textContent, + // We will execute this function when user clicks on the OK button + function (evt, value) { + if (value) { + // Remove the leading and trailing white spaces. + value = value.trim(); + let preferences = this.pgBrowser.get_preferences_for_module('browser'); + var name = getAppropriateLabel(treeInfo); + setDebuggerTitle(panel, preferences, name, treeInfo.schema.label, treeInfo.database.label, value, this.pgBrowser); + } + }, + // We will execute this function when user clicks on the Cancel + // button. Do nothing just close it. + function (evt) { evt.cancel = false; } + ).set({ 'title': gettext('Rename Panel') }); + } +} \ No newline at end of file diff --git a/web/pgadmin/tools/debugger/static/js/components/DebuggerArgs.ui.js b/web/pgadmin/tools/debugger/static/js/components/DebuggerArgs.ui.js new file mode 100644 index 000000000..ef889f643 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/DebuggerArgs.ui.js @@ -0,0 +1,124 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import gettext from 'sources/gettext'; +import BaseUISchema from 'sources/SchemaView/base_schema.ui'; + +class ArgementsCollectionSchema extends BaseUISchema { + constructor() { + super({ + name: undefined, + type: undefined, + is_null: false, + expr: false, + value: undefined, + use_default: false, + default_value: undefined, + }); + + this.isValid = true; + } + + get baseFields() { + return [ + { + id: 'name', + label: gettext('Name'), + editable: false, + type: 'text', + cell: '', + }, + { + id: 'type', + label: gettext('Type'), + editable: false, + type: 'text', + cell: '', + width: 30 + }, + { + id: 'is_null', + label: gettext('Null?'), + type: 'checkbox', + cell: 'checkbox', + width: 38, + align_center: true, + }, + { + id: 'expr', + label: gettext('Expression?'), + type: 'checkbox', + cell: 'checkbox', + width: 60, + align_center: true, + }, + { + id: 'value', + label: gettext('Value'), + type: 'text', + cell: (state) => { + let dtype = 'text'; + if(state.type == 'date') { + dtype = 'datetimepicker'; + } else if(state.type == 'numeric') { + dtype = 'numeric'; + } + + return { + cell: dtype, + controlProps: { + ...(dtype=='datetimepicker' && { + placeholder: gettext('YYYY-MM-DD'), + autoOk: true, pickerType: 'Date', ampm: false, + }) + } + }; + }, + editable: true, + align_center: true, + }, + { + id: 'use_default', + label: gettext('Use Default?'), + type: 'checkbox', + cell: 'checkbox', + width: 62, + disabled: (state) => {return state.disable_use_default;} + }, + { + id: 'default_value', + label: gettext('Default'), + type: 'text', + editable: false, + cell: '', + }, + ]; + } + +} + +export class DebuggerArgumentSchema extends BaseUISchema { + constructor() { + super(); + } + + get baseFields() { + return [{ + id: 'aregsCollection', label: gettext(''), + mode: ['edit'], + type: 'collection', + canAdd: false, + canDelete: false, + canEdit: false, + editable: false, + disabled: false, + schema: new ArgementsCollectionSchema(), + }]; + } +} diff --git a/web/pgadmin/tools/debugger/static/js/components/DebuggerArgumentComponent.jsx b/web/pgadmin/tools/debugger/static/js/components/DebuggerArgumentComponent.jsx new file mode 100644 index 000000000..f553aa840 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/DebuggerArgumentComponent.jsx @@ -0,0 +1,917 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import _ from 'lodash'; +import PropTypes from 'prop-types'; + +import React, { useEffect, useRef } from 'react'; + +import DeleteSweepIcon from '@material-ui/icons/DeleteSweep'; +import { Box } from '@material-ui/core'; +import { makeStyles } from '@material-ui/core/styles'; +import BugReportRoundedIcon from '@material-ui/icons/BugReportRounded'; +import CloseSharpIcon from '@material-ui/icons/CloseSharp'; + +import url_for from 'sources/url_for'; +import gettext from 'sources/gettext'; +import * as commonUtils from 'sources/utils'; +import pgAdmin from 'sources/pgadmin'; +import Alertify from 'pgadmin.alertifyjs'; + +import SchemaView from '../../../../../static/js/SchemaView'; +import getApiInstance from '../../../../../static/js/api_instance'; +import { DefaultButton, PrimaryButton } from '../../../../../static/js/components/Buttons'; +import { getAppropriateLabel, setDebuggerTitle } from '../debugger_utils'; +import Notify from '../../../../../static/js/helpers/Notifier'; +import { DebuggerArgumentSchema } from './DebuggerArgs.ui'; +import { DEBUGGER_ARGS } from '../DebuggerConstants'; + + + +const useStyles = makeStyles((theme) => + ({ + root: { + display: 'flex', + flexDirection: 'column', + flexGrow: 1, + height: '100%', + backgroundColor: theme.palette.background.default, + overflow: 'hidden', + }, + body: { + display: 'flex', + flexDirection: 'column', + height: '100%', + }, + actionBtn: { + alignItems: 'flex-start', + }, + buttonMargin: { + marginLeft: '0.5em' + }, + debugBtn: { + fontSize: '1.12rem !important', + }, + footer: { + borderTop: '1px solid #dde0e6 !important', + padding: '0.5rem', + display: 'flex', + width: '100%', + background: theme.otherVars.headerBg, + } + }), +); + + +export default function DebuggerArgumentComponent({ debuggerInfo, restartDebug, isEdbProc, transId, ...props }) { + const classes = useStyles(); + const debuggerArgsSchema = useRef(new DebuggerArgumentSchema()); + const api = getApiInstance(); + const debuggerArgsData = useRef([]); + const [loadArgs, setLoadArgs] = React.useState(0); + const [isDisableDebug, setIsDisableDebug] = React.useState(true); + const debuggerFinalArgs = useRef([]); + const InputArgIds = useRef([]); + const wcDocker = window.wcDocker; + + function getURL() { + var _Url = null; + + if (restartDebug == 0) { + var t = pgAdmin.Browser.tree, + i = t.selected(), + d = i ? t.itemData(i) : undefined; + + if (!d) + return; + + var treeInfo = t.getTreeNodeHierarchy(i); + + if (d._type == 'function') { + // Get the existing function parameters available from sqlite database + _Url = url_for('debugger.get_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.function._id, + }); + } else if (d._type == 'procedure') { + // Get the existing function parameters available from sqlite database + _Url = url_for('debugger.get_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.procedure._id, + }); + } else if (d._type == 'edbfunc') { + // Get the existing function parameters available from sqlite database + _Url = url_for('debugger.get_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbfunc._id, + }); + } else if (d._type == 'edbproc') { + // Get the existing function parameters available from sqlite database + _Url = url_for('debugger.get_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbproc._id, + }); + } + } else { + // Get the existing function parameters available from sqlite database + _Url = url_for('debugger.get_arguments', { + 'sid': debuggerInfo.server_id, + 'did': debuggerInfo.database_id, + 'scid': debuggerInfo.schema_id, + 'func_id': debuggerInfo.function_id, + }); + } + return _Url; + } + + function setArgs(res) { + let funcArgsData = []; + if (res.data.data.args_count != 0) { + setIsDisableDebug(false); + for(const i of res.data.data.result) { + // Below will format the data to be stored in sqlite database + funcArgsData.push({ + 'arg_id': i['arg_id'], + 'is_null': i['is_null'], + 'is_expression': i['is_expression'], + 'use_default': i['use_default'], + 'value': i['value'], + }); + } + } + return funcArgsData; + } + + function checkModesAndTypes() { + // Check modes and type in the arguments. + if (debuggerInfo['proargmodes'] != null) { + var argmodes = debuggerInfo['proargmodes'].split(','); + argmodes.forEach((NULL, indx) => { + if (argmodes[indx] == 'i' || argmodes[indx] == 'b' || + (isEdbProc && argmodes[indx] == 'o')) { + InputArgIds.current.push(indx); + } + }); + } else { + var argtypes = debuggerInfo['proargtypenames'].split(','); + argtypes.forEach((NULL, indx) => { + InputArgIds.current.push(indx); + }); + } + + // Get argument types + let argType = debuggerInfo['proargtypenames'].split(','); + let argMode, defaultArgs, argCnt; + + if (debuggerInfo['proargmodes'] != null) { + argMode = debuggerInfo['proargmodes'].split(','); + } + + if (debuggerInfo['pronargdefaults']) { + let defaultArgsCount = debuggerInfo['pronargdefaults']; + defaultArgs = debuggerInfo['proargdefaults'].split(','); + argCnt = defaultArgsCount; + } + + return [argType, argMode, argCnt, defaultArgs]; + } + + function setDefaultValues(defValList, argCnt, argName, argMode, defaultArgs) { + for (let j = (argName.length - 1); j >= 0; j--) { + if (debuggerInfo['proargmodes'] != null) { + if (argMode && (argMode[j] == 'i' || argMode[j] == 'b' || + (isEdbProc && argMode[j] == 'o'))) { + defValList[j] = DEBUGGER_ARGS.NO_DEFAULT; + if (argCnt) { + argCnt = argCnt - 1; + defValList[j] = defaultArgs[argCnt]; + } + } + } else if (argCnt) { + argCnt = argCnt - 1; + defValList[j] = defaultArgs[argCnt]; + } else { + defValList[j] = DEBUGGER_ARGS.NO_DEFAULT; + } + } + } + + function addArg(argtype, defvalList, argname, useDefValue) { + let myObj = {}; + if (defvalList != DEBUGGER_ARGS.NO_DEFAULT) { + useDefValue = true; + } + myObj = { + 'name': argname, + 'type': argtype, + 'use_default': useDefValue, + 'default_value': defvalList, + 'disable_use_default': defvalList == DEBUGGER_ARGS.NO_DEFAULT + }; + + return myObj; + } + + function getArgsList(argType, argMode, defValList, argName, useDefValue) { + var myObj = []; + if (argType.length != 0) { + for (let i = 0; i < argType.length; i++) { + if (debuggerInfo['proargmodes'] != null) { + if (argMode && (argMode[i] == 'i' || argMode[i] == 'b' || + (isEdbProc && argMode[i] == 'o'))) { + useDefValue = false; + myObj.push(addArg(argType[i], defValList[i], argName[i], useDefValue)); + } + } else { + useDefValue = false; + myObj.push(addArg(argType[i], defValList[i], argName[i], useDefValue)); + } + } + } + return myObj; + } + + function setFuncObj(funcArgsData, argMode, argType, argName, defValList, isUnnamedParam=false) { + let index, values, vals, funcObj=[]; + for(const argData of funcArgsData) { + index = argData['arg_id']; + if (debuggerInfo['proargmodes'] != null && + (argMode && argMode[index] == 'o' && !isEdbProc) && !isUnnamedParam) { + continue; + } + + values = []; + if (argType[index].indexOf('[]') != -1) { + vals = argData['value'].split(','); + _.each(vals, function (val) { + values.push({ + 'value': val, + }); + }); + } else { + values = argData['value']; + } + + funcObj.push({ + 'name': argName[index], + 'type': argType[index], + 'is_null': argData['is_null'] ? true : false, + 'expr': argData['is_expression'] ? true : false, + 'value': values, + 'use_default': argData['use_default'] ? true : false, + 'default_value': defValList[index], + 'disable_use_default': isUnnamedParam ? defValList[index] == DEBUGGER_ARGS.NO_DEFAULT_VALUE : defValList[index] == DEBUGGER_ARGS.NO_DEFAULT, + }); + } + + return funcObj; + } + + function setUnnamedParamNonDefVal(argType, defValList, myargname) { + let myObj= []; + for (let i = 0; i < argType.length; i++) { + myObj.push({ + 'name': myargname[i], + 'type': argType[i], + 'use_default': false, + 'default_value': DEBUGGER_ARGS.NO_DEFAULT_VALUE, + 'disable_use_default': true + }); + defValList[i] = DEBUGGER_ARGS.NO_DEFAULT_VALUE; + } + return myObj; + } + + function setUnnamedParamDefVal(myargname, argCnt, defValList, defaultArgs) { + for (let j = (myargname.length - 1); j >= 0; j--) { + if (argCnt) { + argCnt = argCnt - 1; + defValList[j] = defaultArgs[argCnt]; + } else { + defValList[j] = DEBUGGER_ARGS.NO_DEFAULT_VALUE; + } + } + + } + + function checkIsDefault(defValList) { + let useDefValue = false; + if (defValList != DEBUGGER_ARGS.NO_DEFAULT_VALUE) { + useDefValue = true; + } + + return useDefValue; + } + function setUnnamedArgs(argType, argMode, useDefValue, defValList, myargname) { + let myObj = []; + for (let i = 0; i < argType.length; i++) { + if (debuggerInfo['proargmodes'] == null) { + useDefValue = checkIsDefault(defValList[i]); + myObj.push({ + 'name': myargname[i], + 'type': argType[i], + 'use_default': useDefValue, + 'default_value': defValList[i], + 'disable_use_default': defValList[i] == DEBUGGER_ARGS.NO_DEFAULT_VALUE, + }); + } else { + if (argMode && (argMode[i] == 'i' || argMode[i] == 'b' || + (isEdbProc && argMode[i] == 'o'))) { + useDefValue = checkIsDefault(defValList[i]); + myObj.push({ + 'name': myargname[i], + 'type': argType[i], + 'use_default': useDefValue, + 'default_value': defValList[i], + 'disable_use_default': defValList[i] == DEBUGGER_ARGS.NO_DEFAULT_VALUE, + }); + } + } + } + return myObj; + } + + function generateArgsNames(argType) { + let myargname = []; + for (let i = 0; i < argType.length; i++) { + myargname[i] = 'dbgparam' + (i + 1); + } + + return myargname; + } + + function setDebuggerArgs(funcArgsData, funcObj, myObj) { + // Check if the arguments already available in the sqlite database + // then we should use the existing arguments + let initVal = { 'aregsCollection': [] }; + if (funcArgsData.length == 0) { + initVal = { 'aregsCollection': myObj }; + debuggerArgsData.current = initVal; + } else { + initVal = { 'aregsCollection': funcObj }; + debuggerArgsData.current = initVal; + } + } + + function getDebuggerArgsSchema() { + // Variables to store the data sent from sqlite database + let funcArgsData = []; + + // As we are not getting Browser.tree when we debug again + // so tree info will be updated from the server data + let baseURL = getURL(); + + api({ + url: baseURL, + method: 'GET', + }) + .then(function (res) { + funcArgsData = setArgs(res); + var argName; + + var defValList = []; + var myObj = []; + var funcObj = []; + + var [argType, argMode, argCnt, defaultArgs] = checkModesAndTypes(); + + var useDefValue; + + if (debuggerInfo['proargnames'] != null) { + argName = debuggerInfo['proargnames'].split(','); + + // It will assign default values to "Default value" column + setDefaultValues(defValList, argCnt, argName, argMode, defaultArgs); + // It wil check and add args in myObj list. + myObj = getArgsList(argType, argMode, defValList, argName, useDefValue); + + // Need to update the funcObj variable from sqlite database if available + if (funcArgsData.length != 0) { + funcObj = setFuncObj(funcArgsData, argMode, argType, argName, defValList); + } + } + else { + /* Generate the name parameter if function do not have arguments name + like dbgparam1, dbgparam2 etc. */ + var myargname = generateArgsNames(argType); + + // If there is no default arguments + if (!debuggerInfo['pronargdefaults']) { + myObj = setUnnamedParamNonDefVal(argType, defValList, myargname); + } else { + // If there is default arguments + //Below logic will assign default values to "Default value" column + setUnnamedParamDefVal(myargname, argCnt, defValList, defaultArgs); + + myObj = setUnnamedArgs(argType, argMode, useDefValue, defValList, myargname); + } + + // Need to update the funcObj variable from sqlite database if available + if (funcArgsData.length != 0) { + funcObj = setFuncObj(funcArgsData, argMode, argType, myargname, defValList, true); + } + } + + setDebuggerArgs(funcArgsData, funcObj, myObj); + debuggerArgsSchema.current = new DebuggerArgumentSchema(); + setLoadArgs(Math.floor(Math.random() * 1000)); + }) + .catch(() => { + Notify.alert( + gettext('Debugger Error'), + gettext('Unable to fetch the arguments from server') + ); + }); + } + + useEffect(() => { + getDebuggerArgsSchema(); + }, []); + + let initData = () => new Promise((resolve, reject) => { + try { + resolve(debuggerArgsData.current); + } catch (error) { + reject(error); + } + }); + + function clearArgs() { + setLoadArgs(0); + let base_url = null; + + if (restartDebug == 0) { + let selectedItem = pgAdmin.Browser.tree.selected(); + let itemData = pgAdmin.Browser.tree.itemData(selectedItem); + if (!itemData) + return; + + let treeInfo = pgAdmin.Browser.tree.getTreeNodeHierarchy(selectedItem); + + base_url = url_for('debugger.clear_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': itemData._id, + }); + } else { + base_url = url_for('debugger.clear_arguments', { + 'sid': debuggerInfo.server_id, + 'did': debuggerInfo.database_id, + 'scid': debuggerInfo.schema_id, + 'func_id': debuggerInfo.function_id, + }); + } + api({ + url: base_url, + method: 'POST', + data: {}, + }).then(function () { + /* Get updated debugger arguments */ + getDebuggerArgsSchema(); + /* setTimeout required to get updated argruments as 'Clear All' will delete all saved arguments form sqlite db. */ + setTimeout(() => { + /* Reload the debugger arguments */ + setLoadArgs(Math.floor(Math.random() * 1000)); + /* Disable debug button */ + setIsDisableDebug(true); + }, 100); + }).catch(function (er) { + Notify.alert( + gettext('Clear failed'), + er.responseJSON.errormsg + ); + }); + } + + function setDebuggingArgs(argsList, argSet) { + if (argsList.length === 0) { + debuggerFinalArgs.current.changed.forEach(changedArg => { + argSet.push(changedArg.name); + argsList.push(changedArg); + }); + + debuggerArgsData.current.aregsCollection.forEach(arg => { + if (!argSet.includes(arg.name)) { + argSet.push(arg.name); + argsList.push(arg); + } + }); + } + } + + function checkArgsVal(arg, argsValueList) { + // Check if value is set to NULL then we should ignore the value field + if (arg.is_null) { + argsValueList.push({ + 'name': arg.name, + 'type': arg.type, + 'value': 'NULL', + }); + } else { + // Check if default value to be used or not + if (arg.use_default) { + argsValueList.push({ + 'name': arg.name, + 'type': arg.type, + 'value': arg.default_value, + }); + } else { + argsValueList.push({ + 'name': arg.name, + 'type': arg.type, + 'value': arg.value, + }); + } + } + } + function getFunctionID(d, treeInfo) { + var functionId; + if (d._type == 'function') { + functionId = treeInfo.function._id; + } else if (d._type == 'procedure') { + functionId = treeInfo.procedure._id; + } else if (d._type == 'edbfunc') { + functionId = treeInfo.edbfunc._id; + } else if (d._type == 'edbproc') { + functionId = treeInfo.edbproc._id; + } + return functionId; + } + + function setSqliteFuncArgs(d, treeInfo, arg, intCount, sqliteFuncArgsList) { + if (restartDebug == 0) { + var functionId = getFunctionID(d, treeInfo); + // Below will format the data to be stored in sqlite database + sqliteFuncArgsList.push({ + 'server_id': treeInfo.server._id, + 'database_id': treeInfo.database._id, + 'schema_id': treeInfo.schema._id, + 'function_id': functionId, + 'arg_id': InputArgIds.current[intCount], + 'is_null': arg.is_null ? 1 : 0, + 'is_expression': arg.expr ? 1 : 0, + 'use_default': arg.use_default ? 1 : 0, + 'value': arg.value, + }); + } else { + // Below will format the data to be stored in sqlite database + sqliteFuncArgsList.push({ + 'server_id': debuggerInfo.server_id, + 'database_id': debuggerInfo.database_id, + 'schema_id': debuggerInfo.schema_id, + 'function_id': debuggerInfo.function_id, + 'arg_id': InputArgIds.current[intCount], + 'is_null': arg.is_null ? 1 : 0, + 'is_expression': arg.expr ? 1 : 0, + 'use_default': arg.use_default ? 1 : 0, + 'value': debuggerInfo.value, + }); + } + + return sqliteFuncArgsList; + } + + function checkTypeAndGetUrl(d, treeInfo) { + var baseUrl; + if (d && d._type == 'function') { + baseUrl = url_for('debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': transId, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.function._id, + }); + } else if (d && d._type == 'procedure') { + baseUrl = url_for('debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': transId, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.procedure._id, + }); + } else if (d && d._type == 'edbfunc') { + baseUrl = url_for('debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': transId, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbfunc._id, + }); + } else if (d && d._type == 'edbproc') { + baseUrl = url_for('debugger.initialize_target_for_function', { + 'debug_type': 'direct', + 'trans_id': transId, + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbproc._id, + }); + } + + return baseUrl; + } + + function getSetArgsUrl(d, treeInfo) { + var baseUrl; + if (d._type == 'function') { + baseUrl = url_for('debugger.set_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.function._id, + }); + } else if (d._type == 'procedure') { + baseUrl = url_for('debugger.set_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.procedure._id, + }); + } else if (d._type == 'edbfunc') { + // Get the existing function parameters available from sqlite database + baseUrl = url_for('debugger.set_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbfunc._id, + }); + } else if (d._type == 'edbproc') { + // Get the existing function parameters available from sqlite database + baseUrl = url_for('debugger.set_arguments', { + 'sid': treeInfo.server._id, + 'did': treeInfo.database._id, + 'scid': treeInfo.schema._id, + 'func_id': treeInfo.edbproc._id, + }); + } + + return baseUrl; + } + + function getSelectedNodeData() { + var treeInfo, d; + if (restartDebug == 0) { + var t = pgAdmin.Browser.tree, + i = t.selected(); + + d = i ? t.itemData(i) : undefined; + + if (!d) + return; + + treeInfo = t.getTreeNodeHierarchy(i); + } + return [treeInfo, d]; + } + + function startDebugging() { + var self = this; + /* Initialize the target once the debug button is clicked and create asynchronous connection + and unique transaction ID If the debugging is started again then treeInfo is already stored. */ + var [treeInfo, d] = getSelectedNodeData(); + if(!d) return; + + var argsValueList = []; + var sqliteFuncArgsList = []; + var intCount = 0; + + let argsList = debuggerFinalArgs.current?.changed ? [] : debuggerArgsData.current.aregsCollection; + let argSet = []; + + setDebuggingArgs(argsList, argSet); + + argsList.forEach(arg => { + checkArgsVal(arg, argsValueList); + setSqliteFuncArgs(d, treeInfo, arg, intCount, sqliteFuncArgsList); + intCount = intCount + 1; + }); + + var baseUrl; + + /* If debugging is not started again then we should initialize the target otherwise not */ + if (restartDebug == 0) { + baseUrl = checkTypeAndGetUrl(d, treeInfo); + + api({ + url: baseUrl, + method: 'POST', + data: JSON.stringify(argsValueList), + }) + .then(function (res_post) { + + var url = url_for( + 'debugger.direct', { + 'trans_id': res_post.data.data.debuggerTransId, + } + ); + + var browserPreferences = pgAdmin.Browser.get_preferences_for_module('browser'); + var open_new_tab = browserPreferences.new_browser_tab_open; + if (open_new_tab && open_new_tab.includes('debugger')) { + window.open(url, '_blank'); + // Send the signal to runtime, so that proper zoom level will be set. + setTimeout(function () { + pgAdmin.Browser.send_signal_to_runtime('Runtime new window opened'); + }, 500); + } else { + pgAdmin.Browser.Events.once( + 'pgadmin-browser:frame:urlloaded:frm_debugger', + function (frame) { + frame.openURL(url); + }); + + // Create the debugger panel as per the data received from user input dialog. + var propertiesPanel = pgAdmin.Browser.docker.findPanels('properties'); + var panel = pgAdmin.Browser.docker.addPanel( + 'frm_debugger', wcDocker.DOCK.STACKED, propertiesPanel[0] + ); + var browser_pref = pgAdmin.Browser.get_preferences_for_module('browser'); + var label = getAppropriateLabel(treeInfo); + setDebuggerTitle(panel, browser_pref, label, treeInfo.schema.label, treeInfo.database.label, null, pgAdmin.Browser); + panel.focus(); + + // Panel Closed event + panel.on(wcDocker.EVENT.CLOSED, function () { + var closeUrl = url_for('debugger.close', { + 'trans_id': res_post.data.data.debuggerTransId, + }); + api({ + url: closeUrl, + method: 'DELETE', + }); + }); + /* TO-DO check how to add this is new lib for wc-docker */ + commonUtils.registerDetachEvent(panel); + + // Panel Rename event + panel.on(wcDocker.EVENT.RENAME, function (panel_data) { + Alertify.prompt('', panel_data.$titleText[0].textContent, + // We will execute this function when user clicks on the OK button + function (evt, value) { + if (value) { + // Remove the leading and trailing white spaces. + value = value.trim(); + var name = getAppropriateLabel(treeInfo); + setDebuggerTitle(panel, self.preferences, name, treeInfo.schema.label, treeInfo.database.label, value, pgAdmin.Browser); + } + }, + // We will execute this function when user clicks on the Cancel + // button. Do nothing just close it. + function (evt) { evt.cancel = false; } + ).set({ 'title': gettext('Rename Panel') }); + }); + } + + var _url = getSetArgsUrl(d, treeInfo); + + api({ + url: _url, + method: 'POST', + data: JSON.stringify(sqliteFuncArgsList), + }) + .then(function () {/*This is intentional (SonarQube)*/ }) + .catch((error) => { + Notify.alert( + gettext('Error occured: '), + gettext(error.response.data) + ); + }); + /* Close the debugger modal dialog */ + props.closeModal(); + + }) + .catch(function (error) { + Notify.alert( + gettext('Debugger Target Initialization Error'), + gettext(error.response.data) + ); + }); + + } + else { + // If the debugging is started again then we should only set the + // arguments and start the listener again + baseUrl = url_for('debugger.start_listener', { + 'trans_id': transId, + }); + + api({ + url: baseUrl, + method: 'POST', + data: JSON.stringify(argsValueList), + }) + .then(function () {/*This is intentional (SonarQube)*/ }) + .catch(function (error) { + Notify.alert( + gettext('Debugger Listener Startup Error'), + gettext(error.response.data) + ); + }); + + // Set the new input arguments given by the user during debugging + var _Url = url_for('debugger.set_arguments', { + 'sid': debuggerInfo.server_id, + 'did': debuggerInfo.database_id, + 'scid': debuggerInfo.schema_id, + 'func_id': debuggerInfo.function_id, + }); + api({ + url: _Url, + method: 'POST', + data: JSON.stringify(sqliteFuncArgsList), + }) + .then(function () {/*This is intentional (SonarQube)*/ }) + .catch(function (error) { + Notify.alert( + gettext('Debugger Listener Startup Set Arguments Error'), + gettext(error.response.data) + ); + }); + } + + + } + + return ( + + + { + loadArgs > 0 && + { + let isValid = false; + let skipStep = false; + if('_sessData' in debuggerArgsSchema.current) { + isValid = true; + debuggerArgsSchema.current._sessData.aregsCollection.forEach((data)=> { + + if(skipStep) {return;} + + if((data.is_null || data.use_default || data?.value?.toString()?.length > 0) && isValid) { + isValid = true; + } else { + isValid = false; + skipStep = true; + } + }); + } + setIsDisableDebug(!isValid); + debuggerFinalArgs.current = changedData.aregsCollection; + }} + /> + } + + + + { clearArgs(); }} startIcon={ { clearArgs(); }} />}> + {gettext('Clear All')} + + + + { props.closeModal(); }} startIcon={ { props.closeModal(); }} />}> + {gettext('Cancel')} + + } + disabled={isDisableDebug} + onClick={() => { startDebugging(); }}> + {gettext('Debug')} + + + + + + ); +} + +DebuggerArgumentComponent.propTypes = { + debuggerInfo: PropTypes.object, + restartDebug: PropTypes.number, + isEdbProc: PropTypes.bool, + transId: PropTypes.string, + closeModal: PropTypes.func, +}; + diff --git a/web/pgadmin/tools/debugger/static/js/components/DebuggerComponent.jsx b/web/pgadmin/tools/debugger/static/js/components/DebuggerComponent.jsx new file mode 100644 index 000000000..7d535d3db --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/DebuggerComponent.jsx @@ -0,0 +1,1234 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import { Box } from '@material-ui/core'; +import React, { useCallback, useEffect, useRef, useState } from 'react'; +import PropTypes from 'prop-types'; + +import gettext from 'sources/gettext'; +import url_for from 'sources/url_for'; +import Loader from 'sources/components/Loader'; + +import Layout, { LayoutHelper } from '../../../../../static/js/helpers/Layout'; +import EventBus from '../../../../../static/js/helpers/EventBus'; +import Theme from '../../../../../static/js/Theme'; +import getApiInstance from '../../../../../static/js/api_instance'; +import Notify from '../../../../../static/js/helpers/Notifier'; + +import { evalFunc } from '../../../../../static/js/utils'; +import { PANELS, DEBUGGER_EVENTS, MENUS } from '../DebuggerConstants'; +import { retrieveNodeName } from '../../../../sqleditor/static/js/show_view_data'; +import { useModal } from '../../../../../static/js/helpers/ModalProvider'; +import DebuggerEditor from './DebuggerEditor'; +import DebuggerMessages from './DebuggerMessages'; +import { ToolBar } from './ToolBar'; +import { Stack } from './Stack'; +import { Results } from './Results'; +import { LocalVariablesAndParams } from './LocalVariablesAndParams'; + +export const DebuggerContext = React.createContext(); +export const DebuggerEventsContext = React.createContext(); + +export default function DebuggerComponent({ pgAdmin, selectedNodeInfo, panel, eventBusObj, layout, params }) { + const savedLayout = layout; + const containerRef = React.useRef(null); + const docker = useRef(null); + const api = getApiInstance(); + const modal = useModal(); + const eventBus = useRef(eventBusObj || (new EventBus())); + const [loaderText, setLoaderText] = React.useState(''); + const editor = useRef(null); + let timeOut = null; + const [qtState, _setQtState] = useState({ + preferences: { + browser: {}, debugger: {}, + }, + is_new_tab: window.location == window.parent?.location, + params: { + ...params, + node_name: retrieveNodeName(selectedNodeInfo), + } + }); + const setQtState = (state) => { + _setQtState((prev) => ({ ...prev, ...evalFunc(null, state, prev) })); + }; + + const disableToolbarButtons = () => { + eventBus.current.fireEvent(DEBUGGER_EVENTS.DISABLE_MENU); + eventBus.current.fireEvent(DEBUGGER_EVENTS.GET_TOOL_BAR_BUTTON_STATUS, {disabled: true}); + }; + + const enableToolbarButtons = (key = null) => { + if (key) { + eventBus.current.fireEvent(DEBUGGER_EVENTS.ENABLE_SPECIFIC_MENU, key); + } else { + eventBus.current.fireEvent(DEBUGGER_EVENTS.ENABLE_MENU); + } + + eventBus.current.fireEvent(DEBUGGER_EVENTS.GET_TOOL_BAR_BUTTON_STATUS, {disabled: false}); + }; + + const reflectPreferences = useCallback(() => { + setQtState({ + preferences: { + browser: pgAdmin.Browser.get_preferences_for_module('browser'), + debugger: pgAdmin.Browser.get_preferences_for_module('debugger'), + } + }); + }, []); + + // Function to get the breakpoint information from the server + const getBreakpointInformation = (transId, callBackFunc) => { + var result = ''; + + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.execute_query', { + 'trans_id': transId, + 'query_type': 'get_breakpoints', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + result = res.data.data.result; + if (callBackFunc) { + callBackFunc(result); + } + } else if (res.data.data.status === 'NotConnected') { + raiseFetchingBreakpointError(); + } + }) + .catch(raiseFetchingBreakpointError); + + return result; + }; + + const clearAllBreakpoint = (transId) => { + var clearBreakpoint = (br_list) => { + // If there is no break point to clear then we should return from here. + if ((br_list.length == 1) && (br_list[0].linenumber == -1)) + return; + + disableToolbarButtons(); + var breakpoint_list = getBreakpointList(br_list); + + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.clear_all_breakpoint', { + 'trans_id': transId, + }); + + api({ + url: baseUrl, + method: 'POST', + data: { + 'breakpoint_list': breakpoint_list.lenght > 0 ? breakpoint_list.join() : null, + }, + }) + .then(function (res) { + if (res.data.data.status) { + executeQuery(transId); + setUnsetBreakpoint(res, breakpoint_list); + } + enableToolbarButtons(); + }) + .catch(raiseClearBrekpointError); + }; + getBreakpointInformation(transId, clearBreakpoint); + }; + + const raiseJSONError = (xhr) => { + try { + var err = xhr.response.data; + if (err.success == 0) { + Notify.alert(gettext('Debugger Error'), err.errormsg, () => { + if(panel) { + panel.close(); + } + + }); + } + } catch (e) { + alert(xhr); + Notify.alert( + gettext('Debugger Error'), + gettext('Error while starting debugging listener.') + ); + } + }; + + const raisePollingError = () => { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while polling result.') + ); + }; + + const raiseClearBrekpointError = () => { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while clearing all breakpoint.') + ); + }; + + const raiseFetchingBreakpointError = () => { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching breakpoint information.') + ); + }; + + const messages = (transId) => { + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.messages', { + 'trans_id': transId, + }); + + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + enableToolbarButtons(); + // If status is Success then find the port number to attach the executer. + startExecution(transId, res.data.data.result); + } else if (res.data.data.status === 'Busy') { + // If status is Busy then poll the result by recursive call to the poll function + messages(transId); + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Not connected to server or connection with the server has been closed.'), + res.data.result + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching messages information.') + ); + }); + + }; + + const startExecution = (transId, port_num) => { + // Make ajax call to listen the database message + var baseUrl = url_for( + 'debugger.start_execution', { + 'trans_id': transId, + 'port_num': port_num, + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + // If status is Success then find the port number to attach the executer. + executeQuery(transId); + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while starting debugging session.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while starting debugging session.') + ); + }); + }; + + const executeQuery = (transId) => { + // Make ajax call to listen the database message + var baseUrl = url_for( + 'debugger.execute_query', { + 'trans_id': transId, + 'query_type': 'wait_for_breakpoint', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + // set the return code to the code editor text area + if ( + res.data.data.result[0].src != null && + res.data.data.result[0].linenumber != null + ) { + editor.current.setValue(res.data.data.result[0].src); + + setActiveLine(res.data.data.result[0].linenumber - 2); + } + // Call function to create and update Stack information .... + getStackInformation(transId); + if (params.directDebugger.debug_type) { + pollEndExecutionResult(transId); + } + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing requested debugging information.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing requested debugging information.') + ); + }); + }; + + const setActiveLine = (lineNo) => { + /* If lineNo sent, remove active line */ + if (lineNo && editor.current.activeLineNo) { + editor.current.removeLineClass( + editor.current.activeLineNo, 'wrap', 'CodeMirror-activeline-background' + ); + } + + /* If lineNo not sent, set it to active line */ + if (!lineNo && editor.current.activeLineNo) { + lineNo = editor.current.activeLineNo; + } + + /* Set new active line only if positive */ + if (lineNo > 0) { + editor.current.activeLineNo = lineNo; + editor.current.addLineClass( + editor.current.activeLineNo, 'wrap', 'CodeMirror-activeline-background' + ); + + /* centerOnLine is codemirror extension in bundle/codemirror.js */ + editor.current.centerOnLine(editor.current.activeLineNo); + } + }; + + const selectFrame = (frameId) => { + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.select_frame', { + 'trans_id': params.transId, + 'frame_id': frameId, + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + editor.current.setValue(res.data.data.result[0].src); + updateBreakpoint(params.transId, true); + setActiveLine(res.data.data.result[0].linenumber - 2); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while selecting frame.') + ); + }); + }; + + useEffect(() => { + var baseUrl = ''; + if (params.transId != undefined && !params.directDebugger.debug_type) { + // Make ajax call to execute the and start the target for execution + baseUrl = url_for('debugger.start_listener', { + 'trans_id': params.transId, + }); + + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + enableToolbarButtons(); + pollResult(params.transId); + } + }) + .catch(raiseJSONError); + } else if (params.transId != undefined) { + // Make api call to execute the and start the target for execution + baseUrl = url_for('debugger.start_listener', { + 'trans_id': params.transId, + }); + + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + messages(params.transId); + } + }) + .catch(raiseJSONError); + } + }, []); + + const setUnsetBreakpoint = (res, breakpoint_list) => { + if (res.data.data.status) { + for (let brk_val of breakpoint_list) { + var info = editor.current.lineInfo((brk_val - 1)); + + if (info) { + if (info.gutterMarkers != undefined) { + editor.current.setGutterMarker((brk_val - 1), 'breakpoints', null); + } + } + } + } + }; + + const triggerClearBreakpoint = () => { + var clearBreakpoint = (br_list) => { + // If there is no break point to clear then we should return from here. + if ((br_list.length == 1) && (br_list[0].linenumber == -1)) + return; + + disableToolbarButtons(); + var breakpoint_list = getBreakpointList(br_list); + + // Make ajax call to listen the database message + var _baseUrl = url_for('debugger.clear_all_breakpoint', { + 'trans_id': params.transId, + }); + + api({ + url: _baseUrl, + method: 'POST', + data: { + 'breakpoint_list': breakpoint_list.join(), + }, + }) + .then(function (res) { + setUnsetBreakpoint(res, breakpoint_list); + enableToolbarButtons(); + }) + .catch(raiseClearBrekpointError); + }; + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.execute_query', { + 'trans_id': params.transId, + 'query_type': 'get_breakpoints', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + let result = res.data.data.result; + clearBreakpoint(result); + } else if (res.data.data.status === 'NotConnected') { + raiseFetchingBreakpointError(); + } + }) + .catch(raiseFetchingBreakpointError); + + }; + + const debuggerMark = () => { + var marker = document.createElement('div'); + marker.style.color = '#822'; + marker.innerHTML = '●'; + return marker; + }; + + const triggerToggleBreakpoint = () => { + disableToolbarButtons(); + var info = editor.current.lineInfo(editor.current.activeLineNo); + var baseUrl = ''; + + // If gutterMarker is undefined that means there is no marker defined previously + // So we need to set the breakpoint command here... + if (info.gutterMarkers == undefined) { + baseUrl = url_for('debugger.set_breakpoint', { + 'trans_id': params.transId, + 'line_no': editor.current.activeLineNo + 1, + 'set_type': '1', + }); + } else { + baseUrl = url_for('debugger.set_breakpoint', { + 'trans_id': params.transId, + 'line_no': editor.current.activeLineNo + 1, + 'set_type': '0', + }); + } + + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + // Call function to create and update local variables .... + var info_local = editor.current.lineInfo(editor.current.activeLineNo); + + if (info_local.gutterMarkers != undefined) { + editor.current.setGutterMarker(editor.current.activeLineNo, 'breakpoints', null); + } else { + editor.current.setGutterMarker(editor.current.activeLineNo, 'breakpoints', debuggerMark()); + } + + enableToolbarButtons(); + } else if (res.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while toggling breakpoint.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while toggling breakpoint.') + ); + }); + }; + + const stopDebugging = () => { + disableToolbarButtons(); + // Make ajax call to listen the database message + var baseUrl = url_for( + 'debugger.execute_query', { + 'trans_id': params.transId, + 'query_type': 'abort_target', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + // Call function to create and update local variables .... + setActiveLine(-1); + params.directDebugger.direct_execution_completed = true; + params.directDebugger.is_user_aborted_debugging = true; + + // Stop further pooling + params.directDebugger.is_polling_required = false; + + // Restarting debugging in the same transaction do not work + // We will give same behaviour as pgAdmin3 and disable all buttons + enableToolbarButtons(MENUS.CONTINUE); + + // Set the Alertify message to inform the user that execution + // is completed. + Notify.success(res.data.info, 3000); + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing stop in debugging session.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing stop in debugging session.') + ); + }); + }; + + const restart = (transId) => { + var baseUrl = url_for('debugger.restart', { 'trans_id': transId }); + disableToolbarButtons(); + + api({ + url: baseUrl, + }) + .then(function (res) { + // Restart the same function debugging with previous arguments + var restart_dbg = res.data.data.restart_debug ? 1 : 0; + + // Start pooling again + params.directDebugger.polling_timeout_idle = false; + params.directDebugger.is_polling_required = true; + pollResult(transId); + + if (restart_dbg) { + params.directDebugger.debug_restarted = true; + } + + /* + Need to check if restart debugging really require to open the input + dialog? If yes then we will get the previous arguments from database + and populate the input dialog, If no then we should directly start the + listener. + */ + if (res.data.data.result.require_input) { + params.funcArgsInstance.show(res.data.data.result, restart_dbg); + } else { + // Debugging of void function is started again so we need to start + // the listener again + var base_url = url_for('debugger.start_listener', { + 'trans_id': params.transId, + }); + + api({ + url: base_url, + method: 'GET', + }) + .then(function () { + if (params.directDebugger.debug_type) { + pollEndExecutionResult(params.transId); + } + }) + .catch(raisePollingError); + } + }) + .catch(raiseJSONError); + }; + + const pollEndExecuteError = (res ) => { + params.directDebugger.direct_execution_completed = true; + setActiveLine(-1); + + //Set the notification message to inform the user that execution is + // completed with error. + if (!params.directDebugger.is_user_aborted_debugging) { + Notify.error(res.data.info, 3000); + } + + // Update the message tab of the debugger + updateMessages(res.data.data.status_message); + + eventBus.current.fireEvent(DEBUGGER_EVENTS.FOCUS_PANEL, PANELS.MESSAGES); + disableToolbarButtons(); + // If debugging is stopped by user then do not enable + // continue/restart button + if (!params.directDebugger.is_user_aborted_debugging) { + enableToolbarButtons(MENUS.CONTINUE); + params.directDebugger.is_user_aborted_debugging = false; + } + + // Stop further pooling + params.directDebugger.is_polling_required = false; + }; + + const updateResultAnsMessages = (res) => { + if (res.data.data.result != null) { + setActiveLine(-1); + // Call function to update results information and set result panel focus + eventBus.current.fireEvent(DEBUGGER_EVENTS.SET_RESULTS, res.data.data.col_info, res.data.data.result); + eventBus.current.fireEvent(DEBUGGER_EVENTS.FOCUS_PANEL, PANELS.RESULTS); + + params.directDebugger.direct_execution_completed = true; + params.directDebugger.polling_timeout_idle = true; + + //Set the alertify message to inform the user that execution is completed. + Notify.success(res.data.info, 3000); + + // Update the message tab of the debugger + updateMessages(res.data.data.status_message); + + // Execution completed so disable the buttons other than + // "Continue/Start" button because user can still + // start the same execution again. + disableToolbarButtons(); + + // Stop further pooling + params.directDebugger.is_polling_required = false; + } + }; + + /* + For the direct debugging, we need to check weather the functions execution + is completed or not. After completion of the debugging, we will stop polling + the result until new execution starts. + */ + const pollEndExecutionResult = (transId) => { + // Do we need to poll? + if (!params.directDebugger.is_polling_required) { + return; + } + + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.poll_end_execution_result', { + 'trans_id': transId, + }), + poll_end_timeout; + + /* + * During the execution we should poll the result in minimum seconds + * but once the execution is completed and wait for the another + * debugging session then we should decrease the polling frequency. + */ + if (params.directDebugger.polling_timeout_idle) { + // Poll the result to check that execution is completed or not + // after 1200 ms + poll_end_timeout = 1200; + } else { + // Poll the result to check that execution is completed or not + // after 350 ms + poll_end_timeout = 250; + } + + timeOut = setTimeout( + function () { + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + if (res.data.data.result == undefined) { + /* + "result" is undefined only in case of EDB procedure. + As Once the EDB procedure execution is completed then we are + not getting any result so we need ignore the result. + */ + setActiveLine(-1); + params.directDebugger.direct_execution_completed = true; + params.directDebugger.polling_timeout_idle = true; + + //Set the alertify message to inform the user that execution is completed. + Notify.success(res.data.info, 3000); + + // Update the message tab of the debugger + updateMessages(res.data.data.status_message); + + // Execution completed so disable the buttons other than + // "Continue/Start" button because user can still + // start the same execution again. + disableToolbarButtons(); + + // Stop further polling + params.directDebugger.is_polling_required = false; + } else { + updateResultAnsMessages(res); + } + } else if (res.data.data.status === 'Busy') { + // If status is Busy then poll the result by recursive call to + // the poll function + pollEndExecutionResult(transId); + // Update the message tab of the debugger + updateMessages(res.data.data.status_message); + } else if (res.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger poll end execution error'), + res.data.result + ); + } else if (res.data.data.status === 'ERROR') { + pollEndExecuteError(res); + } + }) + .catch(raisePollingError); + }, poll_end_timeout); + + }; + + // This function will update messages tab + const updateMessages = (msg) => { + if(msg) { + // Call function to update messages information + eventBus.current.fireEvent(DEBUGGER_EVENTS.SET_MESSAGES, msg, true); + } + }; + + const continueDebugger = () => { + disableToolbarButtons(); + + //Check first if previous execution was completed or not + if (params.directDebugger.direct_execution_completed && + params.directDebugger.direct_execution_completed == params.directDebugger.polling_timeout_idle) { + restart(params.transId); + } else { + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.execute_query', { + 'trans_id': params.transId, + 'query_type': 'continue', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + pollResult(params.transId); + } else { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing continue in debugging session.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing continue in debugging session.') + ); + }); + } + }; + + const stepOver = () => { + disableToolbarButtons(); + + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.execute_query', { + 'trans_id': params.transId, + 'query_type': 'step_over', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + pollResult(params.transId); + } else { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing step over in debugging session.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing step over in debugging session.') + ); + }); + + }; + + const getBreakpointList = (br_list) => { + var breakpoint_list = new Array(); + for (let val of br_list) { + if (val.linenumber != -1) { + breakpoint_list.push(val.linenumber); + } + } + + return breakpoint_list; + }; + + // Function to get the latest breakpoint information and update the + // gutters of codemirror + const updateBreakpoint = (transId, updateLocalVar = false) => { + var callBackFunc = (br_list) => { + // If there is no break point to clear then we should return from here. + if ((br_list.length == 1) && (br_list[0].linenumber == -1)) + return; + + var breakpoint_list = getBreakpointList(br_list); + + + for (let brk_val of breakpoint_list) { + var info = editor.current.lineInfo((brk_val - 1)); + + if (info.gutterMarkers != undefined) { + editor.current.setGutterMarker((brk_val - 1), 'breakpoints', null); + } else { + editor.current.setGutterMarker((brk_val - 1), 'breakpoints', debuggerMark()); + } + } + if (updateLocalVar) { + // Call function to create and update local variables .... + getLocalVariables(params.transId); + } + }; + getBreakpointInformation(transId, callBackFunc); + }; + + // Get the local variable information of the functions and update the grid + const getLocalVariables = (transId) => { + // Make ajax call to listen the database message + var baseUrl = url_for( + 'debugger.execute_query', { + 'trans_id': transId, + 'query_type': 'get_variables', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + // Call function to update local variables + let variablesResult = res.data.data.result.filter((lvar) => { + return lvar.varclass == 'L'; + }); + eventBus.current.fireEvent(DEBUGGER_EVENTS.SET_LOCAL_VARIABLES, variablesResult); + + let parametersResult = res.data.data.result.filter((lvar) => { + return lvar.varclass == 'A'; + }); + // update Parameter panel data. + eventBus.current.fireEvent(DEBUGGER_EVENTS.SET_PARAMETERS, parametersResult); + // If debug function is restarted then again start listener to + // read the updated messages. + if (params.directDebugger.debug_restarted) { + if (params.directDebugger.debug_type) { + pollEndExecutionResult(transId); + } + params.directDebugger.debug_restarted = false; + } + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching variable information.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching variable information.') + ); + }); + }; + + const getStackInformation = (transId) => { + // Make ajax call to listen the database message + var baseUrl = url_for( + 'debugger.execute_query', { + 'trans_id': transId, + 'query_type': 'get_stack_info', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + // Call function to update stack information + eventBus.current.fireEvent(DEBUGGER_EVENTS.SET_STACK, res.data.data.result); + // Call function to create and update stack information + getLocalVariables(params.transId); + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching stack information.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while fetching stack information.') + ); + }); + }; + + + const updateBreakpointInfo = (res, transId) => { + if (res.data.data.result[0].src != editor.current.getValue()) { + editor.current.setValue(res.data.data.result[0].src); + try { + updateBreakpoint(transId); + } catch (err) { + Notify.alert(gettext('Error in update'), err); + } + + } + }; + + const updateInfo = (res, transId) => { + if (!params.directDebugger.debug_type && !params.directDebugger.first_time_indirect_debug) { + setLoaderText(''); + setActiveLine(-1); + clearAllBreakpoint(transId); + + params.directDebugger.first_time_indirect_debug = true; + params.directDebugger.polling_timeout_idle = false; + } else { + params.directDebugger.polling_timeout_idle = false; + setLoaderText(''); + // If the source is really changed then only update the breakpoint information + updateBreakpointInfo(res, transId); + + setActiveLine(res.data.data.result[0].linenumber - 2); + // Update the stack, local variables and parameters information + setTimeout(function () { + getStackInformation(transId); + }, 10); + } + }; + + const checkDebuggerStatus = (transId) => { + // If status is Busy then poll the result by recursive call to the poll function + if (!params.directDebugger.debug_type) { + setLoaderText(gettext('Waiting for another session to invoke the target...')); + // As we are waiting for another session to invoke the target,disable all the buttons + disableToolbarButtons(); + params.directDebugger.first_time_indirect_debug = false; + pollResult(transId); + } else { + pollResult(transId); + } + }; + + /* poll the actual result after user has executed the "continue", "step-into", + "step-over" actions and get the other updated information from the server. + */ + const pollResult = (transId) => { + // Do we need to poll? + if (!params.directDebugger.is_polling_required) { + return; + } + + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.poll_result', { + 'trans_id': transId, + }), + poll_timeout; + + /* + During the execution we should poll the result in minimum seconds but + once the execution is completed and wait for the another debugging + session then we should decrease the polling frequency. + */ + if (params.directDebugger.polling_timeout_idle) { + // Poll the result after 1 second + poll_timeout = 1000; + } else { + // Poll the result after 200 ms + poll_timeout = 200; + } + + setTimeout( + function () { + api({ + url: baseUrl, + method: 'GET', + beforeSend: function (xhr) { + xhr.setRequestHeader( + pgAdmin.csrf_token_header, pgAdmin.csrf_token + ); + }, + }) + .then(function (res) { + if (res.data.data.status === 'Success') { + // If no result then poll again to wait for results. + if (res.data.data.result == null || res.data.data.result.length == 0) { + pollResult(transId); + } else { + updateInfo(res, transId); + // Enable all the buttons as we got the results + enableToolbarButtons(); + } + } else if (res.data.data.status === 'Busy') { + params.directDebugger.polling_timeout_idle = true; + checkDebuggerStatus(transId); + } else if (res.data.data.status === 'NotConnected') { + Notify.alert( + gettext('Debugger Error: poll_result'), + gettext('Error while polling result.') + ); + } + }) + .catch(raisePollingError); + }, poll_timeout); + + }; + + const stepInto = () => { + disableToolbarButtons(); + // Make ajax call to listen the database message + var baseUrl = url_for('debugger.execute_query', { + 'trans_id': params.transId, + 'query_type': 'step_into', + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function (res) { + if (res.data.data.status) { + pollResult(params.transId); + } else { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing step into in debugging session.') + ); + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while executing step into in debugging session.') + ); + }); + }; + + + const onChangesLocalVarParameters = (data) => { + // Make api call to listen the database message + var baseUrl = url_for('debugger.deposit_value', { + 'trans_id': params.transId, + }); + api({ + url: baseUrl, + method: 'POST', + data: data, + }) + .then(function (res) { + if (res.data.data.status) { + // Get the updated variables value + getLocalVariables(params.transId); + // Show the message to the user that deposit value is success or failure + if (res.data.data.result) { + Notify.success(res.data.data.info, 3000); + } else { + Notify.error(res.data.data.info, 3000); + } + } + }) + .catch(function () { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while depositing variable value.') + ); + }); + }; + + useEffect(() => { + // Register all eventes for debugger. + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_CLEAR_ALL_BREAKPOINTS, triggerClearBreakpoint); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_TOGGLE_BREAKPOINTS, triggerToggleBreakpoint); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_STOP_DEBUGGING, stopDebugging); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_CONTINUE_DEBUGGING, continueDebugger); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_STEPOVER_DEBUGGING, stepOver); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.TRIGGER_STEINTO_DEBUGGING, stepInto); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.SET_LOCAL_VARIABLE_VALUE_CHANGE, onChangesLocalVarParameters); + + eventBus.current.registerListener( + DEBUGGER_EVENTS.SET_PARAMETERS_VALUE_CHANGE, onChangesLocalVarParameters); + + eventBus.current.registerListener(DEBUGGER_EVENTS.SET_FRAME, (frameId) => { + selectFrame(frameId); + }); + + eventBus.current.registerListener(DEBUGGER_EVENTS.FOCUS_PANEL, (panelId) => { + LayoutHelper.focus(docker.current, panelId); + }); + + + }, []); + + + useEffect(() => { + reflectPreferences(); + pgAdmin.Browser.onPreferencesChange('debugger', function () { + reflectPreferences(); + }); + // /* Clear the timeout if unmounted */ + return () => { + clearTimeout(timeOut); + }; + }, []); + + const DebuggerContextValue = React.useMemo(() => ({ + docker: docker.current, + api: api, + modal: modal, + params: qtState.params, + preferences: qtState.preferences, + }), [qtState.params, qtState.preferences]); + + // Define the debugger layout components such as DebuggerEditor to show queries and + let defaultLayout = { + dockbox: { + mode: 'vertical', + children: [ + { + mode: 'horizontal', + children: [ + { + tabs: [ + LayoutHelper.getPanel({ + id: PANELS.DEBUGGER, title: gettext('Debugger'), content: { + editor.current = edRef; + }} params={{ transId: params.transId, debuggerDirect: params.directDebugger }} /> + }) + ], + } + ] + }, + { + mode: 'horizontal', + children: [ + { + tabs: [ + LayoutHelper.getPanel({ + id: PANELS.PARAMETERS, title: gettext('Parameters'), content: , + }), + LayoutHelper.getPanel({ + id: PANELS.LOCAL_VARIABLES, title: gettext('Local Variables'), content: , + }), + LayoutHelper.getPanel({ + id: PANELS.MESSAGES, title: gettext('Messages'), content: , + }), + LayoutHelper.getPanel({ + id: PANELS.RESULTS, title: gettext('Result'), content: , + }), + LayoutHelper.getPanel({ + id: PANELS.STACK, title: gettext('Stack'), content: , + }), + ], + } + ] + }, + ] + }, + }; + + return ( + + + + + + + docker.current = obj} + defaultLayout={defaultLayout} + layoutId="SQLEditor/Layout" + savedLayout={savedLayout} + /> + + + + + ); +} + +DebuggerComponent.propTypes = { + pgAdmin: PropTypes.object, + selectedNodeInfo: PropTypes.object, + panel: PropTypes.object, + eventBusObj: PropTypes.object, + layout: PropTypes.string, + params: PropTypes.object +}; diff --git a/web/pgadmin/tools/debugger/static/js/components/DebuggerEditor.jsx b/web/pgadmin/tools/debugger/static/js/components/DebuggerEditor.jsx new file mode 100644 index 000000000..3d236c1a3 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/DebuggerEditor.jsx @@ -0,0 +1,120 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// + +import { makeStyles } from '@material-ui/styles'; +import PropTypes from 'prop-types'; + +import React, { useContext, useEffect } from 'react'; + +import gettext from 'sources/gettext'; +import url_for from 'sources/url_for'; + +import getApiInstance from '../../../../../static/js/api_instance'; +import CodeMirror from '../../../../../static/js/components/CodeMirror'; +import Notify from '../../../../../static/js/helpers/Notifier'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; +import { DebuggerEventsContext } from './DebuggerComponent'; + + +const useStyles = makeStyles(() => ({ + sql: { + height: '100%', + } +})); + +export default function DebuggerEditor({ getEditor, params }) { + const classes = useStyles(); + const editor = React.useRef(); + const eventBus = useContext(DebuggerEventsContext); + + const api = getApiInstance(); + + function makeMarker() { + var marker = document.createElement('div'); + marker.style.color = '#822'; + marker.innerHTML = '●'; + return marker; + } + + function setBreakpoint(lineNo, setType) { + // Make ajax call to set/clear the break point by user + var baseUrl = url_for('debugger.set_breakpoint', { + 'trans_id': params.transId, + 'line_no': lineNo, + 'set_type': setType, + }); + api({ + url: baseUrl, + method: 'GET', + }) + .then(function(res) { + if (res.data.data.status) { + // Breakpoint has been set by the user + } + }) + .catch(function() { + Notify.alert( + gettext('Debugger Error'), + gettext('Error while setting debugging breakpoint.') + ); + }); + } + + function onBreakPoint(cm, n, gutter) { + // If breakpoint gutter is clicked and execution is not completed then only set the breakpoint + if (gutter == 'breakpoints' && !params.debuggerDirect.polling_timeout_idle) { + var info = cm.lineInfo(n); + // If gutterMarker is undefined that means there is no marker defined previously + // So we need to set the breakpoint command here... + if (info.gutterMarkers == undefined) { + setBreakpoint(n + 1, 1); //set the breakpoint + } else { + if (info.gutterMarkers.breakpoints == undefined) { + setBreakpoint(n + 1, 1); //set the breakpoint + } else { + setBreakpoint(n + 1, 0); //clear the breakpoint + } + } + + // If line folding is defined then gutterMarker will be defined so + // we need to find out 'breakpoints' information + var markers = info.gutterMarkers; + if (markers != undefined && info.gutterMarkers.breakpoints == undefined) + markers = info.gutterMarkers.breakpoints; + cm.setGutterMarker(n, 'breakpoints', markers ? null : makeMarker()); + } + } + + eventBus.registerListener(DEBUGGER_EVENTS.EDITOR_SET_SQL, (value, focus = true) => { + focus && editor.current?.focus(); + editor.current?.setValue(value); + }); + + useEffect(() => { + self = this; + // Register the callback when user set/clear the breakpoint on gutter area. + editor.current.on('gutterClick', onBreakPoint); + getEditor(editor.current); + }, [editor.current]); + return ( + { + editor.current = obj; + }} + gutters={['CodeMirror-linenumbers', 'CodeMirror-foldgutter', 'breakpoints']} + value={''} + className={classes.sql} + disabled={true} + />); +} + +DebuggerEditor.propTypes = { + getEditor: PropTypes.func, + params: PropTypes.object +}; diff --git a/web/pgadmin/tools/debugger/static/js/components/DebuggerMessages.jsx b/web/pgadmin/tools/debugger/static/js/components/DebuggerMessages.jsx new file mode 100644 index 000000000..e44b3ad57 --- /dev/null +++ b/web/pgadmin/tools/debugger/static/js/components/DebuggerMessages.jsx @@ -0,0 +1,47 @@ +///////////////////////////////////////////////////////////// +// +// pgAdmin 4 - PostgreSQL Tools +// +// Copyright (C) 2013 - 2022, The pgAdmin Development Team +// This software is released under the PostgreSQL Licence +// +////////////////////////////////////////////////////////////// +import { makeStyles } from '@material-ui/styles'; +import React from 'react'; +import { DebuggerEventsContext } from './DebuggerComponent'; +import { DEBUGGER_EVENTS } from '../DebuggerConstants'; + + +const useStyles = makeStyles((theme)=>({ + root: { + whiteSpace: 'pre-wrap', + fontFamily: '"Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace', + padding: '5px 10px', + overflow: 'auto', + height: '100%', + fontSize: '12px', + userSelect: 'text', + backgroundColor: theme.palette.background.default, + color: theme.palette.text.primary, + ...theme.mixins.fontSourceCode, + } +})); + +export default function DebuggerMessages() { + const classes = useStyles(); + const [messageText, setMessageText] = React.useState(''); + const eventBus = React.useContext(DebuggerEventsContext); + React.useEffect(()=>{ + eventBus.registerListener(DEBUGGER_EVENTS.SET_MESSAGES, (text, append=false)=>{ + setMessageText((prev)=>{ + if(append) { + return prev+text; + } + return text; + }); + }); + }, []); + return ( +