From 14ae810d4c3c97109fc302281985a149036eec14 Mon Sep 17 00:00:00 2001 From: Riley Smith Date: Wed, 19 Jan 2022 13:31:40 -0800 Subject: [PATCH] initial commit --- META-INF/cose.manifest | 142 +++++++++++++++++++++++++ META-INF/cose.sig | Bin 0 -> 3090 bytes META-INF/manifest.mf | 152 +++++++++++++++++++++++++++ META-INF/mozilla.rsa | Bin 0 -> 4337 bytes META-INF/mozilla.sf | 4 + assets/background-c101863b.js | 154 +++++++++++++++++++++++++++ assets/icon128.png | Bin 0 -> 13862 bytes assets/icon16.png | Bin 0 -> 7510 bytes assets/icon48.png | Bin 0 -> 11714 bytes assets/index-26a612d9.js | 8 ++ assets/index-8c52b575.js | 8 ++ assets/index-b14d09b0.js | 8 ++ background.content-5f02aba1.js | 7 ++ background.injected-af36b849.js | 5 + background.js | 6 ++ connectRuntime-a699491c.js | 5 + content/mogultv/index.js | 7 ++ content/twitch/index.js | 7 ++ content/twitch/inject.js | 5 + content/youtube/index.js | 10 ++ content/youtube/inject.js | 16 +++ fetch_youtube-71c76849.js | 3 + get_stream_details-b6177000.js | 3 + index-6137f488.js | 3 + inject_script.util-c1ec59e3.js | 5 + manifest.json | 82 +++++++++++++++ parse_token.util-ed270559.js | 3 + popup/index.html | 12 +++ popup/index.js | 181 ++++++++++++++++++++++++++++++++ router.interface-6cdbc015.js | 3 + storage-a8ac7bd3.js | 3 + style-inject.es-a0e1a0ba.js | 3 + when_ready.util-91474a6b.js | 3 + 33 files changed, 848 insertions(+) create mode 100644 META-INF/cose.manifest create mode 100644 META-INF/cose.sig create mode 100644 META-INF/manifest.mf create mode 100644 META-INF/mozilla.rsa create mode 100644 META-INF/mozilla.sf create mode 100644 assets/background-c101863b.js create mode 100644 assets/icon128.png create mode 100644 assets/icon16.png create mode 100644 assets/icon48.png create mode 100644 assets/index-26a612d9.js create mode 100644 assets/index-8c52b575.js create mode 100644 assets/index-b14d09b0.js create mode 100644 background.content-5f02aba1.js create mode 100644 background.injected-af36b849.js create mode 100644 background.js create mode 100644 connectRuntime-a699491c.js create mode 100644 content/mogultv/index.js create mode 100644 content/twitch/index.js create mode 100644 content/twitch/inject.js create mode 100644 content/youtube/index.js create mode 100644 content/youtube/inject.js create mode 100644 fetch_youtube-71c76849.js create mode 100644 get_stream_details-b6177000.js create mode 100644 index-6137f488.js create mode 100644 inject_script.util-c1ec59e3.js create mode 100644 manifest.json create mode 100644 parse_token.util-ed270559.js create mode 100644 popup/index.html create mode 100644 popup/index.js create mode 100644 router.interface-6cdbc015.js create mode 100644 storage-a8ac7bd3.js create mode 100644 style-inject.es-a0e1a0ba.js create mode 100644 when_ready.util-91474a6b.js diff --git a/META-INF/cose.manifest b/META-INF/cose.manifest new file mode 100644 index 0000000..1cae1ad --- /dev/null +++ b/META-INF/cose.manifest @@ -0,0 +1,142 @@ +Manifest-Version: 1.0 + +Name: manifest.json +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: QyOWplGk05hY8yqOckI5ow3flts= +SHA256-Digest: YsavbsFOHi+AXVSbguQu0Tv60yoFhK9W3mW++ablOII= + +Name: background.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: otZGFtDhcnbfdUJOCjW9i1NYPO0= +SHA256-Digest: mgVRfmNzMoxvuLndSlKK4AkCWDabpbekleOV++9cWtU= + +Name: index-6137f488.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: rNamLTYc/X4gd/dLBlk300AQOW8= +SHA256-Digest: S33prVTiy5xonbBTGTEKPY1v+Lb84anybWbye+zq6wE= + +Name: background.injected-af36b849.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: UF0lgn7oKe72Bjg/lBEwzH4Umis= +SHA256-Digest: NTFIqjrprPiv/JKI7ppnvr3q1Ibt8C/IGbLwkr3nHNk= + +Name: get_stream_details-b6177000.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: yCTRLEgpVeUuVBx6nRlIZGc/FkA= +SHA256-Digest: QzA+2ffC9lOLR9vXjdJYGXg12fQY0Fo5ga6Na4muGqU= + +Name: parse_token.util-ed270559.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: IBgALOyVpV5c2qndWHw3xIwYD8o= +SHA256-Digest: EVxzphZ3DjnCxgg69Bb+Cb6qU+IQuSD6dp93AIhNWZg= + +Name: fetch_youtube-71c76849.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 42eBw2OqRR68eu8r/SPuKyFKaOQ= +SHA256-Digest: MRh597WCWZkT9t03IVvwdcOZZmjMuu7K4soQU/T2a/0= + +Name: router.interface-6cdbc015.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: W9ch3UrWE93U87O7CGQLo4Zn1O8= +SHA256-Digest: icJArSO2T+nG5wNcv9j54PPcb7/4hrTvQgkyxvoww74= + +Name: style-inject.es-a0e1a0ba.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: syuFaCktG1wUUxfCChPrKvOC3Po= +SHA256-Digest: KVO81P8lHSZ+7NgTK9REh7A7CNjl/cZWUzBQSWLW8GQ= + +Name: storage-a8ac7bd3.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 1fGdHT6DYLkzUYCSGdpONdCNjhA= +SHA256-Digest: wJ4DkoJ6fjrH7bUjQj26JLD8N87etKl9t8IFYffGfRg= + +Name: connectRuntime-a699491c.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: LVD3EDxHZoyuVOD0Gx7nbbwyjmQ= +SHA256-Digest: AXPMWmaye4YgwkyD83k9SFZRtlk+iG8hfXSlk1pBJ5U= + +Name: background.content-5f02aba1.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: pr0Fwt3L3YF+gW2/f1rMEthMD3c= +SHA256-Digest: QWplWRax1J1pkq64mM1eTeDg5Djv/CtiLJoIYlrZSI0= + +Name: inject_script.util-c1ec59e3.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: A1nesjjyxjUtFgzMB/LrqVTxYvA= +SHA256-Digest: v9JV86okMb2y8UCyST10ZJmZi28egw6Fpua+HOdpAKU= + +Name: when_ready.util-91474a6b.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: vGtvPLCiUbrZ0wSC14aVb5FkecQ= +SHA256-Digest: 9Cb+zjS00dSy+O5ABVzMB+qM/OAaHOzrkBfRtVGfw2o= + +Name: popup/index.html +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: N1UM8u9cukLAr+I9D9YzWiqL4bM= +SHA256-Digest: 9CNJMH1v+j2WlTe+sIo78TZ6LuVLab2QIwGtrMhSFLw= + +Name: popup/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: X/+QqwkoQ/2LSAmw6IojRy+ZFEA= +SHA256-Digest: ELssVW8zEux25qpRliKg44b0YVg8g8MKJ+rSvVpZnQM= + +Name: assets/icon16.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 5fHxvDGOaVFjrooikbv1hD0zJ1o= +SHA256-Digest: fUCcukwVtnuEm0RLro1kBByeqg7y9ZtacV/EJOGab2w= + +Name: assets/icon48.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: zKUR+hdJsV76zopW+ANvI6Ib91E= +SHA256-Digest: 3RNu1SPtiNbK9DlSeRuro+r8vQ3e1vsKAFMQs0x52N0= + +Name: assets/icon128.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: tsWw4BHONlffMdl0Sm7UzLWYW/k= +SHA256-Digest: DQq7VbY0l32ewC/MJKwsPdqYPkgFkr4GywJe2TdkV9M= + +Name: assets/background-c101863b.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: KHjGawagtvVDH7ef9CJ2qRQNcDI= +SHA256-Digest: QvnXfM33XTrJj0j8jRLvo3EvZPO0dFsitpnYG4kbTyM= + +Name: assets/index-8c52b575.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: Un7dBvBb46qfc84r8NKcsv7452c= +SHA256-Digest: 4f5WbJ3/wfSqwD74LR9j34sJAkJ0MwSzpDYnDcpzG60= + +Name: assets/index-b14d09b0.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: JsUIKULUiNrjUOqMBtDTLpU9Re4= +SHA256-Digest: 5TgWk/SxFjsHUhykKvheafN02qvQDgwKTIZ9+1R2UrY= + +Name: assets/index-26a612d9.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: rUTqX3fuW2B6+zOTl6zBwkPo41s= +SHA256-Digest: SWQ0c104tRKLaUEOp9jtdl1bKuDYXQQNNXxQjdw6wJ4= + +Name: content/youtube/inject.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: Ov5ue5JIapXyBOzbveEVoBNFPXk= +SHA256-Digest: FOL1i7Z8U1fU66AAbV3F2sSWGlMgSWfSNUAQdP8CgnM= + +Name: content/youtube/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: FzEoDMTpvO6RgnXhR7dbrHb9EuU= +SHA256-Digest: uDoKZjRVQJc+v2MjqjIFM5sVrXufOPcRD+BRlXk2Wxg= + +Name: content/twitch/inject.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 7NMc9FYcdiJ+XH27GauS1qIRsac= +SHA256-Digest: SHAgW6ZzT6DnrZMj+fBld3X/GcvpeydsH+zP+JgK+jw= + +Name: content/twitch/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 0OlsTi3u80Ji/nlfE/jDs/H3BKQ= +SHA256-Digest: 1UDKMJwQ7k23j1hOxDrq5Mbt3uiLKSfmLQ0lHXDPe54= + +Name: content/mogultv/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: SM+VJXBfLoE8CIUeV9asO1rzKd0= +SHA256-Digest: tAOufek6iJjCxZ5pmi9oNsTJl9EeiQppgYLc+9yq19s= + diff --git a/META-INF/cose.sig b/META-INF/cose.sig new file mode 100644 index 0000000000000000000000000000000000000000..72cb0fc5ad3fa5b58f2f32ba09d76eeb90a6c82e GIT binary patch literal 3090 zcmdT`dpwkB8=iO0#@Qgt7;2a#%sUt}h#Vuk6OlqGV~kVGh`~e-GjdkcmPpF68kAKO z!j>FL4ykpBZ4ueFjcl|bWoNXzU%TJ_zW=`8_xs-WkN3Hr=YD?g{oe0$UDrMAd(;y} zEr#?)5K{jCc`El402BDt{V896vAg>2C{w$jWpse7};YF~RR)2&rIia8c zy5aNM0tg690F{M^<}pwK6o7nNv9}~G`y2C$6j)~G%$?U>Z-0t1Zzjf$w#JP5hA`@! z4t!ZH89LmdI{M!3WAXsc!8u9shmXkm2jv>pG|ykl3p%T7nrGmrzS4RF)sEkVu5a9R zK7C|S=&j99=-wMP9&d5n>Fbh@@_D&IFMW+dTO%(rji1>-@ZTsN-WL1nyRUoaQcjM% z3ZALrJ?1=UrfannpeI^TeRF~*R{|qACsyy*6J_g%15cz$XAjB**YWq%K3ynov#>Dq zc77GNQkt)(*f7ej2$mGCY=4U$bK9VWxJ?actb%3DZND6bG?p`Pa?Mz`Nlm5c$i!V> z>UPR#Y}qFIcE^ep3b^EA+56}7j_iHli zS8PvjjM0JKF6z|&6>U9oa13P|-TLvWS5((6mEy|fq>FvY$32dk=g4^%HT3vOPWd-H$H8;aW--uI*S{;r#7wXx?{JC zNz5wy#$aCE+ifmybW+>KhBiTA00bx%0O_CrNCu@u$4(s!M}RN@SOsOoNLDn0!$m|z zg34m7EyhwH28rH`1P}-m47Nrlbs4xaTv6HbJ#JNM^Vf?7N<;dktvUnc> z&MyM_g^7ySn_hZwD<{}I-D{QS2>8oPy)!q9`TVkk|1s$W000^xC45pGfs{oX01hWA zYXx$-VP+)Kzf+IIWRRHQAqHWrP;iI%^YCy7(7xCf)D++im>f2j#pddZ$;;qIhO<5= zEvO+-|IYz`l|m6+0muQjo?OzrLKC(2%A*CfmB(E7XZ=%E9Sxo4hkD&h587L~oIGla z9~&ZUX$g?qIBaU?tgO^aT|YV3^Nmg;+kRZJdv+vib@lvYOY%UnCaU&Qj`2Vl_R^k$ zev*Z2W?K3OI?8okvFVZBo#(H0W$#kzW-&KUHj^O-B~B1jkNKvQ@F6RmX*S&fO0{VX z`{`%F4ZDY{mx)5@ADsg9uzp+d$uUGJEy7BlwPRoO>mLs}2xeaJXucye1KdgG=BTqu ze$RD=Q+O2Pk6sJco?o!KCEb}NXV?#}Zczq71#$2@8u zq3oTUBXUohzcD)?)5qs$&pc`9Kg*iD~S$^|F*$upk;k6~1I(f}L9dDM4okC6T zx3n?MX?(WjNMnsb)V};+{Ja)zuqTa+X|eOvbKv>DW- zU}s}fLcfi7Ky2mp7_>qC7k2r)unErd>!th((f|3Y!lDvIuM;cm-{e(8JV}77fXa#g zEU*W}0rGGUaJOI=lST12Gy+*5)x_77MKz_+m<*P$zah5k_}k?CjMlqDM(=& zF@60hR2s#f%A!$eOd~%NQ<^{HANq{H9jrA)x@ft8upKe994NI{+T6X>k1)x7pB=p# zAG@SC;Q~xK?BVTd9>ndaOV~shlW6x_;$$vRgtGez4j+qAo%ag+UO$j#mIV7EE4HNB zOkw7fP5<=}hVfka&Wba3?d30;aHLE7@e9oT>US7uCyt}4leGY=Z+4?AYEM3vvZD4x-9u~x|F=nPmJf) zFRzQ9Ug7$T=`7(%*)kudc@IN0VC84BtDH-EfT%b#$d8uM#_mopAK)>YBB~Ov#%Jl{ z@?_;EgbB;)e(@6%efETJ6KHo&}tG_ZM*c3vlay7{GKkRAn5&u{T|mEb_2A=NWbLLtkh@bFlq#epybR3QVKm@NC$r ti-p^g6|$y$e1Zb0IR|$9Z1p#c!rNzrg?i literal 0 HcmV?d00001 diff --git a/META-INF/manifest.mf b/META-INF/manifest.mf new file mode 100644 index 0000000..5396974 --- /dev/null +++ b/META-INF/manifest.mf @@ -0,0 +1,152 @@ +Manifest-Version: 1.0 + +Name: manifest.json +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: QyOWplGk05hY8yqOckI5ow3flts= +SHA256-Digest: YsavbsFOHi+AXVSbguQu0Tv60yoFhK9W3mW++ablOII= + +Name: background.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: otZGFtDhcnbfdUJOCjW9i1NYPO0= +SHA256-Digest: mgVRfmNzMoxvuLndSlKK4AkCWDabpbekleOV++9cWtU= + +Name: index-6137f488.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: rNamLTYc/X4gd/dLBlk300AQOW8= +SHA256-Digest: S33prVTiy5xonbBTGTEKPY1v+Lb84anybWbye+zq6wE= + +Name: background.injected-af36b849.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: UF0lgn7oKe72Bjg/lBEwzH4Umis= +SHA256-Digest: NTFIqjrprPiv/JKI7ppnvr3q1Ibt8C/IGbLwkr3nHNk= + +Name: get_stream_details-b6177000.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: yCTRLEgpVeUuVBx6nRlIZGc/FkA= +SHA256-Digest: QzA+2ffC9lOLR9vXjdJYGXg12fQY0Fo5ga6Na4muGqU= + +Name: parse_token.util-ed270559.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: IBgALOyVpV5c2qndWHw3xIwYD8o= +SHA256-Digest: EVxzphZ3DjnCxgg69Bb+Cb6qU+IQuSD6dp93AIhNWZg= + +Name: fetch_youtube-71c76849.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 42eBw2OqRR68eu8r/SPuKyFKaOQ= +SHA256-Digest: MRh597WCWZkT9t03IVvwdcOZZmjMuu7K4soQU/T2a/0= + +Name: router.interface-6cdbc015.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: W9ch3UrWE93U87O7CGQLo4Zn1O8= +SHA256-Digest: icJArSO2T+nG5wNcv9j54PPcb7/4hrTvQgkyxvoww74= + +Name: style-inject.es-a0e1a0ba.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: syuFaCktG1wUUxfCChPrKvOC3Po= +SHA256-Digest: KVO81P8lHSZ+7NgTK9REh7A7CNjl/cZWUzBQSWLW8GQ= + +Name: storage-a8ac7bd3.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 1fGdHT6DYLkzUYCSGdpONdCNjhA= +SHA256-Digest: wJ4DkoJ6fjrH7bUjQj26JLD8N87etKl9t8IFYffGfRg= + +Name: connectRuntime-a699491c.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: LVD3EDxHZoyuVOD0Gx7nbbwyjmQ= +SHA256-Digest: AXPMWmaye4YgwkyD83k9SFZRtlk+iG8hfXSlk1pBJ5U= + +Name: background.content-5f02aba1.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: pr0Fwt3L3YF+gW2/f1rMEthMD3c= +SHA256-Digest: QWplWRax1J1pkq64mM1eTeDg5Djv/CtiLJoIYlrZSI0= + +Name: inject_script.util-c1ec59e3.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: A1nesjjyxjUtFgzMB/LrqVTxYvA= +SHA256-Digest: v9JV86okMb2y8UCyST10ZJmZi28egw6Fpua+HOdpAKU= + +Name: when_ready.util-91474a6b.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: vGtvPLCiUbrZ0wSC14aVb5FkecQ= +SHA256-Digest: 9Cb+zjS00dSy+O5ABVzMB+qM/OAaHOzrkBfRtVGfw2o= + +Name: popup/index.html +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: N1UM8u9cukLAr+I9D9YzWiqL4bM= +SHA256-Digest: 9CNJMH1v+j2WlTe+sIo78TZ6LuVLab2QIwGtrMhSFLw= + +Name: popup/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: X/+QqwkoQ/2LSAmw6IojRy+ZFEA= +SHA256-Digest: ELssVW8zEux25qpRliKg44b0YVg8g8MKJ+rSvVpZnQM= + +Name: assets/icon16.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 5fHxvDGOaVFjrooikbv1hD0zJ1o= +SHA256-Digest: fUCcukwVtnuEm0RLro1kBByeqg7y9ZtacV/EJOGab2w= + +Name: assets/icon48.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: zKUR+hdJsV76zopW+ANvI6Ib91E= +SHA256-Digest: 3RNu1SPtiNbK9DlSeRuro+r8vQ3e1vsKAFMQs0x52N0= + +Name: assets/icon128.png +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: tsWw4BHONlffMdl0Sm7UzLWYW/k= +SHA256-Digest: DQq7VbY0l32ewC/MJKwsPdqYPkgFkr4GywJe2TdkV9M= + +Name: assets/background-c101863b.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: KHjGawagtvVDH7ef9CJ2qRQNcDI= +SHA256-Digest: QvnXfM33XTrJj0j8jRLvo3EvZPO0dFsitpnYG4kbTyM= + +Name: assets/index-8c52b575.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: Un7dBvBb46qfc84r8NKcsv7452c= +SHA256-Digest: 4f5WbJ3/wfSqwD74LR9j34sJAkJ0MwSzpDYnDcpzG60= + +Name: assets/index-b14d09b0.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: JsUIKULUiNrjUOqMBtDTLpU9Re4= +SHA256-Digest: 5TgWk/SxFjsHUhykKvheafN02qvQDgwKTIZ9+1R2UrY= + +Name: assets/index-26a612d9.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: rUTqX3fuW2B6+zOTl6zBwkPo41s= +SHA256-Digest: SWQ0c104tRKLaUEOp9jtdl1bKuDYXQQNNXxQjdw6wJ4= + +Name: content/youtube/inject.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: Ov5ue5JIapXyBOzbveEVoBNFPXk= +SHA256-Digest: FOL1i7Z8U1fU66AAbV3F2sSWGlMgSWfSNUAQdP8CgnM= + +Name: content/youtube/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: FzEoDMTpvO6RgnXhR7dbrHb9EuU= +SHA256-Digest: uDoKZjRVQJc+v2MjqjIFM5sVrXufOPcRD+BRlXk2Wxg= + +Name: content/twitch/inject.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 7NMc9FYcdiJ+XH27GauS1qIRsac= +SHA256-Digest: SHAgW6ZzT6DnrZMj+fBld3X/GcvpeydsH+zP+JgK+jw= + +Name: content/twitch/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: 0OlsTi3u80Ji/nlfE/jDs/H3BKQ= +SHA256-Digest: 1UDKMJwQ7k23j1hOxDrq5Mbt3uiLKSfmLQ0lHXDPe54= + +Name: content/mogultv/index.js +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: SM+VJXBfLoE8CIUeV9asO1rzKd0= +SHA256-Digest: tAOufek6iJjCxZ5pmi9oNsTJl9EeiQppgYLc+9yq19s= + +Name: META-INF/cose.manifest +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: JbBDgY4Auec9tEuvS6VrbtqtU88= +SHA256-Digest: TnnqxR++CyBRAEwdlIwvhgX7w7TJqfoi16AKWXm6nFM= + +Name: META-INF/cose.sig +Digest-Algorithms: SHA1 SHA256 +SHA1-Digest: aq3V7SWNxTjUOvac4nR0ASzSuCo= +SHA256-Digest: NjaNWpbF0miRPZBdCYp2gIlbe0x6ekUrgeZX3GGkUK4= + diff --git a/META-INF/mozilla.rsa b/META-INF/mozilla.rsa new file mode 100644 index 0000000000000000000000000000000000000000..9bb1866c9003cc7e5955b6e0de8ad03f8fd938a4 GIT binary patch literal 4337 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 literal 0 HcmV?d00001 diff --git a/META-INF/mozilla.sf b/META-INF/mozilla.sf new file mode 100644 index 0000000..d58c0ef --- /dev/null +++ b/META-INF/mozilla.sf @@ -0,0 +1,4 @@ +Signature-Version: 1.0 +SHA1-Digest-Manifest: JvgRKeFOOFxt5PuYl6SWkpcmiRw= +SHA256-Digest-Manifest: RxJHimH6MUnrcxmytp7w/FtE2hPteHedAiMOwT1Gzow= + diff --git a/assets/background-c101863b.js b/assets/background-c101863b.js new file mode 100644 index 0000000..ac94ef9 --- /dev/null +++ b/assets/background-c101863b.js @@ -0,0 +1,154 @@ +(function () { + 'use strict'; + + function captureEvents(events) { + const captured = events.map(captureEvent); + + return () => captured.forEach((t) => t()) + + function captureEvent(event) { + let isCapturePhase = true; + + // eslint-disable-next-line @typescript-eslint/ban-types + const callbacks = new Map(); + const eventArgs = new Set(); + + // This is the only listener for the native event + event.addListener(handleEvent); + + function handleEvent(...args) { + if (isCapturePhase) { + // This is before dynamic import completes + eventArgs.add(args); + + if (typeof args[2] === 'function') { + // During capture phase all messages are async + return true + } else { + // Sync messages or some other event + return false + } + } else { + // The callbacks determine the listener return value + return callListeners(...args) + } + } + + // Called when dynamic import is complete + // and when subsequent events fire + function callListeners(...args) { + let isAsyncCallback = false; + callbacks.forEach((options, cb) => { + // A callback error should not affect the other callbacks + try { + isAsyncCallback = cb(...args) || isAsyncCallback; + } catch (error) { + console.error(error); + } + }); + + if (!isAsyncCallback && typeof args[2] === 'function') { + // We made this an async message callback during capture phase + // when the function handleEvent returned true + // so we are responsible to call sendResponse + // If the callbacks are sync message callbacks + // the sendMessage callback on the other side + // resolves with no arguments (this is the same behavior) + args[2](); + } + + // Support events after import is complete + return isAsyncCallback + } + + // This function will trigger this Event with our stored args + function triggerEvents() { + // Fire each event for this Event + eventArgs.forEach((args) => { + callListeners(...args); + }); + + // Dynamic import is complete + isCapturePhase = false; + // Don't need these anymore + eventArgs.clear(); + } + + // All future listeners are handled by our code + event.addListener = function addListener(cb, ...options) { + callbacks.set(cb, options); + }; + + event.hasListeners = function hasListeners() { + return callbacks.size > 0 + }; + + event.hasListener = function hasListener(cb) { + return callbacks.has(cb) + }; + + event.removeListener = function removeListener(cb) { + callbacks.delete(cb); + }; + + event.__isCapturedEvent = true; + + return triggerEvents + } + } + + function delay(ms) { + return new Promise((resolve) => { + setTimeout(resolve, ms); + }) + } + + /** + * Get matches from an object of nested objects + * + * @export + * @template T Type of matches + * @param {*} object Parent object to search + * @param {(x: any) => boolean} pred A predicate function that will receive each property value of an object + * @param {string[]} excludeKeys Exclude a property if the key exactly matches + * @returns {T[]} The matched values from the parent object + */ + function getDeepMatches(object, pred, excludeKeys) { + const keys = typeof object === 'object' && object ? Object.keys(object) : []; + + return keys.length + ? keys + .filter((key) => !excludeKeys.includes(key)) + .reduce((r, key) => { + const target = object[key]; + + if (target && pred(target)) { + return [...r, target] + } else { + return [...r, ...getDeepMatches(target, pred, excludeKeys)] + } + }, [] ) + : [] + } + + const importPath = /*@__PURE__*/JSON.parse('"../background.js"'); + const delayLength = /*@__PURE__*/JSON.parse('0'); + const excludedPaths = /*@__PURE__*/JSON.parse('["extension"]'); + + const events = getDeepMatches( + chrome, + (x) => typeof x === 'object' && 'addListener' in x, + // The webRequest API is not compatible with event pages + // TODO: this can be removed + // if we stop using this wrapper with "webRequest" permission + excludedPaths.concat(['webRequest']), + ); + const triggerEvents = captureEvents(events); + + import(importPath).then(async () => { + if (delayLength) await delay(delayLength); + + triggerEvents(); + }); + +}()); diff --git a/assets/icon128.png b/assets/icon128.png new file mode 100644 index 0000000000000000000000000000000000000000..16fcf1589f62a78e2b9deb28c75fa884ff26b1d6 GIT binary patch literal 13862 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 z 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≺Onc3i>cYj!&!?u|I-6QhHA z*Xo8ZmwOlX%PsgjsgeOzDnq_L{A?paZ3fSJP}wPmld&O~rq`T(k!{y%hivk!kq+js zD8>YnbGIRq#vJWC=bAApQd7}Tp0)Uyr4}JkI_KbwDn=e;ajs=&WK@?;V5i6HH zmsasw?#zpBbqhJ}3SxVg&d0};gPCEfPD}~o*~^o+qTsPUa3~A$NGWxcd;rs<%8>M(uMeiI0 zA_+sIzb^Rr6&pq$Q=M!iouEVH6)HgX#(KesaFC{RpmS*0j^eFor)CW$Q!zw5oQINP zDR0fp#|E@4DtbRa{j~NDgF+p}1Dw1j!oAY$=R~UTd^ntHr{-B>l3+O1Z9J|$%*wBH z(`a%S8+8itF;nWzPr({27();8STt1qF{0! zWD?iAbL&2%t^(n-$>XV&kIju7eQt+)Xs$Nf#SS9y0a8Dh?NBmAM4D{) z*$%0h-SaSJ_iK2h7Po}O-=St&LcOe`4U{t`k9dmreY5ftS3GOLgz=9dH-=o#MpI)d z-f(v7^K!3uhlJcQU9z&|d^0NBa2}GzI}y*ab$X9B9)dA(rjD06d;3ZD?qC@MYhE1?sod6i%mELu( z)yV)md*3Y``g!g81-vDAS11&a)|yy5svhz4wBZNwh=@>wnVpoMR=~#duX?p3@gfI8 zsBvp2KZ6BNsjJZ|$&RPM|_OgfO3Pc6`SnO2t?dm z&+DcI`bU)WuTwJ&+$}oik%Fe;@VJb%!EcP?Y^b&k9aB{UJ%bU zmHT~lA(+8;A7Au4{`1t+Pcykl*l$RG=b@BLM6K-b*@@O~M zh87aaY5J<{B-B;X62q=fZ$Zm3mPznnfi-7k0~0};tz6u0Cxefx-rQhG*xCNmbN%tP z_rO}yB<-sx|A>NMVkI8|WL#ZoE*j>mJ+3L1&dENLA0KLA@pA0Pk# literal 0 HcmV?d00001 diff --git a/assets/icon16.png b/assets/icon16.png new file mode 100644 index 0000000000000000000000000000000000000000..343753463b4237a7f1d79f3c1b5f10c5801421de GIT binary patch literal 7510 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 s=Math.random().toString();return this.port.postMessage({nonce:s,path:t,body:e}),new Promise((t=>{const e=a=>{a.meta.nonce===s&&(this.port.onMessage.removeListener(e),t(a));};this.port.onMessage.addListener(e);}))},this.extensionId=s.runtime.id,this.port=this.connectToBackground(),this.port.onMessage.addListener(this.onMessage),window.addEventListener("message",(async t=>{var e,a,o;if(t.source!==window||(null===(e=t.data)||void 0===e?void 0:e.id)!==this.extensionId||"response"===(null===(a=t.data)||void 0===a?void 0:a.type))return;let n;switch(null===(o=t.data)||void 0===o?void 0:o.type){case"fetch":n=await this.fetch(t.data.data[0],t.data.data[1]);break;case"storage.get":{const[e,a]=t.data.data.split(".");n=await m[e].get(a);break}case"storage.set":{const[e,a]=t.data.data[0].split(".");n=await m[e].set(a,t.data.data[1]);break}}window.postMessage({id:this.extensionId,nonce:t.data.nonce,type:"response",data:n});}));}connectToBackground(){return n()}async onMessage(t){window.postMessage(t);}} + +export { o }; diff --git a/background.injected-af36b849.js b/background.injected-af36b849.js new file mode 100644 index 0000000..ada3fba --- /dev/null +++ b/background.injected-af36b849.js @@ -0,0 +1,5 @@ +import { t } from './index-6137f488.js'; + +class e extends t{constructor(){super(),this.fetch=async(t,e)=>this.sendToContentScript("fetch",[t,e]),this.extensionId=function(){var t;const e=null===(t=document.getElementById("jjdtNVhjLLNiwvfY"))||void 0===t?void 0:t.getAttribute("jjdtNVhjLLNiwvfY");if(!e)throw new Error("Could not resolve extension ID from injected script");return e}(),window.addEventListener("message",(t=>{var e,n;t.source===window&&(null===(e=t.data)||void 0===e?void 0:e.id)===this.extensionId&&"event"===(null===(n=t.data)||void 0===n?void 0:n.type)&&this.onMessage(t.data.data);}));}async onMessage(t){}async getStorage(t){return await this.sendToContentScript("storage.get",t)}async getLiveStorageValue(t,e=(t=>t)){const n={value:e(await this.getStorage(t))},o=window.setInterval((async()=>{n.value=e(await this.getStorage(t));}),1e3);return n.interval=o,n}async setStorage(t,e){return this.sendToContentScript("storage.set",[t,e])}async sendToContentScript(t,e){const n=Math.random().toString();return window.postMessage({id:this.extensionId,nonce:n,type:t,data:e}),new Promise((t=>{const e=o=>{var s,a,i;o.source===window&&(null===(s=o.data)||void 0===s?void 0:s.id)===this.extensionId&&(null===(a=o.data)||void 0===a?void 0:a.nonce)===n&&"response"===(null===(i=o.data)||void 0===i?void 0:i.type)&&(t(o.data.data),window.removeEventListener("message",e));};window.addEventListener("message",e);}))}} + +export { e }; diff --git a/background.js b/background.js new file mode 100644 index 0000000..6179110 --- /dev/null +++ b/background.js @@ -0,0 +1,6 @@ +import { d as dt } from './parse_token.util-ed270559.js'; +import { e } from './fetch_youtube-71c76849.js'; +import { n } from './router.interface-6cdbc015.js'; +import { s, m } from './storage-a8ac7bd3.js'; + +class o extends Error{constructor(t,e){super(e),this.code=t,this.message=e;}}const r=(t,e={},a)=>({body:e,meta:{isSuccess:!1,code:t,nonce:a}});let i;const c=t=>s.cookies.getAll({url:t}).then((t=>t.filter((t=>!t.name.startsWith("ST-"))).map((t=>[t.name,t.value])))).then(Object.fromEntries),u={"@me":async()=>{const t=await m.auth.get("token");return dt(t)},logout:async()=>{const t=await m.auth.get("token");await fetch("https://v2.mogultv.org/auth/youtube",{method:"DELETE",headers:{Authorization:`Bearer ${t}`}}),await m.auth.remove("token");},login:async t=>{const a=await c(t.href),s=await fetch("https://v2.mogultv.org/auth/youtube",{method:"POST",body:JSON.stringify(Object.assign(Object.assign({},t),{cookies:a}))});if(200!==s.status)return null;const{jwt:n}=await s.json();return await m.auth.set("token",n),n},link:async t=>{const a=await m.auth.get("token"),n=await fetch(`https://v2.mogultv.org/link/${t}`,{method:"GET",headers:{Authorization:`Bearer ${a}`}});if(200!==n.status)return;const o=await n.text();await chrome.cookies.set({url:"https://v2.mogultv.org",name:"Authorization",value:a,httpOnly:!0,path:`/link/${t}/callback`,expirationDate:Math.floor(Date.now()/1e3)+3600}),await chrome.windows.create({url:o,focused:!0,type:"popup",width:850,height:800});const r=await new Promise((t=>{i=t;}));return m.auth.set("token",r),dt(r)},"finish-link":async(t,e)=>{var s$1,n;(null===(s$1=e.sender.tab)||void 0===s$1?void 0:s$1.id)&&s.tabs.remove(null===(n=e.sender.tab)||void 0===n?void 0:n.id),null==i||i(t);},"disconnect-link":async t=>{const a=await m.auth.get("token"),n=await fetch(`https://v2.mogultv.org/link/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${a}`}});if(200!==n.status)return;const{jwt:o}=await n.json();return await m.auth.set("token",o),dt(o)}};const l=t=>async()=>{var a,s;const n=await m.cache.get(t);let o;if(n&&n.expiresAt>Date.now())o=n.value;else {const n=await fetch("https://v2.mogultv.org"+t),r=Number(n.headers.get("age")),i=Number((null===(s=null===(a=n.headers.get("cache-control"))||void 0===a?void 0:a.match(/max-age=(\d+)/))||void 0===s?void 0:s[1])||300)-r,c=Date.now()+1e3*i;o=await n.json(),await m.cache.set(t,{expiresAt:c,value:o});}return o},h={youtube:{"get-stream":async()=>{const t=await m.cache.get("get-stream");let a;if(t&&t.expiresAt>Date.now())a=t.value;else {const t=Date.now()+6e4;a=await async function(){try{const t=await fetch("https://youtube.com/channel/UCrPseYLGpNygVi34QpGNqpA/live");if(200!==t.status)return null;const e=await t.text(),a=/(?:window\s*\[\s*["']ytInitialData["']\s*\]|ytInitialData)\s*=\s*({.+?})\s*;/.exec(e);if(a){const t=JSON.parse(a[1]),e=t.currentVideoEndpoint.watchEndpoint.videoId,s=t.contents.twoColumnWatchNextResults.results.results.contents[0].videoPrimaryInfoRenderer,n=t.contents.twoColumnWatchNextResults.results.results.contents[1].videoSecondaryInfoRenderer.owner.videoOwnerRenderer.thumbnail.thumbnails[0].url,o=s.viewCount.videoViewCountRenderer.viewCount.runs.find((t=>/^[0-9,]+$/.test(t.text))).text;return {title:s.title.runs[0].text,viewersCount:parseInt(o.replace(/,/g,"")),previewImageURL:`https://i.ytimg.com/vi/${e}/mqdefault.jpg`,profileImageURL:n}}}catch(t){console.warn(t);}return null}(),await m.cache.set("get-stream",{expiresAt:t,value:a});}return a},"get-user":async t=>{const e$1=await c(t.href),a=await e(Object.assign(Object.assign({},t),{cookies:e$1}));if(!a.success)throw new o(a.code,a.message);return a.data}},gateway:{users:l("/gateway/users"),emotes:l("/gateway/emotes"),badges:l("/gateway/badges"),"set-settings":async t=>{const a=await m.auth.get("token"),n=await fetch("https://v2.mogultv.org/gateway/settings",{method:"PUT",headers:{Authorization:`Bearer ${a}`},body:JSON.stringify(t)}),{jwt:o}=await n.json();return m.auth.set("token",o),dt(o)}},auth:u,extension:{popup:()=>s.action.openPopup(),"open-tab":async t=>{await s.tabs.create({url:t});}}},d=async(e,a)=>{var s;const{path:n$1,body:o}=e;if(!n$1)return;e.meta?e.meta.sender=a:e.meta={sender:a,isPort:!1},e.meta.isPort||(e.meta.isPort=!1);const i=t=>{},c=n$1.split("/").filter(Boolean),u=c[0];if(!(u in h)){return r(n.NotFound,void 0,e.nonce)}const l=h[u][c.slice(1).join("/")];if(!l){return r(n.NotFound,void 0,e.nonce)}try{const a=((e,a)=>({body:e,meta:{isSuccess:!0,code:n.Success,nonce:a}}))(await l(o,e.meta),e.nonce);return i(a),a}catch(a){const n$1=a;return r(null!==(s=n$1.code)&&void 0!==s?s:n.Unknown,{message:n$1.message},e.nonce)}};s.runtime.onConnect.addListener((t=>{const e=t.sender;e&&t.onMessage.addListener((async a=>{a.meta={isPort:!0};const s=await d(a,e);t.postMessage(s);}));})),s.runtime.onMessage.addListener(d); diff --git a/connectRuntime-a699491c.js b/connectRuntime-a699491c.js new file mode 100644 index 0000000..2982333 --- /dev/null +++ b/connectRuntime-a699491c.js @@ -0,0 +1,5 @@ +import { s } from './storage-a8ac7bd3.js'; + +const n=n=>{let s$1;const t=()=>{s$1=s.runtime.connect(n),s$1.onDisconnect.addListener((()=>{t();}));};function o(e){return {addListener:n=>s$1[e].addListener(n),removeListener:n=>s$1[e].removeListener(n),hasListener:n=>s$1[e].hasListener(n),hasListeners:()=>s$1[e].hasListeners()}}t();const r={name:(null==n?void 0:n.name)||"",disconnect:()=>s$1.disconnect(),onDisconnect:o("onDisconnect"),onMessage:o("onMessage"),postMessage:e=>s$1.postMessage(e)};return Object.defineProperty(r,"name",{get:()=>s$1.name}),r}; + +export { n }; diff --git a/content/mogultv/index.js b/content/mogultv/index.js new file mode 100644 index 0000000..106f95b --- /dev/null +++ b/content/mogultv/index.js @@ -0,0 +1,7 @@ +import '../../index-6137f488.js'; +import '../../storage-a8ac7bd3.js'; +import '../../connectRuntime-a699491c.js'; +import { o } from '../../background.content-5f02aba1.js'; +import { e } from '../../when_ready.util-91474a6b.js'; + +e((async()=>{var n;const e=new o,o$1=null===(n=document.getElementById("jwt-response"))||void 0===n?void 0:n.textContent;o$1&&e.fetch("/auth/finish-link",o$1);})); diff --git a/content/twitch/index.js b/content/twitch/index.js new file mode 100644 index 0000000..94b30f0 --- /dev/null +++ b/content/twitch/index.js @@ -0,0 +1,7 @@ +import '../../index-6137f488.js'; +import '../../storage-a8ac7bd3.js'; +import '../../connectRuntime-a699491c.js'; +import { o } from '../../background.content-5f02aba1.js'; +import { e } from '../../inject_script.util-c1ec59e3.js'; + +new o,e("content/twitch/inject.js"); diff --git a/content/twitch/inject.js b/content/twitch/inject.js new file mode 100644 index 0000000..fb2784d --- /dev/null +++ b/content/twitch/inject.js @@ -0,0 +1,5 @@ +import '../../index-6137f488.js'; +import { e } from '../../background.injected-af36b849.js'; +import { s } from '../../router.interface-6cdbc015.js'; + +!async function(e){async function a(e){if(Array.isArray(e))for(const t of e)await n(t);return e}async function n(a){var n,i,r;try{switch(a.extensions.operationName){case"FollowingLive_CurrentUser":{const n=a.data,i=await e.fetch("/youtube/get-stream");s(i)&&i.body&&(n.currentUser.followedLiveUsers.edges.push(function({title:e,viewersCount:t,profileImageURL:a,previewImageURL:n}){return {__typename:"FollowedLiveUserEdge",cursor:"LTE=",node:{__typename:"User",id:"40934651",displayName:"ludwig",login:"ludwig",profileImageURL:a,stream:{broadcaster:{id:"40934651",primaryColorHex:"00FFE2",__typename:"User",channel:{id:"40934651",self:{isAuthorized:!0,__typename:"ChannelSelfEdge"},__typename:"Channel"}},id:"-1",previewImageURL:n,game:{id:"-1",name:"YouTube",displayName:"YouTube",boxArtURL:"https://i.postimg.cc/NjQvCPh2/image.png",__typename:"Game"},restriction:null,tags:[],title:e,type:"live",viewersCount:t,__typename:"Stream"}}}}(i.body)),n.currentUser.followedLiveUsers.edges.sort(((e,t)=>t.node.stream.viewersCount-e.node.stream.viewersCount)));break}case"PersonalSections":{const n=a.data.personalSections.find((e=>"FOLLOWED_SECTION"===e.type));if(n){const a=await e.fetch("/youtube/get-stream");s(a)&&a.body&&(n.items.push(function({title:e,viewersCount:t,profileImageURL:a,previewImageURL:n}){return {trackingID:"1bb8ab4b-aed2-4f25-a750-c295d57e6a95",promotionsCampaignID:"",user:{id:"40934651",login:"ludwig",displayName:"ludwig",profileImageURL:a,primaryColorHex:"00FFE2",broadcastSettings:{id:"40934651",title:e,__typename:"BroadcastSettings"},channel:{id:"40934651",creatorAnniversaries:{id:"40934651",isAnniversary:!1,__typename:"CreatorAnniversaries"},__typename:"Channel"},__typename:"User"},label:"NONE",content:{id:"-1",previewImageURL:n,broadcaster:{id:"40934651",broadcastSettings:{id:"40934651",title:e,__typename:"BroadcastSettings"},__typename:"User"},viewersCount:t,self:{canWatch:!0,isRestricted:!1,restrictionType:null,__typename:"StreamSelfConnection"},game:{id:"-1",displayName:"YouTube",name:"YouTube",__typename:"Game"},type:"live",__typename:"Stream"},__typename:"PersonalSectionChannel"}}(a.body)),n.items.sort(((e,t)=>(t.content.viewersCount||0)-(e.content.viewersCount||0))));}break}case"StreamMetadata":{const n=a.data;if("40934651"===n.user.id){const a=await e.fetch("/youtube/get-stream");s(a)&&a.body&&(n.user.lastBroadcast.id="-1",n.user.lastBroadcast.title=a.body.title,n.user.stream={id:"-1",type:"live",createdAt:(new Date).toJSON(),viewersCount:a.body.viewersCount,game:{id:"-1",name:"YouTube",__typename:"Game"},__typename:"Stream"});}break}default:{const o=a.data;if("40934651"===(null===(n=o.user)||void 0===n?void 0:n.id)&&(null===(r=null===(i=o.user)||void 0===i?void 0:i.lastBroadcast)||void 0===r?void 0:r.title)){const a=await e.fetch("/youtube/get-stream");s(a)&&a.body&&(o.user.lastBroadcast.title=a.body.title);}}}}catch(e){}}const i=window.fetch.bind(window);window.fetch=async function(e,t){const n=await i(e,t);try{let t;if(t="string"==typeof e?e:e.url,!t.includes("gql.twitch.tv/gql"))return n;const i=n.text.bind(n),r=n.json.bind(n);n.text=async function(){const e=await i();try{const t=JSON.parse(e);return await a(t),JSON.stringify(t)}catch(t){return e}},n.json=async function(){const e=await r();try{return await a(e),e}catch(t){return e}};}catch(e){return n}return n};}(new e); diff --git a/content/youtube/index.js b/content/youtube/index.js new file mode 100644 index 0000000..69e2d14 --- /dev/null +++ b/content/youtube/index.js @@ -0,0 +1,10 @@ +import '../../index-6137f488.js'; +import { e as e$3 } from '../../get_stream_details-b6177000.js'; +import { e } from '../../style-inject.es-a0e1a0ba.js'; +import { s, m } from '../../storage-a8ac7bd3.js'; +import '../../connectRuntime-a699491c.js'; +import { o as o$1 } from '../../background.content-5f02aba1.js'; +import { e as e$2 } from '../../inject_script.util-c1ec59e3.js'; +import { e as e$1 } from '../../when_ready.util-91474a6b.js'; + +var o="settings-module_ludwigLogo__Wt9ZZ",i="settings-module_ludwigSettingsPopup__Mfv9p";async function c(){const g=await d();let I=document.getElementById("ludwig-settings-popup");g.addEventListener("click",(()=>{I?I.style.display="none"===I.style.display?"block":"none":I=function(){const I=document.createElement("iframe");return I.src=s.runtime.getURL("popup/index.html"),I.id="ludwig-settings-popup",I.className=i,document.body.appendChild(I),window.addEventListener("message",(g=>{g.source===I.contentWindow&&"mogul-tv:close"===g.data&&(I.style.display="none");})),document.addEventListener("keydown",(g=>{"Escape"===g.key&&(I.style.display="none");})),document.addEventListener("click",(A=>{"none"===I.style.display||g.contains(A.target)||I.contains(A.target)||(I.style.display="none");})),I}();}));}function d(){const g=document.getElementById("ludwig-settings-button");if(g)return Promise.resolve(g);const I=document.querySelector("ytd-masthead #end");if(!I)return new Promise((g=>{setTimeout((()=>g(d())),1e3);}));const A=document.createElement("yt-icon-button");A.id="ludwig-settings-button",A.setAttribute("label","Mogul.TV Settings"),A.className="style-scope ytd-masthead";const C=document.createElement("img");return C.src="data:image/png;base64,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WQwIiMSzzDBt4g3i6U3b4LxPHGZFWSU+Jx436YLEj1xXPH7jXHBZ4JlhM52aJw4Ti4U2VtqYFU2NeIo4omo65QsZj1XOW5y1cpU178lfGMrpK8tcpzWMBBaxBAkiFFRRQhk2orTrpFhI0Xncxz/k+iVyKeQqgZFjARVokF0/+B/8nq2Vn5zwkkJxoPPFcT5GgK5doFFznO9jx2mcAMFn4Epv+St1YOaT9FpLixwBfdvAxXVLU/aAyx1g8MmQTdmVgrSEfB54P6NvygL9t0DPmje35jlOH4A0zSp5AxwcAqMFyl73eXd3+9z+7WnO7wefz3K5SrnPGAAAEuFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+Cjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDQuNC4wLUV4aXYyIj4KIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6R0lNUD0iaHR0cDovL3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3NTM0YTk5NC0xNDIzLTZjNDctYTExNi01ZjUzMWZkYzZkM2UiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ZDhlZDc2NDctZDYzMy00NDczLWI4MWYtY2NiYjRlMzQzMGRkIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZmMzZjY2MTMtODdkZi0yZDRmLWIyNDUtODZiZjc3MWFhODk4IgogICBkYzpmb3JtYXQ9ImltYWdlL3BuZyIKICAgR0lNUDpBUEk9IjIuMCIKICAgR0lNUDpQbGF0Zm9ybT0iTGludXgiCiAgIEdJTVA6VGltZVN0YW1wPSIxNjM4NDMxNjIxMzU1NDU4IgogICBHSU1QOlZlcnNpb249IjIuMTAuMjgiCiAgIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiCiAgIHRpZmY6T3JpZW50YXRpb249IjEiCiAgIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTEyLTAyVDAwOjU3OjA2LTA2OjAwIgogICB4bXA6Q3JlYXRvclRvb2w9IkdJTVAgMi4xMCIKICAgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMS0xMi0wMlQwMTo1MDoyOC0wNjowMCIKICAgeG1wOk1vZGlmeURhdGU9IjIwMjEtMTItMDJUMDE6NTA6MjgtMDY6MDAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZjM2Y2NjEzLTg3ZGYtMmQ0Zi1iMjQ1LTg2YmY3NzFhYTg5OCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIgogICAgICBzdEV2dDp3aGVuPSIyMDIxLTEyLTAyVDAwOjU3OjA2LTA2OjAwIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAgICBzdEV2dDpjaGFuZ2VkPSIvIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjhhZjc3YWM5LWU3NWMtYWI0Zi05OGY4LWYyMTE4NjY3YjljZCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKFdpbmRvd3MpIgogICAgICBzdEV2dDp3aGVuPSIyMDIxLTEyLTAyVDAxOjUwOjI4LTA2OjAwIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIKICAgICAgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIgogICAgICBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo3YTAxNGEzOC02Y2M4LWFjNDQtOGYyYS0yNDE0NTI1OGJkZjMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4wIChXaW5kb3dzKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMS0xMi0wMlQwMTo1MDoyOC0wNjowMCIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MDgyMWI4NS03MWU5LTQzYjUtYTEwNi0wY2RhYWZhZjE3YzMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIxLTEyLTAxVDIzOjUzOjQxLTA4OjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICAgPHhtcE1NOkRlcml2ZWRGcm9tCiAgICBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmZjM2Y2NjEzLTg3ZGYtMmQ0Zi1iMjQ1LTg2YmY3NzFhYTg5OCIKICAgIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OGFmNzdhYzktZTc1Yy1hYjRmLTk4ZjgtZjIxMTg2NjdiOWNkIgogICAgc3RSZWY6b3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmZjM2Y2NjEzLTg3ZGYtMmQ0Zi1iMjQ1LTg2YmY3NzFhYTg5OCIvPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+BKrvTAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+UMAgc1KQBoSUQAAAgKSURBVGjexVpNjJ1VGX7e853v3rl3Zm4pnbS2pbY4lgZNNMhCKQp1IRVM/YkxjW5csHclGw1popK4IYS4cWlcWV2oUWtUhDTVGEQSYxAVSMEU+nPpgC3tTGfuPe/j4vu55+9Oh2qmJ5lk7vdzz/O+7/P+niuIFr83FK7hbgBHCRwmZD+IDgEQACkgAULQXFOwvabNdQLa3q/e0/Z/QCFQTu4HzzT3gRGBV5T4rQI/7vT47Icf2UIfrwTgnxjuouIJCD5PSof1Bqg3pQioDXDWACUAWwFqhAS0BsUaWCVkAzL87D/vP6MElBhR5Fc0/NrBRwdnEgH08eEHIfgFiNsbDbK+HWq+2ZTt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",C.className="style-scope ytd-masthead "+o,A.appendChild(C),I.prepend(A),Promise.resolve(A)}e(".ytd-masthead.settings-module_ludwigLogo__Wt9ZZ {\n width: var(--yt-icon-button-icon-width);\n}\n\n.settings-module_ludwigSettingsPopup__Mfv9p {\n width: 400px;\n height: 600px;\n position: fixed;\n top: 56px;\n right: 0px;\n z-index: 9999;\n box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);\n}");async function a(){setInterval((async()=>{await async function(){const g=await m.settings.get("chatStyles"),I=e$3();return g&&I}()?document.body.setAttribute("data-mogul-chat-styles",""):document.body.removeAttribute("data-mogul-chat-styles");}),250);}e('/* Overwrite colors on verified/owner names */\nyt-live-chat-author-chip[is-highlighted] #author-name.owner.yt-live-chat-author-chip,\n#author-name.owner.yt-live-chat-author-chip {\n color: var(--yt-live-chat-author-chip-owner-text-color) !important;\n}\n\nyt-live-chat-author-chip[is-highlighted] #author-name.yt-live-chat-author-chip {\n color: var(--yt-live-chat-author-chip-verified-text-color) !important;\n}\n\n\nbody[data-mogul-chat-styles] #author-photo.yt-live-chat-text-message-renderer {\n\tdisplay: none;\n}\n\nbody[data-mogul-chat-styles] yt-live-chat-text-message-renderer {\n\tmin-height: 24px;\n}\n\nbody[data-mogul-chat-styles] yt-live-chat-author-chip {\n\tdirection: rtl;\n}\n\nbody[data-mogul-chat-styles] yt-live-chat-author-chip::before {\n\tcontent: ":";\n}\n\nbody[data-mogul-chat-styles] #author-name.member.yt-live-chat-author-chip,\n#author-name.moderator.yt-live-chat-author-chip {\n font-weight: 800 !important;\n}\n\nbody[data-mogul-chat-styles] yt-live-chat-author-badge-renderer.yt-live-chat-author-chip {\n margin: 0 4px 0 0 !important;\n}\n\n#message.yt-live-chat-text-message-renderer .emoji.yt-live-chat-text-message-renderer {\n width: auto !important;\n}'),e$1((()=>{const g=null!==document.querySelector("yt-live-chat-app");new o$1,e$2("content/youtube/inject.js"),g?a():c();})); diff --git a/content/youtube/inject.js b/content/youtube/inject.js new file mode 100644 index 0000000..f713d3d --- /dev/null +++ b/content/youtube/inject.js @@ -0,0 +1,16 @@ +import { e } from '../../index-6137f488.js'; +import { e as e$2 } from '../../background.injected-af36b849.js'; +import { n, e as e$4 } from '../../get_stream_details-b6177000.js'; +import { d as dt, t } from '../../parse_token.util-ed270559.js'; +import { e as e$3 } from '../../fetch_youtube-71c76849.js'; +import { s } from '../../router.interface-6cdbc015.js'; +import { e as e$1 } from '../../style-inject.es-a0e1a0ba.js'; + +function u(t){if(!t)return 0;t=t.toLowerCase();const e=/\((.+)\)/.exec(t);if(!e)return 1;const n=e[1].split(/\s/),i=parseInt(n[0]);return isNaN(i)?0:n[1].startsWith("year")?12*parseInt(n[0]):parseInt(n[0])}function d(t,e){const n=e;for(let e=0;et)return n[e-1][1];return n[n.length-1][1]}function l(t,e,n,i){const a=e(t.authorExternalChannelId);!function(t,e){(null==e?void 0:e.a)&&(t.authorName={simpleText:e.a});}(t,a),function(t,e){var n,i;t.authorBadges||(t.authorBadges=[]);for(const a of t.authorBadges){const t=a.liveChatAuthorBadgeRenderer;(null===(n=t.icon)||void 0===n?void 0:n.iconType)?t._mtvType=null===(i=t.icon)||void 0===i?void 0:i.iconType.toLowerCase():t.customThumbnail&&(t._mtvType="member"),"moderator"===t._mtvType&&(delete t.icon,t._mtvType="moderator",t.customThumbnail={thumbnails:[{url:e,width:18,height:18}]});}}(t,i),function(t,e,n){if((null==n?void 0:n.b)&&!(n.b<=0))for(const i of t.authorBadges){const t=i.liveChatAuthorBadgeRenderer;if("member"!==t._mtvType)continue;const a=u(t.tooltip);if(0===a)continue;const o=a+n.b,r=`Member (${o} months)`,s=d(o,e);t.customThumbnail=s,delete t.icon,t.tooltip=r,t.accessibility.accessibilityData.label=r;}}(t,n,a);}const h=/[\s.,?!]/;function f(t){const e=[];let n=0;for(let i=0;ithis.gatewayService.getUserInfo(t)),this.gatewayService.badgeList,"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAABg2lDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV/TiiIVBzuIOGRonSyIijpqFYpQIdQKrTqYXPoFTRqSFBdHwbXg4Mdi1cHFWVcHV0EQ/ABxc3NSdJES/5cUWsR4cNyPd/ced+8AoVFhmhUaAzTdNtPJhJjNrYrdrwgjBGAaMZlZxpwkpeA7vu4R4OtdnGf5n/tz9Kl5iwEBkXiWGaZNvEE8tWkbnPeJI6wkq8TnxKMmXZD4keuKx2+ciy4LPDNiZtLzxBFisdjBSgezkqkRTxJHVU2nfCHrscp5i7NWqbHWPfkLw3l9ZZnrNIeRxCKWIEGEghrKqMBGnFadFAtp2k/4+Idcv0QuhVxlMHIsoAoNsusH/4Pf3VqFiXEvKZwAul4c5yMGdO8CzbrjfB87TvMECD4DV3rbX20AM5+k19ta9Ajo3wYurtuasgdc7gCDT4Zsyq4UpCkUCsD7GX1TDhi4BXrXvN5a+zh9ADLUVeoGODgERoqUve7z7p7O3v490+rvB3pIcqqJKL5aAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5QwEARQDdqq2HwAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAGkSURBVDjLpdSxS5tBGMfx7+V9JamLGbSQNNAQdBBJhZKWLPkHxKmQEgd9xUFwCRQKHe1cKHSztCCmLyQlkriULu2kSyBQkCCCg0bQCJrhTSUxoW+8DuLRNPqq8aa7hx8f7nk4TpDXDCQfAC+9rTKCt4KctgcEnZKJ/pcYoRmG+oewz21Wdlb4+PvzvxFLvwlJD5vEx+Lomg5A6ahE/nTt/5hXd0Le+98x9WRKnUtHJSYKkxzLalfW5djSaKILOZCHqvZQDLIwMO8MPdOf4h/wq3Or3epAAuIRP6M/MEYMZyjY1zm6SCBC8XlBId+j3wj7wuiui+lcO6PVszxNu4lH93RiFHBrbsK+MAAnjRNnKBVaxq25u+qRQETt7bZNavfL9a2lQstMj08jhHB8idmtLF8b2atvdBUipaTVbqk2K7UKme0MrytvVEa/DWJumhi7c8QfvKD8p0zR/tV1O0FOk7dBblougE+Pl+6FKGijukGtWesZUZBZT5NcT2KdWT0hl8O2AK9ZT8M6xAZjzO8v3PFLkmVBTpsFuQgi2Nu/Ji3QXv0FPBynaffELJkAAAAASUVORK5CYII=");}}class T{constructor(t){this.gatewayService=t;}addTwitchEmotesToMessage(t){return function(t,e){const n=[];for(const i of t.runs)if("string"==typeof i.text){const{text:t}=i;let a=0,o=0;const r=f(t);let s=!1;for(const i of r){const r=e("🌝"===i?"Kappa":i);r&&(s=!0,a>0&&n.push({text:t.substring(o,a)}),n.push({emoji:r}),o=a+i.length),a+=i.length;}s?n.push({text:t.substring(o,a)}):n.push(i);}else if("🌝"===i.emoji.emojiId){const t=e("Kappa");t&&n.push({emoji:t});}else n.push(i);return t.runs=n,t}(t,(t=>this.gatewayService.getEmote(t)))}}class x extends e.exports.EventEmitter{constructor(t){super(),this.backgroundService=t,this.badgeList=[],this.emoteCache=new Map,t.getLiveStorageValue("auth.token",dt).then((t=>this.myUserInfo=t)),this.fetchUserInfo(),this.fetchEmotes(),this.fetchBadges(),setInterval((()=>{this.fetchUserInfo(),this.fetchEmotes(),this.fetchBadges();}),3e5);}async fetchBadges(){const t=await this.backgroundService.fetch("/gateway/badges");if(!s(t))return;const e=t.body.sort(((t,e)=>t.months-e.months));this.badgeList=e.map((t=>[t.months,{thumbnails:[{url:t.url,width:16,height:16}]}])),this.emit("badges",this.badgeList);}async fetchEmotes(){const t=await this.backgroundService.fetch("/gateway/emotes");if(s(t)){this.emoteCache.clear();for(const e of t.body){const t=m(e);t&&this.emoteCache.set(e.name,t);}this.emit("emotes",this.emoteCache);}}async fetchUserInfo(){const t=await this.backgroundService.fetch("/gateway/users");s(t)&&(this.infoCache=new Map(t.body),this.emit("users",this.infoCache));}getSerializedMetadata(t){const e=t.links.find((e=>e.prv===t.prv)),n={a:null==e?void 0:e.name,b:t.meta.sub,c:t.meta.col};return Object.values(n).filter((t=>void 0!==t)).length>0?n:void 0}getUserInfo(t){var e,n,i;if((null===(n=null===(e=this.myUserInfo)||void 0===e?void 0:e.value)||void 0===n?void 0:n.sub)===t){const t=this.getSerializedMetadata(this.myUserInfo.value);if(t)return t}return null===(i=this.infoCache)||void 0===i?void 0:i.get(t)}getEmote(t){var e;return null===(e=this.emoteCache)||void 0===e?void 0:e.get(t)}}async function I(t,n){await customElements.whenDefined(t);const i=customElements.get(t);if(!i)return void console.warn(`Polymer: ${t} not found`);const a=i.prototype[n.functionName];i.prototype[n.functionName]=function(...t){if(n.ludwigOnly&&!e$4())return a.apply(this,t);if(n.type===b.OverrideFunction)try{return n.function.apply(this,t)}catch(t){console.error(JSON.stringify(n)),console.error(t);}if(n.type===b.RunBefore)try{n.function.apply(this,t);}catch(t){console.error(t);}let i=a.apply(this,t);if(n.type===b.RunAfter)try{i=n.function.apply(this,[i]);}catch(t){console.error(t);}return i};}!function(t){t[t.OverrideFunction=0]="OverrideFunction",t[t.RunBefore=1]="RunBefore",t[t.RunAfter=2]="RunAfter";}(b||(b={}));const B=(t,e,{LudwigOnly:n})=>({functionName:t,function:e,ludwigOnly:n||!1,type:b.OverrideFunction}),E=(t,e,{LudwigOnly:n})=>({functionName:t,function:e,ludwigOnly:n||!1,type:b.RunBefore});function C(t,n,i){I("yt-live-chat-item-list-renderer",E("handleAddChatItemAction_",(function(e){e.item.liveChatTextMessageRenderer&&(t.addTwitchEmotesToMessage(e.item.liveChatTextMessageRenderer.message),n.addAliasesToMessage(e.item.liveChatTextMessageRenderer));}),{LudwigOnly:true})),I("yt-live-chat-text-input-field-renderer",((t,e,{LudwigOnly:n})=>({functionName:t,function:e,ludwigOnly:n||!1,type:b.RunAfter}))("calculateLiveChatRichMessageInput_",(function(t){var e;if(!(null==t?void 0:t.textSegments))return t;for(const n of t.textSegments)if(null===(e=n.emojiId)||void 0===e?void 0:e.startsWith("mogultv")){const[,t]=n.emojiId.split("-");delete n.emojiId,n.text=t;}return t}),{LudwigOnly:true})),i.on("emotes",(t=>{if(!e$4())return;const n=document.querySelector("yt-live-chat-item-list-renderer");if(null==n?void 0:n.emojiManager){if(n.emojiManager._mogulTvLoaded)return;n.emojiManager._mogulTvLoaded=!0,n.emojiManager.load([...t.values()]);}else console.warn("Cannot find chat list");}));}function S(t){return t?t._mtvType?t._mtvType:t.icon?t.icon.iconType.toLowerCase():t.customThumbnail?"member":"":""}async function M(t){I("yt-live-chat-author-badge-renderer",B("computeType_",(t=>S(t.liveChatAuthorBadgeRenderer)),{LudwigOnly:true})),I("yt-live-chat-author-chip",B("computeAuthorType_",(function(e){var n,i;const a=this.$["author-name"];if(a){let e;const o=null===(n=this.parentElement)||void 0===n?void 0:n.parentElement,r=null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.authorExternalChannelId;if(r){const n=t.getUserInfo(r);(null==n?void 0:n.c)&&(e=n.c);}e||(e=function(t){const e=function(t){let e=0;if(0===t.length)return 0;for(let n=0;n{await n()?(document.body.setAttribute("data-mogul-theater-mode",""),i||window.dispatchEvent(new Event("resize")),i=!0):(i=!1,document.body.removeAttribute("data-mogul-theater-mode"));}),250);}(j),async function(t){if(!window.ytcfg)return;const e={key:window.ytcfg.get("INNERTUBE_API_KEY"),authUser:window.ytcfg.get("SESSION_INDEX"),pageId:window.ytcfg.get("DELEGATED_SESSION_ID"),href:window.location.href,context:window.ytcfg.get("INNERTUBE_CONTEXT")};n=await e$3(Object.assign(Object.assign({},e),{cookies:v(document.cookie)})),i=await t.fetch("/auth/@me"),(!n.success||!i.meta.isSuccess||n.data.id!==(null===(a=i.body)||void 0===a?void 0:a.sub))&&await t.fetch("/auth/login",e);var n,i,a;}(j),setInterval((()=>{const t=document.querySelector("ytd-live-chat-frame iframe");if(t&&!t.src.includes("QXZRwEzaeHNfDqtD")){const e=n();t.src+=`#QXZRwEzaeHNfDqtD=${encodeURIComponent(JSON.stringify(e))}`;}}),1e3);var L,O; diff --git a/fetch_youtube-71c76849.js b/fetch_youtube-71c76849.js new file mode 100644 index 0000000..e50481a --- /dev/null +++ b/fetch_youtube-71c76849.js @@ -0,0 +1,3 @@ +async function e(e){const t=await async function(e,t){const o=t.cookies.SAPISID||t.cookies["__Secure-3PAPISID"];if(!o)return {success:!1,code:400,message:"Missing cookie"};const n=new URL(t.href).origin,c=Math.floor(Date.now()/1e3),a=await async function(e){const t=await crypto.subtle.digest("SHA-1",(new TextEncoder).encode(e));return Array.from(new Uint8Array(t)).map((e=>e.toString(16).padStart(2,"0"))).join("")}(`${c} ${o} ${n}`),s={"x-origin":n,authorization:`SAPISIDHASH ${c}_${a}`,"x-goog-authuser":t.authUser,cookie:Object.entries(t.cookies).map((([e,t])=>`${e}=${t}`)).join(";")};t.pageId&&(s["x-goog-pageid"]=t.pageId);const i=await fetch(`https://www.youtube.com${e}?key=${t.key}`,{method:"POST",headers:s,body:JSON.stringify({context:t.context})});return {success:!0,data:await i.json()}}("/youtubei/v1/account/account_menu",e);if(!t.success)return t;const o=t.data;try{const e=o.actions[0].openPopupAction.popup.multiPageMenuRenderer,t=e.header.activeAccountHeaderRenderer,n=e.sections[0].multiPageMenuSectionRenderer.items[0].compactLinkRenderer.navigationEndpoint.browseEndpoint.browseId.trim().replace(/\n/g,"");return /^UC.{22}$/.test(n)?{success:!0,data:{id:n,profile:t.accountPhoto.thumbnails[0].url,username:t.accountName.simpleText}}:{success:!1,code:400,message:"Failed to authenticate"}}catch(e){return {success:!1,code:400,message:"Failed to authenticate"}}} + +export { e }; diff --git a/get_stream_details-b6177000.js b/get_stream_details-b6177000.js new file mode 100644 index 0000000..d118636 --- /dev/null +++ b/get_stream_details-b6177000.js @@ -0,0 +1,3 @@ +function n(){let n=function(){var n,e;const t=document.querySelector("ytd-page-manager");return null===(e=null===(n=null==t?void 0:t.data)||void 0===n?void 0:n.playerResponse)||void 0===e?void 0:e.videoDetails}();return n||(n=function(){const n=new URLSearchParams(window.location.hash.substring(1)).get("QXZRwEzaeHNfDqtD");if(n)try{return JSON.parse(n)}catch(n){return}}(),n||void 0)}function e(e=!0){const t=n();return t?"UCrPseYLGpNygVi34QpGNqpA"===t.channelId&&t.isLiveContent:e} + +export { e, n }; diff --git a/index-6137f488.js b/index-6137f488.js new file mode 100644 index 0000000..f440fb4 --- /dev/null +++ b/index-6137f488.js @@ -0,0 +1,3 @@ +var e={exports:{}};!function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}function o(e,t,n){this.fn=e,this.context=t,this.once=n||!1;}function s(e,t,r,s,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new o(r,s||e,i),f=n?n+t:t;return e._events[f]?e._events[f].fn?e._events[f]=[e._events[f],c]:e._events[f].push(c):(e._events[f]=c,e._eventsCount++),e}function i(e,t){0==--e._eventsCount?e._events=new r:delete e._events[t];}function c(){this._events=new r,this._eventsCount=0;}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var e,r,o=[];if(0===this._eventsCount)return o;for(r in e=this._events)t.call(e,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},c.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return [];if(r.fn)return [r.fn];for(var o=0,s=r.length,i=new Array(s);o=0||(a[n]=t[n]);return a}function l(t){return null!==t&&"object"==typeof t&&t.constructor===Object}function d(t,e,n={clone:!0}){const r=n.clone?f({},t):t;return l(t)&&l(e)&&Object.keys(e).forEach((a=>{"__proto__"!==a&&(l(e[a])&&a in t&&l(t[a])?r[a]=d(t[a],e[a],n):r[a]=e[a]);})),r}function p(t){let e="https://mui.com/production-error/?code="+t;for(let t=1;t`@media (min-width:${m[t]}px)`};function y(t,e,n){const r=t.theme||{};if(Array.isArray(e)){const t=r.breakpoints||b;return e.reduce(((r,a,i)=>(r[t.up(t.keys[i])]=n(e[i]),r)),{})}if("object"==typeof e){const t=r.breakpoints||b;return Object.keys(e).reduce(((r,a)=>{if(-1!==Object.keys(t.values||m).indexOf(a)){r[t.up(a)]=n(e[a],a);}else {const t=a;r[t]=e[t];}return r}),{})}return n(e)}function x(t={}){var e;return (null==t||null==(e=t.keys)?void 0:e.reduce(((e,n)=>(e[t.up(n)]={},e)),{}))||{}}function k(t,e){return t.reduce(((t,e)=>{const n=t[e];return (!n||0===Object.keys(n).length)&&delete t[e],t}),e)}function v(t,e){return e&&"string"==typeof e?e.split(".").reduce(((t,e)=>t&&t[e]?t[e]:null),t):null}function O(t,e,n,r=n){let a;return a="function"==typeof t?t(n):Array.isArray(t)?t[n]||r:v(t,n)||r,e&&(a=e(a)),a}function A(t){const{prop:e,cssProperty:n=t.prop,themeKey:r,transform:a}=t,i=t=>{if(null==t[e])return null;const i=t[e],o=v(t.theme,r)||{};return y(t,i,(t=>{let r=O(o,a,t);return t===r&&"string"==typeof t&&(r=O(o,a,`${e}${"default"===t?"":g(t)}`,t)),!1===n?r:{[n]:r}}))};return i.propTypes={},i.filterProps=[e],i}const $={m:"margin",p:"padding"},w={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},S={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},T=function(t){const e={};return n=>(void 0===e[n]&&(e[n]=t(n)),e[n])}((t=>{if(t.length>2){if(!S[t])return [t];t=S[t];}const[e,n]=t.split(""),r=$[e],a=w[n]||"";return Array.isArray(a)?a.map((t=>r+t)):[r+a]})),M=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd","p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"];function j(t,e,n,r){const a=v(t,e)||n;return "number"==typeof a?t=>"string"==typeof t?t:a*t:Array.isArray(a)?t=>"string"==typeof t?t:a[t]:"function"==typeof a?a:()=>{}}function B(t){return j(t,"spacing",8)}function I(t,e){if("string"==typeof e||null==e)return e;const n=t(Math.abs(e));return e>=0?n:"number"==typeof n?-n:`-${n}`}function R(t,e,n,r){if(-1===e.indexOf(n))return null;const a=function(t,e){return n=>t.reduce(((t,r)=>(t[r]=I(e,n),t)),{})}(T(n),r);return y(t,t[n],a)}function z(t){return function(t,e){const n=B(t.theme);return Object.keys(t).map((r=>R(t,e,r,n))).reduce(h,{})}(t,M)}z.propTypes={},z.filterProps=M;const F=["values","unit","step"];var W={borderRadius:4};const E=["breakpoints","palette","spacing","shape"];function L(t={},...e){const{breakpoints:n={},palette:r={},spacing:a,shape:i={}}=t,o=u(t,E),s=function(t){const{values:e={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:r=5}=t,a=u(t,F),i=Object.keys(e);function o(t){return `@media (min-width:${"number"==typeof e[t]?e[t]:t}${n})`}function s(t){return `@media (max-width:${("number"==typeof e[t]?e[t]:t)-r/100}${n})`}function c(t,a){const o=i.indexOf(a);return `@media (min-width:${"number"==typeof e[t]?e[t]:t}${n}) and (max-width:${(-1!==o&&"number"==typeof e[i[o]]?e[i[o]]:a)-r/100}${n})`}return f({keys:i,values:e,up:o,down:s,between:c,only:function(t){return i.indexOf(t)+1(0===t.length?[1]:t).map((t=>{const n=e(t);return "number"==typeof n?`${n}px`:n})).join(" ");return n.mui=!0,n}(a);let l=d({breakpoints:s,direction:"ltr",components:{},palette:f({mode:"light"},r),spacing:c,shape:f({},W,i)},o);return l=e.reduce(((t,e)=>d(t,e)),l),l}function C(t,e=0,n=1){return Math.min(Math.max(e,t),n)}function H(t){if(t.type)return t;if("#"===t.charAt(0))return H(function(t){t=t.substr(1);const e=new RegExp(`.{1,${t.length>=6?2:1}}`,"g");let n=t.match(e);return n&&1===n[0].length&&(n=n.map((t=>t+t))),n?`rgb${4===n.length?"a":""}(${n.map(((t,e)=>e<3?parseInt(t,16):Math.round(parseInt(t,16)/255*1e3)/1e3)).join(", ")})`:""}(t));const e=t.indexOf("("),n=t.substring(0,e);if(-1===["rgb","rgba","hsl","hsla","color"].indexOf(n))throw new Error(p(9,t));let r,a=t.substring(e+1,t.length-1);if("color"===n){if(a=a.split(" "),r=a.shift(),4===a.length&&"/"===a[3].charAt(0)&&(a[3]=a[3].substr(1)),-1===["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf(r))throw new Error(p(10,r))}else a=a.split(",");return a=a.map((t=>parseFloat(t))),{type:n,values:a,colorSpace:r}}function P(t){const{type:e,colorSpace:n}=t;let{values:r}=t;return -1!==e.indexOf("rgb")?r=r.map(((t,e)=>e<3?parseInt(t,10):t)):-1!==e.indexOf("hsl")&&(r[1]=`${r[1]}%`,r[2]=`${r[2]}%`),r=-1!==e.indexOf("color")?`${n} ${r.join(" ")}`:`${r.join(", ")}`,`${e}(${r})`}function _(t){let e="hsl"===(t=H(t)).type?H(function(t){t=H(t);const{values:e}=t,n=e[0],r=e[1]/100,a=e[2]/100,i=r*Math.min(a,1-a),o=(t,e=(t+n/30)%12)=>a-i*Math.max(Math.min(e-3,9-e,1),-1);let s="rgb";const c=[Math.round(255*o(0)),Math.round(255*o(8)),Math.round(255*o(4))];return "hsla"===t.type&&(s+="a",c.push(e[3])),P({type:s,values:c})}(t)).values:t.values;return e=e.map((e=>("color"!==t.type&&(e/=255),e<=.03928?e/12.92:((e+.055)/1.055)**2.4))),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function V(t,e){return t=H(t),e=C(e),"rgb"!==t.type&&"hsl"!==t.type||(t.type+="a"),"color"===t.type?t.values[3]=`/${e}`:t.values[3]=e,P(t)}function X(t,e){if(t=H(t),e=C(e),-1!==t.type.indexOf("hsl"))t.values[2]*=1-e;else if(-1!==t.type.indexOf("rgb")||-1!==t.type.indexOf("color"))for(let n=0;n<3;n+=1)t.values[n]*=1-e;return P(t)}function Y(t,e){if(t=H(t),e=C(e),-1!==t.type.indexOf("hsl"))t.values[2]+=(100-t.values[2])*e;else if(-1!==t.type.indexOf("rgb"))for(let n=0;n<3;n+=1)t.values[n]+=(255-t.values[n])*e;else if(-1!==t.type.indexOf("color"))for(let n=0;n<3;n+=1)t.values[n]+=(1-t.values[n])*e;return P(t)}const N=["mode","contrastThreshold","tonalOffset"],U={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:e.white,default:e.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},D={text:{primary:e.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:e.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function J(t,e,n,r){const a=r.light||r,i=r.dark||1.5*r;t[e]||(t.hasOwnProperty(n)?t[e]=t[n]:"light"===e?t.light=Y(t.main,a):"dark"===e&&(t.dark=X(t.main,i)));}function Z(t){const{mode:l="light",contrastThreshold:g=3,tonalOffset:h=.2}=t,m=u(t,N),b=t.primary||function(t="light"){return "dark"===t?{main:a[200],light:a[50],dark:a[400]}:{main:a[700],light:a[400],dark:a[800]}}(l),y=t.secondary||function(t="light"){return "dark"===t?{main:r[200],light:r[50],dark:r[400]}:{main:r[500],light:r[300],dark:r[700]}}(l),x=t.error||function(t="light"){return "dark"===t?{main:n[500],light:n[300],dark:n[700]}:{main:n[700],light:n[400],dark:n[800]}}(l),k=t.info||function(t="light"){return "dark"===t?{main:i[400],light:i[300],dark:i[700]}:{main:i[700],light:i[500],dark:i[900]}}(l),v=t.success||function(t="light"){return "dark"===t?{main:o[400],light:o[300],dark:o[700]}:{main:o[800],light:o[500],dark:o[900]}}(l),O=t.warning||function(t="light"){return "dark"===t?{main:s[400],light:s[300],dark:s[700]}:{main:"#ed6c02",light:s[500],dark:s[900]}}(l);function A(t){const e=function(t,e){const n=_(t),r=_(e);return (Math.max(n,r)+.05)/(Math.min(n,r)+.05)}(t,D.text.primary)>=g?D.text.primary:U.text.primary;return e}const $=({color:t,name:e,mainShade:n=500,lightShade:r=300,darkShade:a=700})=>{if(!(t=f({},t)).main&&t[n]&&(t.main=t[n]),!t.hasOwnProperty("main"))throw new Error(p(11,e?` (${e})`:"",n));if("string"!=typeof t.main)throw new Error(p(12,e?` (${e})`:"",JSON.stringify(t.main)));return J(t,"light",r,h),J(t,"dark",a,h),t.contrastText||(t.contrastText=A(t.main)),t},w={dark:D,light:U};return d(f({common:e,mode:l,primary:$({color:b,name:"primary"}),secondary:$({color:y,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:$({color:x,name:"error"}),warning:$({color:O,name:"warning"}),info:$({color:k,name:"info"}),success:$({color:v,name:"success"}),grey:c,contrastThreshold:g,getContrastText:A,augmentColor:$,tonalOffset:h},w[l]),m)}const q=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];const K={textTransform:"uppercase"},G='"Roboto", "Helvetica", "Arial", sans-serif';function Q(t,e){const n="function"==typeof e?e(t):e,{fontFamily:r=G,fontSize:a=14,fontWeightLight:i=300,fontWeightRegular:o=400,fontWeightMedium:s=500,fontWeightBold:c=700,htmlFontSize:l=16,allVariants:p,pxToRem:g}=n,h=u(n,q),m=a/14,b=g||(t=>t/l*m+"rem"),y=(t,e,n,a,i)=>{return f({fontFamily:r,fontWeight:t,fontSize:b(e),lineHeight:n},r===G?{letterSpacing:(o=a/e,Math.round(1e5*o)/1e5)+"em"}:{},i,p);var o;},x={h1:y(i,96,1.167,-1.5),h2:y(i,60,1.2,-.5),h3:y(o,48,1.167,0),h4:y(o,34,1.235,.25),h5:y(o,24,1.334,0),h6:y(s,20,1.6,.15),subtitle1:y(o,16,1.75,.15),subtitle2:y(s,14,1.57,.1),body1:y(o,16,1.5,.15),body2:y(o,14,1.43,.15),button:y(s,14,1.75,.4,K),caption:y(o,12,1.66,.4),overline:y(o,12,2.66,1,K)};return d(f({htmlFontSize:l,pxToRem:b,fontFamily:r,fontSize:a,fontWeightLight:i,fontWeightRegular:o,fontWeightMedium:s,fontWeightBold:c},x),h,{clone:!1})}function tt(...t){return [`${t[0]}px ${t[1]}px ${t[2]}px ${t[3]}px rgba(0,0,0,0.2)`,`${t[4]}px ${t[5]}px ${t[6]}px ${t[7]}px rgba(0,0,0,0.14)`,`${t[8]}px ${t[9]}px ${t[10]}px ${t[11]}px rgba(0,0,0,0.12)`].join(",")}var et=["none",tt(0,2,1,-1,0,1,1,0,0,1,3,0),tt(0,3,1,-2,0,2,2,0,0,1,5,0),tt(0,3,3,-2,0,3,4,0,0,1,8,0),tt(0,2,4,-1,0,4,5,0,0,1,10,0),tt(0,3,5,-1,0,5,8,0,0,1,14,0),tt(0,3,5,-1,0,6,10,0,0,1,18,0),tt(0,4,5,-2,0,7,10,1,0,2,16,1),tt(0,5,5,-3,0,8,10,1,0,3,14,2),tt(0,5,6,-3,0,9,12,1,0,3,16,2),tt(0,6,6,-3,0,10,14,1,0,4,18,3),tt(0,6,7,-4,0,11,15,1,0,4,20,3),tt(0,7,8,-4,0,12,17,2,0,5,22,4),tt(0,7,8,-4,0,13,19,2,0,5,24,4),tt(0,7,9,-4,0,14,21,2,0,5,26,4),tt(0,8,9,-5,0,15,22,2,0,6,28,5),tt(0,8,10,-5,0,16,24,2,0,6,30,5),tt(0,8,11,-5,0,17,26,2,0,6,32,5),tt(0,9,11,-5,0,18,28,2,0,7,34,6),tt(0,9,12,-6,0,19,29,2,0,7,36,6),tt(0,10,13,-6,0,20,31,3,0,8,38,7),tt(0,10,13,-6,0,21,33,3,0,8,40,7),tt(0,10,14,-6,0,22,35,3,0,8,42,7),tt(0,11,14,-7,0,23,36,3,0,9,44,8),tt(0,11,15,-7,0,24,38,3,0,9,46,8)];const nt=["duration","easing","delay"],rt={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},at={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function it(t){return `${Math.round(t)}ms`}function ot(t){if(!t)return 0;const e=t/36;return Math.round(10*(4+15*e**.25+e/5))}function st(t){const e=f({},rt,t.easing),n=f({},at,t.duration);return f({getAutoHeightDuration:ot,create:(t=["all"],r={})=>{const{duration:a=n.standard,easing:i=e.easeInOut,delay:o=0}=r;return u(r,nt),(Array.isArray(t)?t:[t]).map((t=>`${t} ${"string"==typeof a?a:it(a)} ${i} ${"string"==typeof o?o:it(o)}`)).join(",")}},t,{easing:e,duration:n})}var ct={mobileStepper:1e3,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};const ft=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];function ut(t={},...e){const{mixins:n={},palette:r={},transitions:a={},typography:i={}}=t,o=u(t,ft),s=Z(r),c=L(t);let l=d(c,{mixins:(p=c.breakpoints,c.spacing,g=n,f({toolbar:{minHeight:56,[`${p.up("xs")} and (orientation: landscape)`]:{minHeight:48},[p.up("sm")]:{minHeight:64}}},g)),palette:s,shadows:et.slice(),typography:Q(s,i),transitions:st(a),zIndex:f({},ct)});var p,g;return l=d(l,o),l=e.reduce(((t,e)=>d(t,e)),l),l}const lt=ut({palette:{mode:"dark",primary:{main:"#7463fb"},secondary:{main:"#fd8dea"}},typography:{fontFamily:"Rubik, sans-serif",label:{color:"#ccc",fontStyle:"italic"},header:{fontSize:"1.2rem",fontWeight:500}},components:{MuiTooltip:{styleOverrides:{tooltip:{fontSize:14}}}}});function dt(t){try{if(!t)return;return JSON.parse(atob(t.split(".")[1]))}catch(t){return void console.error(t)}} + +export { A, I, L, V, X, Y, ut as a, d as b, lt as c, dt as d, at as e, f, g, h, j, k, l, m, n, o, p, t, u, x, y, z }; diff --git a/popup/index.html b/popup/index.html new file mode 100644 index 0000000..79ac60b --- /dev/null +++ b/popup/index.html @@ -0,0 +1,12 @@ + + + + Mogul.TV + + + +
+ + + + \ No newline at end of file diff --git a/popup/index.js b/popup/index.js new file mode 100644 index 0000000..f164ab5 --- /dev/null +++ b/popup/index.js @@ -0,0 +1,181 @@ +import { f, A as A$1, L as L$1, l, u, a as ut$1, g, V as V$1, X as X$1, Y as Y$1, p, b as d, c as lt$1, h, j as j$1, y, z as z$1, d as dt$1, x, k, e as at$1, n as n$2, o, I as I$1, m as m$1 } from '../parse_token.util-ed270559.js'; +import { e } from '../style-inject.es-a0e1a0ba.js'; +import { e as e$1, n as n$1, m } from '../storage-a8ac7bd3.js'; +import { n } from '../connectRuntime-a699491c.js'; + +var T={exports:{}},j={},z=Object.getOwnPropertySymbols,N=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable;function L(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}var I=function(){try{if(!Object.assign)return !1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return !1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map((function(e){return t[e]}));if("0123456789"!==r.join(""))return !1;var o={};return "abcdefghijklmnopqrst".split("").forEach((function(e){o[e]=e;})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(e){return !1}}()?Object.assign:function(e,t){for(var n,r,o=L(e),a=1;a0?Pe(Fe,--Le):0,Ne--,10===Ie&&(Ne=1,ze--),Ie}function De(){return Ie=Le<_e?Pe(Fe,Le++):0,Ne++,10===Ie&&(Ne=1,ze++),Ie}function We(){return Pe(Fe,Le)}function Ue(){return Le}function He(e,t){return Me(Fe,e,t)}function Ve(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function qe(e){return ze=Ne=1,_e=Oe(Fe=e),Le=0,[]}function Ke(e){return Fe="",e}function Xe(e){return Ce(He(Le-1,Ge(91===e?e+2:40===e?e+1:e)))}function Ye(e){for(;(Ie=We())&&Ie<33;)De();return Ve(e)>2||Ve(Ie)>3?"":" "}function Qe(e,t){for(;--t&&De()&&!(Ie<48||Ie>102||Ie>57&&Ie<65||Ie>70&&Ie<97););return He(e,Ue()+(t<6&&32==We()&&32==De()))}function Ge(e){for(;De();)switch(Ie){case e:return Le;case 34:case 39:34!==e&&39!==e&&Ge(Ie);break;case 40:41===e&&Ge(e);break;case 92:De();}return Le}function Ze(e,t){for(;De()&&e+Ie!==57&&(e+Ie!==84||47!==We()););return "/*"+He(t,Le-1)+"*"+ke(47===e?e:De())}function Je(e){for(;!Ve(We());)De();return He(e,Le)}function et(e){return Ke(tt("",null,null,null,[""],e=qe(e),0,[0],e))}function tt(e,t,n,r,o,a,i,l,s){for(var u=0,c=0,d=i,p=0,f=0,h=0,m=1,v=1,g=1,b=0,y="",x=o,w=a,k=r,S=y;v;)switch(h=b,b=De()){case 40:if(108!=h&&58==S.charCodeAt(d-1)){-1!=Re(S+=Ee(Xe(b),"&","&\f"),"&\f")&&(g=-1);break}case 34:case 39:case 91:S+=Xe(b);break;case 9:case 10:case 13:case 32:S+=Ye(h);break;case 92:S+=Qe(Ue()-1,7);continue;case 47:switch(We()){case 42:case 47:je(rt(Ze(De(),Ue()),t,n),s);break;default:S+="/";}break;case 123*m:l[u++]=Oe(S)*g;case 125*m:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+c:f>0&&Oe(S)-d&&je(f>32?ot(S+";",r,n,d-1):ot(Ee(S," ","")+";",r,n,d-2),s);break;case 59:S+=";";default:if(je(k=nt(S,t,n,u,c,o,l,y,x=[],w=[],d),a),123===b)if(0===c)tt(S,t,k,k,x,a,d,l,w);else switch(p){case 100:case 109:case 115:tt(e,k,k,r&&je(nt(e,k,k,0,0,o,l,y,o,x=[],d),w),o,w,d,l,r?x:w);break;default:tt(S,k,k,k,[""],w,0,l,w);}}u=c=f=0,m=g=1,y=S="",d=i;break;case 58:d=1+Oe(S),f=h;default:if(m<1)if(123==b)--m;else if(125==b&&0==m++&&125==Be())continue;switch(S+=ke(b),b*m){case 38:g=c>0?1:(S+="\f",-1);break;case 44:l[u++]=(Oe(S)-1)*g,g=1;break;case 64:45===We()&&(S+=Xe(De())),p=We(),c=d=Oe(y=S+=Je(Ue())),b++;break;case 45:45===h&&2==Oe(S)&&(m=0);}}return a}function nt(e,t,n,r,o,a,i,l,s,u,c){for(var d=o-1,p=0===o?a:[""],f=Te(p),h=0,m=0,v=0;h0?p[g]+" "+b:Ee(b,/&\f/g,p[g])))&&(s[v++]=y);return $e(e,t,n,0===o?"rule":l,s,u,c)}function rt(e,t,n){return $e(e,t,n,"comm",ke(Ie),Me(e,2,-2),0)}function ot(e,t,n,r){return $e(e,t,n,"decl",Me(e,0,r),Me(e,r+1,-1),r)}function at(e,t){switch(function(e,t){return (((t<<2^Pe(e,0))<<2^Pe(e,1))<<2^Pe(e,2))<<2^Pe(e,3)}(e,t)){case 5103:return xe+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return xe+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return xe+e+ye+e+be+e+e;case 6828:case 4268:return xe+e+be+e+e;case 6165:return xe+e+be+"flex-"+e+e;case 5187:return xe+e+Ee(e,/(\w+).+(:[^]+)/,"-webkit-box-$1$2-ms-flex-$1$2")+e;case 5443:return xe+e+be+"flex-item-"+Ee(e,/flex-|-self/,"")+e;case 4675:return xe+e+be+"flex-line-pack"+Ee(e,/align-content|flex-|-self/,"")+e;case 5548:return xe+e+be+Ee(e,"shrink","negative")+e;case 5292:return xe+e+be+Ee(e,"basis","preferred-size")+e;case 6060:return xe+"box-"+Ee(e,"-grow","")+xe+e+be+Ee(e,"grow","positive")+e;case 4554:return xe+Ee(e,/([^-])(transform)/g,"$1-webkit-$2")+e;case 6187:return Ee(Ee(Ee(e,/(zoom-|grab)/,xe+"$1"),/(image-set)/,xe+"$1"),e,"")+e;case 5495:case 3959:return Ee(e,/(image-set\([^]*)/,xe+"$1$`$1");case 4968:return Ee(Ee(e,/(.+:)(flex-)?(.*)/,"-webkit-box-pack:$3-ms-flex-pack:$3"),/s.+-b[^;]+/,"justify")+xe+e+e;case 4095:case 3583:case 4068:case 2532:return Ee(e,/(.+)-inline(.+)/,xe+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(Oe(e)-1-t>6)switch(Pe(e,t+1)){case 109:if(45!==Pe(e,t+4))break;case 102:return Ee(e,/(.+:)(.+)-([^]+)/,"$1-webkit-$2-$3$1"+ye+(108==Pe(e,t+3)?"$3":"$2-$3"))+e;case 115:return ~Re(e,"stretch")?at(Ee(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==Pe(e,t+1))break;case 6444:switch(Pe(e,Oe(e)-3-(~Re(e,"!important")&&10))){case 107:return Ee(e,":",":"+xe)+e;case 101:return Ee(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+xe+(45===Pe(e,14)?"inline-":"")+"box$3$1"+xe+"$2$3$1"+be+"$2box$3")+e}break;case 5936:switch(Pe(e,t+11)){case 114:return xe+e+be+Ee(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return xe+e+be+Ee(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return xe+e+be+Ee(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return xe+e+be+e+e}return e}function it(e,t){for(var n="",r=Te(e),o=0;o-1&&!e.return)switch(e.type){case"decl":e.return=at(e.value,e.length);break;case"@keyframes":return it([Ae(e,{value:Ee(e.value,"@","@"+xe)})],r);case"rule":if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return (e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return it([Ae(e,{props:[Ee(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return it([Ae(e,{props:[Ee(t,/:(plac\w+)/,":-webkit-input-$1")]}),Ae(e,{props:[Ee(t,/:(plac\w+)/,":-moz-$1")]}),Ae(e,{props:[Ee(t,/:(plac\w+)/,be+"input-$1")]})],r)}return ""}))}}],yt=function(e){var t=e.key;if(vt&&"css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""));}));}var r,o,a=e.stylisPlugins||bt,i={},l=[];vt&&(r=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n=4;++r,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16);}return (((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}(o)+s;return {name:u,styles:o,next:nn}},an="undefined"!=typeof document,ln=T.exports.createContext("undefined"!=typeof HTMLElement?yt({key:"css"}):null);ln.Provider;var sn=function(e){return T.exports.forwardRef((function(t,n){var r=T.exports.useContext(ln);return e(t,r,n)}))};an||(sn=function(e){return function(t){var n=T.exports.useContext(ln);return null===n?(n=yt({key:"css"}),T.exports.createElement(ln.Provider,{value:n},e(t,n))):e(t,n)}});var un=T.exports.createContext({}),cn=sn((function(e,t){var n=e.styles,r=on([n],void 0,T.exports.useContext(un));if(!an){for(var o,a=r.name,i=r.styles,l=r.next;void 0!==l;)a+=" "+l.name,i+=l.styles,l=l.next;var s=!0===t.compat,u=t.insert("",{name:a,styles:i},t.sheet,s);return s?null:T.exports.createElement("style",((o={})["data-emotion"]=t.key+"-global "+a,o.dangerouslySetInnerHTML={__html:u},o.nonce=t.sheet.nonce,o))}var c=T.exports.useRef();return T.exports.useLayoutEffect((function(){var e=t.key+"-global",n=new ge({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),o=!1,a=document.querySelector('style[data-emotion="'+e+" "+r.name+'"]');return t.sheet.tags.length&&(n.before=t.sheet.tags[0]),null!==a&&(o=!0,a.setAttribute("data-emotion",e),n.hydrate([a])),c.current=[n,o],function(){n.flush();}}),[t]),T.exports.useLayoutEffect((function(){var e=c.current,n=e[0];if(e[1])e[1]=!1;else {if(void 0!==r.next&&Kt(t,r.next,!0),n.tags.length){var o=n.tags[n.tags.length-1].nextElementSibling;n.before=o,n.flush();}t.insert("",r,n,!1);}}),[t,r.name]),null}));function dn(){for(var e=arguments.length,t=new Array(e),n=0;n96?fn:hn},vn=function(e,t,n){var r;if(t){var o=t.shouldForwardProp;r=e.__emotion_forwardProp&&o?function(t){return e.__emotion_forwardProp(t)&&o(t)}:o;}return "function"!=typeof r&&n&&(r=e.__emotion_forwardProp),r},gn="undefined"!=typeof document,bn=function(){return null},yn=function t(n,r){var o,a,i=n.__emotion_real===n,l=i&&n.__emotion_base||n;void 0!==r&&(o=r.label,a=r.target);var s=vn(n,r,i),u=s||mn(l),c=!u("as");return function(){var d=arguments,p=i&&void 0!==n.__emotion_styles?n.__emotion_styles.slice(0):[];if(void 0!==o&&p.push("label:"+o+";"),null==d[0]||void 0===d[0].raw)p.push.apply(p,d);else {p.push(d[0][0]);for(var f$1=d.length,h=1;h{return t(null==(r=e)||0===Object.keys(r).length?n:e);var r;}:t;return wn.exports.jsx(cn,{styles:r})} +/** @license MUI v5.2.6 + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */function jn(e,t){return xn(e,t)}kn.jsx=On,kn.jsxs=On,wn.exports=kn;var Nn=60103,_n=60106,Ln=60107,In=60108,Fn=60114,$n=60109,An=60110,Bn=60112,Dn=60113,Wn=60120,Un=60115,Hn=60116,Vn=60121,qn=60122,Kn=60117,Xn=60129,Yn=60131; +/** @license React v17.0.2 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */if("function"==typeof Symbol&&Symbol.for){var Qn=Symbol.for;Nn=Qn("react.element"),_n=Qn("react.portal"),Ln=Qn("react.fragment"),In=Qn("react.strict_mode"),Fn=Qn("react.profiler"),$n=Qn("react.provider"),An=Qn("react.context"),Bn=Qn("react.forward_ref"),Dn=Qn("react.suspense"),Wn=Qn("react.suspense_list"),Un=Qn("react.memo"),Hn=Qn("react.lazy"),Vn=Qn("react.block"),qn=Qn("react.server.block"),Kn=Qn("react.fundamental"),Xn=Qn("react.debug_trace_mode"),Yn=Qn("react.legacy_hidden");}function sr(...e){return e.reduce(((e,t)=>null==t?e:function(...n){e.apply(this,n),t.apply(this,n);}),(()=>{}))}function ur(e,t=166){let n;function r(...r){clearTimeout(n),n=setTimeout((()=>{e.apply(this,r);}),t);}return r.clear=()=>{clearTimeout(n);},r}function cr(e,t){return T.exports.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}function dr(e){return e&&e.ownerDocument||document}function pr(e){return dr(e).defaultView||window}function fr(e,t){"function"==typeof e?e(t):e&&(e.current=t);}var hr="undefined"!=typeof window?T.exports.useLayoutEffect:T.exports.useEffect;let mr=0;function vr(e){const[t,n]=T.exports.useState(e),r=e||t;return T.exports.useEffect((()=>{null==t&&(mr+=1,n(`mui-${mr}`));}),[t]),r}function gr({controlled:e,default:t,name:n,state:r="value"}){const{current:o}=T.exports.useRef(void 0!==e),[a,i]=T.exports.useState(t);return [o?e:a,T.exports.useCallback((e=>{o||i(e);}),[])]}function br(e){const t=T.exports.useRef(e);return hr((()=>{t.current=e;})),T.exports.useCallback(((...e)=>(0, t.current)(...e)),[])}function yr(e,t){return T.exports.useMemo((()=>null==e&&null==t?null:n=>{fr(e,n),fr(t,n);}),[e,t])}let xr,wr=!0,kr=!1;const Sr={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function Cr(e){e.metaKey||e.altKey||e.ctrlKey||(wr=!0);}function Er(){wr=!1;}function Rr(){"hidden"===this.visibilityState&&kr&&(wr=!0);}function Pr(e){const{target:t}=e;try{return t.matches(":focus-visible")}catch(e){}return wr||function(e){const{type:t,tagName:n}=e;return !("INPUT"!==n||!Sr[t]||e.readOnly)||"TEXTAREA"===n&&!e.readOnly||!!e.isContentEditable}(t)}function Mr(){const e=T.exports.useCallback((e=>{var t;null!=e&&((t=e.ownerDocument).addEventListener("keydown",Cr,!0),t.addEventListener("mousedown",Er,!0),t.addEventListener("pointerdown",Er,!0),t.addEventListener("touchstart",Er,!0),t.addEventListener("visibilitychange",Rr,!0));}),[]),t=T.exports.useRef(!1);return {isFocusVisibleRef:t,onFocus:function(e){return !!Pr(e)&&(t.current=!0,!0)},onBlur:function(){return !!t.current&&(kr=!0,window.clearTimeout(xr),xr=window.setTimeout((()=>{kr=!1;}),100),t.current=!1,!0)},ref:e}}function Or(e){const t=e.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}let Tr;function jr(){if(Tr)return Tr;const e=document.createElement("div"),t=document.createElement("div");return t.style.width="10px",t.style.height="1px",e.appendChild(t),e.dir="rtl",e.style.fontSize="14px",e.style.width="4px",e.style.height="1px",e.style.position="absolute",e.style.top="-1000px",e.style.overflow="scroll",document.body.appendChild(e),Tr="reverse",e.scrollLeft>0?Tr="default":(e.scrollLeft=1,0===e.scrollLeft&&(Tr="negative")),document.body.removeChild(e),Tr}function zr(e,t){const n=e.scrollLeft;if("rtl"!==t)return n;switch(jr()){case"negative":return e.scrollWidth-e.clientWidth+n;case"reverse":return e.scrollWidth-e.clientWidth-n;default:return n}}function Nr(t,n){const r=f({},n);return Object.keys(t).forEach((e=>{void 0===r[e]&&(r[e]=t[e]);})),r}function _r(...e){const n=e.reduce(((e,t)=>(t.filterProps.forEach((n=>{e[n]=t;})),e)),{}),r=e=>Object.keys(e).reduce(((r,o)=>n[o]?h(r,n[o](e)):r),{});return r.propTypes={},r.filterProps=e.reduce(((e,t)=>e.concat(t.filterProps)),[]),r}function Lr(e){return "number"!=typeof e?e:`${e}px solid`}const Ir=A$1({prop:"border",themeKey:"borders",transform:Lr}),Fr=A$1({prop:"borderTop",themeKey:"borders",transform:Lr}),$r=A$1({prop:"borderRight",themeKey:"borders",transform:Lr}),Ar=A$1({prop:"borderBottom",themeKey:"borders",transform:Lr}),Br=A$1({prop:"borderLeft",themeKey:"borders",transform:Lr}),Dr=A$1({prop:"borderColor",themeKey:"palette"}),Wr=A$1({prop:"borderTopColor",themeKey:"palette"}),Ur=A$1({prop:"borderRightColor",themeKey:"palette"}),Hr=A$1({prop:"borderBottomColor",themeKey:"palette"}),Vr=A$1({prop:"borderLeftColor",themeKey:"palette"}),qr=e=>{if(void 0!==e.borderRadius&&null!==e.borderRadius){const t=j$1(e.theme,"shape.borderRadius",4),n=e=>({borderRadius:I$1(t,e)});return y(e,e.borderRadius,n)}return null};qr.propTypes={},qr.filterProps=["borderRadius"];var Kr=_r(Ir,Fr,$r,Ar,Br,Dr,Wr,Ur,Hr,Vr,qr);var Xr=_r(A$1({prop:"displayPrint",cssProperty:!1,transform:e=>({"@media print":{display:e}})}),A$1({prop:"display"}),A$1({prop:"overflow"}),A$1({prop:"textOverflow"}),A$1({prop:"visibility"}),A$1({prop:"whiteSpace"}));var Yr=_r(A$1({prop:"flexBasis"}),A$1({prop:"flexDirection"}),A$1({prop:"flexWrap"}),A$1({prop:"justifyContent"}),A$1({prop:"alignItems"}),A$1({prop:"alignContent"}),A$1({prop:"order"}),A$1({prop:"flex"}),A$1({prop:"flexGrow"}),A$1({prop:"flexShrink"}),A$1({prop:"alignSelf"}),A$1({prop:"justifyItems"}),A$1({prop:"justifySelf"}));const Qr=e=>{if(void 0!==e.gap&&null!==e.gap){const t=j$1(e.theme,"spacing",8),n=e=>({gap:I$1(t,e)});return y(e,e.gap,n)}return null};Qr.propTypes={},Qr.filterProps=["gap"];const Gr=e=>{if(void 0!==e.columnGap&&null!==e.columnGap){const t=j$1(e.theme,"spacing",8),n=e=>({columnGap:I$1(t,e)});return y(e,e.columnGap,n)}return null};Gr.propTypes={},Gr.filterProps=["columnGap"];const Zr=e=>{if(void 0!==e.rowGap&&null!==e.rowGap){const t=j$1(e.theme,"spacing",8),n=e=>({rowGap:I$1(t,e)});return y(e,e.rowGap,n)}return null};Zr.propTypes={},Zr.filterProps=["rowGap"];var Jr=_r(Qr,Gr,Zr,A$1({prop:"gridColumn"}),A$1({prop:"gridRow"}),A$1({prop:"gridAutoFlow"}),A$1({prop:"gridAutoColumns"}),A$1({prop:"gridAutoRows"}),A$1({prop:"gridTemplateColumns"}),A$1({prop:"gridTemplateRows"}),A$1({prop:"gridTemplateAreas"}),A$1({prop:"gridArea"}));var eo=_r(A$1({prop:"color",themeKey:"palette"}),A$1({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette"}),A$1({prop:"backgroundColor",themeKey:"palette"}));var to=_r(A$1({prop:"position"}),A$1({prop:"zIndex",themeKey:"zIndex"}),A$1({prop:"top"}),A$1({prop:"right"}),A$1({prop:"bottom"}),A$1({prop:"left"}));var no=A$1({prop:"boxShadow",themeKey:"shadows"});function ro(e){return e<=1&&0!==e?100*e+"%":e}const oo=A$1({prop:"width",transform:ro}),ao=e=>{if(void 0!==e.maxWidth&&null!==e.maxWidth){const t=t=>{var n,r,o;return {maxWidth:(null==(n=e.theme)||null==(r=n.breakpoints)||null==(o=r.values)?void 0:o[t])||m$1[t]||ro(t)}};return y(e,e.maxWidth,t)}return null};ao.filterProps=["maxWidth"];const io=A$1({prop:"minWidth",transform:ro}),lo=A$1({prop:"height",transform:ro}),so=A$1({prop:"maxHeight",transform:ro}),uo=A$1({prop:"minHeight",transform:ro});A$1({prop:"size",cssProperty:"width",transform:ro}),A$1({prop:"size",cssProperty:"height",transform:ro});var co=_r(oo,ao,io,lo,so,uo,A$1({prop:"boxSizing"}));const po=A$1({prop:"fontFamily",themeKey:"typography"}),fo=A$1({prop:"fontSize",themeKey:"typography"}),ho=A$1({prop:"fontStyle",themeKey:"typography"}),mo=A$1({prop:"fontWeight",themeKey:"typography"}),vo=A$1({prop:"letterSpacing"}),go=A$1({prop:"lineHeight"}),bo=A$1({prop:"textAlign"});var yo=_r(A$1({prop:"typography",cssProperty:!1,themeKey:"typography"}),po,fo,ho,mo,vo,go,bo);const xo={borders:Kr.filterProps,display:Xr.filterProps,flexbox:Yr.filterProps,grid:Jr.filterProps,positions:to.filterProps,palette:eo.filterProps,shadows:no.filterProps,sizing:co.filterProps,spacing:z$1.filterProps,typography:yo.filterProps},wo={borders:Kr,display:Xr,flexbox:Yr,grid:Jr,positions:to,palette:eo,shadows:no,sizing:co,spacing:z$1,typography:yo},ko=Object.keys(xo).reduce(((e,t)=>(xo[t].forEach((n=>{e[n]=wo[t];})),e)),{});function So(e,t,n){const r={[e]:t,theme:n},o=ko[e];return o?o(r):{[e]:t}}function Co(e){const{sx:n,theme:r={}}=e||{};if(!n)return null;function a(e){let n=e;if("function"==typeof e)n=e(r);else if("object"!=typeof e)return e;const a=x(r.breakpoints),i=Object.keys(a);let l=a;return Object.keys(n).forEach((e=>{const a=(i=n[e],s=r,"function"==typeof i?i(s):i);var i,s;if(null!=a)if("object"==typeof a)if(ko[e])l=h(l,So(e,a,r));else {const n=y({theme:r},a,(t=>({[e]:t})));!function(...e){const t=e.reduce(((e,t)=>e.concat(Object.keys(t))),[]),n=new Set(t);return e.every((e=>n.size===Object.keys(e).length))}(n,a)?l=h(l,n):l[e]=Co({sx:a,theme:r});}else l=h(l,So(e,a,r));})),k(i,l)}return Array.isArray(n)?n.map(a):a(n)}Co.filterProps=["sx"];const Eo=["sx"];function Ro(t){const{sx:n}=t,r=u(t,Eo),{systemProps:o,otherProps:a}=(e=>{const t={systemProps:{},otherProps:{}};return Object.keys(e).forEach((n=>{ko[n]?t.systemProps[n]=e[n]:t.otherProps[n]=e[n];})),t})(r);let i;return i=Array.isArray(n)?[o,...n]:"function"==typeof n?(...t)=>{const r=n(...t);return l(r)?f({},o,r):o}:f({},o,n),f({},a,{sx:i})}function Po(e){var t,n,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t{const t=null===o?r:function(t,n){if("function"==typeof n)return n(t);return f({},t,n)}(o,r);return null!=t&&(t[jo]=null!==o),t}),[r,o]);return wn.exports.jsx(Oo.Provider,{value:a,children:n})}function No(e=null){const t=To();return t&&(n=t,0!==Object.keys(n).length)?t:e;var n;}const _o=L$1();function Lo(e=_o){return No(e)}const Io=["className","component"];function Fo(t={}){const{defaultTheme:n,defaultClassName:r="MuiBox-root",generateClassName:o}=t,a=jn("div")(Co);return T.exports.forwardRef((function(t,i){const l=Lo(n),s=Ro(t),{className:u$1,component:d="div"}=s,p=u(s,Io);return wn.exports.jsx(a,f({as:d,ref:i,className:Mo(u$1,o?o(r):r),theme:l},p))}))}var $o=Fo();const Ao=["variant"];function Bo(e){return 0===e.length}function Do(e){const{variant:t}=e,n=u(e,Ao);let r=t||"";return Object.keys(n).sort().forEach((t=>{r+="color"===t?Bo(r)?e[t]:g(e[t]):`${Bo(r)?t:g(t)}${g(e[t].toString())}`;})),r}const Wo=["name","slot","skipVariantsResolver","skipSx","overridesResolver"],Uo=["theme"],Ho=["theme"];function Vo(e){return 0===Object.keys(e).length}function qo(e){return "ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}const Ko=L$1();function Xo({props:e,name:t,defaultTheme:n}){const r=function(e){const{theme:t,name:n,props:r}=e;return t&&t.components&&t.components[n]&&t.components[n].defaultProps?Nr(t.components[n].defaultProps,r):r}({theme:Lo(n),name:t,props:e});return r}function Yo(e){const t=Lo();return wn.exports.jsx(un.Provider,{value:"object"==typeof t?t:{},children:e.children})}function Qo(e){return "string"==typeof e}function Go(t,n={},r){return Qo(t)?n:f({},n,{ownerState:f({},n.ownerState,r)})}function Zo(e,t,n){const r={};return Object.keys(e).forEach((o=>{r[o]=e[o].reduce(((e,r)=>(r&&(n&&n[r]&&e.push(n[r]),e.push(t(r))),e)),[]).join(" ");})),r}const Jo=e=>e;var ea=(()=>{let e=Jo;return {configure(t){e=t;},generate:t=>e(t),reset(){e=Jo;}}})();const ta={active:"Mui-active",checked:"Mui-checked",completed:"Mui-completed",disabled:"Mui-disabled",error:"Mui-error",expanded:"Mui-expanded",focused:"Mui-focused",focusVisible:"Mui-focusVisible",required:"Mui-required",selected:"Mui-selected"};function na(e,t){return ta[t]||`${ea.generate(e)}-${t}`}function ra(e,t){const n={};return t.forEach((t=>{n[t]=na(e,t);})),n}function oa(e){return na("MuiBackdrop",e)}ra("MuiBackdrop",["root","invisible"]);const aa=["classes","className","invisible","component","components","componentsProps","theme"];var ia=T.exports.forwardRef((function(t,n){const{classes:r,className:o,invisible:a=!1,component:i="div",components:l={},componentsProps:s={},theme:u$1}=t,d=u(t,aa),p=f({},t,{classes:r,invisible:a}),f$1=(e=>{const{classes:t,invisible:n}=e;return Zo({root:["root",n&&"invisible"]},oa,t)})(p),h=l.Root||i,m=s.root||{};return wn.exports.jsx(h,f({"aria-hidden":!0},m,!Qo(h)&&{as:i,ownerState:f({},p,m.ownerState),theme:u$1},{ref:n},d,{className:Mo(f$1.root,m.className,o)}))})),la={exports:{}},sa={},ua={exports:{}},ca={}; +/** @license React v0.20.2 + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +!function(e){var t,n,r,o;if("object"==typeof performance&&"function"==typeof performance.now){var a=performance;e.unstable_now=function(){return a.now()};}else {var i=Date,l=i.now();e.unstable_now=function(){return i.now()-l};}if("undefined"==typeof window||"function"!=typeof MessageChannel){var s=null,u=null,c=function(){if(null!==s)try{var t=e.unstable_now();s(!0,t),s=null;}catch(e){throw setTimeout(c,0),e}};t=function(e){null!==s?setTimeout(t,0,e):(s=e,setTimeout(c,0));},n=function(e,t){u=setTimeout(e,t);},r=function(){clearTimeout(u);},e.unstable_shouldYield=function(){return !1},o=e.unstable_forceFrameRate=function(){};}else {var d=window.setTimeout,p=window.clearTimeout;if("undefined"!=typeof console){var f=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof f&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills");}var h=!1,m=null,v=-1,g=5,b=0;e.unstable_shouldYield=function(){return e.unstable_now()>=b},o=function(){},e.unstable_forceFrameRate=function(e){0>e||125>>1,o=e[r];if(!(void 0!==o&&0C(i,n))void 0!==s&&0>C(s,i)?(e[r]=s,e[l]=n,r=l):(e[r]=i,e[a]=n,r=a);else {if(!(void 0!==s&&0>C(s,n)))break e;e[r]=s,e[l]=n,r=l;}}}return t}return null}function C(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var E=[],R=[],P=1,M=null,O=3,T=!1,j=!1,z=!1;function N(e){for(var t=k(R);null!==t;){if(null===t.callback)S(R);else {if(!(t.startTime<=e))break;S(R),t.sortIndex=t.expirationTime,w(E,t);}t=k(R);}}function _(e){if(z=!1,N(e),!j)if(null!==k(E))j=!0,t(L);else {var r=k(R);null!==r&&n(_,r.startTime-e);}}function L(t,o){j=!1,z&&(z=!1,r()),T=!0;var a=O;try{for(N(o),M=k(E);null!==M&&(!(M.expirationTime>o)||t&&!e.unstable_shouldYield());){var i=M.callback;if("function"==typeof i){M.callback=null,O=M.priorityLevel;var l=i(M.expirationTime<=o);o=e.unstable_now(),"function"==typeof l?M.callback=l:M===k(E)&&S(E),N(o);}else S(E);M=k(E);}if(null!==M)var s=!0;else {var u=k(R);null!==u&&n(_,u.startTime-o),s=!1;}return s}finally{M=null,O=a,T=!1;}}var I=o;e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null;},e.unstable_continueExecution=function(){j||T||(j=!0,t(L));},e.unstable_getCurrentPriorityLevel=function(){return O},e.unstable_getFirstCallbackNode=function(){return k(E)},e.unstable_next=function(e){switch(O){case 1:case 2:case 3:var t=3;break;default:t=O;}var n=O;O=t;try{return e()}finally{O=n;}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=I,e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3;}var n=O;O=e;try{return t()}finally{O=n;}},e.unstable_scheduleCallback=function(o,a,i){var l=e.unstable_now();switch("object"==typeof i&&null!==i?i="number"==typeof(i=i.delay)&&0l?(o.sortIndex=i,w(R,o),null===k(E)&&o===k(R)&&(z?r():z=!0,n(_,i-l))):(o.sortIndex=s,w(E,o),j||T||(j=!0,t(L))),o},e.unstable_wrapCallback=function(e){var t=O;return function(){var n=O;O=t;try{return e.apply(this,arguments)}finally{O=n;}}};}(ca),ua.exports=ca; +/** @license React v17.0.2 + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +var da=T.exports,pa=I,fa=ua.exports;function ha(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n