From ba08d8010dcc8d9c43c362899e2f29c15a849a02 Mon Sep 17 00:00:00 2001 From: Saneera Silva Date: Mon, 18 Mar 2024 05:00:55 +0800 Subject: [PATCH] initial commit --- background.js | 22 ++++++++++++++++++++++ images/.DS_Store | Bin 0 -> 6148 bytes images/icon128.png | Bin 0 -> 8229 bytes images/icon16.png | Bin 0 -> 2491 bytes images/icon48.png | Bin 0 -> 3835 bytes manifest.json | 23 +++++++++++++++++++++++ popup.css | 13 +++++++++++++ popup.css.map | 1 + popup.html | 15 +++++++++++++++ popup.js | 41 +++++++++++++++++++++++++++++++++++++++++ popup.scss | 11 +++++++++++ 11 files changed, 126 insertions(+) create mode 100644 background.js create mode 100644 images/.DS_Store create mode 100644 images/icon128.png create mode 100644 images/icon16.png create mode 100644 images/icon48.png create mode 100644 manifest.json create mode 100644 popup.css create mode 100644 popup.css.map create mode 100644 popup.html create mode 100644 popup.js create mode 100644 popup.scss diff --git a/background.js b/background.js new file mode 100644 index 0000000..86e9ce4 --- /dev/null +++ b/background.js @@ -0,0 +1,22 @@ +chrome.action.onClicked.addListener((tab) => { + chrome.scripting.executeScript({ + target: { tabId: tab.id }, + function: reloadStylesheetsAndScripts, + }); +}); + +function reloadStylesheetsAndScripts() { + var queryString = '?reload=' + new Date().getTime(); + + // Reload stylesheets + document.querySelectorAll('link[rel="stylesheet"], link[rel="stylesheet preload"]').forEach(function (link) { + link.href = link.href.replace(/\?.*|$/, queryString); + }); + + // Reload scripts + document.querySelectorAll('script').forEach(function (script) { + if (script.src) { + script.src = script.src.replace(/\?.*|$/, queryString); + } + }); +} diff --git a/images/.DS_Store b/images/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..d14f6781e5ab3bef1c353d28ef112ccb63c1d0ce GIT binary patch literal 6148 zcmeHK%SuBr5S`I3irsYSM#vWwDk5FRQWviM0ciyhiq}o|`6EA3&zTuZd%f;NL}nm4 zbCWrF9JonFM0B}(oQq6FWQ;;oIs?Y$!LE}CJ_V|cF_%kO$V^`4WniGc*u=F@OQ;E9|au&!gzea_proU6S~J&s=VIGigj6-WhAfm9$B z_&Eh|XVb7?Iq%BU~_c3Xe1vRGk+#8YO`bfV&S6IG3!(y6*yLaxi4(W`~Mcd%wUplAz7sY zslb0#Ku4?l)e^glyY^lD0>7ZZ2O}0V1^@s6 literal 0 HcmV?d00001 diff --git a/images/icon128.png b/images/icon128.png new file mode 100644 index 0000000000000000000000000000000000000000..a8b4a71343d7eb56322b3e9779e7be1012d87205 GIT binary patch literal 8229 zcmb_>cQ{;Y+wU4Ndha2EM2XJmZ4kXil&HZlh~60`B3g(NK@dHNY&ClCy$&LX5JZm> zEsQ?j$oszg+k1cKoIlPvbFDUa`Q3Hh*Lv29($Q8SCZHz(0DxFcRZ$mn4!+*;a4^R% zC~OFG!go_O_5=Wu?&}@&hMR-|LzMDTGV)Szb#}IK@d6MYl5j~yd1Y};bstAxgr_8g z$3aq9P*hM%SXe+*2qGvdBp@axAUwW~89 z4DM=W!-sHo!{7seG(r+{>1^W#V@5bTxp+ze;H&+qH&%jYY^=jvg{FDM})!7l*ehd_8S61<*%E?zJMuZ!nh4AS4B z6m2}MJ?!1Q>|I@$uc2X9uHIfU92|d2{mUh|^`BkWcV$ zUc#*SX^Hq~DakgY*9{T=*^amx%u_lOgZr>L*WoxQELIX0IwKK9KtIs z02AUBhl@(^Lc~R^CB((81ca1v1%Kt!8w!#33Ktv#-A`*haf?^UP;sSr_{AT_S z6@6E4>nGP?K_P!i{x|Kv#s4>D{(HLq6YAg7`v0lWZhyJEuB-g}w!N+|hJmTC(BJBd zp-IYndp&XWfa<|qY-~JW%zE}tJ}~KP>Hl#45#9fLFJdOg-x~2x7ZEVG|IvaNVaea^ z;_9LA>gohlfVo`z_fPWw$;toBp?}C=CemMenE%g-2Bn))AOryV*J_IL`iP93O#67V zY43$+DCZW`_PJ&GD8TH~p064iZSVQ|-fL~16wSs#zFGD6x{uTka8;NL95~-NoZ>U=J5eeKFZgrKB`8Kh86u{3!Pdxl-C_tuV7&t8M z#2s#)-ql_}OQGgGM`aAZ)H+x7JdM`>f#dYhxE9+jyNWINJcAcBx9)_$2({AyP!j6z z8FU=Z_}NYuSFsB~JLfjgBZk{lTKbK~3=sh)K+62M#NjLaPp{)<1fz|**M9Jya?O?# zcgsj&UmRppWL&*y%FHf6nI-fm8N5|?mis9|XvyvzbnL6~D@((+#rC2=t^O)&vX%R1 zp(_h{mES47PPlu6(_~ST)5n?J4fo|05X#(J=_#qV)aI$w4F{t z?d&w|=d!AMNMDLC;MRT&C|0o6#*I|9^t#rD?jusqfV0!ojRkrvpxbs3PrchY=qy(J zuFTf60BY*n{v8VCk8~!PAAVzHDMndDA|~*dC9U@d(J?|&kJ7{p@$ke{KMSkri)rYK z5EL=k6s56Z8KBApM8koC2;GV1FM&2`MW;En1_iZBxdlqOwFbFmTD`PiFFN}hw)Ox*KL|2a1MG&q_`I!dn0hylR!eqP79YjdNwXTSP;bnrHuI(Vg!+fM4I zr7;ClmS0G^3@+Efg_Yo(Gi1(riI{*S&}4OtlIyA{){eT86qMYt@hXek(V9qMl~(qg z$XbEXH)w5~HD5hFc+q9ArgZBroccIhSK>HHx!h+NkEIw)mhiF!A&?kVDa?BN@DS;k zZRgVXj%U;}eC07pB^Afae|B+`pD0eI)cr(__*L71f`T^Z;Cx!8@EwR@7Xv?fs&_jO z@VmrPwWfDF?vq?No4B{W@VTO75ZUQT$Xs8#LYzwHxEh<%CdWh1by`JG5Q!0G)wOqA zKz|gpRpF*hM)C%al_fv}b6ojd+s?2eesccsoC?>GOLC!?oN?W6ku_aeo<0hpt({Up z_AvKQ^2~&Od@Mc4vHR={iRNXCVZ$Z2C6bUx*}rZ2hmna)i4Y%if~TtO=b0Wh#JQn0 z`}dY-+HPA`2_LT7O{ao&wL$$^Uvp*0YQan`=l7;R-fBG*(kt!T+i4CM`2@U#wjMy= zSz(ig=2O2T-?_Jco7I{fU1LKgmsY{RzHnYeH~Mr&W%>93yY1iv*im|#`Zh`8aLw+K z7c?I`ehUpGn;2#wamlds9KC#;$!!4_qnBSV_C~FV%pWg!)ahZAnxc<$x)W0B%rA)} z&V^2>ixUqau?@NPg@m0RC*Yw~)Pn@ciq^e6UWU|!Wzc!}IKSnUqaO;JM*9@5-043z8JIU2-Z1JQO?~UMk~s}ku^O=0vx6(d z9f|v{CA09*c9cTSfZ_^g#4?&^e~tjwqwfRNb?!LzuGl5MG2KRLbUPSnnMM$vpF<~|JH&x`N_=R65l z+V~Y_*OQAZ$nSJTd)O-TLQfuoPIvwKT|oq9q>+4KgpIBW703=Y2;NoueSLw~#os&#L{)!#k&s9Cv6%5#3qu4!H*g>rG_f>wx&)3o zAdu_N3b6)p+=j-+i|*sZ5Zi)2Wdzh9Bbeq*`D)_lc*tfDU?r@r>mHMXO|9|59jO{0-cL#%BXPckI2OXJJ?0V!h1V}oA^g3-AV@D%9eP^;}>Q)n0Kn+t_) z^vQ*JYamyZ(5@;F-irl!=SQ)<**sW=EM}#+9pSQ5U}uXnjz-~VG z!T8CtP}|N~5KR7w{M}pox+3fE9FV3I@_42?LOV8e&f#CwD2dvYo`f5CvvTUn9_CHeEAPr+5p^mksuP|_{U3@&UJ`IDjO4KVqItAHAth|w%%?9+AiE$VV+ zi{U*TsCm<`yH)X?C5(F1e`LkzM%_!+;8nV`p7uDu2+2FbudruC>C98en(@I}DdRPB zaSjTWnKaCdgaU+xJ(b!Q9ZDojZT(qx$B_4o@6nX$&k1StF5`dgazCl)#qqegG!W%~ zri6cgrsgQ}tG|(m!l}f<4W5+Zn*0&L54`JTok{7-^^)Yyd)b%8iUcJRCZ_;(PUr?aLI=RiZa&oz56vVt}fg z*n1i3-zT{WIyQc@eTRgj`Qaf#KNWNMND0y$UxcjP5(3=r27C8nO+_aSXLT_ALB9RW z%x&>uX7?AZh=r~9=*n07AlZR-sFUA}@YJAe%!u;+jT&gbP%RDRH(c6hllg~FqZ(P( z6+&_ebwlZI^2(Ln1nS9xbKkhU3Z|?+B{eEK=P6isslZWVQi=K|7rP)A<$af*n5F#5 zkC4R2<#fbuLHn|vhY-zg>faJ~cW{j~i%#;m{GI*sf|H4+Z&!RdBCnovW5=qHCP^}z zosYP7*cvog{Xl>rfjX}UwYBli8gEuH%6okTmk68ohkyCYG7cN7L($81=LjU9U;rDc zibhMMF2%^|EY4JwM)+uzw&P{_eH_BERBIf-1zRV=NDdn2yciX@c;c^du<(}cq!|00 ziSm}r9P#v3R_j*NMpH%N`1hK(gL>xa4V!~+dO#a8upY|4T^9Ouj+1)x@Tf9^>Jz@&;H($Cam_4y z-IeKgyF3Ff>ULsia*!7JEOPzkaHSs2M`cbiraay|Q=%}wl9Ol52ty+KtIg1Lp&;{6 zi;iL%s2wc}m~-Qf3whXyUdY#MymI+Erx*iAS^u*=O76p4opD=Gd>mM_z5yI;DkeEo zn@4NRS*K@Evu5{+3k1JoO10M}J&7bdCqRWaoAX1n&zBvLpZVSQokNGJaA@rwwXRmU z9p402n6S(S8pc{e#6IrY!QE8kQDrZN725UZ&s}k7^$_gFi&$? zzQ+a%vGmr8z6X}s&(vqL;OOicK3thQG&aQ2A&3OWkQ9i%Fe(_9+clp?eSD!wBd3mB zZ{|op#Z7%&Wagimi{IVxCiAAfku5pIDELh7XC2cV=9#$yFufNOv(wcoL)+%Q6JLBj z9o?c1XcOFDF~KRz2Ll^h_1toL6~;#9gMxZQ%&D>#?caFX!$~cRj)+cLl@%Sr;$ur5 z2ukG%2!2(z9x6}oqX{b%fjMvwHI-#y+2+c=0MosqCqmM;vX=dTwDMdjrA-BgaoLE@ zE*FKjfr{9{RlK6ypEwDPaDfyovPxRDM~rXcV<)8tFl){;ZOu}UUg_%nI^@Ti3z3jd zsd{>jcg)dPQJZ>>9^iaw66Td!fVOw})_L!0Cxb8MNt^ZtzsUIJ=q>KlNnR^P9T85U z*=C2lCz$4sx5ELz8FaY_$1z&QZmh83;r6eCObV2w;~#21m0ik8j}y8uWxp|F%vPRK zISA6`ggl?q*&Tp#sdzC|5c>pK2~9Mr0|P``fFDgr4gl(ZF6zb%EX<8Y#Yn&1_f46% zXZv-ICh^|qdbhvZ;M_@&;Uyg`K)XMDp)o%?w2GaamUCyU60t-6t+N_Ld`4=_YDl_! z^O#@wO($0WcNu|w_bXCuB5M*0`Aj17cM#Pvb; zkXJ+tpI;py0goPFP(D-ad{*|u!qa6HNyC=QRmr9j3_8c^QX$va(G+-|`FSbEy?DWUwoO_TH~=mWXcv z$6Mb}O}=M2o+$_PEc4KmQ?;4WC~GUnC#I-6#InjbGgFo1FK){s5G$k z9lbUv8bCqd+y(m@(ZyQLsz)qXz_6s)`PO%R>I5EQLL$pL>R@T;ef%?Zx~h%Ucp9V* z!4@xJd}60oNM0M&C>&h!ApVyR+0EjmZC{y;KtXpE>^lncS?}S6CXI1%7E|{uOM&F& zaiPd}Q04qh7gKasAkK!tV_Lb8MYxa6|OgmU+wfw6s&>+aa^rM*F{ zj`+M&p@sT_0mY%dXyniUE#*n4XlsLzW7%{rZKScrmmf0cJsT&p!ou3)vvr{z^+IU& zD!L^eR&`n~qzwpCdP7_gt+P1rZjz%l?$aS}u9!s!vhu0Pp}0n2LgJz7xJLIm!^z^a zQ^a<|^d7h42S;6x2)Bi2cOD*Mcbarc9riX#K}W(CmhALqjVkA!F%IxphI6%6R6qA|cqKFQLyR@MY0cx8tC~ z$oU(z(`Fx7BXoLOAFCz`=^b)k?4MEw22@Af7&xL0jYQ6v$q*Ypn8k!C6^AED@{mff zJ`E zjjAJRUykpD9p|FFs>rySDK$uYdfqEnZ$LTuJFc0=mf) zoG2hb^<(eJfT^zv-guU4)fcp$(-5nf(6R|&&#pX+I6CL|_+>;&3OyiyE=OJzH<=Oa z%rC$3v(n2`wQEe1A}vbAVj=DuJbBq-iM-yYckQf6vcn-dQ-$g{L;uOQVsRRUpDdQ8 z;3rQ$ZP0d%vzl20B6!QNNgT04@ZyyPGaXm^ zozEHdm%SfH)E!zc3ltUbr6;zy?VBX6IVktR>D+ciWf_8d;n-5I?rlTM#=gF1UM1_w z&>+-FW?^PXsC&Nm{bTt;)`zBb$$_4SKbbL%#0)6WDac=fb?5b2zIp+!w2A zxKmw{(CuX|el3%3z57(ONfjwu^Kvbj^5H@T?u0%agFVbCA1qEFrzP}xdq$z$S*lh3 zdD|ef4qN=A%QybF);M_AdU?)V+Pm83BH#wC(APfar4PC>i*Q{#BL9o>!#`e%5aiNN zef~U1b|aX86g2cBP<6F;<})4J$`T<6sG-N2eJfI&x`Wf0>1r;hY33Vbmzmu$D~}`7p2i~ zH*Cx&f$%b%@Vif6UfDNb>EtdP-xzOrm}A2h?i-71ku0#)-fSKZz(F3#_elzDtZ%$z zdD6^=*#y7YjvvN{zlB|(`a{a6XJQIgl+IZ3NuXJN>UXG^97dqcBiZ-yg{9CsHS|TV zyvS+`ZnTftP4Tyt4T^gk&4@r&}mdHWH<13HR!!bOS0`|Dg-U$G#J@^5XQ9gD71imOLR zQ-2Ty?&Sfj#(O8bh|}-ceQw*X_#OVQqP#=;-UA-SfEu33eJ)-W>WKp(dJ(#p8!<}6 zJaQCcODSJ&C)pnj-6IK%FvE&Gokk)uSVQtT(*eNbxc}C(N6T}?s~^Qu2|t<=E{+YQ zu*nA)<;j%5Qbnu$H+P0>_wOD+dx=azlr8A0QX05 z5t@X&+(N$CR?uE>CsZ&$hcw*88sr1iLO!&vf(VFzQ4MYuF#}Kgw0eD0 z;q(tOxA8UgUYn0Khpe}4<~90RN4D?qEKX%0!}sa*Dn7Z;WST)v5ra9t-+y}Y%&cv4 zCXUOzb;Rnx$pn}5(k39TxS>HO3(La~^nFBnOTlAW=?p^nF2k&QTp_jb%BDtnNRGR= za4ahYZ;IVC6TTUfR>G%h^+eQ=smACJjg)ZX1xWz&Mgn;55QVY7yxR6h37)WVdC7bM zcXEPgOBKGq9VNm>-tjsey6bwkqB?3}4x9lW7W}l^*AA@NHHHoz3B3;`tWe{TOS6pa zb`2UC-9k$t$0i40%85X6I2Zq#2 zXcScQDh7wDzn4r*3|AX@$vV9jg!wTJ4F!=O`57Ay7M%iwb+w;^f?`FW~#)u?vw{;7u(lo1m=+m$yzuM5a5Kl0hzxt%k%^#KuItBrtv9%7;wGoWd-wGJs> z#>u3hc}K%dIovSsd1K=(QSNWP^%)er&??Ik+z48b8x11JxEpf&t;5I8Io+F%ps%8b z2JU6Iv)Cla!@VC_$$q(&Q{3_G*b_GUCe@oZB_B5NOi*pNf%P&ap=8~wsU8NQAHQj= zD$trEWq#%zwgysC1G^2gCe{%C^3p2RI`UC{WB7d<^?A?Bj(5~&a@>41D0EAPC3rP8 zVr0)d@m;Z+vTLd)u?d(7aG4RE5DXoUL~h&!aR9bkwMf5ErnmHj zL0=c60r*4Cx6|POEudJCIDN)F`Yn0%4_Nff!^D|~(f!psk|%9&qZmF`y2oQTO;vN& zRf&g`7JeEle?6cr#s1@{PtN8GT0(e>scDSk*HWSh2y$;xtZyH@dNoa!|swM zofow7eT@T0_R`UpBXXv8L{oa;32Vof5M(6v`cen}(p3^E3qHaPW3Oowfw8yj{4Sw& zwc(4`M7zgCeb>{gT(S_!HuX%4)%`?@4_7*?!wBM(K3cyV&UU>3$3pL$Rs7VZSp5n) zCY?+)-FJQx+nht++Fg~Bj&Pq?dFov;aLKLSSWFMTU(!C0YmjyBQFJH+AfebTyae{8UV=?%!0-^{6pJ{b>H`q zqc<+ZAd)>W_+8`n+8iaBG}-`Nuod`)BG@|3*QOThon%Mb73H(31y`?H?8W$}uSzoO zrhQc})~2!a#hm9qx^q)(g#1Jimt}}Xs_^*SHjp^Yh}fJt$qM58{dvdFd74HEcKuz) p6svx8hNAr`G8y>kdCfaSgY5ORvPPQ|F!K!n)ReRp%kEo-{1=vr$u|H1 literal 0 HcmV?d00001 diff --git a/images/icon16.png b/images/icon16.png new file mode 100644 index 0000000000000000000000000000000000000000..249809657b9abb4846601a186d5d02d14b48d55c GIT binary patch literal 2491 zcmb_edsGu=7LS1P=#hnr71&mzfB`kH$;3=T5(xwhLI5#VTD3YP14Kfe6B!h%fDbT5 z7bp)s_=2_(L8vH#RRP^9MTLrjJR}8ttOAGaibue*%1%%zV0Zu6-8tXPH*@dr{^q{s zo=FP}SvlLz)s8?Q%nlR@!|~nOeA>*yuif#y5qz^%i$2p42-cD2a|X2S(0yF!jrvER zeyX@QM2QkGEl0)?3Id>DKaKAep^5`6+rj~vEQkTHXaJJ|vRG^uok3rQasZG9&>$LU z^Ln6xK(Klymqefu;$V(c6-R+(sz`)_#i?Wxb>>BMW)daYvoB{C@$Q6T2L=%{oG zeTtVdDF>CK3S^q&0tGrvqL7;-;V58bG>?RlWk?jPSD+;RTIIOCjOYnMM2v`E)R-5M zOr&$EW;Ye`Nj&3{snpaza9|uZDc=7w6#^91$|EPzq0~{}af#lXLkeDADl9W6gf=B1 zZ>%^1nQoHf=1A5cnrRX|C1!;h*6I*Rf*RqG!V#THuazQ```|61pB8~pM8*eb07#|* zWE#Y!PE$>klKWQSkD-AwJ_`gHY?c%vg8-9B23e4l3?Xa=8Ds(sIun7I(&gX;*Bg`f zm;xekA|}8DmNVIOkj`Q=A=-q^xbi&{iApbxF^9zmCXm0&euw{?GEYs{yHKa5_5W08 z^`vjhT;=hP)?8m)f!CKYrM|d~BhaHUDlLBvtV9qkOk5*ZY=yaI^gGS8=>GR!#OKD8 zMx1aFgVpb~AP(k?w~Iz=ecq3t<;XGusG0#L zGrc#)v{hw34VZU)a1~~oz5KlE*B{-tM?2&<&oKrDI_o<7BX6AZJ7Lk3)p?CKwzDz* zweGd<%PYe>j*YGUais~u?nOQLZnVqtQs&PW$_yJuu0JT-G=BlHBzIBW;LG0PMbZ?c zuE#a0^o#6>LXkN9$JDXy7FJ!uuP#&<=EYMaPgR|;=YCuL&-$B5soLy0b;$3u4BL8W#uUX@$++k9s>ad&CV?2WNi$$%{vxRof4; zE$dgMWcP$~Z{E(d_QR#@~AG>`nOPeqV`&Gx;$ZwnG}*|7-b~A>E@P z&_(yB!kT?~&bJuVZITv&!S=|B#c9p{8CZZY$6~jW+{2$xe(GVz;`ZPh%wIp=GKK)-8=tq;>v7;WW2(D8Ma?w9Rb=SO2h;(~jh zWX3IB*wHfpod~fwOLAej5k6)!Lkd?@zU#Uzj8AD?X_{5J^|$UH+`j@YJ@5x^=)Wf^ z8Eut@{C4{<(=IfuJQKOy)_8E?`brn5#t^M+2Gk9Y`|<)4>_wtjQc3;qxE_iNJ)9hm$aw$J%El8R@`jT=seXk-FUpXaLlTHfCd7{uIwaE{& zk0f~X<;;kUYP#K?(3q&PY|Z!0v5I`QsNU#NP-Mcw^Ft39=|L} zZDkm$4vTypT?TZ$!9g4T{w!_gqdwQpIsS97mth2^lMp=Iik_}cd=(X(ThM>T=yB_p zZvrH9tJZpEgd`AiQ+tP7HdiQOauZ&O{&Kg@(Aj{kjqTGijpE$r(wXRIJ_mOn(s$oG z|6$gj4Is4y9rCl@W?Gz9xx)U=cA8It_y?9x(Fa9O2luyU_A}zzJ4NEGrU2WJ^yhtN zmlj5wtfMQSoKWQ*DZakxLb_LF1YcRSPYkb1YQ9IfJfQhPk?t7wsRbsh-BN!bdt_)$ zmgsWr(qFC9Nb_Hp^BimSiKRPKcTL3(UzLt2_>SG0M+=%vnZms8=v(IhqCo!;VX5!t G@s5(!)(k9Q{A#$5>nYq>B?FZEh=?I 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 R^sW9_+F9eVMV3Ah{{UhSL4*JR literal 0 HcmV?d00001 diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..203f78f --- /dev/null +++ b/manifest.json @@ -0,0 +1,23 @@ +{ + "manifest_version": 3, + "name": "CSS and JS Reload", + "version": "1.0", + "description": "Extension to reload CSS and JavaScript on a webpage.", + "permissions": ["activeTab", "scripting"], + "background": { + "service_worker": "background.js" + }, + "action": { + "default_popup": "popup.html", + "default_icon": { + "16": "images/icon16.png", + "48": "images/icon48.png", + "128": "images/icon128.png" + } + }, + "icons": { + "16": "images/icon16.png", + "48": "images/icon48.png", + "128": "images/icon128.png" + } +} diff --git a/popup.css b/popup.css new file mode 100644 index 0000000..8468868 --- /dev/null +++ b/popup.css @@ -0,0 +1,13 @@ +body { + width: 244px; +} +body button { + width: 100px; + margin: 10px; + padding: 10px; + border: none; + color: white; + background: purple; +} + +/*# sourceMappingURL=popup.css.map */ diff --git a/popup.css.map b/popup.css.map new file mode 100644 index 0000000..1c67a6e --- /dev/null +++ b/popup.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["popup.scss"],"names":[],"mappings":"AAAA;EACE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA","file":"popup.css"} \ No newline at end of file diff --git a/popup.html b/popup.html new file mode 100644 index 0000000..7d209dd --- /dev/null +++ b/popup.html @@ -0,0 +1,15 @@ + + + + Reload CSS and JS + + + + + + + + diff --git a/popup.js b/popup.js new file mode 100644 index 0000000..694fe1d --- /dev/null +++ b/popup.js @@ -0,0 +1,41 @@ +document.addEventListener('DOMContentLoaded', function () { + var reloadCssButton = document.getElementById('reloadCss'); + if (reloadCssButton) { + reloadCssButton.addEventListener('click', () => { + chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) { + chrome.scripting.executeScript({ + target: { tabId: tabs[0].id }, + function: reloadStylesheets, + }); + }); + }); + } + + var reloadJsButton = document.getElementById('reloadJs'); + if (reloadJsButton) { + reloadJsButton.addEventListener('click', () => { + chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) { + chrome.scripting.executeScript({ + target: { tabId: tabs[0].id }, + function: reloadScripts, + }); + }); + }); + } +}); + +function reloadStylesheets() { + var queryString = '?reload=' + new Date().getTime(); + document.querySelectorAll('link[rel="stylesheet"], link[rel="stylesheet preload"]').forEach(function (link) { + link.href = link.href.replace(/\?.*|$/, queryString); + }); +} + +function reloadScripts() { + var queryString = '?reload=' + new Date().getTime(); + document.querySelectorAll('script').forEach(function (script) { + if (script.src) { + script.src = script.src.replace(/\?.*|$/, queryString); + } + }); +} diff --git a/popup.scss b/popup.scss new file mode 100644 index 0000000..567423e --- /dev/null +++ b/popup.scss @@ -0,0 +1,11 @@ +body { + width: 244px; + button { + width: 100px; + margin: 10px; + padding: 10px; + border: none; + color: white; + background: purple; + } +}