extension-develop 2.0.0-alpha.29 → 2.0.0-alpha.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (967) hide show
  1. package/dist/ensure-hmr-for-scripts.js +2 -2
  2. package/dist/extensions/chrome-manager-extension/manifest.json +3 -3
  3. package/dist/extensions/chromium-based-manager-extension/manifest.json +3 -3
  4. package/dist/extensions/edge-manager-extension/manifest.json +3 -3
  5. package/dist/extensions/firefox-manager-extension/manifest.json +3 -3
  6. package/dist/extensions/gecko-based-manager-extension/manifest.json +3 -3
  7. package/dist/inject-chromium-client-loader.js +2 -2
  8. package/dist/inject-content-css-during-dev.js +3 -3
  9. package/dist/inject-firefox-client-loader.js +2 -2
  10. package/dist/module.d.ts +35 -10
  11. package/dist/module.js +85 -85
  12. package/dist/resolver-loader.js +1 -1
  13. package/dist/run-chrome-profile/BrowserMetrics-spare.pma +0 -0
  14. package/dist/run-chrome-profile/ChromeFeatureState +6 -0
  15. package/dist/run-chrome-profile/Default/Affiliation Database +0 -0
  16. package/dist/run-chrome-profile/Default/Affiliation Database-journal +0 -0
  17. package/dist/run-chrome-profile/Default/AutofillStrikeDatabase/LOCK +0 -0
  18. package/dist/run-chrome-profile/Default/AutofillStrikeDatabase/LOG +0 -0
  19. package/dist/run-chrome-profile/Default/AutofillStrikeDatabase/LOG.old +0 -0
  20. package/dist/run-chrome-profile/Default/BrowsingTopicsSiteData +0 -0
  21. package/dist/run-chrome-profile/Default/BrowsingTopicsSiteData-journal +0 -0
  22. package/dist/run-chrome-profile/Default/BrowsingTopicsState +12 -0
  23. package/dist/run-chrome-profile/Default/BudgetDatabase/LOCK +0 -0
  24. package/dist/run-chrome-profile/Default/BudgetDatabase/LOG +0 -0
  25. package/dist/run-chrome-profile/Default/BudgetDatabase/LOG.old +0 -0
  26. package/dist/run-chrome-profile/Default/Cache/Cache_Data/000d90a07d83bf37_0 +0 -0
  27. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0053126eb73e3753_0 +0 -0
  28. package/dist/run-chrome-profile/Default/Cache/Cache_Data/036e8d82a2523a26_0 +0 -0
  29. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0444002b94ce056e_0 +0 -0
  30. package/dist/run-chrome-profile/Default/Cache/Cache_Data/07047b1164fb5331_0 +0 -0
  31. package/dist/run-chrome-profile/Default/Cache/Cache_Data/07051aecb4f5eefd_0 +0 -0
  32. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0818aa0ebadae6d0_0 +0 -0
  33. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0941b0fcb65633b8_0 +0 -0
  34. package/dist/run-chrome-profile/Default/Cache/Cache_Data/097349b5750f7143_0 +0 -0
  35. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0a0f363fea2c722e_0 +0 -0
  36. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0ab2b02ec4b2b74d_0 +0 -0
  37. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0ba6ab0f405d32f7_0 +0 -0
  38. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0d1612014bdde02c_0 +0 -0
  39. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0dd6b517306f5784_0 +0 -0
  40. package/dist/run-chrome-profile/Default/Cache/Cache_Data/0e67d768439e7507_0 +0 -0
  41. package/dist/run-chrome-profile/Default/Cache/Cache_Data/105f2ccd5d3840ac_0 +0 -0
  42. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1078f23d12045834_0 +0 -0
  43. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1142cc024737aa4e_0 +0 -0
  44. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1156a47b672c860c_0 +0 -0
  45. package/dist/run-chrome-profile/Default/Cache/Cache_Data/117be6c6de68753a_0 +0 -0
  46. package/dist/run-chrome-profile/Default/Cache/Cache_Data/12ed6e0c7d56a241_0 +0 -0
  47. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1331e57d69002567_0 +0 -0
  48. package/dist/run-chrome-profile/Default/Cache/Cache_Data/133915aea77395f4_0 +0 -0
  49. package/dist/run-chrome-profile/Default/Cache/Cache_Data/13c642458b7cae8c_0 +0 -0
  50. package/dist/run-chrome-profile/Default/Cache/Cache_Data/13db62e40e4cc322_0 +0 -0
  51. package/dist/run-chrome-profile/Default/Cache/Cache_Data/14c4e929c660690a_0 +0 -0
  52. package/dist/run-chrome-profile/Default/Cache/Cache_Data/15145040f7f12f31_0 +0 -0
  53. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1629819060c40e1c_0 +0 -0
  54. package/dist/run-chrome-profile/Default/Cache/Cache_Data/172e83d82bffda3b_0 +0 -0
  55. package/dist/run-chrome-profile/Default/Cache/Cache_Data/179745cc843c129a_0 +0 -0
  56. package/dist/run-chrome-profile/Default/Cache/Cache_Data/195035875a549257_0 +0 -0
  57. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1cc1e0e69613bc12_0 +0 -0
  58. package/dist/run-chrome-profile/Default/Cache/Cache_Data/1e3ccd6beb8e2865_0 +0 -0
  59. package/dist/run-chrome-profile/Default/Cache/Cache_Data/203a96fca4142b4e_0 +0 -0
  60. package/dist/run-chrome-profile/Default/Cache/Cache_Data/207a53d3f4a4c4bc_0 +0 -0
  61. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2093373423fe01d0_0 +0 -0
  62. package/dist/run-chrome-profile/Default/Cache/Cache_Data/210611bc03577727_0 +0 -0
  63. package/dist/run-chrome-profile/Default/Cache/Cache_Data/220c7f96622d7b7d_0 +0 -0
  64. package/dist/run-chrome-profile/Default/Cache/Cache_Data/22254bc7f498e8ae_0 +0 -0
  65. package/dist/run-chrome-profile/Default/Cache/Cache_Data/257b9ada9582cd59_0 +0 -0
  66. package/dist/run-chrome-profile/Default/Cache/Cache_Data/29aa27be8710bb4d_0 +0 -0
  67. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2a6afe2da42352b3_0 +0 -0
  68. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2aa87338bd9e5e45_0 +0 -0
  69. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2ae7c9ad8b7c7972_0 +0 -0
  70. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2c2e234131ce4991_0 +0 -0
  71. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2c35f423ce119c3e_0 +0 -0
  72. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2ccf5fd599c21bae_0 +0 -0
  73. package/dist/run-chrome-profile/Default/Cache/Cache_Data/2ed04619808cea76_0 +0 -0
  74. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3405d1653639c199_0 +0 -0
  75. package/dist/run-chrome-profile/Default/Cache/Cache_Data/348e341b67661d36_0 +0 -0
  76. package/dist/run-chrome-profile/Default/Cache/Cache_Data/34b4ef0d277b8e33_0 +0 -0
  77. package/dist/run-chrome-profile/Default/Cache/Cache_Data/35ee6c6f107fd8d5_0 +0 -0
  78. package/dist/run-chrome-profile/Default/Cache/Cache_Data/371928bf852ba7df_0 +0 -0
  79. package/dist/run-chrome-profile/Default/Cache/Cache_Data/376fc5838254c498_0 +0 -0
  80. package/dist/run-chrome-profile/Default/Cache/Cache_Data/379dd4217b082c56_0 +0 -0
  81. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3863da4ab547b9c0_0 +0 -0
  82. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3869a862959a3f7b_0 +0 -0
  83. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3a8bcc250e5406bc_0 +0 -0
  84. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3bc4719d274ff124_0 +0 -0
  85. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3d5a6a9dc535683c_0 +0 -0
  86. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3dcdb44d1dc006ad_0 +0 -0
  87. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3e7b55fa7330ccf0_0 +0 -0
  88. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3f0744b19c7e3956_0 +0 -0
  89. package/dist/run-chrome-profile/Default/Cache/Cache_Data/3f72b25df33793a2_0 +0 -0
  90. package/dist/run-chrome-profile/Default/Cache/Cache_Data/40587c988186febe_0 +0 -0
  91. package/dist/run-chrome-profile/Default/Cache/Cache_Data/43f386717ef38a7d_0 +0 -0
  92. package/dist/run-chrome-profile/Default/Cache/Cache_Data/44655f9a579aa95d_0 +0 -0
  93. package/dist/run-chrome-profile/Default/Cache/Cache_Data/47d9d99188712818_0 +0 -0
  94. package/dist/run-chrome-profile/Default/Cache/Cache_Data/48a271425ca65e84_0 +0 -0
  95. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4985347f4bd62f98_0 +0 -0
  96. package/dist/run-chrome-profile/Default/Cache/Cache_Data/49a2f8c2c4c80932_0 +0 -0
  97. package/dist/run-chrome-profile/Default/Cache/Cache_Data/49c810ed60e08a31_0 +0 -0
  98. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4a75d4a1be65552b_0 +0 -0
  99. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4ae44022d12bca01_0 +0 -0
  100. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4bf3c2785f8cdf61_0 +0 -0
  101. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4c45729d1d2f694f_0 +0 -0
  102. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4cacbe29e41d5f50_0 +0 -0
  103. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4cc185f9f861aa34_0 +0 -0
  104. package/dist/run-chrome-profile/Default/Cache/Cache_Data/4d4bf99b2316a21d_0 +0 -0
  105. package/dist/run-chrome-profile/Default/Cache/Cache_Data/504db4a4143aa7ca_0 +0 -0
  106. package/dist/run-chrome-profile/Default/Cache/Cache_Data/50d40c43b7fa0f86_0 +0 -0
  107. package/dist/run-chrome-profile/Default/Cache/Cache_Data/50e786affe513356_0 +0 -0
  108. package/dist/run-chrome-profile/Default/Cache/Cache_Data/520918c094a2ca0a_0 +0 -0
  109. package/dist/run-chrome-profile/Default/Cache/Cache_Data/533084756b4d2070_0 +0 -0
  110. package/dist/run-chrome-profile/Default/Cache/Cache_Data/53e073778b8211b0_0 +0 -0
  111. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5431173f6076b2a8_0 +0 -0
  112. package/dist/run-chrome-profile/Default/Cache/Cache_Data/544232310d1a0a06_0 +0 -0
  113. package/dist/run-chrome-profile/Default/Cache/Cache_Data/547e725d92b0e84a_0 +0 -0
  114. package/dist/run-chrome-profile/Default/Cache/Cache_Data/559ba6a90f7e8bc1_0 +0 -0
  115. package/dist/run-chrome-profile/Default/Cache/Cache_Data/55ed72b0b4c0b90e_0 +0 -0
  116. package/dist/run-chrome-profile/Default/Cache/Cache_Data/56ebde79ec6acce7_0 +0 -0
  117. package/dist/run-chrome-profile/Default/Cache/Cache_Data/57eb4b0fb45bb008_0 +0 -0
  118. package/dist/run-chrome-profile/Default/Cache/Cache_Data/58825680336c1bd1_0 +0 -0
  119. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5971fd089d205048_0 +0 -0
  120. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5b6fd2b213669b99_0 +0 -0
  121. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5b70046eeaca9652_0 +0 -0
  122. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5bbe8c79a1a95b0c_0 +0 -0
  123. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5cb8d65a15b31728_0 +0 -0
  124. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5cbcc0bd4ce1ed3c_0 +0 -0
  125. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5d29838b7510291f_0 +0 -0
  126. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5d37705e2c631750_0 +0 -0
  127. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5e191bfc0d490b06_0 +0 -0
  128. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5e6cb6789a67422a_0 +0 -0
  129. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5efc079d6ff3e2a5_0 +0 -0
  130. package/dist/run-chrome-profile/Default/Cache/Cache_Data/5ffa20fa73b4ef60_0 +0 -0
  131. package/dist/run-chrome-profile/Default/Cache/Cache_Data/601a10ddfbb9c2de_0 +0 -0
  132. package/dist/run-chrome-profile/Default/Cache/Cache_Data/637d7205d5356807_0 +0 -0
  133. package/dist/run-chrome-profile/Default/Cache/Cache_Data/63ab689299484e74_0 +0 -0
  134. package/dist/run-chrome-profile/Default/Cache/Cache_Data/645cb0b14d83d560_0 +0 -0
  135. package/dist/run-chrome-profile/Default/Cache/Cache_Data/666c2ab6b3521f96_0 +0 -0
  136. package/dist/run-chrome-profile/Default/Cache/Cache_Data/676952a12455e9a1_0 +0 -0
  137. package/dist/run-chrome-profile/Default/Cache/Cache_Data/680aeb2073ca9d1f_0 +0 -0
  138. package/dist/run-chrome-profile/Default/Cache/Cache_Data/6b9324eb72df4e35_0 +0 -0
  139. package/dist/run-chrome-profile/Default/Cache/Cache_Data/6cb2e10ccb29c25d_0 +0 -0
  140. package/dist/run-chrome-profile/Default/Cache/Cache_Data/6d78cdc75f8737d2_0 +0 -0
  141. package/dist/run-chrome-profile/Default/Cache/Cache_Data/6e4841216bb8b9ae_0 +0 -0
  142. package/dist/run-chrome-profile/Default/Cache/Cache_Data/6fe12b8a0d7d065a_0 +0 -0
  143. package/dist/run-chrome-profile/Default/Cache/Cache_Data/700bc3ec6dac311e_0 +0 -0
  144. package/dist/run-chrome-profile/Default/Cache/Cache_Data/702267b9289e1b2f_0 +0 -0
  145. package/dist/run-chrome-profile/Default/Cache/Cache_Data/71b43b6cf2b6ef1e_0 +0 -0
  146. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7298c7f992afa941_0 +0 -0
  147. package/dist/run-chrome-profile/Default/Cache/Cache_Data/73c076c0352269c9_0 +0 -0
  148. package/dist/run-chrome-profile/Default/Cache/Cache_Data/755784ba754a5bd9_0 +0 -0
  149. package/dist/run-chrome-profile/Default/Cache/Cache_Data/758711a92d8ac434_0 +0 -0
  150. package/dist/run-chrome-profile/Default/Cache/Cache_Data/76369f9c96d30f28_0 +0 -0
  151. package/dist/run-chrome-profile/Default/Cache/Cache_Data/76c12a2dda280764_0 +0 -0
  152. package/dist/run-chrome-profile/Default/Cache/Cache_Data/77c339966e4aba8b_0 +0 -0
  153. package/dist/run-chrome-profile/Default/Cache/Cache_Data/78dab856ca22cee6_0 +0 -0
  154. package/dist/run-chrome-profile/Default/Cache/Cache_Data/78ed79bc5487503a_0 +0 -0
  155. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7ccfe530936c3ae0_0 +0 -0
  156. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7db673ea336938f0_0 +0 -0
  157. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7e9121ac9923ad80_0 +0 -0
  158. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7edcf5a547f3a9fe_0 +0 -0
  159. package/dist/run-chrome-profile/Default/Cache/Cache_Data/7fb78fe7dd2c4122_0 +0 -0
  160. package/dist/run-chrome-profile/Default/Cache/Cache_Data/80efeb6b094e6df4_0 +0 -0
  161. package/dist/run-chrome-profile/Default/Cache/Cache_Data/817bcac158c6c5c5_0 +0 -0
  162. package/dist/run-chrome-profile/Default/Cache/Cache_Data/81ba2f73ed5217e0_0 +0 -0
  163. package/dist/run-chrome-profile/Default/Cache/Cache_Data/81e510f464d284be_0 +0 -0
  164. package/dist/run-chrome-profile/Default/Cache/Cache_Data/837992237d030473_0 +0 -0
  165. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8453b02f0dddbcf5_0 +0 -0
  166. package/dist/run-chrome-profile/Default/Cache/Cache_Data/855b2493189941b7_0 +0 -0
  167. package/dist/run-chrome-profile/Default/Cache/Cache_Data/861c70a4a7b8625f_0 +0 -0
  168. package/dist/run-chrome-profile/Default/Cache/Cache_Data/87287033ea1a3281_0 +0 -0
  169. package/dist/run-chrome-profile/Default/Cache/Cache_Data/878b0f723bb46fc9_0 +0 -0
  170. package/dist/run-chrome-profile/Default/Cache/Cache_Data/88896100bcc86860_0 +0 -0
  171. package/dist/run-chrome-profile/Default/Cache/Cache_Data/88b8c9c5a1c08132_0 +0 -0
  172. package/dist/run-chrome-profile/Default/Cache/Cache_Data/88be6d624499f150_0 +0 -0
  173. package/dist/run-chrome-profile/Default/Cache/Cache_Data/891f31dead52fe66_0 +0 -0
  174. package/dist/run-chrome-profile/Default/Cache/Cache_Data/89a5733274a50fa9_0 +0 -0
  175. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8a9be709d4430018_0 +0 -0
  176. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8aab09f10e010522_0 +0 -0
  177. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8b1beae4e5d3fa65_0 +0 -0
  178. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8b3a53779253d5f1_0 +0 -0
  179. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8c5afd9211183fe2_0 +0 -0
  180. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8de9b1f31885e866_0 +0 -0
  181. package/dist/run-chrome-profile/Default/Cache/Cache_Data/8fc344dedc58d4d4_0 +0 -0
  182. package/dist/run-chrome-profile/Default/Cache/Cache_Data/908441d3a01becc3_0 +0 -0
  183. package/dist/run-chrome-profile/Default/Cache/Cache_Data/923ab216c8b36e7d_0 +0 -0
  184. package/dist/run-chrome-profile/Default/Cache/Cache_Data/93d81321f8c35eab_0 +0 -0
  185. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9585901a13a78828_0 +0 -0
  186. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9682027ba8bea0d4_0 +0 -0
  187. package/dist/run-chrome-profile/Default/Cache/Cache_Data/98541e21fddd9844_0 +0 -0
  188. package/dist/run-chrome-profile/Default/Cache/Cache_Data/990f1955d9a25770_0 +0 -0
  189. package/dist/run-chrome-profile/Default/Cache/Cache_Data/99efa9e8449da993_0 +0 -0
  190. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9ad07227ef737760_0 +0 -0
  191. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9afbc9193a9488df_0 +0 -0
  192. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9cc88b50195ec9d9_0 +0 -0
  193. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9d0c1f7bc9baae0a_0 +0 -0
  194. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9d5895bafe5ce21f_0 +0 -0
  195. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9de11fd6a0ecfcdd_0 +0 -0
  196. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9e2013bfe8b6f485_0 +0 -0
  197. package/dist/run-chrome-profile/Default/Cache/Cache_Data/9edfd27d7bbc3dde_0 +0 -0
  198. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a22a1e7153402647_0 +0 -0
  199. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a3269e6a78bf5e05_0 +0 -0
  200. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a38cc5e5085774ea_0 +0 -0
  201. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a434bb2cdceae0cf_0 +0 -0
  202. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a47ee9bf3f83a85d_0 +0 -0
  203. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a5c2e063aeeeadf4_0 +0 -0
  204. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a611e2797ba6515d_0 +0 -0
  205. package/dist/run-chrome-profile/Default/Cache/Cache_Data/a6cd8733152a6981_0 +0 -0
  206. package/dist/run-chrome-profile/Default/Cache/Cache_Data/aa23cb0643dd0d4a_0 +0 -0
  207. package/dist/run-chrome-profile/Default/Cache/Cache_Data/aa55266e456860b1_0 +0 -0
  208. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ada96fea8395d7c7_0 +0 -0
  209. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ae622c94d51e6a73_0 +0 -0
  210. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ae7b93f607203bbb_0 +0 -0
  211. package/dist/run-chrome-profile/Default/Cache/Cache_Data/aeeea46295ce5ee5_0 +0 -0
  212. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b061a85acbc5398e_0 +0 -0
  213. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b1a3638be88c2e43_0 +0 -0
  214. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b222ac99d68e1886_0 +0 -0
  215. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b265e32c730774b4_0 +0 -0
  216. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b2dfb034f02017f9_0 +0 -0
  217. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b3b82150318898b2_0 +0 -0
  218. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b43cdf5ba3659cc4_0 +0 -0
  219. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b4432dc61530b6ba_0 +0 -0
  220. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b4e35f3396eba4f0_0 +0 -0
  221. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b5bbbe57e506ca6e_0 +0 -0
  222. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b66fa8683613d387_0 +0 -0
  223. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b7ca5e1a647309a3_0 +0 -0
  224. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b884a9a32b51cf49_0 +0 -0
  225. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b9bed0a338a96f3c_0 +0 -0
  226. package/dist/run-chrome-profile/Default/Cache/Cache_Data/b9dd0db1ca492fed_0 +0 -0
  227. package/dist/run-chrome-profile/Default/Cache/Cache_Data/bbaeec1d4c92614b_0 +0 -0
  228. package/dist/run-chrome-profile/Default/Cache/Cache_Data/bcb4cbb57eddac5c_0 +0 -0
  229. package/dist/run-chrome-profile/Default/Cache/Cache_Data/be59cb62eb70f8ed_0 +0 -0
  230. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c03b8ac03bc58eb0_0 +0 -0
  231. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c0c23ba691767f5a_0 +0 -0
  232. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c0f97f3abb47da9c_0 +0 -0
  233. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c2248ae472958d10_0 +0 -0
  234. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c2880d01d9ca0897_0 +0 -0
  235. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c2974e94ba9fdf7a_0 +0 -0
  236. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c2deefd64150b9cb_0 +0 -0
  237. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c326cca4f129ec1b_0 +0 -0
  238. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c37d6225e247505f_0 +0 -0
  239. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c4eaa0c99afc6ec0_0 +0 -0
  240. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c5a6362fb56a5b76_0 +0 -0
  241. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c76cd37efd699aaa_0 +0 -0
  242. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c80bdb78d5d82121_0 +0 -0
  243. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c9d9a96410e6b629_0 +0 -0
  244. package/dist/run-chrome-profile/Default/Cache/Cache_Data/c9f3cb104f542c4e_0 +0 -0
  245. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cb43318f14d30150_0 +0 -0
  246. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cbce29d63178dfe4_0 +0 -0
  247. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cf3e022198cb22eb_0 +0 -0
  248. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cf40ae6927b20645_0 +0 -0
  249. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cf7837aef34b16d5_0 +0 -0
  250. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cf8b1169e7889f33_0 +0 -0
  251. package/dist/run-chrome-profile/Default/Cache/Cache_Data/cfb7c4e4f9455a2e_0 +0 -0
  252. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d1555c5dfb9e586d_0 +0 -0
  253. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d18eb1a4dbd96244_0 +0 -0
  254. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d2105232efd83af9_0 +0 -0
  255. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d35bf3b1826bab0c_0 +0 -0
  256. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d4b51501ef980280_0 +0 -0
  257. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d5361e14fec38418_0 +0 -0
  258. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d6031f30f3aeb041_0 +0 -0
  259. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d846b6ff7561db24_0 +0 -0
  260. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d86efc1f43bb731b_0 +0 -0
  261. package/dist/run-chrome-profile/Default/Cache/Cache_Data/d8fd4550c99ba76d_0 +0 -0
  262. package/dist/run-chrome-profile/Default/Cache/Cache_Data/dc09f6872ac61c91_0 +0 -0
  263. package/dist/run-chrome-profile/Default/Cache/Cache_Data/de0406dbab5f7c7d_0 +0 -0
  264. package/dist/run-chrome-profile/Default/Cache/Cache_Data/de53de422df5122e_0 +0 -0
  265. package/dist/run-chrome-profile/Default/Cache/Cache_Data/dec6cabc1e58fcc2_0 +0 -0
  266. package/dist/run-chrome-profile/Default/Cache/Cache_Data/df6c6c09498f61bd_0 +0 -0
  267. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e0c995aa9e0f514d_0 +0 -0
  268. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e1608679879778cf_0 +0 -0
  269. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e1bce005696f8733_0 +0 -0
  270. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e66121a164453e93_0 +0 -0
  271. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e85ac8952d7783d7_0 +0 -0
  272. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e869fde574a218bc_0 +0 -0
  273. package/dist/run-chrome-profile/Default/Cache/Cache_Data/e891377a8f5c148e_0 +0 -0
  274. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ea3d1b07a3879b8f_0 +0 -0
  275. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ec4c7c205aa9bc71_0 +0 -0
  276. package/dist/run-chrome-profile/Default/Cache/Cache_Data/edd77ff905f1f90b_0 +0 -0
  277. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ee0227217bcbc42b_0 +0 -0
  278. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ee8fb46ecada7510_0 +0 -0
  279. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ef827da827d1cbde_0 +0 -0
  280. package/dist/run-chrome-profile/Default/Cache/Cache_Data/efd5dcf759b510e2_0 +0 -0
  281. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f093653369ea9020_0 +0 -0
  282. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f09e1f137604d28c_0 +0 -0
  283. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f107e106dedf7f14_0 +0 -0
  284. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f14c9f9db2e00fb8_0 +0 -0
  285. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f18392829b657af4_0 +0 -0
  286. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f1bd82b35d795f43_0 +0 -0
  287. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f261b678a33952b5_0 +0 -0
  288. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f2b50333f8f44bed_0 +0 -0
  289. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f3aaca0dcd9dc497_0 +0 -0
  290. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f4353d8f57242387_0 +0 -0
  291. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f4510e9f37ebceb9_0 +0 -0
  292. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f536d18bbc6028a2_0 +0 -0
  293. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f6286e6c12c7316b_0 +0 -0
  294. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f7b76e6a14d0d985_0 +0 -0
  295. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f8033273ece1a9d4_0 +0 -0
  296. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f84b879e45cdfa61_0 +0 -0
  297. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f89f6f2b1beb0d54_0 +0 -0
  298. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f8af0f3f52282a2f_0 +0 -0
  299. package/dist/run-chrome-profile/Default/Cache/Cache_Data/f8f7986866d1902b_0 +0 -0
  300. package/dist/run-chrome-profile/Default/Cache/Cache_Data/fb88b193f0164875_0 +0 -0
  301. package/dist/run-chrome-profile/Default/Cache/Cache_Data/fc59b6162a2116d3_0 +0 -0
  302. package/dist/run-chrome-profile/Default/Cache/Cache_Data/fc821ef8d1c9a5a4_0 +0 -0
  303. package/dist/run-chrome-profile/Default/Cache/Cache_Data/fd3391fb6d1d4110_0 +0 -0
  304. package/dist/run-chrome-profile/Default/Cache/Cache_Data/fe6cb9799e5d647b_0 +0 -0
  305. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ff7d28e932175a5f_0 +0 -0
  306. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ff8ab6fc499fffeb_0 +0 -0
  307. package/dist/run-chrome-profile/Default/Cache/Cache_Data/ff90049eabe8d7f7_0 +0 -0
  308. package/dist/run-chrome-profile/Default/Cache/Cache_Data/index +0 -0
  309. package/dist/run-chrome-profile/Default/Cache/Cache_Data/index-dir/the-real-index +0 -0
  310. package/dist/run-chrome-profile/Default/ClientCertificates/LOCK +0 -0
  311. package/dist/run-chrome-profile/Default/ClientCertificates/LOG +0 -0
  312. package/dist/run-chrome-profile/Default/ClientCertificates/LOG.old +0 -0
  313. package/dist/run-chrome-profile/Default/Code Cache/js/012a78c8aeeab40f_0 +0 -0
  314. package/dist/run-chrome-profile/Default/Code Cache/js/01ffd4025db324f9_0 +0 -0
  315. package/dist/run-chrome-profile/Default/Code Cache/js/0216fbb60f3618be_0 +0 -0
  316. package/dist/run-chrome-profile/Default/Code Cache/js/065f5233b705b34f_0 +0 -0
  317. package/dist/run-chrome-profile/Default/Code Cache/js/0861135386d2c738_0 +0 -0
  318. package/dist/run-chrome-profile/Default/Code Cache/js/088d93ee15c1227d_0 +0 -0
  319. package/dist/run-chrome-profile/Default/Code Cache/js/0b6c57aa37c908a3_0 +0 -0
  320. package/dist/run-chrome-profile/Default/Code Cache/js/0b71852833c49d7a_0 +0 -0
  321. package/dist/run-chrome-profile/Default/Code Cache/js/0c15362ec1f039f1_0 +0 -0
  322. package/dist/run-chrome-profile/Default/Code Cache/js/0d570046fa07f7f2_0 +0 -0
  323. package/dist/run-chrome-profile/Default/Code Cache/js/0d5e23b29921c6a5_0 +0 -0
  324. package/dist/run-chrome-profile/Default/Code Cache/js/0dbe68143a6415cf_0 +0 -0
  325. package/dist/run-chrome-profile/Default/Code Cache/js/10d89b0634592ea9_0 +0 -0
  326. package/dist/run-chrome-profile/Default/Code Cache/js/111d06c681aac33f_0 +0 -0
  327. package/dist/run-chrome-profile/Default/Code Cache/js/15951301d6eb3b07_0 +0 -0
  328. package/dist/run-chrome-profile/Default/Code Cache/js/15bb7ad45a5e28fc_0 +0 -0
  329. package/dist/run-chrome-profile/Default/Code Cache/js/17de736dd221c765_0 +0 -0
  330. package/dist/run-chrome-profile/Default/Code Cache/js/183e38d145f3d6df_0 +0 -0
  331. package/dist/run-chrome-profile/Default/Code Cache/js/19a49dc0583b3203_0 +0 -0
  332. package/dist/run-chrome-profile/Default/Code Cache/js/2005ad7ad088a562_0 +0 -0
  333. package/dist/run-chrome-profile/Default/Code Cache/js/21841b6e7af7bb43_0 +0 -0
  334. package/dist/run-chrome-profile/Default/Code Cache/js/218fe828c74bdb99_0 +0 -0
  335. package/dist/run-chrome-profile/Default/Code Cache/js/25a4ca235efa579e_0 +0 -0
  336. package/dist/run-chrome-profile/Default/Code Cache/js/295adddb0a2e8c05_0 +0 -0
  337. package/dist/run-chrome-profile/Default/Code Cache/js/2bdcf9893f343d97_0 +0 -0
  338. package/dist/run-chrome-profile/Default/Code Cache/js/2ec5a55a2afc23fb_0 +0 -0
  339. package/dist/run-chrome-profile/Default/Code Cache/js/335e69ddec2b9ac6_0 +0 -0
  340. package/dist/run-chrome-profile/Default/Code Cache/js/344bb9e4cbd4405d_0 +0 -0
  341. package/dist/run-chrome-profile/Default/Code Cache/js/38aab49f6c77253b_0 +0 -0
  342. package/dist/run-chrome-profile/Default/Code Cache/js/3fa06e632ace8d9b_0 +0 -0
  343. package/dist/run-chrome-profile/Default/Code Cache/js/40ac7c03ebdeab4f_0 +0 -0
  344. package/dist/run-chrome-profile/Default/Code Cache/js/428d80b4fb094acd_0 +0 -0
  345. package/dist/run-chrome-profile/Default/Code Cache/js/4450a361f55c7455_0 +0 -0
  346. package/dist/run-chrome-profile/Default/Code Cache/js/45cab953f2b0c456_0 +0 -0
  347. package/dist/run-chrome-profile/Default/Code Cache/js/46bbcb64814363f3_0 +0 -0
  348. package/dist/run-chrome-profile/Default/Code Cache/js/47b06f67bb947f0f_0 +0 -0
  349. package/dist/run-chrome-profile/Default/Code Cache/js/49afd66180646c23_0 +0 -0
  350. package/dist/run-chrome-profile/Default/Code Cache/js/4bfb776240553569_0 +0 -0
  351. package/dist/run-chrome-profile/Default/Code Cache/js/4c9bc8c160da7cff_0 +0 -0
  352. package/dist/run-chrome-profile/Default/Code Cache/js/4cbc0b17442c53a5_0 +0 -0
  353. package/dist/run-chrome-profile/Default/Code Cache/js/4d355f11174ba779_0 +0 -0
  354. package/dist/run-chrome-profile/Default/Code Cache/js/4fa0a928119ce4ee_0 +0 -0
  355. package/dist/run-chrome-profile/Default/Code Cache/js/5101269524143caf_0 +0 -0
  356. package/dist/run-chrome-profile/Default/Code Cache/js/53f055721d8b4e32_0 +0 -0
  357. package/dist/run-chrome-profile/Default/Code Cache/js/55e039f084d0a482_0 +0 -0
  358. package/dist/run-chrome-profile/Default/Code Cache/js/565e8cf6015a0b74_0 +0 -0
  359. package/dist/run-chrome-profile/Default/Code Cache/js/56a2023b102d0360_0 +0 -0
  360. package/dist/run-chrome-profile/Default/Code Cache/js/56dcc64fbc9650b3_0 +0 -0
  361. package/dist/run-chrome-profile/Default/Code Cache/js/56edb7af468422bb_0 +0 -0
  362. package/dist/run-chrome-profile/Default/Code Cache/js/5847a15e2a02be56_0 +0 -0
  363. package/dist/run-chrome-profile/Default/Code Cache/js/5c778fac32eb01b0_0 +0 -0
  364. package/dist/run-chrome-profile/Default/Code Cache/js/5d469b2e72dff033_0 +0 -0
  365. package/dist/run-chrome-profile/Default/Code Cache/js/5fa3f7ecc2b0f652_0 +0 -0
  366. package/dist/run-chrome-profile/Default/Code Cache/js/6062fb8424ae3768_0 +0 -0
  367. package/dist/run-chrome-profile/Default/Code Cache/js/60ac8a9edab6cea2_0 +0 -0
  368. package/dist/run-chrome-profile/Default/Code Cache/js/60cf0424b8cadc36_0 +0 -0
  369. package/dist/run-chrome-profile/Default/Code Cache/js/61be70f8b039e0f5_0 +0 -0
  370. package/dist/run-chrome-profile/Default/Code Cache/js/61ea5ee532534727_0 +0 -0
  371. package/dist/run-chrome-profile/Default/Code Cache/js/62926fb40b5da21c_0 +0 -0
  372. package/dist/run-chrome-profile/Default/Code Cache/js/63426bb142c85e4e_0 +0 -0
  373. package/dist/run-chrome-profile/Default/Code Cache/js/6418b8ad0c3539b3_0 +0 -0
  374. package/dist/run-chrome-profile/Default/Code Cache/js/643984f156e073da_0 +0 -0
  375. package/dist/run-chrome-profile/Default/Code Cache/js/68c0a5807e039ddd_0 +0 -0
  376. package/dist/run-chrome-profile/Default/Code Cache/js/6c26a5c30e95ece7_0 +0 -0
  377. package/dist/run-chrome-profile/Default/Code Cache/js/6c5c79aa84e66791_0 +0 -0
  378. package/dist/run-chrome-profile/Default/Code Cache/js/6ca63340fe9bfef0_0 +0 -0
  379. package/dist/run-chrome-profile/Default/Code Cache/js/6ce0f60e9089eaea_0 +0 -0
  380. package/dist/run-chrome-profile/Default/Code Cache/js/6d87d5fb6c3f3d23_0 +0 -0
  381. package/dist/run-chrome-profile/Default/Code Cache/js/6e2eae3f6835fe43_0 +0 -0
  382. package/dist/run-chrome-profile/Default/Code Cache/js/708d9dda481331d8_0 +0 -0
  383. package/dist/run-chrome-profile/Default/Code Cache/js/7272ddf2290568bc_0 +0 -0
  384. package/dist/run-chrome-profile/Default/Code Cache/js/7363185add9110f1_0 +0 -0
  385. package/dist/run-chrome-profile/Default/Code Cache/js/75abbaa5227cde47_0 +0 -0
  386. package/dist/run-chrome-profile/Default/Code Cache/js/79c269da4ec170fc_0 +0 -0
  387. package/dist/run-chrome-profile/Default/Code Cache/js/7a1fa5be70046870_0 +0 -0
  388. package/dist/run-chrome-profile/Default/Code Cache/js/7a78592e6d93c50e_0 +0 -0
  389. package/dist/run-chrome-profile/Default/Code Cache/js/7b8b72a21b633fb8_0 +0 -0
  390. package/dist/run-chrome-profile/Default/Code Cache/js/7d6cc6f17d7636d2_0 +0 -0
  391. package/dist/run-chrome-profile/Default/Code Cache/js/8086760548b4186a_0 +0 -0
  392. package/dist/run-chrome-profile/Default/Code Cache/js/80c28ff342438b54_0 +0 -0
  393. package/dist/run-chrome-profile/Default/Code Cache/js/82cdd71143f5c9e7_0 +0 -0
  394. package/dist/run-chrome-profile/Default/Code Cache/js/82f9bd73798ebc55_0 +0 -0
  395. package/dist/run-chrome-profile/Default/Code Cache/js/83b2448d45bd5a66_0 +0 -0
  396. package/dist/run-chrome-profile/Default/Code Cache/js/848ae736d0c42d7b_0 +0 -0
  397. package/dist/run-chrome-profile/Default/Code Cache/js/8751b55c6953a4ff_0 +0 -0
  398. package/dist/run-chrome-profile/Default/Code Cache/js/87783e06150c31db_0 +0 -0
  399. package/dist/run-chrome-profile/Default/Code Cache/js/885f4a118c0ec2ec_0 +0 -0
  400. package/dist/run-chrome-profile/Default/Code Cache/js/8b87aab6067c9ad5_0 +0 -0
  401. package/dist/run-chrome-profile/Default/Code Cache/js/8bcb8c05c969683f_0 +0 -0
  402. package/dist/run-chrome-profile/Default/Code Cache/js/8d0f0d12441662eb_0 +0 -0
  403. package/dist/run-chrome-profile/Default/Code Cache/js/8f7b1620b82068a9_0 +0 -0
  404. package/dist/run-chrome-profile/Default/Code Cache/js/8fce0f70779dd92b_0 +0 -0
  405. package/dist/run-chrome-profile/Default/Code Cache/js/9519ab6ec8b831bb_0 +0 -0
  406. package/dist/run-chrome-profile/Default/Code Cache/js/954fe3a850ade699_0 +0 -0
  407. package/dist/run-chrome-profile/Default/Code Cache/js/957c573f0ec0d051_0 +0 -0
  408. package/dist/run-chrome-profile/Default/Code Cache/js/972b739dc1b8f05b_0 +0 -0
  409. package/dist/run-chrome-profile/Default/Code Cache/js/98d8e32353d959fb_0 +0 -0
  410. package/dist/run-chrome-profile/Default/Code Cache/js/99111ba314bc7ba7_0 +0 -0
  411. package/dist/run-chrome-profile/Default/Code Cache/js/993d91afd02605d2_0 +0 -0
  412. package/dist/run-chrome-profile/Default/Code Cache/js/99bd26bcb8de2760_0 +0 -0
  413. package/dist/run-chrome-profile/Default/Code Cache/js/9bdab26e45d731c1_0 +0 -0
  414. package/dist/run-chrome-profile/Default/Code Cache/js/9e46c1eec5ba0d2c_0 +0 -0
  415. package/dist/run-chrome-profile/Default/Code Cache/js/a2994d39c9aabed0_0 +0 -0
  416. package/dist/run-chrome-profile/Default/Code Cache/js/a4471acf25ae0af9_0 +0 -0
  417. package/dist/run-chrome-profile/Default/Code Cache/js/a8bfd7ab3bf7adbd_0 +0 -0
  418. package/dist/run-chrome-profile/Default/Code Cache/js/abb3983b85dac9e8_0 +0 -0
  419. package/dist/run-chrome-profile/Default/Code Cache/js/abd1e69da307352c_0 +0 -0
  420. package/dist/run-chrome-profile/Default/Code Cache/js/acba66fdfe66374c_0 +0 -0
  421. package/dist/run-chrome-profile/Default/Code Cache/js/b024abf90f41e75f_0 +0 -0
  422. package/dist/run-chrome-profile/Default/Code Cache/js/b3f2a7ed3fa890bc_0 +0 -0
  423. package/dist/run-chrome-profile/Default/Code Cache/js/b4b230ef499b7cf3_0 +0 -0
  424. package/dist/run-chrome-profile/Default/Code Cache/js/b611b7e9ef1eee38_0 +0 -0
  425. package/dist/run-chrome-profile/Default/Code Cache/js/bb287061e95e2c6a_0 +0 -0
  426. package/dist/run-chrome-profile/Default/Code Cache/js/c12a82370563870f_0 +0 -0
  427. package/dist/run-chrome-profile/Default/Code Cache/js/c2af8d2c9f449a46_0 +0 -0
  428. package/dist/run-chrome-profile/Default/Code Cache/js/c305a2d42d611254_0 +0 -0
  429. package/dist/run-chrome-profile/Default/Code Cache/js/c3986d63dea0cd62_0 +0 -0
  430. package/dist/run-chrome-profile/Default/Code Cache/js/c59302c3361f1039_0 +0 -0
  431. package/dist/run-chrome-profile/Default/Code Cache/js/c5967181622e9aad_0 +0 -0
  432. package/dist/run-chrome-profile/Default/Code Cache/js/c5e0efb0037fd821_0 +0 -0
  433. package/dist/run-chrome-profile/Default/Code Cache/js/c6fad6531e76b748_0 +0 -0
  434. package/dist/run-chrome-profile/Default/Code Cache/js/cc42a390c57cb777_0 +0 -0
  435. package/dist/run-chrome-profile/Default/Code Cache/js/d02c4b1dea9ef712_0 +0 -0
  436. package/dist/run-chrome-profile/Default/Code Cache/js/d290d4a89313c34a_0 +0 -0
  437. package/dist/run-chrome-profile/Default/Code Cache/js/d2f8569acb8e1556_0 +0 -0
  438. package/dist/run-chrome-profile/Default/Code Cache/js/d4b5ddb954a70417_0 +0 -0
  439. package/dist/run-chrome-profile/Default/Code Cache/js/d937344ea2b7594c_0 +0 -0
  440. package/dist/run-chrome-profile/Default/Code Cache/js/d940278e5f96accf_0 +0 -0
  441. package/dist/run-chrome-profile/Default/Code Cache/js/da3c5e63acc55a1a_0 +0 -0
  442. package/dist/run-chrome-profile/Default/Code Cache/js/dc554173816e2efa_0 +0 -0
  443. package/dist/run-chrome-profile/Default/Code Cache/js/df3aa55e9307b45f_0 +0 -0
  444. package/dist/run-chrome-profile/Default/Code Cache/js/dfc11db9d46df5ba_0 +0 -0
  445. package/dist/run-chrome-profile/Default/Code Cache/js/e1435a1865ecedae_0 +0 -0
  446. package/dist/run-chrome-profile/Default/Code Cache/js/e31530cec304a404_0 +0 -0
  447. package/dist/run-chrome-profile/Default/Code Cache/js/e33daedd21139ecc_0 +0 -0
  448. package/dist/run-chrome-profile/Default/Code Cache/js/e4edf78da6eaa60e_0 +0 -0
  449. package/dist/run-chrome-profile/Default/Code Cache/js/e8722b18284f4948_0 +0 -0
  450. package/dist/run-chrome-profile/Default/Code Cache/js/e996d4908fc9eddc_0 +0 -0
  451. package/dist/run-chrome-profile/Default/Code Cache/js/ea07a4124a78f607_0 +0 -0
  452. package/dist/run-chrome-profile/Default/Code Cache/js/ec37c546ab418243_0 +0 -0
  453. package/dist/run-chrome-profile/Default/Code Cache/js/ec49992c5af23576_0 +0 -0
  454. package/dist/run-chrome-profile/Default/Code Cache/js/edd06e56c34fb45d_0 +0 -0
  455. package/dist/run-chrome-profile/Default/Code Cache/js/ee3d82897aa18dd9_0 +0 -0
  456. package/dist/run-chrome-profile/Default/Code Cache/js/efe99f8bb27b1a24_0 +0 -0
  457. package/dist/run-chrome-profile/Default/Code Cache/js/f095a355a9c0aeec_0 +0 -0
  458. package/dist/run-chrome-profile/Default/Code Cache/js/f0af7d091686cd47_0 +0 -0
  459. package/dist/run-chrome-profile/Default/Code Cache/js/f0fb36808acb280b_0 +0 -0
  460. package/dist/run-chrome-profile/Default/Code Cache/js/f12f9895bc582276_0 +0 -0
  461. package/dist/run-chrome-profile/Default/Code Cache/js/f3ec100e27a848ed_0 +0 -0
  462. package/dist/run-chrome-profile/Default/Code Cache/js/f3f96b9eb16b5d00_0 +0 -0
  463. package/dist/run-chrome-profile/Default/Code Cache/js/f452dc87766feb5d_0 +0 -0
  464. package/dist/run-chrome-profile/Default/Code Cache/js/f73bfa92f9ab6770_0 +0 -0
  465. package/dist/run-chrome-profile/Default/Code Cache/js/f83e4dafeeaf8ca0_0 +0 -0
  466. package/dist/run-chrome-profile/Default/Code Cache/js/fda485e809bde5af_0 +0 -0
  467. package/dist/run-chrome-profile/Default/Code Cache/js/fe31025f4dfff4ca_0 +0 -0
  468. package/dist/run-chrome-profile/Default/Code Cache/js/index +0 -0
  469. package/dist/run-chrome-profile/Default/Code Cache/js/index-dir/the-real-index +0 -0
  470. package/dist/run-chrome-profile/Default/Code Cache/wasm/index +0 -0
  471. package/dist/run-chrome-profile/Default/Code Cache/wasm/index-dir/the-real-index +0 -0
  472. package/dist/run-chrome-profile/Default/Cookies +0 -0
  473. package/dist/run-chrome-profile/Default/Cookies-journal +0 -0
  474. package/dist/run-chrome-profile/Default/DIPS +0 -0
  475. package/dist/run-chrome-profile/Default/DIPS-journal +0 -0
  476. package/dist/run-chrome-profile/Default/DawnGraphiteCache/data_0 +0 -0
  477. package/dist/run-chrome-profile/Default/DawnGraphiteCache/data_1 +0 -0
  478. package/dist/run-chrome-profile/Default/DawnGraphiteCache/data_2 +0 -0
  479. package/dist/run-chrome-profile/Default/DawnGraphiteCache/data_3 +0 -0
  480. package/dist/run-chrome-profile/Default/DawnGraphiteCache/index +0 -0
  481. package/dist/run-chrome-profile/Default/DawnWebGPUCache/data_0 +0 -0
  482. package/dist/run-chrome-profile/Default/DawnWebGPUCache/data_1 +0 -0
  483. package/dist/run-chrome-profile/Default/DawnWebGPUCache/data_2 +0 -0
  484. package/dist/run-chrome-profile/Default/DawnWebGPUCache/data_3 +0 -0
  485. package/dist/run-chrome-profile/Default/DawnWebGPUCache/index +0 -0
  486. package/dist/run-chrome-profile/Default/Download Service/EntryDB/LOCK +0 -0
  487. package/dist/run-chrome-profile/Default/Download Service/EntryDB/LOG +0 -0
  488. package/dist/run-chrome-profile/Default/Download Service/EntryDB/LOG.old +0 -0
  489. package/dist/run-chrome-profile/Default/Extension Cookies +0 -0
  490. package/dist/run-chrome-profile/Default/Extension Cookies-journal +0 -0
  491. package/dist/run-chrome-profile/Default/Extension Rules/000003.log +0 -0
  492. package/dist/run-chrome-profile/Default/Extension Rules/CURRENT +1 -0
  493. package/dist/run-chrome-profile/Default/Extension Rules/LOCK +0 -0
  494. package/dist/run-chrome-profile/Default/Extension Rules/LOG +3 -0
  495. package/dist/run-chrome-profile/Default/Extension Rules/LOG.old +3 -0
  496. package/dist/run-chrome-profile/Default/Extension Rules/MANIFEST-000001 +0 -0
  497. package/dist/run-chrome-profile/Default/Extension Scripts/000003.log +0 -0
  498. package/dist/run-chrome-profile/Default/Extension Scripts/CURRENT +1 -0
  499. package/dist/run-chrome-profile/Default/Extension Scripts/LOCK +0 -0
  500. package/dist/run-chrome-profile/Default/Extension Scripts/LOG +3 -0
  501. package/dist/run-chrome-profile/Default/Extension Scripts/LOG.old +3 -0
  502. package/dist/run-chrome-profile/Default/Extension Scripts/MANIFEST-000001 +0 -0
  503. package/dist/run-chrome-profile/Default/Extension State/000003.log +0 -0
  504. package/dist/run-chrome-profile/Default/Extension State/CURRENT +1 -0
  505. package/dist/run-chrome-profile/Default/Extension State/LOCK +0 -0
  506. package/dist/run-chrome-profile/Default/Extension State/LOG +3 -0
  507. package/dist/run-chrome-profile/Default/Extension State/LOG.old +3 -0
  508. package/dist/run-chrome-profile/Default/Extension State/MANIFEST-000001 +0 -0
  509. package/dist/run-chrome-profile/Default/Favicons +0 -0
  510. package/dist/run-chrome-profile/Default/Favicons-journal +0 -0
  511. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/AvailabilityDB/LOCK +0 -0
  512. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/AvailabilityDB/LOG +0 -0
  513. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/AvailabilityDB/LOG.old +0 -0
  514. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/EventDB/LOCK +0 -0
  515. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/EventDB/LOG +0 -0
  516. package/dist/run-chrome-profile/Default/Feature Engagement Tracker/EventDB/LOG.old +0 -0
  517. package/dist/run-chrome-profile/Default/GPUCache/data_0 +0 -0
  518. package/dist/run-chrome-profile/Default/GPUCache/data_1 +0 -0
  519. package/dist/run-chrome-profile/Default/GPUCache/data_2 +0 -0
  520. package/dist/run-chrome-profile/Default/GPUCache/data_3 +0 -0
  521. package/dist/run-chrome-profile/Default/GPUCache/index +0 -0
  522. package/dist/run-chrome-profile/Default/History +0 -0
  523. package/dist/run-chrome-profile/Default/History-journal +0 -0
  524. package/dist/run-chrome-profile/Default/InterestGroups +0 -0
  525. package/dist/run-chrome-profile/Default/LOCK +0 -0
  526. package/dist/run-chrome-profile/Default/LOG +0 -0
  527. package/dist/run-chrome-profile/Default/LOG.old +0 -0
  528. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/000003.log +0 -0
  529. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/CURRENT +1 -0
  530. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/LOCK +0 -0
  531. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/LOG +3 -0
  532. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/LOG.old +3 -0
  533. package/dist/run-chrome-profile/Default/Local Extension Settings/pbpgonifamlpcahjkkkfelffkegofkgg/MANIFEST-000001 +0 -0
  534. package/dist/run-chrome-profile/Default/Local Storage/leveldb/000005.ldb +0 -0
  535. package/dist/run-chrome-profile/Default/Local Storage/leveldb/000007.ldb +0 -0
  536. package/dist/run-chrome-profile/Default/Local Storage/leveldb/000009.ldb +0 -0
  537. package/dist/run-chrome-profile/Default/Local Storage/leveldb/000010.log +0 -0
  538. package/dist/run-chrome-profile/Default/Local Storage/leveldb/000011.ldb +0 -0
  539. package/dist/run-chrome-profile/Default/Local Storage/leveldb/CURRENT +1 -0
  540. package/dist/run-chrome-profile/Default/Local Storage/leveldb/LOCK +0 -0
  541. package/dist/run-chrome-profile/Default/Local Storage/leveldb/LOG +3 -0
  542. package/dist/run-chrome-profile/Default/Local Storage/leveldb/LOG.old +3 -0
  543. package/dist/run-chrome-profile/Default/Local Storage/leveldb/MANIFEST-000001 +0 -0
  544. package/dist/run-chrome-profile/Default/Login Data +0 -0
  545. package/dist/run-chrome-profile/Default/Login Data For Account +0 -0
  546. package/dist/run-chrome-profile/Default/Login Data For Account-journal +0 -0
  547. package/dist/run-chrome-profile/Default/Login Data-journal +0 -0
  548. package/dist/run-chrome-profile/Default/Network Action Predictor +0 -0
  549. package/dist/run-chrome-profile/Default/Network Action Predictor-journal +0 -0
  550. package/dist/run-chrome-profile/Default/Network Persistent State +1 -0
  551. package/dist/run-chrome-profile/Default/PersistentOriginTrials/LOCK +0 -0
  552. package/dist/run-chrome-profile/Default/PersistentOriginTrials/LOG +0 -0
  553. package/dist/run-chrome-profile/Default/PersistentOriginTrials/LOG.old +0 -0
  554. package/dist/run-chrome-profile/Default/Platform Notifications/000003.log +0 -0
  555. package/dist/run-chrome-profile/Default/Platform Notifications/CURRENT +1 -0
  556. package/dist/run-chrome-profile/Default/Platform Notifications/LOCK +0 -0
  557. package/dist/run-chrome-profile/Default/Platform Notifications/LOG +3 -0
  558. package/dist/run-chrome-profile/Default/Platform Notifications/LOG.old +3 -0
  559. package/dist/run-chrome-profile/Default/Platform Notifications/MANIFEST-000001 +0 -0
  560. package/dist/run-chrome-profile/Default/Preferences +1 -0
  561. package/dist/run-chrome-profile/Default/PreferredApps +1 -0
  562. package/dist/run-chrome-profile/Default/PrivateAggregation +0 -0
  563. package/dist/run-chrome-profile/Default/PrivateAggregation-journal +0 -0
  564. package/dist/run-chrome-profile/Default/README +1 -0
  565. NEL +0 -0
  566. package/dist/run-chrome-profile/Default/Reporting and NEL-journal +0 -0
  567. package/dist/run-chrome-profile/Default/Safe Browsing Cookies +0 -0
  568. package/dist/run-chrome-profile/Default/Safe Browsing Cookies-journal +0 -0
  569. package/dist/run-chrome-profile/Default/Secure Preferences +1 -0
  570. package/dist/run-chrome-profile/Default/Segmentation Platform/SegmentInfoDB/LOCK +0 -0
  571. package/dist/run-chrome-profile/Default/Segmentation Platform/SegmentInfoDB/LOG +0 -0
  572. package/dist/run-chrome-profile/Default/Segmentation Platform/SegmentInfoDB/LOG.old +0 -0
  573. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalDB/LOCK +0 -0
  574. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalDB/LOG +0 -0
  575. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalDB/LOG.old +0 -0
  576. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalStorageConfigDB/LOCK +0 -0
  577. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalStorageConfigDB/LOG +0 -0
  578. package/dist/run-chrome-profile/Default/Segmentation Platform/SignalStorageConfigDB/LOG.old +0 -0
  579. package/dist/run-chrome-profile/Default/Service Worker/Database/000003.log +0 -0
  580. package/dist/run-chrome-profile/Default/Service Worker/Database/CURRENT +1 -0
  581. package/dist/run-chrome-profile/Default/Service Worker/Database/LOCK +0 -0
  582. package/dist/run-chrome-profile/Default/Service Worker/Database/LOG +3 -0
  583. package/dist/run-chrome-profile/Default/Service Worker/Database/LOG.old +3 -0
  584. package/dist/run-chrome-profile/Default/Service Worker/Database/MANIFEST-000001 +0 -0
  585. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/013888a1cda32b90_0 +0 -0
  586. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/013888a1cda32b90_1 +0 -0
  587. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/035aa9dff41235ca_0 +0 -0
  588. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/035aa9dff41235ca_1 +0 -0
  589. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/2687cdb408524ecb_0 +0 -0
  590. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/2687cdb408524ecb_1 +0 -0
  591. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/2beb0213504d07fc_0 +0 -0
  592. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/2beb0213504d07fc_1 +0 -0
  593. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/3ef2ebed6c12e1f6_0 +0 -0
  594. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/3ef2ebed6c12e1f6_1 +0 -0
  595. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/4cb013792b196a35_0 +0 -0
  596. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/83efbe48d0097388_0 +0 -0
  597. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/83efbe48d0097388_1 +0 -0
  598. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/8a729281c4672a97_0 +0 -0
  599. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/8a729281c4672a97_1 +0 -0
  600. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/91baa182c7a11977_0 +0 -0
  601. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/91baa182c7a11977_1 +0 -0
  602. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/ad0c92dfa52e69b6_0 +0 -0
  603. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/ad0c92dfa52e69b6_1 +0 -0
  604. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/b2efa64ecb36f8f1_0 +0 -0
  605. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/b2efa64ecb36f8f1_1 +0 -0
  606. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/b3bd0d67f800d222_0 +0 -0
  607. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/b3bd0d67f800d222_1 +0 -0
  608. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/ba23d8ecda68de77_0 +0 -0
  609. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/ce2a2172c04b134d_0 +0 -0
  610. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/d10f805e771d7acb_0 +0 -0
  611. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/d10f805e771d7acb_1 +0 -0
  612. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/e0d37c7e54672663_0 +0 -0
  613. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/e0d37c7e54672663_1 +0 -0
  614. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/f0de8c2de34c385b_0 +0 -0
  615. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/f0de8c2de34c385b_1 +0 -0
  616. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/f1cdccba37924bda_0 +0 -0
  617. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/index +0 -0
  618. package/dist/run-chrome-profile/Default/Service Worker/ScriptCache/index-dir/the-real-index +0 -0
  619. package/dist/run-chrome-profile/Default/Session Storage/000003.log +0 -0
  620. package/dist/run-chrome-profile/Default/Session Storage/CURRENT +1 -0
  621. package/dist/run-chrome-profile/Default/Session Storage/LOCK +0 -0
  622. package/dist/run-chrome-profile/Default/Session Storage/LOG +3 -0
  623. package/dist/run-chrome-profile/Default/Session Storage/LOG.old +3 -0
  624. package/dist/run-chrome-profile/Default/Session Storage/MANIFEST-000001 +0 -0
  625. package/dist/run-chrome-profile/Default/Sessions/Session_13371252366754025 +0 -0
  626. package/dist/run-chrome-profile/Default/Sessions/Session_13371253422493018 +0 -0
  627. package/dist/run-chrome-profile/Default/Sessions/Tabs_13371252367318580 +0 -0
  628. package/dist/run-chrome-profile/Default/Sessions/Tabs_13371253423075772 +0 -0
  629. package/dist/run-chrome-profile/Default/Shared Dictionary/cache/index +0 -0
  630. package/dist/run-chrome-profile/Default/Shared Dictionary/cache/index-dir/the-real-index +0 -0
  631. package/dist/run-chrome-profile/Default/Shared Dictionary/db +0 -0
  632. package/dist/run-chrome-profile/Default/Shared Dictionary/db-journal +0 -0
  633. package/dist/run-chrome-profile/Default/SharedStorage +0 -0
  634. package/dist/run-chrome-profile/Default/Shortcuts +0 -0
  635. package/dist/run-chrome-profile/Default/Shortcuts-journal +0 -0
  636. package/dist/run-chrome-profile/Default/Site Characteristics Database/000003.log +0 -0
  637. package/dist/run-chrome-profile/Default/Site Characteristics Database/CURRENT +1 -0
  638. package/dist/run-chrome-profile/Default/Site Characteristics Database/LOCK +0 -0
  639. package/dist/run-chrome-profile/Default/Site Characteristics Database/LOG +3 -0
  640. package/dist/run-chrome-profile/Default/Site Characteristics Database/LOG.old +3 -0
  641. package/dist/run-chrome-profile/Default/Site Characteristics Database/MANIFEST-000001 +0 -0
  642. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/000003.log +0 -0
  643. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/CURRENT +1 -0
  644. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/LOCK +0 -0
  645. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/LOG +3 -0
  646. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/LOG.old +3 -0
  647. package/dist/run-chrome-profile/Default/Sync Data/LevelDB/MANIFEST-000001 +0 -0
  648. package/dist/run-chrome-profile/Default/Top Sites +0 -0
  649. package/dist/run-chrome-profile/Default/Top Sites-journal +0 -0
  650. package/dist/run-chrome-profile/Default/TransportSecurity +1 -0
  651. package/dist/run-chrome-profile/Default/Trust Tokens +0 -0
  652. package/dist/run-chrome-profile/Default/Trust Tokens-journal +0 -0
  653. package/dist/run-chrome-profile/Default/Visited Links +0 -0
  654. package/dist/run-chrome-profile/Default/Web Data +0 -0
  655. package/dist/run-chrome-profile/Default/Web Data-journal +0 -0
  656. package/dist/run-chrome-profile/Default/WebStorage/5/CacheStorage/index.txt +1 -0
  657. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/000003.log +0 -0
  658. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/CURRENT +1 -0
  659. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/LOCK +0 -0
  660. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/LOG +3 -0
  661. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/LOG.old +2 -0
  662. package/dist/run-chrome-profile/Default/WebStorage/5/IndexedDB/indexeddb.leveldb/MANIFEST-000001 +0 -0
  663. package/dist/run-chrome-profile/Default/WebStorage/QuotaManager +0 -0
  664. package/dist/run-chrome-profile/Default/WebStorage/QuotaManager-journal +0 -0
  665. package/dist/run-chrome-profile/Default/chrome_cart_db/LOCK +0 -0
  666. package/dist/run-chrome-profile/Default/chrome_cart_db/LOG +0 -0
  667. package/dist/run-chrome-profile/Default/chrome_cart_db/LOG.old +0 -0
  668. package/dist/run-chrome-profile/Default/commerce_subscription_db/LOCK +0 -0
  669. package/dist/run-chrome-profile/Default/commerce_subscription_db/LOG +0 -0
  670. package/dist/run-chrome-profile/Default/commerce_subscription_db/LOG.old +0 -0
  671. package/dist/run-chrome-profile/Default/coupon_db/LOCK +0 -0
  672. package/dist/run-chrome-profile/Default/coupon_db/LOG +0 -0
  673. package/dist/run-chrome-profile/Default/coupon_db/LOG.old +0 -0
  674. package/dist/run-chrome-profile/Default/discounts_db/LOCK +0 -0
  675. package/dist/run-chrome-profile/Default/discounts_db/LOG +0 -0
  676. package/dist/run-chrome-profile/Default/discounts_db/LOG.old +0 -0
  677. package/dist/run-chrome-profile/Default/heavy_ad_intervention_opt_out.db +0 -0
  678. package/dist/run-chrome-profile/Default/heavy_ad_intervention_opt_out.db-journal +0 -0
  679. package/dist/run-chrome-profile/Default/optimization_guide_hint_cache_store/LOCK +0 -0
  680. package/dist/run-chrome-profile/Default/optimization_guide_hint_cache_store/LOG +0 -0
  681. package/dist/run-chrome-profile/Default/optimization_guide_hint_cache_store/LOG.old +0 -0
  682. package/dist/run-chrome-profile/Default/parcel_tracking_db/LOCK +0 -0
  683. package/dist/run-chrome-profile/Default/parcel_tracking_db/LOG +0 -0
  684. package/dist/run-chrome-profile/Default/parcel_tracking_db/LOG.old +0 -0
  685. package/dist/run-chrome-profile/Default/shared_proto_db/000003.log +0 -0
  686. package/dist/run-chrome-profile/Default/shared_proto_db/CURRENT +1 -0
  687. package/dist/run-chrome-profile/Default/shared_proto_db/LOCK +0 -0
  688. package/dist/run-chrome-profile/Default/shared_proto_db/LOG +3 -0
  689. package/dist/run-chrome-profile/Default/shared_proto_db/LOG.old +3 -0
  690. package/dist/run-chrome-profile/Default/shared_proto_db/MANIFEST-000001 +0 -0
  691. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/000003.log +0 -0
  692. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/CURRENT +1 -0
  693. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/LOCK +0 -0
  694. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/LOG +3 -0
  695. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/LOG.old +3 -0
  696. package/dist/run-chrome-profile/Default/shared_proto_db/metadata/MANIFEST-000001 +0 -0
  697. package/dist/run-chrome-profile/Default/trusted_vault.pb +2 -0
  698. package/dist/run-chrome-profile/GrShaderCache/data_0 +0 -0
  699. package/dist/run-chrome-profile/GrShaderCache/data_1 +0 -0
  700. package/dist/run-chrome-profile/GrShaderCache/data_2 +0 -0
  701. package/dist/run-chrome-profile/GrShaderCache/data_3 +0 -0
  702. package/dist/run-chrome-profile/GrShaderCache/index +0 -0
  703. package/dist/run-chrome-profile/GraphiteDawnCache/data_0 +0 -0
  704. package/dist/run-chrome-profile/GraphiteDawnCache/data_1 +0 -0
  705. package/dist/run-chrome-profile/GraphiteDawnCache/data_2 +0 -0
  706. package/dist/run-chrome-profile/GraphiteDawnCache/data_3 +0 -0
  707. package/dist/run-chrome-profile/GraphiteDawnCache/index +0 -0
  708. package/dist/run-chrome-profile/Last Version +1 -0
  709. package/dist/run-chrome-profile/Local State +1 -0
  710. package/dist/run-chrome-profile/ShaderCache/data_0 +0 -0
  711. package/dist/run-chrome-profile/ShaderCache/data_1 +0 -0
  712. package/dist/run-chrome-profile/ShaderCache/data_2 +0 -0
  713. package/dist/run-chrome-profile/ShaderCache/data_3 +0 -0
  714. package/dist/run-chrome-profile/ShaderCache/index +0 -0
  715. package/dist/run-chrome-profile/Variations +1 -0
  716. package/dist/run-chrome-profile/first_party_sets.db +0 -0
  717. package/dist/run-chrome-profile/first_party_sets.db-journal +0 -0
  718. package/dist/run-chrome-profile/optimization_guide_model_store/13/E6DC4029A1E4B4C1/61BA0ABB7802C2E7/model-info.pb +1 -0
  719. package/dist/run-chrome-profile/optimization_guide_model_store/13/E6DC4029A1E4B4C1/61BA0ABB7802C2E7/model.tflite +0 -0
  720. package/dist/run-chrome-profile/optimization_guide_model_store/15/E6DC4029A1E4B4C1/0A6638F88CCBF6F0/VERSION.txt +4 -0
  721. package/dist/run-chrome-profile/optimization_guide_model_store/15/E6DC4029A1E4B4C1/0A6638F88CCBF6F0/model-info.pb +0 -0
  722. package/dist/run-chrome-profile/optimization_guide_model_store/15/E6DC4029A1E4B4C1/0A6638F88CCBF6F0/model.tflite +0 -0
  723. package/dist/run-chrome-profile/optimization_guide_model_store/15/E6DC4029A1E4B4C1/0A6638F88CCBF6F0/override_list.pb.gz +0 -0
  724. package/dist/run-chrome-profile/optimization_guide_model_store/2/E6DC4029A1E4B4C1/7C15A1D972847D7B/model-info.pb +1 -0
  725. package/dist/run-chrome-profile/optimization_guide_model_store/2/E6DC4029A1E4B4C1/7C15A1D972847D7B/model.tflite +0 -0
  726. package/dist/run-chrome-profile/optimization_guide_model_store/20/E6DC4029A1E4B4C1/73D5A3B163A72B1C/model-info.pb +0 -0
  727. package/dist/run-chrome-profile/optimization_guide_model_store/20/E6DC4029A1E4B4C1/73D5A3B163A72B1C/model.tflite +0 -0
  728. package/dist/run-chrome-profile/optimization_guide_model_store/25/E6DC4029A1E4B4C1/EF2E4DF89E6A0EBB/model-info.pb +0 -0
  729. package/dist/run-chrome-profile/optimization_guide_model_store/25/E6DC4029A1E4B4C1/EF2E4DF89E6A0EBB/model.tflite +0 -0
  730. package/dist/run-chrome-profile/optimization_guide_model_store/25/E6DC4029A1E4B4C1/EF2E4DF89E6A0EBB/visual_model_desktop.tflite +0 -0
  731. package/dist/run-chrome-profile/optimization_guide_model_store/26/E6DC4029A1E4B4C1/51D9455048EE2D15/model-info.pb +0 -0
  732. package/dist/run-chrome-profile/optimization_guide_model_store/26/E6DC4029A1E4B4C1/51D9455048EE2D15/model.tflite +0 -0
  733. package/dist/run-chrome-profile/optimization_guide_model_store/31/E6DC4029A1E4B4C1/1455A40D3303C554/model-info.pb +3 -0
  734. package/dist/run-chrome-profile/optimization_guide_model_store/31/E6DC4029A1E4B4C1/1455A40D3303C554/model.tflite +0 -0
  735. package/dist/run-chrome-profile/optimization_guide_model_store/32/E6DC4029A1E4B4C1/26577408D35684E1/model-info.pb +0 -0
  736. package/dist/run-chrome-profile/optimization_guide_model_store/32/E6DC4029A1E4B4C1/26577408D35684E1/model.tflite +0 -0
  737. package/dist/run-chrome-profile/optimization_guide_model_store/34/E6DC4029A1E4B4C1/4E4B468E9E945EAE/model-info.pb +0 -0
  738. package/dist/run-chrome-profile/optimization_guide_model_store/34/E6DC4029A1E4B4C1/4E4B468E9E945EAE/model.tflite +0 -0
  739. package/dist/run-chrome-profile/optimization_guide_model_store/40/E6DC4029A1E4B4C1/0CE717A1AF9A6800/model-info.pb +0 -0
  740. package/dist/run-chrome-profile/optimization_guide_model_store/40/E6DC4029A1E4B4C1/0CE717A1AF9A6800/model.tflite +0 -0
  741. package/dist/run-chrome-profile/optimization_guide_model_store/40/E6DC4029A1E4B4C1/0CE717A1AF9A6800/ts.bin +0 -0
  742. package/dist/run-chrome-profile/optimization_guide_model_store/40/E6DC4029A1E4B4C1/0CE717A1AF9A6800/ts_spm.model +0 -0
  743. package/dist/run-chrome-profile/optimization_guide_model_store/9/E6DC4029A1E4B4C1/32A519A2BA3C9A95/model-info.pb +0 -0
  744. package/dist/run-chrome-profile/optimization_guide_model_store/9/E6DC4029A1E4B4C1/32A519A2BA3C9A95/model.tflite +0 -0
  745. package/dist/run-chrome-profile/segmentation_platform/ukm_db +0 -0
  746. package/dist/run-chrome-profile/segmentation_platform/ukm_db-journal +0 -0
  747. package/dist/run-firefox-profile/.parentlock +0 -0
  748. package/dist/run-firefox-profile/AlternateServices.bin +0 -0
  749. package/dist/run-firefox-profile/ExperimentStoreData.json +1 -0
  750. package/dist/run-firefox-profile/SiteSecurityServiceState.bin +0 -0
  751. package/dist/run-firefox-profile/Telemetry.FailedProfileLocks.txt +1 -0
  752. package/dist/run-firefox-profile/activity-stream.discovery_stream.json +1 -0
  753. package/dist/run-firefox-profile/activity-stream.weather_feed.json +1 -0
  754. package/dist/run-firefox-profile/addonStartup.json.lz4 +0 -0
  755. package/dist/run-firefox-profile/bounce-tracking-protection.sqlite +0 -0
  756. package/dist/run-firefox-profile/cache2/entries/03B28597931701944586FC6592FFCFCCB8A04FD1 +0 -0
  757. package/dist/run-firefox-profile/cache2/entries/067E49BCF1172F09FE7CF9AE578DBEE3C45871AB +0 -0
  758. package/dist/run-firefox-profile/cache2/entries/067ED76288E3F58ACCEE8D4ADF31A680DA1C07DB +0 -0
  759. package/dist/run-firefox-profile/cache2/entries/075B8FCF1E4761117058C2EFF149858F93A6A354 +0 -0
  760. package/dist/run-firefox-profile/cache2/entries/0942FBC7C006D7230D71D2C80EDB52F8B43BF0BF +0 -0
  761. package/dist/run-firefox-profile/cache2/entries/0A4DDCC11CEBCDAD66490C2477115E613EE22753 +0 -0
  762. package/dist/run-firefox-profile/cache2/entries/0BABF52A64DC7B1FCCDD563D131A086B80FE77E0 +0 -0
  763. package/dist/run-firefox-profile/cache2/entries/0E63146B7AE2C96E224785D97A4821913BF16431 +0 -0
  764. package/dist/run-firefox-profile/cache2/entries/111AE63D71402EFB02DAB8AC254CA509866314D5 +32 -0
  765. package/dist/run-firefox-profile/cache2/entries/1695F17623E02BFF1585C04EF63BBCD520D53F6F +0 -0
  766. package/dist/run-firefox-profile/cache2/entries/1B1430616EBCD22207272AA0334FC6FA9F0127F2 +0 -0
  767. package/dist/run-firefox-profile/cache2/entries/1C8C54682B3709CAC523039982C1103B7620A376 +0 -0
  768. package/dist/run-firefox-profile/cache2/entries/1CA100D2C0D96E081CACE16236BB9EA0F817F35D +32 -0
  769. package/dist/run-firefox-profile/cache2/entries/1E3B5A60EC7EEF66E5839B55BBFAA66405FACF63 +0 -0
  770. package/dist/run-firefox-profile/cache2/entries/20B5ACDB474CCE7AB0E7EEC6F572189484F1A417 +0 -0
  771. package/dist/run-firefox-profile/cache2/entries/242B553C0EF9076E4747A5D20CB4D2C4DB1EB166 +0 -0
  772. package/dist/run-firefox-profile/cache2/entries/24C9DF0972DD334A2DC66C223393C392A8C4BEF3 +0 -0
  773. package/dist/run-firefox-profile/cache2/entries/2D53A5D42EA372B08E3949AC6C1655A00F3890A7 +0 -0
  774. package/dist/run-firefox-profile/cache2/entries/3272966242EC429D46D582B367D23D5BC396D122 +0 -0
  775. package/dist/run-firefox-profile/cache2/entries/3C54EE8A350C19005F77D9776DD64C589CD9C57E +0 -0
  776. package/dist/run-firefox-profile/cache2/entries/3DB6736909A2F89E43DFA8063B2372354D72B24B +0 -0
  777. package/dist/run-firefox-profile/cache2/entries/3EBBA1D9C62B89E86596A8C5DA201C7FE0C417FA +0 -0
  778. package/dist/run-firefox-profile/cache2/entries/428367D334794723BEDE8210230468F5A9EEC8EE +0 -0
  779. package/dist/run-firefox-profile/cache2/entries/45C17310973D872931CC8A321AA697A4E55267F6 +0 -0
  780. package/dist/run-firefox-profile/cache2/entries/4636F4942A3E13544450D9055DE0EF42610F9DF6 +35 -0
  781. package/dist/run-firefox-profile/cache2/entries/494C18A3D5B62B81A3CBF7E102F67988CC487B6D +0 -0
  782. package/dist/run-firefox-profile/cache2/entries/4A687AD708E11DA096009AA65F53BFBA62350E50 +323 -0
  783. package/dist/run-firefox-profile/cache2/entries/4E4E83E55B1A4B0D2BFF626B358728493FA11AE5 +32 -0
  784. package/dist/run-firefox-profile/cache2/entries/541D6315FD6E7A2FC9F4F2DB12F541CE2C439CDD +0 -0
  785. package/dist/run-firefox-profile/cache2/entries/544D446B0B9F380E77D0D554565F792673733666 +0 -0
  786. package/dist/run-firefox-profile/cache2/entries/55E8F10103AE063A702148A1294F3086A092A97D +0 -0
  787. package/dist/run-firefox-profile/cache2/entries/5D695B91010D59055BBCDDE06918E5A165C02BB5 +0 -0
  788. package/dist/run-firefox-profile/cache2/entries/63F48F4F7F1BC3195F5AB831F9794F3DBA2D30E1 +0 -0
  789. package/dist/run-firefox-profile/cache2/entries/6443307F99252BCAC4F22D240D223F607B1F8075 +0 -0
  790. package/dist/run-firefox-profile/cache2/entries/64C29A1655642D7659E8E2BEF96519E8F26F8EB4 +32 -0
  791. package/dist/run-firefox-profile/cache2/entries/6750F7FED58DEE2FBD9AD5E167BAACA39BF1B64B +32 -0
  792. package/dist/run-firefox-profile/cache2/entries/68F282C52804CBCC10242CAC57B7EDDC8C4CA3F5 +0 -0
  793. package/dist/run-firefox-profile/cache2/entries/6997A5A398A8836E997120150B41B0DFCEE41ED6 +0 -0
  794. package/dist/run-firefox-profile/cache2/entries/6BDB2593C67D76AF0E7C6A2AC9F5E4C984B1E09C +0 -0
  795. package/dist/run-firefox-profile/cache2/entries/6D89348819C8881868053197CA0754F36784BF5F +0 -0
  796. package/dist/run-firefox-profile/cache2/entries/6E27E780C7544AA7F2AAF8FB2EC13F8B8C56549B +0 -0
  797. package/dist/run-firefox-profile/cache2/entries/6EAE9363778299824A68EA021A4CB2D4E7D10010 +0 -0
  798. package/dist/run-firefox-profile/cache2/entries/6FA21C6830504629856068171294A76F2BEDF891 +0 -0
  799. package/dist/run-firefox-profile/cache2/entries/80CAF6A006A97433EA239904C24ABFC551FFDE22 +0 -0
  800. package/dist/run-firefox-profile/cache2/entries/81807C21536FA7CD3DDC5ADADA0BEC610C630C2A +0 -0
  801. package/dist/run-firefox-profile/cache2/entries/8439CA9AE0BD567B61EFF22EF87284C71C277A81 +0 -0
  802. package/dist/run-firefox-profile/cache2/entries/8540EC873F08CBAD5DF5121BD3BABF95624B4A14 +0 -0
  803. package/dist/run-firefox-profile/cache2/entries/8B0017BC433ACF7C7EA6F774D308EC01F4DD8FAE +0 -0
  804. package/dist/run-firefox-profile/cache2/entries/8EAFB55EF4FE176B31E7014FE566BDA5BAED58BD +0 -0
  805. package/dist/run-firefox-profile/cache2/entries/90D2374BBB78FD3C174AA1F0C1882FEAF19B069E +0 -0
  806. package/dist/run-firefox-profile/cache2/entries/91462226DBE9027E7A3421FF6B88992AE30F9501 +0 -0
  807. package/dist/run-firefox-profile/cache2/entries/923C3C0D7E7F5B871931E5414A51844892B92BB7 +0 -0
  808. package/dist/run-firefox-profile/cache2/entries/9691EDB2D7F1CF8CA773126EDA6C5141098261C3 +0 -0
  809. package/dist/run-firefox-profile/cache2/entries/96C52BA3CB99F01D26C9454F1145BB82B188AD3F +0 -0
  810. package/dist/run-firefox-profile/cache2/entries/99E8159CA51C2E952D060F0BE1C702685D6FD241 +0 -0
  811. package/dist/run-firefox-profile/cache2/entries/9ABA548395E26B305BA61603D734E8CE6479BD51 +0 -0
  812. package/dist/run-firefox-profile/cache2/entries/9CCCE05107956CDC4C7E61AE0D423AA80D8FE517 +0 -0
  813. package/dist/run-firefox-profile/cache2/entries/9EC91A904F1439FEE9535BD64BE4A271E029363E +0 -0
  814. package/dist/run-firefox-profile/cache2/entries/9F9A3F039ECAB6F09266AE04D6A8104414F76093 +0 -0
  815. package/dist/run-firefox-profile/cache2/entries/A0C05846E2CE9FF386BF829D157F6574973FAD3C +0 -0
  816. package/dist/run-firefox-profile/cache2/entries/A436421A04F7B908A886722F797B41EE2B4C61D1 +0 -0
  817. package/dist/run-firefox-profile/cache2/entries/A6C7D9A14F03B65AD750D66C969024F80B57F791 +32 -0
  818. package/dist/run-firefox-profile/cache2/entries/A700AB7CFB20F1166A0D22D8EC1F209077B7141E +0 -0
  819. package/dist/run-firefox-profile/cache2/entries/A71470BD30B2C014B2F262E248582904A1F93795 +32 -0
  820. package/dist/run-firefox-profile/cache2/entries/A775779768FE83CB2324C0880A9088C207931993 +0 -0
  821. package/dist/run-firefox-profile/cache2/entries/AE30B96E3A1C6FDE43B69EFEF61B37C3979D4214 +0 -0
  822. package/dist/run-firefox-profile/cache2/entries/AF59DB37ED7B6A98A606819E1318265BE7F81FA6 +0 -0
  823. package/dist/run-firefox-profile/cache2/entries/B0F702A933E6220BA1C7C3E2391E52E630283A0C +0 -0
  824. package/dist/run-firefox-profile/cache2/entries/B274976F35E1A3D756D5CEC45FE57E2BEF822C3D +0 -0
  825. package/dist/run-firefox-profile/cache2/entries/B39FE594B5FCF640910B3CA60FA446E166ABC609 +0 -0
  826. package/dist/run-firefox-profile/cache2/entries/B9E52F08B8ACB4621047668C0DCF7E9310F2A99F +0 -0
  827. package/dist/run-firefox-profile/cache2/entries/BB95D0607349D05725D5FE01D4FB300E319072AD +0 -0
  828. package/dist/run-firefox-profile/cache2/entries/BE55411134E6F98E0936A89E3347F3411D67612D +0 -0
  829. package/dist/run-firefox-profile/cache2/entries/C0024F6CECC698C352CE35A59E2C4B47116F5387 +0 -0
  830. package/dist/run-firefox-profile/cache2/entries/C119A7900E11A429B8F512AFF3B7F4485E1F312C +32 -0
  831. package/dist/run-firefox-profile/cache2/entries/C2E87D5AD1347692F6E647AC64B49B65A67D5CCE +0 -0
  832. package/dist/run-firefox-profile/cache2/entries/C49735627C08AC40EFE5CDE2544F6EAC9C07F6A5 +0 -0
  833. package/dist/run-firefox-profile/cache2/entries/C592BCA7593F383D72DC74C8E62DC1951230C234 +0 -0
  834. package/dist/run-firefox-profile/cache2/entries/C7323537924CDC72CDA8149C08020E045D92ACD1 +0 -0
  835. package/dist/run-firefox-profile/cache2/entries/C93C171CDFCF72234BEC6356BD3F9D8519295C85 +0 -0
  836. package/dist/run-firefox-profile/cache2/entries/CADBBF405AC345499780EFD34AD2411DFB74F618 +0 -0
  837. package/dist/run-firefox-profile/cache2/entries/CB9C18C7F13FACDFA4800A0C74E9610742F5AEF6 +0 -0
  838. package/dist/run-firefox-profile/cache2/entries/CD4063AD344C93CB1DAFC7306CCDDC4F2B272733 +0 -0
  839. package/dist/run-firefox-profile/cache2/entries/D0435B453D27662C6AC03D6322996FFC2E0B6243 +0 -0
  840. package/dist/run-firefox-profile/cache2/entries/DB4EB5509E12459CA0135952A1389FBE382C3334 +0 -0
  841. package/dist/run-firefox-profile/cache2/entries/DB79B0F99DF85BD0944249BA6BF7922D98025803 +0 -0
  842. package/dist/run-firefox-profile/cache2/entries/DCA79A01BB193FDB63B9E7BA8B2EFA865A8BFBA6 +0 -0
  843. package/dist/run-firefox-profile/cache2/entries/DEB46325D4D6EA2FE5F5E424FE800572E7A7CA9F +0 -0
  844. package/dist/run-firefox-profile/cache2/entries/DED672FC0C9F1618408173DCBEFB40D76E8519F5 +0 -0
  845. package/dist/run-firefox-profile/cache2/entries/DF5012515B74963B08E8210D42ACB1E03B89FCD8 +0 -0
  846. package/dist/run-firefox-profile/cache2/entries/DF7055B89AE94FF4E2C6BD1C19C73D0C7B3334FF +32 -0
  847. package/dist/run-firefox-profile/cache2/entries/DFA64071F5BAA21C643CC77683A3A33D12A5A5E1 +0 -0
  848. package/dist/run-firefox-profile/cache2/entries/E0600FF3C285DFEDD495A398052F302E4D1BFECA +0 -0
  849. package/dist/run-firefox-profile/cache2/entries/E2B5F04743F61CB1803C6E98AE59712AB93FAA64 +0 -0
  850. package/dist/run-firefox-profile/cache2/entries/E3C03C205AE34E57F32C59E2218905D6B716875E +0 -0
  851. package/dist/run-firefox-profile/cache2/entries/E63B9FBB56A5C4DCDCE367270A6D6C4F630AF3E4 +0 -0
  852. package/dist/run-firefox-profile/cache2/entries/E75E40975F9E69CA8B334698091428D1B3AD7868 +0 -0
  853. package/dist/run-firefox-profile/cache2/entries/E7805F3D091EF975188A7A835008E8C50B35E138 +0 -0
  854. package/dist/run-firefox-profile/cache2/entries/EA87465A6B977981215042B94E7AB9FECDDEE708 +0 -0
  855. package/dist/run-firefox-profile/cache2/entries/EBA0BDCD29E04DE00DAEC7E9E4DAAA8FC918BE20 +0 -0
  856. package/dist/run-firefox-profile/cache2/entries/ED06A4BC72A152D934B92204CB52421CD40CD24B +0 -0
  857. package/dist/run-firefox-profile/cache2/entries/F18D85F52EBBBA2AB081EF739ED0D6E8A76D497C +0 -0
  858. package/dist/run-firefox-profile/cache2/entries/F277316E1DCE5B764CCD70C516911EA95251C506 +0 -0
  859. package/dist/run-firefox-profile/cache2/entries/F45145FB5BB518399514A86BC300213CAA0F6DB8 +0 -0
  860. package/dist/run-firefox-profile/cache2/entries/FA8CAB209BA7E5A2DBE825BBAFF461356EAED739 +0 -0
  861. package/dist/run-firefox-profile/cache2/entries/FCA72EDB155F4F2A6EFCD2CB4901EE25DE2B4C58 +0 -0
  862. package/dist/run-firefox-profile/cache2/entries/FD61D1AACDDA037787ED2883D03072C1633969C0 +0 -0
  863. package/dist/run-firefox-profile/cert9.db +0 -0
  864. package/dist/run-firefox-profile/compatibility.ini +5 -0
  865. package/dist/run-firefox-profile/containers.json +1 -0
  866. package/dist/run-firefox-profile/content-prefs.sqlite +0 -0
  867. package/dist/run-firefox-profile/cookies.sqlite +0 -0
  868. package/dist/run-firefox-profile/cookies.sqlite-wal +0 -0
  869. package/dist/run-firefox-profile/crashes/store.json.mozlz4 +0 -0
  870. package/dist/run-firefox-profile/datareporting/aborted-session-ping +1 -0
  871. package/dist/run-firefox-profile/datareporting/glean/db/data.safe.bin +0 -0
  872. package/dist/run-firefox-profile/datareporting/glean/events/background-update +1 -0
  873. package/dist/run-firefox-profile/datareporting/glean/events/events +8 -0
  874. package/dist/run-firefox-profile/datareporting/glean/events/pageload +1 -0
  875. package/dist/run-firefox-profile/datareporting/glean/events/prototype-no-code-events +5 -0
  876. package/dist/run-firefox-profile/datareporting/session-state.json +1 -0
  877. package/dist/run-firefox-profile/datareporting/state.json +1 -0
  878. package/dist/run-firefox-profile/extension-preferences.json +1 -0
  879. package/dist/run-firefox-profile/extensions.json +1 -0
  880. package/dist/run-firefox-profile/favicons.sqlite +0 -0
  881. package/dist/run-firefox-profile/favicons.sqlite-wal +0 -0
  882. package/dist/run-firefox-profile/handlers.json +1 -0
  883. package/dist/run-firefox-profile/key4.db +0 -0
  884. package/dist/run-firefox-profile/permissions.sqlite +0 -0
  885. package/dist/run-firefox-profile/pkcs11.txt +5 -0
  886. package/dist/run-firefox-profile/places.sqlite +0 -0
  887. package/dist/run-firefox-profile/places.sqlite-wal +0 -0
  888. package/dist/run-firefox-profile/prefs.js +215 -0
  889. package/dist/run-firefox-profile/protections.sqlite +0 -0
  890. package/dist/run-firefox-profile/safebrowsing/ads-track-digest256.sbstore +0 -0
  891. package/dist/run-firefox-profile/safebrowsing/ads-track-digest256.vlpset +0 -0
  892. package/dist/run-firefox-profile/safebrowsing/analytics-track-digest256.sbstore +0 -0
  893. package/dist/run-firefox-profile/safebrowsing/analytics-track-digest256.vlpset +0 -0
  894. package/dist/run-firefox-profile/safebrowsing/base-cryptomining-track-digest256.sbstore +0 -0
  895. package/dist/run-firefox-profile/safebrowsing/base-cryptomining-track-digest256.vlpset +0 -0
  896. package/dist/run-firefox-profile/safebrowsing/base-email-track-digest256.sbstore +0 -0
  897. package/dist/run-firefox-profile/safebrowsing/base-email-track-digest256.vlpset +0 -0
  898. package/dist/run-firefox-profile/safebrowsing/base-fingerprinting-track-digest256.sbstore +0 -0
  899. package/dist/run-firefox-profile/safebrowsing/base-fingerprinting-track-digest256.vlpset +0 -0
  900. package/dist/run-firefox-profile/safebrowsing/content-email-track-digest256.sbstore +0 -0
  901. package/dist/run-firefox-profile/safebrowsing/content-email-track-digest256.vlpset +0 -0
  902. package/dist/run-firefox-profile/safebrowsing/content-track-digest256.sbstore +0 -0
  903. package/dist/run-firefox-profile/safebrowsing/content-track-digest256.vlpset +0 -0
  904. package/dist/run-firefox-profile/safebrowsing/google-trackwhite-digest256.sbstore +0 -0
  905. package/dist/run-firefox-profile/safebrowsing/google-trackwhite-digest256.vlpset +0 -0
  906. package/dist/run-firefox-profile/safebrowsing/google4/goog-phish-proto.metadata +0 -0
  907. package/dist/run-firefox-profile/safebrowsing/google4/goog-phish-proto.vlpset +0 -0
  908. package/dist/run-firefox-profile/safebrowsing/mozplugin-block-digest256.sbstore +0 -0
  909. package/dist/run-firefox-profile/safebrowsing/mozplugin-block-digest256.vlpset +0 -0
  910. package/dist/run-firefox-profile/safebrowsing/mozstd-trackwhite-digest256.sbstore +0 -0
  911. package/dist/run-firefox-profile/safebrowsing/mozstd-trackwhite-digest256.vlpset +0 -0
  912. package/dist/run-firefox-profile/safebrowsing/social-track-digest256.sbstore +0 -0
  913. package/dist/run-firefox-profile/safebrowsing/social-track-digest256.vlpset +0 -0
  914. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-facebook-digest256.sbstore +0 -0
  915. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-facebook-digest256.vlpset +0 -0
  916. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-linkedin-digest256.sbstore +0 -0
  917. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-linkedin-digest256.vlpset +0 -0
  918. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-twitter-digest256.sbstore +0 -0
  919. package/dist/run-firefox-profile/safebrowsing/social-tracking-protection-twitter-digest256.vlpset +0 -0
  920. package/dist/run-firefox-profile/saved-telemetry-pings/f61f8e06-aad2-44f5-b21c-d2b415a1b60f +1 -0
  921. package/dist/run-firefox-profile/search.json.mozlz4 +0 -0
  922. package/dist/run-firefox-profile/sessionCheckpoints.json +1 -0
  923. package/dist/run-firefox-profile/sessionstore-backups/recovery.baklz4 +0 -0
  924. package/dist/run-firefox-profile/sessionstore-backups/recovery.jsonlz4 +0 -0
  925. package/dist/run-firefox-profile/settings/data.safe.bin +0 -0
  926. package/dist/run-firefox-profile/settings/main/ms-language-packs/browser/newtab/asrouter.ftl +284 -0
  927. package/dist/run-firefox-profile/shield-preference-experiments.json +1 -0
  928. package/dist/run-firefox-profile/startupCache/scriptCache-child.bin +0 -0
  929. package/dist/run-firefox-profile/startupCache/scriptCache.bin +0 -0
  930. package/dist/run-firefox-profile/startupCache/urlCache.bin +0 -0
  931. package/dist/run-firefox-profile/startupCache/webext.sc.lz4 +0 -0
  932. package/dist/run-firefox-profile/storage/default/https+++www.google.com/.metadata-v2 +0 -0
  933. package/dist/run-firefox-profile/storage/default/https+++www.google.com/ls/data.sqlite +0 -0
  934. package/dist/run-firefox-profile/storage/default/https+++www.google.com/ls/usage +0 -0
  935. package/dist/run-firefox-profile/storage/default/moz-extension+++58efc1bd-0fec-4150-89e9-4115883af0cb^userContextId=4294967295/.metadata-v2 +0 -0
  936. package/dist/run-firefox-profile/storage/default/moz-extension+++58efc1bd-0fec-4150-89e9-4115883af0cb^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite +0 -0
  937. package/dist/run-firefox-profile/storage/default/moz-extension+++58efc1bd-0fec-4150-89e9-4115883af0cb^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal +0 -0
  938. package/dist/run-firefox-profile/storage/default/moz-extension+++fbc46b27-bbd5-4d01-98ed-8a65297ddacb^userContextId=4294967295/.metadata-v2 +0 -0
  939. package/dist/run-firefox-profile/storage/default/moz-extension+++fbc46b27-bbd5-4d01-98ed-8a65297ddacb^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite +0 -0
  940. package/dist/run-firefox-profile/storage/default/moz-extension+++fbc46b27-bbd5-4d01-98ed-8a65297ddacb^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal +0 -0
  941. package/dist/run-firefox-profile/storage/ls-archive.sqlite +0 -0
  942. package/dist/run-firefox-profile/storage/permanent/chrome/.metadata-v2 +0 -0
  943. package/dist/run-firefox-profile/storage/permanent/chrome/idb/1451318868ntouromlalnodry--epcr.sqlite +0 -0
  944. package/dist/run-firefox-profile/storage/permanent/chrome/idb/1451318868ntouromlalnodry--epcr.sqlite-wal +0 -0
  945. package/dist/run-firefox-profile/storage/permanent/chrome/idb/1657114595AmcateirvtiSty.sqlite +0 -0
  946. package/dist/run-firefox-profile/storage/permanent/chrome/idb/1657114595AmcateirvtiSty.sqlite-wal +0 -0
  947. package/dist/run-firefox-profile/storage/permanent/chrome/idb/2823318777ntouromlalnodry--naod.sqlite +0 -0
  948. package/dist/run-firefox-profile/storage/permanent/chrome/idb/2823318777ntouromlalnodry--naod.sqlite-wal +0 -0
  949. package/dist/run-firefox-profile/storage/permanent/chrome/idb/2918063365piupsah.sqlite +0 -0
  950. package/dist/run-firefox-profile/storage/permanent/chrome/idb/2918063365piupsah.sqlite-wal +0 -0
  951. package/dist/run-firefox-profile/storage/permanent/chrome/idb/3561288849sdhlie.sqlite +0 -0
  952. package/dist/run-firefox-profile/storage/permanent/chrome/idb/3561288849sdhlie.sqlite-wal +0 -0
  953. package/dist/run-firefox-profile/storage/permanent/chrome/idb/3870112724rsegmnoittet-es.sqlite +0 -0
  954. package/dist/run-firefox-profile/storage/permanent/chrome/idb/3870112724rsegmnoittet-es.sqlite-wal +0 -0
  955. package/dist/run-firefox-profile/storage.sqlite +0 -0
  956. package/dist/run-firefox-profile/targeting.snapshot.json +1 -0
  957. package/dist/run-firefox-profile/times.json +1 -0
  958. package/dist/run-firefox-profile/user.js +85 -0
  959. package/dist/run-firefox-profile/webappsstore.sqlite +0 -0
  960. package/dist/run-firefox-profile/webappsstore.sqlite-wal +0 -0
  961. package/dist/run-firefox-profile/xulstore.json +1 -0
  962. package/package.json +1 -1
  963. /package/dist/extensions/chrome-manager-extension/{public → images}/logo.png +0 -0
  964. /package/dist/extensions/chromium-based-manager-extension/{public → images}/logo.png +0 -0
  965. /package/dist/extensions/edge-manager-extension/{public → images}/logo.png +0 -0
  966. /package/dist/extensions/firefox-manager-extension/{public → images}/logo.png +0 -0
  967. /package/dist/extensions/gecko-based-manager-extension/{public → images}/logo.png +0 -0
package/dist/module.js CHANGED
@@ -1,170 +1,170 @@
1
- "use strict";var Rp=Object.create;var tt=Object.defineProperty;var Np=Object.getOwnPropertyDescriptor;var Tp=Object.getOwnPropertyNames;var qp=Object.getPrototypeOf,Up=Object.prototype.hasOwnProperty;var Wp=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Bp=(t,e)=>{for(var s in e)tt(t,s,{get:e[s],enumerable:!0})},Xr=(t,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Tp(e))!Up.call(t,n)&&n!==s&&tt(t,n,{get:()=>e[n],enumerable:!(r=Np(e,n))||r.enumerable});return t};var a=(t,e,s)=>(s=t!=null?Rp(qp(t)):{},Xr(e||!t||!t.__esModule?tt(s,"default",{value:t,enumerable:!0}):s,t)),Jp=t=>Xr(tt({},"__esModule",{value:!0}),t);var Hs=Wp((Wl,Hp)=>{Hp.exports={license:"MIT",repository:{type:"git",url:"https://github.com/cezaraugusto/extension.git",directory:"programs/develop"},engines:{node:">=18"},name:"extension-develop",version:"2.0.0-alpha.29",description:"The develop step of Extension.js",main:"./dist/module.js",types:"./dist/module.d.ts",files:["dist"],author:{name:"Cezar Augusto",email:"boss@cezaraugusto.net",url:"https://cezaraugusto.com"},scripts:{clean:"rm -rf dist",watch:"tsup-node ./module.ts --format cjs --dts --target=node18 --watch",compile:"tsup-node ./module.ts --format cjs --dts --target=node18 --minify && bash install_scripts.sh",test:"jest --no-cache --testPathPattern='webpack/.*/__spec__/.*\\.spec\\.*'","test:coverage":"jest --no-cache --testPathPattern='webpack/.*/__spec__/.*\\.spec\\.ts' --coverage","test:build":"jest ./build.spec.ts --no-cache"},dependencies:{"@colors/colors":"^1.6.0","@swc/core":"^1.7.3","@types/firefox-webext-browser":"^120.0.4",acorn:"^8.12.1","acorn-walk":"^8.3.3","adm-zip":"^0.5.12",ajv:"^8.17.1",astring:"^1.8.6",axios:"^1.6.8","case-sensitive-paths-webpack-plugin":"^2.4.0",chokidar:"^3.6.0","chrome-location":"^1.2.1","content-security-policy-parser":"^0.6.0","css-loader":"^6.10.0","csv-loader":"^3.0.5",dotenv:"^16.4.5","dotenv-webpack":"^8.0.1","edge-location":"^1.0.0","firefox-profile":"^4.6.0","fx-runner":"^1.4.0","go-git-it":"2.0.4",ignore:"^5.3.1","loader-utils":"^3.3.1",micromatch:"^4.0.7","mini-css-extract-plugin":"^2.8.1","package-manager-detector":"^0.2.0",parse5:"^7.1.2","parse5-utils":"^2.0.0",postcss:"^8.4.45",progress:"^2.0.3","schema-utils":"^4.2.0",slugify:"^1.6.6","style-loader":"^3.3.4","swc-loader":"^0.2.6","tiny-glob":"^0.2.9","vue-template-compiler":"^2.7.16","webextension-polyfill":"^0.12.0",webpack:"~5.92.0","webpack-dev-server":"^5.0.2","webpack-merge":"^6.0.1","webpack-target-webextension":"^1.1.2"},devDependencies:{"@types/adm-zip":"^0.5.5","@types/case-sensitive-paths-webpack-plugin":"^2.1.9","@types/chrome":"^0.0.270","@types/cross-spawn":"^6.0.6","@types/dotenv-webpack":"^7.0.7","@types/jest":"^29.5.12","@types/loader-utils":"^2.0.6","@types/node":"^22.5.3","@types/webextension-polyfill":"^0.10.7","@types/ws":"^8.5.12",jest:"^29.7.0","ts-jest":"^29.1.2",tsup:"^8.0.1",typescript:"5.3.3"},optionalDependencies:{"@pmmmwh/react-refresh-webpack-plugin":"^0.5.15","@prefresh/webpack":"^4.0.1","babel-loader":"^9.1.3","less-loader":"^12.2.0","postcss-flexbugs-fixes":"^5.0.2","postcss-loader":"^8.1.1","postcss-normalize":"^10.0.1","postcss-preset-env":"^9.6.0","postcss-scss":"^4.0.9","react-refresh":"^0.14.2","react-refresh-typescript":"^2.0.9","resolve-url-loader":"^5.0.0","sass-loader":"^16.0.0","vue-loader":"^17.4.2","vue-style-loader":"^4.1.3","vue-template-compiler":"^2.7.16"}}});var Nl={};Bp(Nl,{extensionBuild:()=>yp,extensionDev:()=>$p,extensionPreview:()=>Lp,extensionStart:()=>Ap});module.exports=Jp(Nl);var dp=a(require("fs")),Wr=a(require("path")),gp=a(require("webpack")),hp=require("webpack-merge");var Qe=a(require("path"));var $n=a(require("case-sensitive-paths-webpack-plugin"));var Xs=a(require("fs")),it=a(require("path")),ie=require("webpack"),Zs=a(require("dotenv"));var Vs=a(require("path")),f=require("@colors/colors/safe");var Zr=a(require("path")),st=Zr.default.join(process.cwd(),"node_modules/extension-develop/dist/certs"),Q=["chrome","edge"],zp=["firefox"],ql=[...Q,...zp];function x(t,e){return e==="error"?`${(0,f.bold)((0,f.red)("ERROR"))} in ${t} ${(0,f.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:e==="warn"?`${t} ${(0,f.brightYellow)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:`${e==="info"?(0,f.cyan)("\u25BA\u25BA\u25BA"):(0,f.brightGreen)("\u25BA\u25BA\u25BA")} ${(0,f.cyan)(t)}`}function Yr(t){return t.charAt(0).toUpperCase()+t.slice(1)}function Kr(t,e,s){if(!!1)return`${s.hasErrors()?(0,f.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E"):(0,f.brightGreen)("\u25BA\u25BA\u25BA")} ${(0,f.cyan)(t)} compiled ${s.hasErrors()?(0,f.red)("with errors"):(0,f.brightGreen)("successfully")} in ${e} ms.`}function Qr(t,e,s){return`${x(e,"info")} is using ${e}. Installing required dependencies via ${(0,f.brightYellow)(s)}...`}function en(t){return`${x("env","success")} file loaded ${(0,f.brightGreen)("successfully")}.`}function _(t,e){return`${x(t,"info")} is an ${e}-based extension...`}function F(t,e){return`${x(e,"success")} installation completed. Run the program again and happy hacking.`}function tn(t,e){return`${x(e,"info")} dependencies are being installed. This only happens for core contributors...`}function sn(t,e){return`${x(e,"success")} dependencies installed ${(0,f.brightGreen)("successfully")}.`}function rn(t,e,s){return`${x(t,"error")} ${e} Installation Error
1
+ "use strict";var Ap=Object.create;var Qe=Object.defineProperty;var Rp=Object.getOwnPropertyDescriptor;var Tp=Object.getOwnPropertyNames;var Np=Object.getPrototypeOf,Up=Object.prototype.hasOwnProperty;var qp=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Wp=(t,e)=>{for(var r in e)Qe(t,r,{get:e[r],enumerable:!0})},Js=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Tp(e))!Up.call(t,i)&&i!==r&&Qe(t,i,{get:()=>e[i],enumerable:!(s=Rp(e,i))||s.enumerable});return t};var a=(t,e,r)=>(r=t!=null?Ap(Np(t)):{},Js(e||!t||!t.__esModule?Qe(r,"default",{value:t,enumerable:!0}):r,t)),Bp=t=>Js(Qe({},"__esModule",{value:!0}),t);var Ur=qp((ql,zp)=>{zp.exports={license:"MIT",repository:{type:"git",url:"https://github.com/cezaraugusto/extension.git",directory:"programs/develop"},engines:{node:">=18"},name:"extension-develop",version:"2.0.0-alpha.30",description:"The develop step of Extension.js",main:"./dist/module.js",types:"./dist/module.d.ts",files:["dist"],author:{name:"Cezar Augusto",email:"boss@cezaraugusto.net",url:"https://cezaraugusto.com"},scripts:{clean:"rm -rf dist",watch:"tsup-node ./module.ts --format cjs --dts --target=node18 --watch",compile:"tsup-node ./module.ts --format cjs --dts --target=node18 --minify && bash install_scripts.sh",test:"jest --no-cache --testPathPattern='webpack/.*/__spec__/.*\\.spec\\.*'","test:coverage":"jest --no-cache --testPathPattern='webpack/.*/__spec__/.*\\.spec\\.ts' --coverage","test:build":"jest ./build.spec.ts --no-cache"},dependencies:{"@colors/colors":"^1.6.0","@swc/core":"^1.7.3","@types/firefox-webext-browser":"^120.0.4",acorn:"^8.12.1","acorn-walk":"^8.3.3","adm-zip":"^0.5.12",ajv:"^8.17.1",astring:"^1.8.6",axios:"^1.6.8","case-sensitive-paths-webpack-plugin":"^2.4.0",chokidar:"^3.6.0","chrome-location":"^1.2.1","content-security-policy-parser":"^0.6.0","css-loader":"^6.10.0","csv-loader":"^3.0.5",dotenv:"^16.4.5","dotenv-webpack":"^8.0.1","edge-location":"^1.0.0","firefox-profile":"^4.6.0","fx-runner":"^1.4.0","go-git-it":"2.0.4",ignore:"^5.3.1","loader-utils":"^3.3.1",micromatch:"^4.0.7","mini-css-extract-plugin":"^2.8.1","package-manager-detector":"^0.2.0",parse5:"^7.1.2","parse5-utils":"^2.0.0",postcss:"^8.4.45",progress:"^2.0.3","schema-utils":"^4.2.0",slugify:"^1.6.6","style-loader":"^3.3.4","swc-loader":"^0.2.6","tiny-glob":"^0.2.9","vue-template-compiler":"^2.7.16","webextension-polyfill":"^0.12.0",webpack:"~5.92.0","webpack-dev-server":"^5.0.2","webpack-merge":"^6.0.1","webpack-target-webextension":"^1.1.2"},devDependencies:{"@types/adm-zip":"^0.5.5","@types/case-sensitive-paths-webpack-plugin":"^2.1.9","@types/chrome":"^0.0.270","@types/cross-spawn":"^6.0.6","@types/dotenv-webpack":"^7.0.7","@types/jest":"^29.5.12","@types/loader-utils":"^2.0.6","@types/node":"^22.5.3","@types/webextension-polyfill":"^0.10.7","@types/ws":"^8.5.12",jest:"^29.7.0","ts-jest":"^29.1.2",tsup:"^8.0.1",typescript:"5.3.3"},optionalDependencies:{"@pmmmwh/react-refresh-webpack-plugin":"^0.5.15","@prefresh/webpack":"^4.0.1","babel-loader":"^9.1.3","less-loader":"^12.2.0","postcss-flexbugs-fixes":"^5.0.2","postcss-loader":"^8.1.1","postcss-normalize":"^10.0.1","postcss-preset-env":"^9.6.0","postcss-scss":"^4.0.9","react-refresh":"^0.14.2","react-refresh-typescript":"^2.0.9","resolve-url-loader":"^5.0.0","sass-loader":"^16.0.0","vue-loader":"^17.4.2","vue-style-loader":"^4.1.3","vue-template-compiler":"^2.7.16"}}});var Rl={};Wp(Rl,{extensionBuild:()=>hp,extensionDev:()=>$p,extensionPreview:()=>Fp,extensionStart:()=>Mp});module.exports=Bp(Rl);var mp=a(require("fs")),Rs=a(require("path")),dp=a(require("webpack")),gp=require("webpack-merge");var Ke=a(require("path"));var Si=a(require("case-sensitive-paths-webpack-plugin"));var Br=a(require("fs")),st=a(require("path")),oe=require("webpack"),Jr=a(require("dotenv"));var qr=a(require("path")),f=require("@colors/colors/safe");var zs=a(require("path")),et=zs.default.join(process.cwd(),"node_modules/extension-develop/dist/certs"),Q=["chrome","edge"],Jp=["firefox"],Nl=[...Q,...Jp];var Hs=require("console");function x(t,e){return e==="error"?`${(0,f.bold)((0,f.red)("ERROR"))} in ${t} ${(0,f.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:e==="warn"?`${t} ${(0,f.brightYellow)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:`${e==="info"?(0,f.cyan)("\u25BA\u25BA\u25BA"):(0,f.brightGreen)("\u25BA\u25BA\u25BA")} ${(0,f.cyan)(t)}`}function Vs(t){return t.charAt(0).toUpperCase()+t.slice(1)}function Gs(t,e,r){if(!!1)return`${r.hasErrors()?(0,f.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E"):(0,f.brightGreen)("\u25BA\u25BA\u25BA")} ${(0,f.cyan)(t)} compiled ${r.hasErrors()?(0,f.red)("with errors"):(0,f.brightGreen)("successfully")} in ${e} ms.`}function Xs(t,e){return`${(0,Hs.info)("\u25BA\u25BA\u25BA")} Using ${(0,f.magenta)(t)}. Installing required dependencies via ${(0,f.brightYellow)(e)}...`}function Zs(){return`${(0,f.cyan)("\u25BA\u25BA\u25BA")} ${(0,f.magenta)(".env")} file loaded ${(0,f.brightGreen)("successfully")}.`}function S(t){return`${(0,f.cyan)("\u25BA\u25BA\u25BA")} Using ${(0,f.magenta)(t)}...`}function D(t){return`${x(t,"success")} installation completed. Run the program again and happy hacking.`}function Ks(t){return`${x(t,"info")} dependencies are being installed. This only happens for core contributors...`}function Ys(t){return`${x(t,"success")} dependencies installed ${(0,f.brightGreen)("successfully")}.`}function Qs(t,e){return`${x("Integration","error")} ${t} Installation Error
2
2
 
3
- Failed to detect package manager or install ${e} dependencies:
4
- ${(0,f.red)(s?.toString()||"")}`}function nn(t){return`${x("Firefox runner","error")} No Service Worker Support
3
+ Failed to detect package manager or install ${t} dependencies:
4
+ ${(0,f.red)(e?.toString()||"")}`}function ei(){return`${x("Firefox runner","error")} No Service Worker Support
5
5
 
6
6
  Firefox does not support the ${(0,f.brightYellow)("background.service_worker")} field yet.
7
7
  Update your manifest.json file to use ${(0,f.brightYellow)("background.scripts")} instead.
8
8
 
9
- Read more: ${(0,f.underline)("https://bugzilla.mozilla.org/show_bug.cgi?id=1573659")}.`}function on(t){return`${x("content-security-policy","error")} Insecure Content-Security-Policy
9
+ Read more: ${(0,f.underline)("https://bugzilla.mozilla.org/show_bug.cgi?id=1573659")}.`}function ti(){return`${x("content-security-policy","error")} Insecure Content-Security-Policy
10
10
 
11
- Manifest includes insecure content-security-policy value ${(0,f.brightYellow)("'unsafe-eval'")} in directive ${(0,f.brightBlue)("'script-src'")}.`}function an(t){return`${x("_locales","error")} No Default Locale Specified
11
+ Manifest includes insecure content-security-policy value ${(0,f.brightYellow)("'unsafe-eval'")} in directive ${(0,f.brightBlue)("'script-src'")}.`}function ri(){return`${x("_locales","error")} No Default Locale Specified
12
12
 
13
- Localization used, but ${(0,f.brightYellow)("default_locale")} wasn't specified in the manifest.`}function Se(t){return t==="chrome"?(0,f.underline)("https://developer.chrome.com/docs/extensions/reference/manifest"):(0,f.underline)("https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json")}function cn(t,e){return`${x("manifest.json","error")} Wrong Manifest Field Type
13
+ Localization used, but ${(0,f.brightYellow)("default_locale")} wasn't specified in the manifest.`}function xe(t){return t==="chrome"?(0,f.underline)("https://developer.chrome.com/docs/extensions/reference/manifest"):(0,f.underline)("https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json")}function si(t){return`${x("manifest.json","error")} Wrong Manifest Field Type
14
14
 
15
15
  Field ${(0,f.brightYellow)("web_accessible_resources")} must be a string array in Manifest version 2.
16
16
 
17
- Read more: ${Se(e)}`}function pn(t,e){return`${x("manifest.json","error")} Wrong Manifest Field Type
17
+ Read more: ${xe(t)}`}function ii(t){return`${x("manifest.json","error")} Wrong Manifest Field Type
18
18
 
19
19
  Field ${(0,f.brightYellow)("web_accessible_resources")} must be an array of objects in Manifest version 3.
20
20
 
21
- Read more: ${Se(e)}`}function ln(t,e,s){let n=s?.schemaPath?.split("/"),i=n?.slice(n.length-2).shift();return`${x("manifest.json","error")} Deprecated Field
21
+ Read more: ${xe(t)}`}function oi(t,e){let s=e?.schemaPath?.split("/"),i=s?.slice(s.length-2).shift();return`${x("manifest.json","error")} Deprecated Field
22
22
 
23
23
  Field ${(0,f.brightYellow)(i||"")} is deprecated in Manifest V3. Update your manifest.json file to run your extension.
24
24
 
25
- Read more: ${Se(e)}`}function fn(t,e,s){let r=e?.instancePath.replaceAll("/",".").slice(1)||"",n=e?.params.type;return`${x("manifest.json","error")} Invalid Manifest Field
25
+ Read more: ${xe(t)}`}function ni(t,e){let r=t?.instancePath.replaceAll("/",".").slice(1)||"",s=t?.params.type;return`${x("manifest.json","error")} Invalid Manifest Field
26
26
 
27
- Field ${(0,f.brightYellow)(r)} must be of type ${(0,f.brightBlue)(n)}.
27
+ Field ${(0,f.brightYellow)(r)} must be of type ${(0,f.brightBlue)(s)}.
28
28
 
29
- Read more: ${Se(s)}`}function un(t,e,s){return`${x("manifest.json","error")} Missing Required Manifest Field
29
+ Read more: ${xe(e)}`}function ai(t,e){return`${x("manifest.json","error")} Missing Required Manifest Field
30
30
 
31
- Field ${(0,f.brightYellow)(s||"")} is required. Update your manifest.json file to run your extension.
31
+ Field ${(0,f.brightYellow)(e||"")} is required. Update your manifest.json file to run your extension.
32
32
 
33
- Read more: ${Se(e)}`}function mn(t,e){let s=e.split(".").pop(),r=`${x(t,"error")} Content Script Import
33
+ Read more: ${xe(t)}`}function ci(t,e){let r=e.split(".").pop(),s=`${x(t,"error")} Content Script Import
34
34
 
35
- One of your ${s?.toUpperCase()} imports is also a ${(0,f.brightYellow)("content_script")} CSS in manifest.json.
36
- Remove the duplicate entry and try again.`;if(e.startsWith("content_scripts"))return r}function dn(t){return`${x(t,"error")} Top Level Await In Non-ECMAScript Module
35
+ One of your ${r?.toUpperCase()} imports is also a ${(0,f.brightYellow)("content_script")} CSS in manifest.json.
36
+ Remove the duplicate entry and try again.`;if(e.startsWith("content_scripts"))return s}function pi(t){return`${x(t,"error")} Top Level Await In Non-ECMAScript Module
37
37
 
38
38
  Top-level await is only supported in ECMAScript modules.
39
39
  To use it in your extension, make sure to set ${(0,f.brightYellow)('"type": "module"')}
40
- in your package.json or use the ${(0,f.brightYellow)(".mjs")} extension for your script files.`}function rt(t,e,s){if(!e)throw new Error("This operation is impossible. Please report a bug.");switch(Vs.default.extname(s)){case".js":case".ts":case".jsx":case".tsx":return Vp(t,e,s);case".css":case".scss":case".sass":case".less":return Gp(t,e,s);default:return Xp(t,e,s)}}function ne(t,e,s){let r=e.startsWith("content_scripts")?"content_scripts":e.replace("/","."),n=e.split("-")[1],i=e.startsWith("pages"),o=t.includes("content_scripts")?`(index ${n})
40
+ in your package.json or use the ${(0,f.brightYellow)(".mjs")} extension for your script files.`}function tt(t,e){if(!t)throw new Error("This operation is impossible. Please report a bug.");switch(qr.default.extname(e)){case".js":case".ts":case".jsx":case".tsx":return Hp(t,e);case".css":case".scss":case".sass":case".less":return Vp(t,e);default:return Gp(t,e)}}function ie(t,e,r){let s=e.startsWith("content_scripts")?"content_scripts":e.replace("/","."),i=e.split("-")[1],o=e.startsWith("pages"),n=t.includes("content_scripts")?`(index ${i})
41
41
 
42
- `:r;return`${x("manifest.json","error")} File Not Found
42
+ `:s;return`${x("manifest.json","error")} File Not Found
43
43
 
44
- ${i?`Check the ${(0,f.brightYellow)("pages")} folder in your project root directory.
45
- `:`Check the ${(0,f.brightYellow)(o)} field in your manifest.json file.
46
- `}${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function nt(t,e,s){return`File Not Found
44
+ ${o?`Check the ${(0,f.brightYellow)("pages")} folder in your project root directory.
45
+ `:`Check the ${(0,f.brightYellow)(n)} field in your manifest.json file.
46
+ `}${(0,f.red)("NOT FOUND")} ${(0,f.underline)(r)}`}function rt(t,e){return`File Not Found
47
47
 
48
- Check the ${(0,f.brightYellow)(e)} field in your manifest.json file.
49
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function gn(t,e){return`${x(t,"error")} Manifest Not Found
48
+ Check the ${(0,f.brightYellow)(t)} field in your manifest.json file.
49
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function li(t,e){return`${x(t,"error")} Manifest Not Found
50
50
 
51
51
  Ensure you have a manifest.json file at the root directory of your project.
52
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function hn(t,e){return`${x("manifest.json","error")} Invalid Manifest
52
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function fi(t){return`${x("manifest.json","error")} Invalid Manifest
53
53
 
54
- Update your manifest.json file and try again. `+(0,f.red)(e.toString())}function yn(t,e){let s=e&&`${(0,f.gray)("PATH")} ${(0,f.red)("REMOVED")} ${(0,f.underline)(e)}
55
- `,r=t&&`${(0,f.gray)("PATH")} ${(0,f.brightGreen)("ADDED")} ${(0,f.underline)(t)}`;return`${x("manifest.json","error")} Manifest Entry Point Modification
54
+ Update your manifest.json file and try again. `+(0,f.red)(t.toString())}function ui(t,e){let r=e&&`${(0,f.gray)("PATH")} ${(0,f.red)("REMOVED")} ${(0,f.underline)(e)}
55
+ `,s=t&&`${(0,f.gray)("PATH")} ${(0,f.brightGreen)("ADDED")} ${(0,f.underline)(t)}`;return`${x("manifest.json","error")} Manifest Entry Point Modification
56
56
 
57
- Changing the path of ${(0,f.brightYellow)("<script>")} or ${(0,f.brightYellow)('<link rel="stylesheet">')} files after compilation requires a server restart.
58
- `+s+r}function bn(t,e,s,r,n){let i=t.charAt(0).toUpperCase()+t.slice(1);return`${x("manifest.json","error")} Manifest Entry Point Modification
57
+ Changing the path of ${(0,f.brightYellow)("HTML")} or ${(0,f.brightYellow)("script")} files in manifest.json after compilation requires a server restart.
58
+ `+r+s}function mi(t,e,r,s,i){let o=t.charAt(0).toUpperCase()+t.slice(1);return`${x("manifest.json","error")} Manifest Entry Point Modification
59
59
 
60
- ${i} ${(0,f.brightYellow)(r)} in the ${(0,f.underline)(s+"/")} folder after compilation requires a server restart.
61
- ${(0,f.gray)("PATH")} ${(0,f.underline)(n)}`}function wn(t){return`${x("TypeScript","info")} is being used but no config file was found. Creating ${(0,f.brightYellow)("tsconfig.json")}...`}function Gs(t,e,s){let r=t.name||"Extension.js",n;switch(e){case"chrome":n="chrome://extensions";break;case"edge":n="edge://extensions";break;case"firefox":n="about:debugging#/runtime/this-firefox";break;default:n=""}if(!s.data)return`${x(r,"error")} No Client Data Received
60
+ ${o} ${(0,f.brightYellow)(s)} in the ${(0,f.underline)(r+"/")} folder after compilation requires a server restart.
61
+ ${(0,f.gray)("PATH")} ${(0,f.underline)(i)}`}function di(){return`${x("TypeScript","info")} is being used but no config file was found. Creating ${(0,f.brightYellow)("tsconfig.json")}...`}function Wr(t,e,r){let s=t.name||"Extension.js",i;switch(e){case"chrome":i="chrome://extensions";break;case"edge":i="edge://extensions";break;case"firefox":i="about:debugging#/runtime/this-firefox";break;default:i=""}if(!r.data)return`${x(s,"error")} No Client Data Received
62
62
 
63
63
  This error happens when the program can't get the data from your extension.
64
64
  There are many reasons this might happen. To fix, ensure that:
65
65
 
66
- - Your extension is set as enabled in ${(0,f.underline)(n)}
67
- - No previous ${Yr(e)} browser instance is open
66
+ - Your extension is set as enabled in ${(0,f.underline)(i)}
67
+ - No previous ${Vs(e)} browser instance is open
68
68
 
69
69
  If that is not the case, restart both the ${(0,f.cyan)(t.name||"")} and the
70
- ${(0,f.brightYellow)("Manager Extension")} in ${(0,f.underline)(n)} and try again.
70
+ ${(0,f.brightYellow)("Manager Extension")} in ${(0,f.underline)(i)} and try again.
71
71
 
72
72
  If the issue still persists, please report a bug:
73
73
 
74
- `+(0,f.underline)("https://github.com/extension-js/extension.js/issues");let{id:i,management:o}=s.data;if(!o&&process.env.EXTENSION_ENV==="development")return`${x(r,"error")} No management API info received from client. Investigate.`;let{name:c,version:p}=o,l=Hs().version;return`
74
+ `+(0,f.underline)("https://github.com/extension-js/extension.js/issues");let{id:o,management:n}=r.data;if(!n&&process.env.EXTENSION_ENV==="development")return`${x(s,"error")} No management API info received from client. Investigate.`;let{name:c,version:p}=n,l=Ur().version;return`
75
75
  \u{1F9E9} ${(0,f.brightGreen)("Extension.js")} ${(0,f.gray)(`${l}`)}
76
76
  Extension Name ${(0,f.gray)(c)}
77
77
  Extension Version ${(0,f.gray)(p)}
78
- Extension ID ${(0,f.gray)(i)}`}function xn(t){return`This is your first run using Extension.js via ${Yr(t)}. Welcome! \u{1F389}
78
+ Extension ID ${(0,f.gray)(o)}`}function gi(t){return`This is your first run using Extension.js via ${Vs(t)}. Welcome! \u{1F389}
79
79
 
80
- \u{1F9E9} Learn more at ${(0,f.underline)("https://extension.js.org")}`}function vn(t,e){return`${x("WebSocket","error")} General WebSocket Error:
81
- ${(0,f.red)(e)}`}function _n(t,e,s){return`${x("manifest.json","error")} File Not Found
80
+ \u{1F9E9} Learn more at ${(0,f.underline)("https://extension.js.org")}`}function hi(t){return`${x("WebSocket","error")} General WebSocket Error:
81
+ ${(0,f.red)(t)}`}function yi(t,e){return`${x("manifest.json","error")} File Not Found
82
82
 
83
- Check the ${(0,f.brightYellow)(e.replace("/","."))} field in your manifest.json file.
84
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function Sn(t,e){return`${x("HTML","error")} Entry Point Modification
83
+ Check the ${(0,f.brightYellow)(t.replace("/","."))} field in your manifest.json file.
84
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function bi(t){return`${x("HTML","error")} Entry Point Modification
85
85
 
86
86
  Changing the path of ${(0,f.brightYellow)("<script>")} or ${(0,f.brightYellow)('<link rel="stylesheet">')} files after compilation requires a server restart.
87
- ${(0,f.gray)("PATH")} ${(0,f.underline)(e)}`}function Vp(t,e,s){return`${x("HTML","error")} File Not Found
87
+ ${(0,f.gray)("PATH")} ${(0,f.underline)(t)}`}function Hp(t,e){return`${x("HTML","error")} File Not Found
88
88
 
89
- Check your ${(0,f.brightYellow)("<script>")} tags in ${(0,f.underline)(e)}.
90
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function Gp(t,e,s){return`${x("HTML","error")} File Not Found
89
+ Check your ${(0,f.brightYellow)("<script>")} tags in ${(0,f.underline)(t)}.
90
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function Vp(t,e){return`${x("HTML","error")} File Not Found
91
91
 
92
- Check your ${(0,f.brightYellow)("<link>")} tags in ${(0,f.underline)(e)}.
93
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function Xp(t,e,s){let r=Vs.default.extname(s);return`${x("HTML","warn")} File Not Found
92
+ Check your ${(0,f.brightYellow)("<link>")} tags in ${(0,f.underline)(t)}.
93
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function Gp(t,e){let r=qr.default.extname(e);return`${x("HTML","warn")} File Not Found
94
94
 
95
- Check your ${(0,f.brightYellow)("*"+r)} assets in ${(0,f.underline)(e)}.
96
- ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(s)}`}function Pn(){return`${(0,f.brightYellow)("Note")}: Firefox requires a secure certificate for localhost connections, needed for the reloader to work.
95
+ Check your ${(0,f.brightYellow)("*"+r)} assets in ${(0,f.underline)(t)}.
96
+ ${(0,f.red)("NOT FOUND")} ${(0,f.underline)(e)}`}function wi(){return`${(0,f.brightYellow)("Note")}: Firefox requires a secure certificate for localhost connections, needed for the reloader to work.
97
97
  By default, your manifest.json file is not being watched. To enable this feature, run:
98
98
 
99
99
  npx -y mkcert-cli \\
100
- ${(0,f.brightGreen)("--outDir")} ${(0,f.underline)(st)} \\
100
+ ${(0,f.brightGreen)("--outDir")} ${(0,f.underline)(et)} \\
101
101
  ${(0,f.brightGreen)("--cert")} ${(0,f.brightYellow)("localhost.cert")} \\
102
102
  ${(0,f.brightGreen)("--key")} ${(0,f.brightYellow)("localhost.key")}
103
103
 
104
104
  This will enable the secure certificate needed for Firefox via ${(0,f.bold)("mkcert")}.
105
105
 
106
- Learn more about ${(0,f.bold)("mkcert")}: ${(0,f.underline)("https://github.com/FiloSottile/mkcert")}`}function kn(t,e){return`${x("Port","error")} Selected port ${(0,f.brightYellow)(e.toString())} in use. Choose a new port. `}function En(t){return`${x("manifest.json","error")} Extension ID Not Defined
106
+ Learn more about ${(0,f.bold)("mkcert")}: ${(0,f.underline)("https://github.com/FiloSottile/mkcert")}`}function xi(t){return`${x("Port","error")} Selected port ${(0,f.brightYellow)(t.toString())} in use. Choose a new port. `}function vi(){return`${x("manifest.json","error")} Extension ID Not Defined
107
107
 
108
108
  For MAIN world content_scripts, the extension ID must be specified.
109
109
  Ensure your extension have a fixed ID and that the ${(0,f.brightYellow)("publicPath")}
110
- of your ${(0,f.brightYellow)("extension.config.js")} is defined as your extension URL.`}var ot=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){let s=it.default.dirname(this.manifestPath),n=require(this.manifestPath).name||"Extension.js",i=e.options.mode||"development",o=[`.env.${this.browser}.${i}`,`.env.${this.browser}`,`.env.${i}`,".env.local",".env",".env.example"],c="";for(let h of o){let v=it.default.join(s,h);if(Xs.default.existsSync(v)){c=v;break}}if(!c)return;console.log(en(n));let p=Zs.default.config({path:c}).parsed||{},l=it.default.join(s,".env.defaults"),d={...Xs.default.existsSync(l)?Zs.default.config({path:l}).parsed||{}:{},...p,...process.env},g=Object.keys(d).filter(h=>h.startsWith("EXTENSION_PUBLIC_")).reduce((h,v)=>(h[`process.env.${v}`]=JSON.stringify(d[v]),h[`import.meta.env.${v}`]=JSON.stringify(d[v]),h),{});new ie.DefinePlugin(g).apply(e),e.hooks.thisCompilation.tap("manifest:update-manifest",h=>{h.hooks.processAssets.tap({name:"env:module",stage:ie.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},v=>{Object.keys(v).forEach(C=>{if(C.endsWith(".json")||C.endsWith(".html")){let M=h.assets[C].source().toString();M=M.replace(/\$EXTENSION_PUBLIC_[A-Z_]+/g,R=>{let K=R.slice(1),N=d[K]||R;return console.log(`Replacing ${R} with ${N}`),N}),h.updateAsset(C,new ie.sources.RawSource(M))}})})})}};var Ys=a(require("fs")),jn=a(require("path")),at=class{apply(e){let s=jn.default.join(e.options.output.path||"","hot");Ys.default.existsSync(s)&&(Ys.default.rmSync(s,{recursive:!0,force:!0}),process.env.EXTENSION_ENV==="development"&&console.log("[CleanHotUpdatesPlugin] Removed old hot-update files before compilation."))}};var ct=class{static name="plugin-compilation";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){new $n.default().apply(e),new ot({manifestPath:this.manifestPath,browser:this.browser}).apply(e),new at().apply(e),e.hooks.done.tap("develop:brand",s=>{s.compilation.name=void 0;let r=s.endTime-s.startTime,n=require(this.manifestPath).name;console.log(Kr(n,r,s))})}};var Gn=a(require("path")),Xn=a(require("mini-css-extract-plugin"));var zn=a(require("mini-css-extract-plugin"));var pe=a(require("path")),Pe=a(require("fs"));var oe=a(require("path")),pt=a(require("fs")),Ks=require("child_process"),Fn=require("package-manager-detector");function Dn(t,e){return Object.values(e||{}).some(s=>s===t)}function y(t,e,s){let r=oe.default.extname(e),i=k(e,s)?oe.default.normalize(e):t;return[".js",".jsx",".tsx",".ts"].includes(r)&&(i=i.replace(r,".js")),[".html",".njk",".nunjucks"].includes(r)&&(i=i.replace(r,".html")),[".css",".scss",".sass",".less"].includes(r)&&(i=i.replace(r,".css")),Qs(i||"")}function Qs(t){return t.replace(/\\/g,"/")}function k(t,e={}){if(!e)return!1;let s=oe.default.normalize(Qs(t));return Object.values(e).some(n=>typeof n!="string"?!1:Qs(n).includes(s))}function B(t,e){if(t.getAsset("manifest.json")||t.assets["manifest.json"]){let s=t.assets["manifest.json"].source().toString();return JSON.parse(s||"{}")}return require(e)}function ae(){return process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm")?"pnpm":!1}function Cn(){return process.env.npm_execpath?"npm":!1}async function j(t,e,s){try{let r=await(0,Fn.detect)();console.log(Qr(t,e,r?.name||"unknown"));let n="";r?.name==="yarn"?n=`yarn --silent add ${s.join(" ")} --cwd ${__dirname} --optional`:r?.name==="npm"||Cn()?n=`npm --silent install ${s.join(" ")} --prefix ${__dirname} --save-optional`:ae()?n=`pnpm --silent add ${s.join(" ")} --prefix ${__dirname} --save-optional`:n=`${r} --silent install ${s.join(" ")} --cwd ${__dirname} --optional`,(0,Ks.execSync)(n,{stdio:"inherit"}),await new Promise(i=>setTimeout(i,2e3)),process.env.EXTENSION_ENV==="development"&&(console.log(tn(t,e)),r?.name==="yarn"?n="yarn install --silent > /dev/null 2>&1":r?.name==="npm"||Cn()?n="npm install --silent > /dev/null 2>&1":ae()?n="pnpm install --silent > /dev/null 2>&1":n=`${r} install --silent > /dev/null 2>&1`,(0,Ks.execSync)(n,{stdio:"inherit"})),console.log(sn(t,e))}catch(r){console.error(rn(t,e,r))}}function lt(t){let e=oe.default.join(t,"package.json");if(!pt.default.existsSync(e))return!1;let s=JSON.parse(pt.default.readFileSync(e,"utf-8")),r=["react","vue","@angular/core","svelte","solid-js","preact"],n=s.dependencies||{},i=s.devDependencies||{};for(let o of r)if(n[o]||i[o])return!0;return!1}function Ln(t){return!pt.default.existsSync(oe.default.resolve(__dirname,`run-${t}-profile`))}function In(t){let e=t.name?.replace(/ /g,"-").toLowerCase();return{data:{id:`${e}@extension-js`,manifest:t,management:{id:`${e}@extension-js`,mayDisable:!0,optionsUrl:"",installType:"development",type:"extension",enabled:!0,name:t.name||"",description:t.description||"",version:t.version||"",hostPermissions:t.host_permissions||[],permissions:t.permissions||[],offlineEnabled:t.offline_enabled||!1,shortName:t.short_name||"",isApp:t.app&&t.app.background&&t.app.background.scripts}}}}function ce(t,e){return JSON.parse(JSON.stringify(t),function(n,i){let o=n.indexOf(":");if(o===-1)return i;let c=n.substring(0,o);(c===e||c==="chromium"&&Q.includes(e))&&(this[n.substring(o+1)]=i)})}var On=!1;function ft(t){let e=pe.default.join(t,"package.json"),s=pe.default.join(t,"manifest.json");if(!Pe.default.existsSync(e))return!1;let r=Zp(t),n=require(e),i=n.devDependencies&&n.devDependencies.tailwindcss,o=n.dependencies&&n.dependencies.tailwindcss,c=!!r&&!!(i||o);if(c&&!On){let l=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(l,"Tailwind")),On=!0}return c}function Zp(t){let e=pe.default.join(t,"tailwind.config.mjs"),s=pe.default.join(t,"tailwind.config.cjs"),r=pe.default.join(t,"tailwind.config.js");if(Pe.default.existsSync(e))return e;if(Pe.default.existsSync(s))return s;if(Pe.default.existsSync(r))return r}var ut=a(require("path")),An=a(require("fs"));var Mn=!1;function ke(t){let e=ut.default.join(t,"package.json"),s=ut.default.join(t,"manifest.json");if(!An.default.existsSync(e))return!1;let r=require(e),n=r.devDependencies&&r.devDependencies.sass,i=r.dependencies&&r.dependencies.sass;if(n||i){if(!Mn){let c=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(c,"SASS")),Mn=!0}return!0}return!1}async function Rn(t,e){if(!ke(t))return[];try{require.resolve("sass-loader")}catch{let r=["postcss-loader","postcss-scss","postcss-flexbugs-fixes","postcss-preset-env","postcss-normalize"],n=require(ut.default.join(t,"package.json")).name;await j(n,"PostCSS",r),await j(n,"SASS",["sass","sass-loader","resolve-url-loader"]),console.log(F(n,"SASS")),process.exit(0)}return[{test:/\.(s(a|c)ss)$/,exclude:/\.module\.(s(a|c)ss)$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await q(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await q(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:e==="production"})}]},{test:/\.module\.(s(a|c)ss)$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await q(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await q(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!0})}]}]}var mt=a(require("path")),Tn=a(require("fs"));var Nn=!1;function Ee(t){let e=mt.default.join(t,"package.json"),s=mt.default.join(t,"manifest.json"),n=require(s).name||"Extension.js";if(!Tn.default.existsSync(e))return!1;let i=require(e),o=i.devDependencies&&i.devDependencies.less,c=i.dependencies&&i.dependencies.less;return o||c?(Nn||(process.env.EXTENSION_ENV==="development"&&console.log(_(n,"LESS")),Nn=!0),!0):!1}async function qn(t,e){if(!Ee(t))return[];try{require.resolve("less-loader")}catch{let r=require(mt.default.join(t,"package.json")).name;await j(r,"LESS",["less","less-loader","resolve-url-loader"]),console.log(F(r,"LESS")),process.exit(0)}return[{test:/\.less$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await q(t,{loader:"less-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await q(t,{loader:"less-loader",mode:e,useMiniCssExtractPlugin:e==="production"})}]}]}var fe=a(require("path")),dt=a(require("fs"));var le=!1;function Yp(t){let e=fe.default.join(t,"package.json"),s=fe.default.join(t,"manifest.json");if(!dt.default.existsSync(e))return!1;let r=[".postcssrc",".postcssrc.json",".postcssrc.yaml",".postcssrc.yml",".postcssrc.js",".postcssrc.cjs","postcss.config.js","postcss.config.cjs"],i=require(s).name||"Extension.js";if(dt.default.existsSync(e)){let o=require(e);if(o.dependencies&&o.dependencies.postcss||o.devDependencies&&o.devDependencies.postcss)return le||(process.env.EXTENSION_ENV==="development"&&console.log(_(i,"PostCSS")),le=!0),!0}for(let o of r)if(dt.default.existsSync(fe.default.join(t,o)))return le||(process.env.EXTENSION_ENV==="development"&&console.log(_(i,"PostCSS")),le=!0),!0;return ft(t)?(le||(process.env.EXTENSION_ENV==="development"&&console.log(_(i,"PostCSS")),le=!0),!0):!1}async function Un(t,e){if(!Yp(t))return{};try{require.resolve("postcss-loader")}catch{let r=require(fe.default.join(t,"package.json")).name;!ke(t)&&!Ee(t)&&await j(r,"PostCSS",["postcss","postcss-loader","postcss-scss","postcss-flexbugs-fixes","postcss-preset-env","postcss-normalize"]),console.log(F(r,"PostCSS")),process.exit(0)}return{loader:require.resolve("postcss-loader"),options:{postcssOptions:{parser:require.resolve("postcss-scss"),ident:"postcss",config:fe.default.resolve(t,"postcss.config.js"),plugins:[require.resolve("postcss-flexbugs-fixes"),[require.resolve("postcss-preset-env"),{autoprefixer:{flexbox:"no-2009"},stage:3}].filter(Boolean),require.resolve("postcss-normalize")].filter(Boolean)},sourceMap:e.mode==="development"}}}var gt=a(require("path")),Bn=a(require("fs"));var Wn=!1;function je(t){let e=gt.default.join(t,"package.json"),s=gt.default.join(t,"manifest.json");if(!Bn.default.existsSync(e))return!1;let r=require(e),n=r.devDependencies&&r.devDependencies.vue,i=r.dependencies&&r.dependencies.vue;if((n||i)&&!Wn){let c=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(c,"Vue")),Wn=!0}return!!n||!!i}async function Jn(t){if(!je(t))return;try{require.resolve("vue-loader")}catch{let n=["typescript"],o=require(gt.default.join(t,"manifest.json")).name||"Extension.js";await j(o,"TypeScript",n),await j(o,"Vue",["vue-loader","vue-template-compiler","vue-style-loader"]),console.log(F(o,"Vue")),process.exit(0)}let e=[{test:/\.vue$/,loader:require.resolve("vue-loader"),include:t,exclude:/node_modules/}];return{plugins:[new(require("vue-loader")).VueLoaderPlugin],loaders:e,alias:void 0}}async function q(t,e){let s=zn.default.loader,r=[e.useMiniCssExtractPlugin?s:je(t)?require.resolve("vue-style-loader"):require.resolve("style-loader"),{loader:require.resolve("css-loader"),options:{sourceMap:e.mode==="development"}}].filter(Boolean);if(ft(t)||ke(t)||Ee(t)){let n=await Un(t,e);n.loader&&r.push(n)}return e.loader&&r.push({loader:require.resolve("resolve-url-loader"),options:{sourceMap:e.mode==="development",root:t}},{loader:require.resolve(e.loader),options:{sourceMap:e.mode==="development"}}),r.filter(Boolean)}var A=a(require("path")),T=a(require("fs"));function Kp(t){let e=A.default.join(t,"stylelint.config.json"),s=A.default.join(t,".stylelintrc.js file"),r=A.default.join(t,"stylelint.config.mjs"),n=A.default.join(t,".stylelintrc.mjs"),i=A.default.join(t,"stylelint.config.cjs"),o=A.default.join(t,".stylelintrc.cjs"),c=A.default.join(t,".stylelintrc.json"),p=A.default.join(t,".stylelintrc"),l=A.default.join(t,".stylelintrc.yml"),u=A.default.join(t,".stylelintrc.yaml");if(T.default.existsSync(e))return e;if(T.default.existsSync(s))return s;if(T.default.existsSync(r))return r;if(T.default.existsSync(n))return n;if(T.default.existsSync(i))return i;if(T.default.existsSync(o))return o;if(T.default.existsSync(c))return c;if(T.default.existsSync(p))return p;if(T.default.existsSync(l))return l;if(T.default.existsSync(u))return u}var Hn=!1;function Qp(t){let e=A.default.join(t,"package.json"),s=A.default.join(t,"manifest.json");if(!T.default.existsSync(e))return!1;let n=!!Kp(t);if(n&&!Hn){let o=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(o,"Stylelint")),Hn=!0}return n}async function Vn(t){return Qp(t),[]}var ht=class t{static name="plugin-css";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async configureOptions(e){let s=e.options.mode||"development",r=Gn.default.dirname(this.manifestPath),n=[new Xn.default];n.forEach(l=>l.apply(e));let i=await Vn(r);n.push(...i);let o=[{test:/\.css$/,exclude:/\.module\.css$/,oneOf:[{use:await q(r,{mode:s,useMiniCssExtractPlugin:s==="production"})}]},{test:/\.module\.css$/,oneOf:[{use:await q(r,{mode:s,useMiniCssExtractPlugin:s==="production"})}]}];e.options.plugins=[...e.options.plugins,...n].filter(Boolean);let c=await Rn(r,s),p=await qn(r,s);o.push(...c),o.push(...p),e.options.module.rules=[...e.options.module.rules,...o].filter(Boolean)}async apply(e){if((e.options.mode||"development")==="production"){e.hooks.beforeRun.tapPromise(t.name,async()=>await this.configureOptions(e));return}await this.configureOptions(e)}};var yt=class{static name="plugin-css";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async apply(e){let s={test:/\.svg$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2048}}},n=[...e.options.module.rules.some(i=>i&&i.test instanceof RegExp&&i.test.test(".svg")&&i.use!==void 0)?[]:[s],{test:/\.(png|jpg|jpeg|gif|webp|avif|ico|bmp)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2*1024}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"}},{test:/\.(txt|md|csv|tsv|xml|pdf|docx|doc|xls|xlsx|ppt|pptx|zip|gz|gzip|tgz)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2*1024}}},{test:/\.(csv|tsv)$/i,use:[require.resolve("csv-loader")],generator:{filename:"assets/[name][ext]"}}];e.options.module.rules=[...e.options.module.rules,...n].filter(Boolean)}};var tr=a(require("path"));var bt=a(require("path")),er=a(require("fs"));var Zn=!1,el=[".babelrc",".babelrc.json",".babelrc.js",".babelrc.cjs","babel.config.json","babel.config.js","babel.config.cjs"];function tl(t){let e=bt.default.join(t,"package.json"),s=bt.default.join(t,"manifest.json");if(!er.default.existsSync(e))return!1;let r=require(e),n=r.devDependencies&&r.devDependencies["babel-core"],i=r.dependencies&&r.dependencies["babel-core"],o=el.some(c=>er.default.existsSync(bt.default.join(t,c)))||!!n||!!i;if(o&&!Zn){let p=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&process.env.EXTENSION_ENV==="development"&&console.log(_(p,"Babel")),Zn=!0}return o}async function Yn(t,e){tl(e)}var wt=a(require("path")),Qn=a(require("fs"));var Kn=!1;function ue(t){let e=wt.default.join(t,"package.json"),s=wt.default.join(t,"manifest.json");if(!Qn.default.existsSync(e))return!1;let r=require(e),n=r.devDependencies&&r.devDependencies.preact,i=r.dependencies&&r.dependencies.preact;if((n||i)&&!Kn){let c=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(c,"Preact")),Kn=!0}return!!n||!!i}async function ei(t){if(!ue(t))return;try{require.resolve("@prefresh/webpack")}catch{let r=["@prefresh/webpack"],i=require(wt.default.join(t,"manifest.json")).name||"Extension.js";await j(i,"Preact",r),console.log(F(i,"Preact")),process.exit(0)}return{plugins:[new(require("@prefresh/webpack"))],loaders:void 0,alias:{react:"preact/compat","react-dom/test-utils":"preact/test-utils","react-dom":"preact/compat","react/jsx-runtime":"preact/jsx-runtime"}}}var xt=a(require("path")),si=a(require("fs"));var ti=!1;function me(t){let e=xt.default.join(t,"package.json"),s=xt.default.join(t,"manifest.json");if(!si.default.existsSync(e))return!1;let r=require(e),n=r.devDependencies&&r.devDependencies.react,i=r.dependencies&&r.dependencies.react;if((n||i)&&!ti){let c=require(s).name||"Extension.js";process.env.EXTENSION_ENV==="development"&&console.log(_(c,"React")),ti=!0}return!!n||!!i}async function ri(t){if(!me(t))return;try{require.resolve("@pmmmwh/react-refresh-webpack-plugin")}catch{let r=["react-refresh","@pmmmwh/react-refresh-webpack-plugin","react-refresh-typescript"],i=require(xt.default.join(t,"manifest.json")).name||"Extension.js";await j(i,"React",r),console.log(F(i,"React")),process.exit(0)}return{plugins:[new(require("@pmmmwh/react-refresh-webpack-plugin"))({overlay:!1})],loaders:void 0,alias:void 0}}var $e=a(require("path")),vt=a(require("fs"));var ni=!1;function H(t){let e=$e.default.join(t,"package.json");if(!vt.default.existsSync(e))return!1;let s=rl(t),r=require(e),n=require($e.default.join(t,"manifest.json")),i=n.name||"Extension.js",o=r.devDependencies&&r.devDependencies.typescript,c=r.dependencies&&r.dependencies.typescript;return ni||((o||c)&&(s?process.env.EXTENSION_ENV==="development"&&console.log(_(i,"TypeScript")):(console.log(wn(n)),nl(t))),ni=!0),!!s&&!!(o||c)}function sl(t,e){return{compilerOptions:{allowJs:!0,allowSyntheticDefaultImports:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,jsx:lt(t)?"react-jsx":"preserve",lib:["dom","dom.iterable","esnext"],moduleResolution:"node",module:"esnext",resolveJsonModule:!0,strict:!0,target:"esnext",isolatedModules:!1,skipLibCheck:!0},exclude:["node_modules","dist"]}}function rl(t){let e=$e.default.join(t,"tsconfig.json");if(vt.default.existsSync(e))return e}function nl(t){vt.default.writeFileSync($e.default.join(t,"tsconfig.json"),JSON.stringify(sl(t,{mode:"development"}),null,2))}var _t=class t{static name="plugin-js-frameworks";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async configureOptions(e){let s=e.options.mode||"development",r=tr.default.dirname(this.manifestPath),n=await Yn(e,r),i=await ri(r),o=await ei(r),c=await Jn(r);e.options.resolve.alias={...n?.alias||{},...i?.alias||{},...o?.alias||{},...c?.alias||{},...e.options.resolve.alias},e.options.module.rules=[{test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[tr.default.dirname(this.manifestPath)],exclude:/node_modules/,use:{loader:require.resolve("swc-loader"),options:{sync:!0,module:{type:"es6"},minify:s==="production",isModule:!0,jsc:{target:"es2016",parser:{syntax:H(r)?"typescript":"ecmascript",tsx:H(r)&&(me(r)||ue(r)),jsx:!H(r)&&(me(r)||ue(r)),dynamicImport:!0},transform:{react:{development:s==="development",refresh:s==="development",runtime:"automatic",importSource:"react"}}}}}},...n?.loaders||[],...i?.loaders||[],...o?.loaders||[],...c?.loaders||[],...e.options.module.rules].filter(Boolean),i?.plugins?.forEach(p=>p.apply(e)),o?.plugins?.forEach(p=>p.apply(e)),c?.plugins?.forEach(p=>p.apply(e))}async apply(e){if((e.options.mode||"development")==="production"){e.hooks.beforeRun.tapPromise(t.name,async()=>await this.configureOptions(e));return}await this.configureOptions(e)}};var qe=a(require("path"));var Ji=a(require("path"));var ii=a(require("path"));function oi(t,e){if(!e||!e.action||!e.action.default_popup)return;let s=e.action.default_popup;return ii.default.join(t,s)}var ai=a(require("path"));function ci(t,e){if(!e||!e.browser_action||!e.browser_action.default_popup)return;let s=e.browser_action.default_popup;return ai.default.join(t,s)}var St=a(require("path"));function pi(t,e){let s={newtab:void 0};if(!e||!e.chrome_url_overrides)return{"chrome_url_overrides/newtab":void 0};if(e.chrome_url_overrides.history){let r=e.chrome_url_overrides.history;s={"chrome_url_overrides/history":St.default.join(t,r)}}if(e.chrome_url_overrides.newtab){let r=e.chrome_url_overrides.newtab;s={"chrome_url_overrides/newtab":St.default.join(t,r)}}if(e.chrome_url_overrides.bookmarks){let r=e.chrome_url_overrides.bookmarks;s={"chrome_url_overrides/bookmarks":St.default.join(t,r)}}return s}var li=a(require("path"));function fi(t,e){if(!e||!e.devtools_page)return;let s=e.devtools_page;return li.default.join(t,s)}var sr=a(require("path"));function ui(t,e){if(e.options_page){let r=e.options_page;return sr.default.join(t,r)}if(!e||!e.options_ui||!e.options_ui.page)return;let s=e.options_ui.page;return sr.default.join(t,s)}var mi=a(require("path"));function di(t,e){if(!e||!e.page_action||!e.page_action.default_popup)return;let s=e.page_action.default_popup;return mi.default.join(t,s)}var gi=a(require("path"));function hi(t,e){if(!e||!e.sandbox||!e.sandbox.pages)return{"sandbox/page-0":void 0};let s=e.sandbox.pages,r={};for(let[n,i]of s.entries())r[`sandbox/page-${n}`]=gi.default.join(t,i);return r}var yi=a(require("path"));function bi(t,e){if(!e||!e.side_panel||!e.side_panel.default_path)return;let s=e.side_panel.default_path;return yi.default.join(t,s)}var wi=a(require("path"));function xi(t,e){if(!e||!e.sidebar_action||!e.sidebar_action.default_panel)return;let s=e.sidebar_action.default_panel;return wi.default.join(t,s)}function Ce(t,e){return{"action/default_popup":oi(t,e),"browser_action/default_popup":ci(t,e),...pi(t,e),devtools_page:fi(t,e),"options_ui/page":ui(t,e),"page_action/default_popup":di(t,e),...hi(t,e),"side_panel/default_path":bi(t,e),"sidebar_action/default_panel":xi(t,e)}}var rr=a(require("path"));function vi(t,e){if(!e||!e.action||!e.action.default_icon)return;if(typeof e.action.default_icon=="string")return rr.default.join(t,e.action.default_icon);let s=[];for(let r in e.action.default_icon)s.push(rr.default.join(t,e.action.default_icon[r]));return s}var nr=a(require("path"));function _i(t,e){if(!e||!e.browser_action||!e.browser_action.default_icon)return;let s=[];if(typeof e.browser_action.default_icon=="string")return nr.default.join(t,e.browser_action.default_icon);for(let r in e.browser_action.default_icon){let n=e.browser_action.default_icon[r]=nr.default.join(t,e.browser_action.default_icon[r]);s.push(n)}return s}var ir=a(require("path"));function Si(t,e){if(!(!e||!e.browser_action||!e.browser_action.theme_icons)){for(let s of e.browser_action.theme_icons)s.light&&(s.light=ir.default.join(t,s.light)),s.dark&&(s.dark=ir.default.join(t,s.dark)),s.size&&delete s.size;return e.browser_action.theme_icons}}var Pi=a(require("path"));function ki(t,e){if(!e||!e.icons)return;let s=[];for(let r in e.icons){let n=Pi.default.join(t,e.icons[r]);s.push(n)}return s}var or=a(require("path"));function Ei(t,e){if(!e||!e.page_action||!e.page_action.default_icon)return;if(typeof e.page_action.default_icon=="string")return or.default.join(t,e.page_action.default_icon);let s=[];for(let r in e.page_action.default_icon){let n=or.default.join(t,e.page_action.default_icon[r]);s.push(n)}return s}var ji=a(require("path"));function $i(t,e){return!e||!e.sidebar_action||!e.sidebar_action.default_icon?void 0:ji.default.join(t,e.sidebar_action.default_icon)}function Ci(t,e){return{action:vi(t,e),browser_action:_i(t,e),"browser_action/theme_icons":Si(t,e),icons:ki(t,e),page_action:Ei(t,e),sidebar_action:$i(t,e)}}var Fi=a(require("path"));function Di(t,e){let s={};return!e||!e.declarative_net_request||!e.declarative_net_request.rule_resources?{"declarative_net_request/rule_resources-0":void 0}:(e.declarative_net_request.rule_resources.forEach(n=>{s[`declarative_net_request/${n.id}`]=Fi.default.join(t,n.path)}),s)}var Li=a(require("path"));function Ii(t,e){if(!e||!e.storage||!e.storage.managed_schema)return;let s=e.storage.managed_schema;return Li.default.join(t,s)}function Oi(t,e){return{...Di(t,e),"storage/managed_schema":Ii(t,e)}}var Fe=a(require("path")),Pt=a(require("fs"));function Mi(t,e){let s=Fe.default.join(Fe.default.dirname(e),"_locales"),r=[];if(Pt.default.existsSync(s))for(let n of Pt.default.readdirSync(s)){let i=Fe.default.join(s,n);for(let o of Pt.default.readdirSync(i))r.push(Fe.default.join(t,"_locales",n,o))}return r}var Ai=a(require("path"));function Ri(t,e){if(!e||!e.background)return;let s=e.background.scripts;if(s)return s.map(r=>Ai.default.join(t,r))}var Ni=a(require("path"));function Ti(t,e){if(!e||!e.background)return;let s=e.background.service_worker;if(s)return Ni.default.join(t,s)}var ar=a(require("path"));function qi(t,e){if(!e||!e.content_scripts)return{"content_scripts/content-0":void 0};let s=i=>{if(i.js?.length!==0)return i.js?.map(o=>ar.default.join(t,o))},r=i=>{if(i.css?.length!==0)return i.css?.map(o=>ar.default.join(t,o))},n={};for(let[i,o]of e.content_scripts.entries()){let c=s(o),p=r(o);n[`content_scripts/content-${i}`]=[...(c||[]).filter(l=>l!=null),...(p||[]).filter(l=>l!=null)]}return n}var Ui=a(require("path"));function Wi(t,e){if(!e||!e.user_scripts||!e.user_scripts.api_script)return;let s=e.user_scripts.api_script;return Ui.default.join(t,s)}function De(t,e){return{"background/scripts":Ri(t,e),"background/service_worker":Ti(t,e),...qi(t,e),"user_scripts/api_script":Wi(t,e)}}function Bi(t){if(!(!t||!t.web_accessible_resources||!t.web_accessible_resources.length))return t.web_accessible_resources}function de({manifestPath:t,browser:e}){let s=Ji.default.dirname(t),r=require(t),n=ce(r,e||"chrome");return{html:Ce(s,n),icons:Ci(s,n),json:Oi(s,n),locales:Mi(s,t),scripts:De(s,n),web_accessible_resources:Bi(n)}}var ge=a(require("path"));var kt=a(require("fs")),Le=a(require("path"));function Et(t,e){if(!kt.default.existsSync(t)||!kt.default.statSync(t).isDirectory())return[];let s=[];function r(n){let i=kt.default.readdirSync(n,{withFileTypes:!0});for(let o of i){let c=Le.default.join(n,o.name);o.isDirectory()?r(c):o.isFile()&&e(o.name)&&s.push(c)}}return r(t),s}function jt(t,e,s=""){return!e||!e.length?{}:e.reduce((r,n)=>{let i=Le.default.extname(n),o=Le.default.basename(n,i),c=s?`${s}/${o}`:Le.default.relative(t,n);return{...r,[c]:n}},{})}function zi({manifestPath:t}){let e=ge.default.dirname(t),s={public:ge.default.join(e,"public"),pages:ge.default.join(e,"pages"),scripts:ge.default.join(e,"scripts")},r={public:Et(s.public,()=>!0),pages:Et(s.pages,i=>i.endsWith(".html")),scripts:Et(s.scripts,i=>[".js",".mjs",".jsx",".mjsx",".ts",".mts",".tsx",".mtsx"].includes(ge.default.extname(i)))};return{public:jt(e,r.public),pages:jt(e,r.pages,"pages"),scripts:jt(e,r.scripts,"scripts")}}var $t=a(require("path")),Hi=a(require("webpack")),Ct=class{manifestPath;includeList;excludeList;loaderOptions;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList,this.loaderOptions=e.loaderOptions}apply(e){new Hi.default.ProvidePlugin({r:[$t.default.resolve(__dirname,"./resolver-module.mjs"),"default"]}).apply(e),e.options.module?.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,loader:require.resolve($t.default.resolve(__dirname,"./resolver-loader.js")),include:[$t.default.dirname(this.manifestPath)],exclude:/node_modules/,options:{manifestPath:this.manifestPath,includeList:this.includeList,jsx:this.loaderOptions?this.loaderOptions.jsx:!1,typescript:this.loaderOptions?this.loaderOptions.typescript:!1,minify:this.loaderOptions?this.loaderOptions.minify:!1}})}};var Vi=a(require("fs")),Dt=a(require("webpack")),Gi=require("webpack");var Ft=class{manifestPath;constructor(e){this.manifestPath=e.manifestPath}apply(e){e.hooks.compilation.tap("manifest:emit-manifest",s=>{s.hooks.processAssets.tap({name:"manifest:emit-manifest",stage:Dt.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{let r=this.manifestPath,n;try{let c=Vi.default.readFileSync(r,"utf-8");n=JSON.parse(c)}catch(c){let l=require(this.manifestPath).name||"Extension.js";s.errors.push(new Dt.default.WebpackError(hn(l,c)));return}let i=JSON.stringify(n,null,2);s.emitAsset("manifest.json",new Gi.sources.RawSource(i))})})}};var Eo=a(require("path")),Ie=require("webpack");function Xi(t,e){return t.background&&t.background.scripts&&{background:{...t.background,...t.background.scripts&&{scripts:[...t.background.scripts.map(s=>y("background/scripts.js",s,e))]}}}}var Zi=a(require("path"));var Lt=t=>Zi.default.basename(t);function Yi(t,e){return t.browser_action&&{browser_action:{...t.browser_action,...t.browser_action.default_popup&&{default_popup:y("browser_action/default_popup.html",t.browser_action.default_popup,e)},...t.browser_action.default_icon&&{default_icon:typeof t.browser_action.default_icon=="string"?y(`icons/${Lt(t.browser_action.default_icon)}`,t.browser_action.default_icon,e):Object.fromEntries(Object.entries(t.browser_action.default_icon).map(([s,r])=>[s,y(`icons/${Lt(r)}`,r,e)]))},...t.browser_action.theme_icons&&{theme_icons:t.browser_action.theme_icons.map(s=>({...s,...s.light&&{light:y(`browser_action/${Lt(s.light)}`,s.light,e)},...s.dark&&{dark:y(`browser_action/${Lt(s.dark)}`,s.dark,e)}}))}}}}function Ki(t,e){return t.declarative_net_request&&{declarative_net_request:{...t.declarative_net_request,rule_resources:t.declarative_net_request.rule_resources.map(s=>({...s,path:s.path&&y(`declarative_net_request/${s.id}.json`,s.path,e)}))}}}function Qi(t,e){return{...Xi(t,e),...Yi(t,e),...Ki(t,e)}}var to=a(require("path"));var eo=t=>to.default.basename(t);function so(t,e){return t.action&&{action:{...t.action,...t.action.default_popup&&{default_popup:y("action/default_popup.html",t.action.default_popup,e)},...t.action.default_icon&&{default_icon:typeof t.action.default_icon=="string"?y(`action/${eo(t.action.default_icon)}`,t.action.default_icon,e):Object.fromEntries(Object.entries(t.action.default_icon).map(([s,r])=>[s,y(`action/${eo(r)}`,r,e)]))}}}}function ro(t,e){return t.background&&t.background.service_worker&&{background:{...t.background,...t.background.service_worker&&{service_worker:y("background/service_worker.js",t.background.service_worker,e)}}}}function It(t,e){return t.side_panel&&{side_panel:{...t.side_panel.default_path&&{default_path:y("side_panel/default_path.html",t.side_panel.default_path,e)}}}}function no(t,e){return{...so(t,e),...ro(t,e),...It(t,e)}}function io(t,e){return t.background&&t.background.page&&{background:{...t.background,...t.background.page&&{page:y("background/page.html",t.background.page,e)}}}}function oo(t,e){return t.chrome_url_overrides&&{chrome_url_overrides:{...t.chrome_url_overrides.bookmarks&&{bookmarks:y("chrome_url_overrides/bookmarks.html",t.chrome_url_overrides.bookmarks,e)},...t.chrome_url_overrides.history&&{history:y("chrome_url_overrides/history.html",t.chrome_url_overrides.history,e)},...t.chrome_url_overrides.newtab&&{newtab:y("chrome_url_overrides/newtab.html",t.chrome_url_overrides.newtab,e)}}}}function ao(t,e){return t.content_scripts&&{content_scripts:t.content_scripts.map((s,r)=>{let n=[...new Set(s.js)],i=[...new Set(s.css)];return{...s,js:[...n.map(o=>y(`content_scripts/content-${r}.js`,o,e))],css:[...i.map(o=>y(`content_scripts/content-${r}.css`,o,e))]}})}}function co(t,e){return t.devtools_page&&{devtools_page:y("devtools_page.html",t.devtools_page,e)}}var po=a(require("path"));var il=t=>po.default.basename(t);function lo(t,e){return t.icons&&{icons:Object.fromEntries(Object.entries(t.icons).map(([s,r])=>[s,y(`icons/${il(r)}`,r,e)]))}}function fo(t,e){return t.options_page&&{options_page:y("options_ui/page.html",t.options_page,e)}}function uo(t,e){return t.options_ui&&{options_ui:{...t.options_ui,...t.options_ui.page&&{page:y("options_ui/page.html",t.options_ui.page,e)}}}}var go=a(require("path"));var mo=t=>go.default.basename(t);function ho(t,e){return t.page_action&&{page_action:{...t.page_action,...t.page_action.default_popup&&{default_popup:y("page_action/default_popup.html",t.page_action.default_popup,e)},...t.page_action.default_icon&&{default_icon:typeof t.page_action.default_icon=="string"?y(`icons/${mo(t.page_action.default_icon)}`,t.page_action.default_icon,e):Object.fromEntries(Object.entries(t.page_action.default_icon).map(([s,r])=>[s,y(`icons/${mo(r)}`,r,e)]))}}}}function yo(t,e){return t.sandbox&&{sandbox:{...t.sandbox,...t.sandbox.pages&&{pages:t.sandbox.pages.map((s,r)=>y(`sandbox/page-${r}.html`,s,e))}}}}var bo=a(require("path"));var ol=t=>bo.default.basename(t);function wo(t,e){return t.sidebar_action&&{sidebar_action:{...t.sidebar_action,...t.sidebar_action.default_panel&&{default_panel:y("sidebar_action/default_panel.html",t.sidebar_action.default_panel,e)},...t.sidebar_action.default_icon&&{default_icon:y(`icons/${ol(t.sidebar_action.default_icon)}`,t.sidebar_action.default_icon,e)}}}}function xo(t,e){return t.storage&&{storage:{...t.storage.managed_schema&&{managed_schema:y("storage/managed_schema.json",t.storage.managed_schema,e)}}}}var vo=a(require("path"));var al=t=>vo.default.basename(t);function _o(t,e){return t.theme&&{theme:{...t.theme,...t.theme.images&&{images:{...t.theme.images,theme_frame:y(`theme/images/${al(t.theme.images.theme_frame)}`,t.theme.images.theme_frame,e)}}}}}function So(t,e){return t.user_scripts&&{user_scripts:{...t.user_scripts,...t.user_scripts.api_script&&{api_script:y("user_scripts/api_script.js",t.user_scripts.api_script,e)}}}}function Po(t){return t.web_accessible_resources&&t.web_accessible_resources.length&&{web_accessible_resources:t.web_accessible_resources}}function ko(t,e){return{...io(t,e),...oo(t,e),...ao(t,e),...co(t,e),...lo(t,e),...fo(t,e),...uo(t,e),...ho(t,e),...yo(t,e),...It(t,e),...wo(t,e),...xo(t,e),..._o(t,e),...So(t,e),...Po(t)}}function cr(t,e,s){let r=e||require(t);return JSON.stringify({...r,...ko(r,s),...Qi(r,s),...no(r,s)},null,2)}var Ot=class{manifestPath;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.excludeList=e.excludeList}applyDevOverrides(e){return e.content_scripts?e.content_scripts.map((s,r)=>(s.css.length&&!s.js.length&&(s.js=[y(`content_scripts-${r}`,"dev.js",{})]),s)):{}}applyProdOverrides(e,s){return s.content_scripts?s.content_scripts.map((r,n)=>{if(r.js.length&&!r.css.length){let i=e.options.output?.path||"";r.css=r.js.map(o=>{let c=Eo.default.join(i,o.replace(".js",".css"));return y(`content_scripts/content-${n}.css`,c,{})})}return r}):{}}apply(e){e.hooks.thisCompilation.tap("manifest:update-manifest",s=>{s.hooks.processAssets.tap({name:"manifest:update-manifest",stage:Ie.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},()=>{if(s.errors.length>0)return;let r=B(s,this.manifestPath),n=cr(this.manifestPath,r,this.excludeList||{}),i={...r,...JSON.parse(n)};e.options.mode==="development"&&i.content_scripts&&(i.content_scripts=this.applyDevOverrides(i)),e.options.mode==="development"&&i.content_scripts&&(i.content_scripts=this.applyDevOverrides(i));let o=JSON.stringify(i,null,2),c=new Ie.sources.RawSource(o);s.updateAsset("manifest.json",c)}),e.options.mode==="production"&&s.hooks.afterProcessAssets.tap("manifest:update-manifest",()=>{if(s.errors.length>0)return;let r=B(s,this.manifestPath),n=cr(this.manifestPath,r,this.excludeList||{}),i={...r,...JSON.parse(n)};i.content_scripts&&(i.content_scripts=this.applyProdOverrides(e,i));let o=JSON.stringify(i,null,2),c=new Ie.sources.RawSource(o);s.updateAsset("manifest.json",c)})})}};var jo=a(require("fs")),Mt=class{dependencyList;constructor(e){this.dependencyList=e}apply(e){e.hooks.afterCompile.tap("ManifestPlugin (AddDependenciesPlugin)",s=>{if(s.errors?.length)return;let r=new Set(s.fileDependencies);this.dependencyList&&this.dependencyList.forEach(n=>{jo.default.existsSync(n)&&(r.has(n)||(r.add(n),s.fileDependencies.add(n)))})})}};var $o=a(require("fs")),Co=a(require("path")),Rt=a(require("webpack"));var At=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}extractPaths(e){let s=Array.isArray(e)?e:[e];if(typeof s[0]=="string")return s;let r=[];if(typeof e=="object"&&!Array.isArray(e)){let n=e;n.light&&r.push(n.light),n.dark&&r.push(n.dark)}return r}handleErrors(e,s){let r=[".png",".jpg",".jpeg",".svg",".gif",".webp"],n=[".json"],i=[".js",".ts",".jsx",".tsx",".mjs",".cjs"],o=".html",c=Object.entries(this.includeList||{});for(let[p,l]of c)if(l){let u=this.extractPaths(l);for(let d of u){let g=Co.default.extname(d),v=require(this.manifestPath).name||"Extension.js";if(!$o.default.existsSync(d)){let P=ne(v,p,d);r.includes(g)?e.errors.push(new s(P)):n.includes(g)?e.errors.push(new s(P)):i.includes(g)?e.errors.push(new s(P)):g===o?e.errors.push(new s(P)):e.errors.push(new s(P))}}}}apply(e){e.hooks.compilation.tap("manifest:check-manifest-files",s=>{s.hooks.processAssets.tap({name:"compatibility:check-manifest-files",stage:Rt.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_COUNT},()=>{let r=Rt.default.WebpackError;this.handleErrors(s,r)})})}};var Fo=a(require("fs")),Tt=a(require("webpack"));var Nt=class{manifestPath;browser;includeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList}flattenAndSort(e){return e.flat(1/0).sort()}apply(e){e.hooks.watchRun.tapAsync("manifest:throw-if-recompile-is-needed",(s,r)=>{if((s.modifiedFiles||new Set).has(this.manifestPath)){let i=s.options.context||"",o=`${i}/package.json`;if(!Fo.default.existsSync(o)){r();return}let c=require(this.manifestPath),p=ce(c,this.browser),l=this.flattenAndSort(Object.values(Ce(i,p))),u=this.flattenAndSort(Object.values(De(i,p)));s.hooks.thisCompilation.tap("manifest:throw-if-recompile-is-needed",d=>{d.hooks.processAssets.tap({name:"manifest:check-manifest-files",stage:Tt.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_COMPATIBILITY},()=>{let h=d.getAsset("manifest.json")?.source.source().toString(),v=JSON.parse(h||"{}"),P=this.flattenAndSort(Object.values(Ce(i,v))),C=this.flattenAndSort(Object.values(De(i,v)));if(u.toString()!==C.toString()||l.toString()!==P.toString()){let M=l.filter(N=>!P.includes(N))[0],R=P.filter(N=>!l.includes(N))[0],K=yn(R,M);d.errors.push(new Tt.default.WebpackError(K))}})})}r()})}};var qt=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new Ft({manifestPath:this.manifestPath}).apply(e),new At({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Ot({manifestPath:this.manifestPath,excludeList:this.excludeList}).apply(e),new Mt([this.manifestPath]).apply(e),new Nt({manifestPath:this.manifestPath,browser:this.browser,includeList:this.includeList}).apply(e)}};var mr=a(require("path"));var lr=a(require("fs")),Bt=a(require("webpack")),Mo=require("webpack");var Do=a(require("fs")),ye=a(require("path")),Lo=a(require("parse5-utils"));var he=a(require("parse5-utils"));function Ut(t){try{return new URL(t),!0}catch{return!1}}function Oe(t,e){let{childNodes:s=[]}=t;for(let r of s)if(r.nodeName==="script"){let n=he.default.getAttribute(r,"src");if(!n||Ut(n))continue;e({filePath:n,childNode:r,assetType:"script"})}else if(r.nodeName==="link"){let n=he.default.getAttribute(r,"href"),i=he.default.getAttribute(r,"rel");if(!n||Ut(n))continue;e(i==="dns-prefetch"||i==="icon"||i==="manifest"||i==="modulepreload"||i==="preconnect"||i==="prefetch"||i==="preload"||i==="prerender"?{filePath:n,childNode:r,assetType:"staticHref"}:{filePath:n,childNode:r,assetType:"css"})}else if(r.nodeName==="a"||r.nodeName==="area"){let n=he.default.getAttribute(r,"href");if(!n||Ut(n))continue;e({filePath:n,childNode:r,assetType:"staticHref"})}else if(r.nodeName==="audio"||r.nodeName==="embed"||r.nodeName==="iframe"||r.nodeName==="img"||r.nodeName==="input"||r.nodeName==="source"||r.nodeName==="track"||r.nodeName==="video"){let n=he.default.getAttribute(r,"src");if(!n||Ut(n))continue;e({filePath:n,childNode:r,assetType:"staticSrc"})}else Oe(r,e)}function $(t,e){let s={css:[],js:[],static:[]};if(!t)return s;let r=e||Do.default.readFileSync(t,{encoding:"utf8"}),n=Lo.default.parse(r),i=(o,c)=>ye.default.join(ye.default.dirname(o),c.startsWith("/")?ye.default.relative(ye.default.dirname(o),c):c);for(let o of n.childNodes)if(o.nodeName==="html"){for(let c of o.childNodes)(c.nodeName==="head"||c.nodeName==="body")&&Oe(c,({filePath:p,assetType:l})=>{let u=i(t,p);switch(l){case"script":s.js?.push(u);break;case"css":s.css?.push(u);break;case"staticSrc":case"staticHref":if(p.startsWith("#"))break;s.static?.push(u);break;default:break}});return{css:s.css,js:s.js,static:s.static}}}function Io(t,e,s){let r=Object.keys(t).find(i=>{let o=t[i];return t[i]===e||$(o)?.js?.includes(e)||$(o)?.css?.includes(e)})||"",n=pr(e);return r?`/${r.replace(n,"")}${s}`:`${e.replace(n,"")}${s}`}function pr(t){switch(ye.default.extname(t)){case".js":case".mjs":case".ts":case".tsx":return".js";case".css":case".scss":case".sass":case".less":return".css";case".html":return".html";default:return".js"}}function V(t,e,s){return s?`/${t}${e}`:`${t}${e}`}function Oo(t,e){return Object.values(e||{}).some(s=>s===t)}var Wt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){let r=require(this.manifestPath).name||"Extension.js";e.hooks.thisCompilation.tap("html:emit-html-file",n=>{n.hooks.processAssets.tap({name:"AddAssetsToCompilationPlugin",stage:Bt.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL},()=>{let i=Object.entries(this.includeList||{});for(let o of i){let[c,p]=o;if(p){if(!lr.default.existsSync(p)){let u=ne(r,c,p);n.warnings.push(new Bt.default.WebpackError(u));return}let l=lr.default.readFileSync(p,"utf8");if(!k(p,this.excludeList)){let u=new Mo.sources.RawSource(l),d=V(c,".html");n.emitAsset(d,u)}}}})})}};var Jt=a(require("fs")),be=a(require("path")),Ao=a(require("webpack")),Me=require("webpack");var zt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.thisCompilation.tap("html:add-assets-to-compilation",s=>{s.hooks.processAssets.tap({name:"html:add-assets-to-compilation",stage:Me.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL},()=>{if(s.errors.length>0)return;let r=Object.entries(this.includeList||{});for(let n of r){let[i,o]=n,c=i+".html";if(o){let p=s.getAsset(c);if(p){let l=p.source.source().toString(),u=$(o,l)?.static,d=[...new Set(u)];for(let g of d)if(!g.includes("public/")){if(!Jt.default.existsSync(g)&&!Oo(g,this.includeList)&&!be.default.basename(g).startsWith("#")){let M=rt(require(this.manifestPath).name,o,g);s.warnings.push(new Ao.default.WebpackError(M));return}let h=Jt.default.readFileSync(g),v=new Me.sources.RawSource(h),P=be.default.join("assets",be.default.basename(g));if(!s.getAsset(P))if(g.endsWith(".html")){let C=$(g),M=[...C?.js||[],...C?.css||[],...C?.static||[]];s.emitAsset(P,v),M.forEach(R=>{let K=Jt.default.readFileSync(R),N=new Me.sources.RawSource(K),Gr=be.default.join("assets",be.default.basename(R));s.getAsset(Gr)||s.emitAsset(Gr,N)})}else s.emitAsset(P,v)}}}}})})}};var Ro=a(require("path")),fr=a(require("fs"));var Ht=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){let s=this.includeList||{};for(let r of Object.entries(s)){let[n,i]=r;if(i){if(!fr.default.existsSync(i))return;let o=$(i),c=o?.js||[],p=o?.css||[],l=[...c,...p].filter(u=>!k(u,this.excludeList));if(e.options.mode==="development"){let u=Ro.default.resolve(__dirname,"minimum-script-file.mjs");l.push(u)}fr.default.existsSync(i)&&(k(i,this.excludeList)||(e.options.entry={...e.options.entry,[n]:{import:l}}))}}}};var Gt=require("webpack");var ur=a(require("fs")),G=a(require("path")),L=a(require("parse5-utils"));function No(t,e,s,r,n){let i=ur.default.readFileSync(s,{encoding:"utf8"}),o=L.default.parse(i),c=!!t.getAsset(e+".css"),p=!1;for(let l of o.childNodes)if(l.nodeName==="html"){for(let u of l.childNodes){if((u.nodeName==="head"||u.nodeName==="body")&&Oe(u,({filePath:d,childNode:g,assetType:h})=>{let v=G.default.dirname(s),P=G.default.resolve(v,d),C=pr(P),M=k(G.default.resolve(v,d),n),R=G.default.join("/",G.default.normalize(d)),K=Dn(P,r);switch(h){case"script":{M?l=L.default.setAttribute(g,"src",R):(l=L.default.remove(g),p=!0);break}case"css":{M?l=L.default.setAttribute(g,"href",R):(l=L.default.remove(g),c=!0);break}case"staticHref":case"staticSrc":{if(M)l=L.default.setAttribute(g,h==="staticSrc"?"src":"href",R);else if(K){let N=Io(r,P,C);l=L.default.setAttribute(g,h==="staticSrc"?"src":"href",N)}else{let N=G.default.join("assets",G.default.basename(P,C));ur.default.existsSync(P)&&(l=L.default.setAttribute(g,h==="staticSrc"?"src":"href",V(N,"",!0)))}break}default:break}}),u.nodeName==="head"&&c&&t.options.mode==="production"){let d=L.default.createNode("link");d.attrs=[{name:"rel",value:"stylesheet"},{name:"href",value:V(e,".css",!0)}],L.default.append(u,d)}if(u.nodeName==="body"&&(p||t.options.mode!=="production")){let d=L.default.createNode("script");d.attrs=[{name:"src",value:V(e,".js",!0)}],L.default.append(u,d)}}return L.default.serialize(o)}}var Vt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("html:update-html-file",s=>{s.hooks.processAssets.tap({name:"html:update-html-file",stage:Gt.Compilation.PROCESS_ASSETS_STAGE_DERIVED},()=>{if(s.errors.length>0)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[i,o]=n;if(o){let c=No(s,i,o,r,this.excludeList||{});if(!k(o,this.excludeList)&&c){let p=new Gt.sources.RawSource(c),l=V(i,".html");s.updateAsset(l,p)}}}})})}};var To=a(require("fs")),qo=require("webpack");var Xt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.thisCompilation.tap("html:add-to-file-dependencies",s=>{s.hooks.processAssets.tap({name:"html:add-to-file-dependencies",stage:qo.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(s.errors?.length)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[,i]=n;if(i){let o=$(i),c=new Set(s.fileDependencies);if(To.default.existsSync(i)){let p=[i,...o?.static||[]];for(let l of p)c.has(l)||(c.add(l),l===i&&s.fileDependencies.add(l))}}}})})}};var Uo=a(require("fs"));var Zt=class{manifestPath;includeList;initialHtmlAssets={};constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}hasEntriesChanged(e,s){if(!s||!e||e.length!==s.length)return!0;for(let r=0;r<e.length;r++)if(e[r]!==s[r])return!0;return!1}storeInitialHtmlAssets(e){Object.entries(e).forEach(([s,r])=>{let n=r;if(n){if(!Uo.default.existsSync(n)){let o=require(this.manifestPath).name||"Extension.js";console.error(ne(o,s,n)),process.exit(1)}this.initialHtmlAssets[n]={js:$(n)?.js||[],css:$(n)?.css||[]}}})}apply(e){let s=this.includeList||{};this.storeInitialHtmlAssets(s),e.hooks.make.tapAsync("html:throw-if-recompile-is-needed",(r,n)=>{let i=e.modifiedFiles||new Set,o=Array.from(i)[0];if(o&&this.initialHtmlAssets[o]){let c=$(o)?.js||[],p=$(o)?.css||[],{js:l,css:u}=this.initialHtmlAssets[o];if(this.hasEntriesChanged(p,u)||this.hasEntriesChanged(c,l)){let d=require(this.manifestPath).name;console.log(Sn(d,o))}}n()})}};var Wo=a(require("fs")),Bo=require("webpack");function pl(t,e,s){let r="Module not found: Error: Can't resolve ",i=s.message.replace(r,"").split("'")[1];if(s.message.includes(r))for(let o of Object.entries(e)){let[,c]=o;if(c){if(!Wo.default.existsSync(c))return null;let p=$(c),l=p?.js||[],u=p?.css||[];if(l.includes(i)||u.includes(i)){let d=rt(require(t).name,c,i);return new Bo.WebpackError(d)}}}return null}var Yt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.compilation.tap("html:handle-common-errors",s=>{s.hooks.afterSeal.tapPromise("html:handle-common-errors",async()=>{s.errors.forEach((r,n)=>{let i=pl(this.manifestPath,this.includeList||{},r);i&&(s.errors[n]=i)})})})}};var Kt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new Wt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new zt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Ht({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Vt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[mr.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(mr.default.join(__dirname,"ensure-hmr-for-scripts.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}}]}),new Xt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Zt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Yt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e)}};var Ae=a(require("path"));var dr=a(require("fs")),Jo=a(require("path"));function zo(t,e){return(Array.isArray(t)?t||[]:t?[t]:[]).filter(n=>{let i=dr.default.existsSync(n)&&!k(n,e),o=Jo.default.extname(n);return i&&(o===".js"||o===".mjs"||o===".jsx"||o===".ts"||o===".tsx")})}function Ho(t,e){return(Array.isArray(t)?t||[]:t?[t]:[]).filter(n=>dr.default.existsSync(n)&&!k(n,e)&&(n.endsWith(".css")||n.endsWith(".scss")||n.endsWith(".sass")||n.endsWith(".less")))}var Qt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList||{},this.excludeList=e.excludeList||{}}apply(e){let s=this.includeList||{},r={};for(let[n,i]of Object.entries(s)){let o=zo(i,this.excludeList),c=Ho(i,this.excludeList),p=[...o];e.options.mode==="production"&&p.push(...c),(c.length||o.length)&&(r[n]={import:p})}e.options.entry={...e.options.entry,...r}}};var ee=require("webpack"),ll=['var isBrowser = !!(() => { try { return browser.runtime.getURL("/") } catch(e) {} })()','var isChrome = !!(() => { try { return chrome.runtime.getURL("/") } catch(e) {} })()'],fl=[...ll,`var runtime = isBrowser ? browser : isChrome ? chrome : (typeof self === 'object' && self.addEventListener) ? { get runtime() { throw new Error("No chrome or browser runtime found") } } : { runtime: { getURL: x => x } }`],es=class t{apply(e){let{RuntimeGlobals:s}=e.webpack;e.hooks.compilation.tap("PublicPathRuntimeModule",r=>{r.hooks.runtimeRequirementInTree.for(s.publicPath).tap(t.name,n=>{let i=ul();return r.addRuntimeModule(n,i),!0})})}};function ul(){class t extends ee.RuntimeModule{constructor(){super("publicPath",ee.RuntimeModule.STAGE_BASIC)}generate(){let s=this.compilation?.outputOptions.publicPath;return ee.Template.asString([...fl,`var path = ${JSON.stringify(this.compilation?.getPath(s||"",{hash:this.compilation.hash||"XXXX"}))}`,`${ee.RuntimeGlobals.publicPath} = typeof importScripts === 'function' || !(isBrowser || isChrome) ? path : runtime.runtime.getURL(path);`])}}return new t}var ts=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList||{},this.excludeList=e.excludeList||{}}apply(e){let s=require(this.manifestPath);s.content_scripts?.some(r=>r.world&&r.world.toLowerCase()==="main")&&Q.includes(this.browser)&&!s.key&&(console.error(En(s.name||"")),process.exit(1))}};var ss=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new Qt({manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}).apply(e),e.options.mode==="development"&&e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Ae.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(Ae.default.join(__dirname,"inject-content-css-during-dev.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}}]}),e.options.mode==="development"&&e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Ae.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(Ae.default.join(__dirname,"add-hmr-accept-code.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}}]}),e.options.mode==="production"&&new es().apply(e),new ts({manifestPath:this.manifestPath,browser:this.browser||"chrome",includeList:this.includeList||{},excludeList:this.excludeList||{}}).apply(e)}};var hr=a(require("path")),Re=a(require("fs")),yr=a(require("webpack")),Ne=require("webpack");var we=a(require("path")),rs=a(require("fs"));function gr(t){let e=we.default.join(we.default.dirname(t),"_locales"),s=[];if(rs.default.existsSync(e))for(let r of rs.default.readdirSync(e)){let n=we.default.join(e,r);for(let i of rs.default.readdirSync(n))s.push(we.default.join(we.default.dirname(t),"_locales",r,i))}return s}var ns=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("locales:module",s=>{s.hooks.processAssets.tap({name:"locales:module",stage:Ne.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{let n=require(this.manifestPath).name||"Extension.js";if(!Re.default.existsSync(this.manifestPath)){s.errors.push(new yr.default.WebpackError(gn(n,this.manifestPath)));return}if(s.errors.length>0)return;let i=gr(this.manifestPath);for(let o of Object.entries(i||[])){let[c,p]=o,l=p;if(l){if(!Re.default.existsSync(l)){s.warnings.push(new yr.default.WebpackError(nt(n,c,l)));return}let u=Re.default.readFileSync(l),d=new Ne.sources.RawSource(u),g=e.options.context||hr.default.dirname(this.manifestPath);if(!k(l,this.excludeList)){let h=hr.default.relative(g,l);s.emitAsset(h,d)}}}})}),e.hooks.thisCompilation.tap("locales:module",s=>{s.hooks.processAssets.tap({name:"locales:module",stage:Ne.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(s.errors?.length)return;let r=gr(this.manifestPath);for(let n of Object.entries(r||[])){let[,i]=n;if(i){let o=new Set(s.fileDependencies),c=r||[];for(let p of c)Re.default.existsSync(p)&&(o.has(p)||(o.add(p),s.fileDependencies.add(p)))}}})})}};var is=a(require("fs")),Vo=a(require("webpack")),Te=require("webpack");var os=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("json:module",s=>{s.hooks.processAssets.tap({name:"json:module",stage:Te.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(s.errors.length>0)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[i,o]=n,c=Array.isArray(o)?o:[o];for(let p of c)if(p&&!k(p,this.excludeList)){if(!is.default.existsSync(p)){let g=require(this.manifestPath).name||"Extension.js";s.warnings.push(new Vo.default.WebpackError(nt(g,i,p)));return}let l=is.default.readFileSync(p),u=new Te.sources.RawSource(l);s.emitAsset(i+".json",u)}}})}),e.hooks.thisCompilation.tap("json:module",s=>{s.hooks.processAssets.tap({name:"json:module",stage:Te.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(s.errors?.length)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[,i]=n,o=Array.isArray(i)?i:[i];for(let c of o)if(c){let p=new Set(s.fileDependencies);k(c,this.excludeList)||is.default.existsSync(c)&&(p.has(c)||(p.add(c),s.fileDependencies.add(c)))}}})})}};var br=a(require("fs")),Go=a(require("path")),cs=require("webpack");var as=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("icons:emit-file",s=>{s.hooks.processAssets.tap({name:"icons:emit-file",stage:cs.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER},()=>{if(s.errors.length>0)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[i,o]=n;if(o===void 0)continue;let c=Array.isArray(o)?typeof o[0]=="string"?o:o.map(Object.values).flat():[o];for(let p of c)if(p){if(!br.default.existsSync(p))continue;if(!k(p,this.excludeList)){let l=br.default.readFileSync(p),u=new cs.sources.RawSource(l),d=Go.default.basename(p),h=`${i.endsWith("theme_icons")?i.replace("theme_icons",""):i}/${d}`;s.emitAsset(h,u)}}}})})}};var Xo=a(require("fs")),Zo=require("webpack"),ps=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("icons:add-to-file-dependencies",s=>{s.hooks.processAssets.tap({name:"icons:add-to-file-dependencies",stage:Zo.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(s.errors?.length)return;let r=this.includeList||{};for(let n of Object.entries(r)){let[,i]=n,o=Array.isArray(i)?typeof i[0]=="string"?i:i.map(Object.values).flat():[i];for(let c of o)if(c){let p=new Set(s.fileDependencies);Xo.default.existsSync(c)&&(p.has(c)||(p.add(c),s.fileDependencies.add(c)))}}})})}};var ls=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new as({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new ps({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e)}};var us=require("webpack");function Yo(t){return t.map(e=>{try{let s=new URL(e.replace(/^\*:\/\//,"https://"));return e.endsWith(s.pathname)?`${e.substring(0,e.length-s.pathname.length)}/*`:s.pathname==="/"?`${e}/*`:e}catch{return e}})}var fs=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}generateManifestPatches(e,s){let r=B(e,this.manifestPath),n=r.web_accessible_resources||[],i=r.web_accessible_resources||[];for(let[p,l]of Object.entries(s)){let u=r.content_scripts?.find(d=>d.js&&d.js.some(g=>g.includes(p)));if(u){let d=u.matches||[];if(r.manifest_version===3){let g=n.find(h=>h.matches.some(v=>d.includes(v)));g?l.forEach(h=>{!g.resources.includes(h)&&!h.endsWith(".map")&&g.resources.push(h)}):n.push({resources:l.filter(h=>!h.endsWith(".map")),matches:Yo(d)})}else l.forEach(g=>{i.includes(g)||i.push(g)})}}r.manifest_version===3?n.length>0&&(r.web_accessible_resources=n):i.length>0&&(r.web_accessible_resources=Array.from(new Set(i)));let o=JSON.stringify(r,null,2),c=new us.sources.RawSource(o);e.getAsset("manifest.json")&&e.updateAsset("manifest.json",c)}apply(e){e.hooks.thisCompilation.tap("plugin-extension:feature-web-resources",s=>{s.hooks.processAssets.tap({name:"plugin-extension:feature-web-resources",stage:us.Compilation.PROCESS_ASSETS_STAGE_ANALYSE},()=>{let r=[],n=Object.keys(this.includeList||{});for(let c of n.filter(Boolean))c.startsWith("content_scripts")&&(Array.isArray(c)?r.push(...c):typeof c=="string"&&r.push(c));let i=s.chunkGraph,o={};s.entrypoints.forEach((c,p)=>{if(r.includes(p)){let l=[];c.chunks.forEach(u=>{Array.from(i.getChunkModulesIterable(u)).forEach(g=>{i.getModuleChunks(g).forEach(h=>{h.auxiliaryFiles.forEach(v=>{l.includes(v)||l.push(v)})})})}),o[p]=l}}),this.generateManifestPatches(s,o)})})}};var I=a(require("fs")),O=a(require("path")),Ko=a(require("chokidar")),ms=class{options;constructor(e){this.options=e}ensureDirectoryExistence(e){let s=O.default.dirname(e);if(I.default.existsSync(s))return!0;I.default.mkdirSync(s,{recursive:!0})}copyFile(e,s){this.ensureDirectoryExistence(s),I.default.copyFileSync(e,s)}copyFolder(e,s){I.default.existsSync(s)||I.default.mkdirSync(s,{recursive:!0}),I.default.readdirSync(e).forEach(n=>{let i=O.default.join(e,n),o=O.default.join(s,n);I.default.statSync(i).isDirectory()?this.copyFolder(i,o):this.copyFile(i,o)})}apply(e){let s=O.default.dirname(this.options.manifestPath),r=O.default.join(s,"public"),n=e.options.output?.path||"";I.default.existsSync(r)&&(e.hooks.afterEmit.tap("special-folders:copy-public-folder",()=>{let i=O.default.join(n,"public");I.default.existsSync(i)||I.default.mkdirSync(i,{recursive:!0}),I.default.existsSync(r)&&this.copyFolder(r,i)}),e.options.mode!=="production"&&e.hooks.afterPlugins.tap("special-folders:copy-public-folder",()=>{let i=O.default.join(s,"public"),o=Ko.default.watch(i,{ignoreInitial:!0});o.on("add",c=>{let p=O.default.join(n,O.default.relative(s,c));this.copyFile(c,p)}),o.on("change",c=>{let p=O.default.join(n,O.default.relative(s,c));this.copyFile(c,p)}),o.on("unlink",c=>{let p=O.default.join(n,O.default.relative(s,c));I.default.existsSync(p)&&I.default.unlinkSync(p)}),e.hooks.watchClose.tap("special-folders:copy-public-folder",()=>{o.close().catch(console.error)})}))}};var U=a(require("path")),wr=a(require("chokidar"));var ds=class{manifestPath;constructor(e){this.manifestPath=e}throwCompilationError(e,s,r){let n=U.relative(process.cwd(),s),p=bn(r?"Adding":"Removing",r?"added":"removed",e,e==="pages"?"HTML pages":"script files",n);if(r){console.warn(p);return}console.error(p),process.exit(1)}apply(e){e.hooks.afterPlugins.tap("special-folders:warn-upon-folder-changes",()=>{let s=U.dirname(this.manifestPath),r=U.join(s,"pages"),n=U.join(s,"scripts"),i=wr.watch(r,{ignoreInitial:!0}),o=wr.watch(n,{ignoreInitial:!0}),c=e.options.resolve?.extensions;i.on("add",p=>{p.endsWith(".html")&&this.throwCompilationError("pages",p,!0)}),i.on("unlink",p=>{p.endsWith(".html")&&this.throwCompilationError("pages",p)}),o.on("add",p=>{c?.includes(U.extname(p))&&this.throwCompilationError("scripts",p,!0)}),o.on("unlink",p=>{c?.includes(U.extname(p))&&this.throwCompilationError("scripts",p)}),e.hooks.watchClose.tap("WarnUponFolderChanges",()=>{i.close().catch(console.error),o.close().catch(console.error)})})}};var gs=class{static name="plugin-special-folders";options;constructor(e){this.options=e}apply(e){let{manifestPath:s}=this.options;new ms({manifestPath:s}).apply(e),e.options.mode==="development"&&e.options.watchOptions&&new ds(s).apply(e)}};var hs=class{static name="plugin-extension";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){let s=this.manifestPath,r=de({manifestPath:s}),n=zi({manifestPath:s});process.env.EXPERIMENTAL_EXTENSION_RESOLVER_PLUGIN&&new Ct({manifestPath:s,includeList:{...n?.pages||{},...n?.scripts||{}},excludeList:n.public,loaderOptions:{jsx:me(qe.default.dirname(this.manifestPath))||ue(qe.default.dirname(this.manifestPath))||je(qe.default.dirname(this.manifestPath)),typescript:H(qe.default.dirname(this.manifestPath)),minify:e.options.mode==="production"}}).apply(e),new qt({browser:this.browser,manifestPath:s,includeList:{...r.html,...r.icons,...r.json,...r.scripts},excludeList:n.public}).apply(e),new Kt({manifestPath:s,includeList:{...r.html,...n.pages},excludeList:{...n.public,...n.scripts}}).apply(e),new ss({manifestPath:s,browser:this.browser,includeList:{...r.scripts,...n.scripts},excludeList:{...n.public,...n.pages}}).apply(e),new ns({manifestPath:s}).apply(e),new os({manifestPath:s,includeList:r.json,excludeList:n.public}).apply(e),new ls({manifestPath:s,includeList:r.icons,excludeList:n.public}).apply(e),new fs({manifestPath:s,includeList:{...r.scripts,...n.scripts},excludeList:n.public}).apply(e),new gs({manifestPath:s}).apply(e)}};var Be=a(require("path"));var Qo=a(require("path")),ea=a(require("ws"));function ys(t,e){t.clients.forEach(s=>{s.readyState===ea.default.OPEN&&s.send(JSON.stringify(e))})}function ta(t,e,s){if(!s||!e)return;let r=de({manifestPath:e}).locales,n=de({manifestPath:e}).scripts,i=de({manifestPath:e}).json;if(!t){process.env.EXTENSION_ENV==="development"&&console.error("WebSocket server is not running.");return}Qo.default.basename(s)==="manifest.json"&&ys(t,{changedFile:"manifest.json"}),r?.forEach(o=>{o.includes(s)&&ys(t,{changedFile:"_locales"})}),Object.entries(n).forEach(([o,c])=>{let p=Array.isArray(c)?c:[c];Object.values(p).flatMap(u=>u).includes(s)&&o==="background/service_worker"&&ys(t,{changedFile:"service_worker"})}),Object.entries(i).forEach(([o,c])=>{c?.includes(s)&&o==="declarative_net_request"&&ys(t,{changedFile:"declarative_net_request"})})}var vr=a(require("path")),ia=a(require("fs")),We=a(require("ws"));var Ue=a(require("path")),ml=a(require("http")),ra=a(require("https")),xr=a(require("fs"));var sa=t=>{if(!xr.default.existsSync(t))return;let e=Ue.default.basename(t);return xr.default.readFileSync(Ue.default.join(__dirname,"certs",e))};function na(t,e){let s={key:sa(Ue.default.join(__dirname,"certs","localhost.key")),cert:sa(Ue.default.join(__dirname,"certs","localhost.cert"))},r=ra.default.createServer(s,(n,i)=>{i.writeHead(200),i.end()});return r.on("error",n=>{throw console.error(kn(t,e)),new Error(n.message)}),{server:r,port:e}}function dl(t,e,s){switch(s){case"chrome":return new We.default.Server({host:"localhost",port:e});case"edge":return new We.default.Server({host:"localhost",port:e+1});case"firefox":return new We.default.Server({server:na(t,e+2).server});default:return new We.default.Server({host:"localhost",port:8888})}}async function oa(t,e){let s=t.options.context||"",r=require(vr.default.join(s,"manifest.json")),n=r.name||"Extension.js",o=dl(n,8e3,e.browser);if(o.on("connection",c=>{c.send(JSON.stringify({status:"serverReady"})),c.on("error",p=>{console.log(vn(n,p))}),c.on("message",p=>{let l=JSON.parse(p.toString());if(l.status==="clientReady"){let u=require(vr.default.join(s,"manifest.json"));setTimeout(()=>{console.log(Gs(u,e.browser,l)),console.log("")},2500),Ln(e.browser)&&setTimeout(()=>{console.log(xn(e.browser))},5e3)}})}),(e.browser==="firefox"||e.browser==="gecko-based")&&!ia.default.existsSync(st)){let c=In(r);console.log(Gs(r,e.browser,c)),console.log(""),console.log(Pn()),console.log("")}return o}var aa=a(require("path")),_r=a(require("fs"));function ca(t,e){let s=aa.default.resolve(__dirname,`./extensions/${t}-manager-extension/reload-service.js`);try{let r=_r.default.readFileSync(s,"utf8"),n=r.replace(/__RELOAD_PORT__/g,e.toString());n!==r&&_r.default.writeFileSync(s,n,"utf8")}catch(r){console.error(`Error processing file: ${r.message}`)}}process.on("SIGINT",()=>{process.exit()});process.on("SIGTERM",()=>{process.exit()});var Je=class{manifestPath;port;browser;stats;constructor(e){this.manifestPath=e.manifestPath,this.port=e.port||8e3,this.browser=e.browser||"chrome",this.stats=e.stats}async apply(e){if(!this.manifestPath)return;ca(this.browser,this.port);let s=await oa(e,{...this,mode:e.options.mode,browser:this.browser,stats:this.stats,port:this.port});e.hooks.watchRun.tapAsync("reload:create-web-socket-server",(r,n)=>{let o=(r.modifiedFiles||new Set).values().next().value;if(!o){n();return}let c=Be.default.relative(Be.default.dirname(this.manifestPath),o),p=Be.default.relative(process.cwd(),Be.default.dirname(o));process.env.EXTENSION_ENV==="development"&&console.info(`\u25BA\u25BA Updated file \`${c}\` (relative to ${p})`),this.manifestPath&&ta(s,this.manifestPath,o),n()})}};var Sr=a(require("path"));function pa(t,e,s){t.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Sr.default.dirname(s)],exclude:/node_modules/,use:[{loader:Sr.default.resolve(__dirname,"./inject-chromium-client-loader"),options:{manifestPath:s,browser:e}}]})}var Pr=a(require("path"));function la(t,e,s){t.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Pr.default.dirname(s)],exclude:/node_modules/,use:[{loader:Pr.default.resolve(__dirname,"./inject-firefox-client-loader"),options:{manifestPath:s,browser:e}}]})}var ws=require("webpack");var kr=a(require("content-security-policy-parser"));function fa(t){let e=t.content_security_policy;if(!e)return"script-src 'self' 'unsafe-eval' blob: filesystem:; object-src 'self' blob: filesystem:; ";let s=(0,kr.default)(e);e="",s.get("script-src")||s.set("script-src",["'self' 'unsafe-eval' blob: filesystem:"]),s.get("script-src")?.includes("'unsafe-eval'")||s.set("script-src",["unsafe-eval"]);for(let r in s)e+=`${r} ${s.get(r)?.join(" ")};`;return e}function ua(t){let e=t.content_security_policy;if(!e)return{extension_pages:"script-src 'self'; object-src 'self'; "};let s=(0,kr.default)(e.extension_pages||""),r="";for(let n in s)r+=`${n} ${s.get(n)?.join(" ")}; `;return{extension_pages:r.trim()}}function ma(t){let e=["/*.json","/*.js","/*.css"],s=t.web_accessible_resources;if(!s||s.length===0)return e;let r=new Set(s);for(let n of e)r.has(n)||r.add(n);return Array.from(r)}function da(t){let e=["/*.json","/*.js","/*.css"];return[...t.web_accessible_resources||[],{resources:e,matches:["<all_urls>"]}]}function Er(t,e){return t.background?{background:{...t.background}}:e==="firefox"||e==="gecko-based"?{background:{...t.background||{},scripts:["background/script.js"]}}:t.manifest_version===2?{background:{...t.background||{},scripts:["background/script.js"]}}:{background:{...t.background||{},service_worker:"background/service_worker.js"}}}function jr(t){return t.externally_connectable&&!t.externally_connectable.ids?{externally_connectable:{...t.externally_connectable,ids:[...new Set(t.externally_connectable.ids||[]),"*"]}}:t.externally_connectable&&!t.externally_connectable.ids?{externally_connectable:{...t.externally_connectable,ids:["*"]}}:{}}var bs=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}generateManifestPatches(e){let s=B(e,this.manifestPath),r={...s,content_security_policy:s.manifest_version===3?ua(s):fa(s),...s.manifest_version===3?s.permissions?{permissions:[...new Set(["scripting",...s.permissions])]}:{permissions:["scripting"]}:{},...Er(s,this.browser),...jr(s),web_accessible_resources:s.manifest_version===3?da(s):ma(s)},n=JSON.stringify(r,null,2),i=new ws.sources.RawSource(n);e.getAsset("manifest.json")&&e.updateAsset("manifest.json",i)}apply(e){e.hooks.thisCompilation.tap("run-chromium:apply-manifest-dev-defaults",s=>{s.hooks.processAssets.tap({name:"run-chromium:apply-manifest-dev-defaults",stage:ws.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},r=>{if(!this.manifestPath){let n="No manifest.json found in your extension bundle. Unable to patch manifest.json.";s&&e.webpack.WebpackError&&s.errors.push(new e.webpack.WebpackError(`run-chromium: ${n}`));return}this.generateManifestPatches(s)})})}};var $r=a(require("fs")),xe=a(require("path")),ga=a(require("webpack-target-webextension"));var xs=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}handleBackground(e,s,r){let n=xe.default.resolve(__dirname,s==="firefox"||s==="gecko-based"?"minimum-firefox-file.mjs":"minimum-chromium-file.mjs"),i=xe.default.dirname(this.manifestPath),o=r.background;if(s==="firefox"||s==="gecko-based"){o=r["gecko:background"]||r["firefox:background"]||o;let c=o?.scripts||o?.["gecko:scripts"]||o?.["firefox:scripts"];if(c&&c.length>0){let p=xe.default.join(i,c[0]);this.ensureFileExists(p,"background.scripts")}else this.addDefaultEntry(e,"background/script",n)}else if(o=r["chromium:background"]||r["chrome:background"]||r["edge:background"]||o,r.manifest_version===3){let c=o?.service_worker||o?.["chromium:service_worker"]||o?.["chrome:service_worker"]||o?.["edge:service_worker"];if(c){let p=xe.default.join(i,c);this.ensureFileExists(p,"background.service_worker")}else this.addDefaultEntry(e,"background/service_worker",n)}else if(r.manifest_version===2){let c=o?.scripts||o?.["chromium:scripts"]||o?.["chrome:scripts"]||o?.["edge:scripts"];if(c&&c.length>0){let p=xe.default.join(i,c[0]);this.ensureFileExists(p,"background.scripts")}else this.addDefaultEntry(e,"background/script",n)}}ensureFileExists(e,s){if(!$r.default.existsSync(e)&&this.manifestPath){let n=require(this.manifestPath).name||"Extension.js",i=_n(n,s,e);throw console.error(i),new Error(i)}}addDefaultEntry(e,s,r){e.options.entry={...e.options.entry,[s]:{import:[r]}}}getEntryName(e){if(e.background){if(e.manifest_version===3)return{serviceWorkerEntry:"background/service_worker"};if(e.manifest_version===2)return{pageEntry:"background/script"}}return{pageEntry:"background"}}apply(e){if(!this.manifestPath||!$r.default.lstatSync(this.manifestPath).isFile())return;let s=require(this.manifestPath);this.handleBackground(e,this.browser,s),new ga.default({background:this.getEntryName(s),weakRuntimeCheck:!0}).apply(e)}};var Cr=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){(Q.includes(this.browser)||this.browser==="chromium-based")&&pa(e,this.browser,this.manifestPath),(this.browser==="firefox"||this.browser==="gecko-based")&&la(e,this.browser,this.manifestPath),new bs({manifestPath:this.manifestPath,browser:this.browser}).apply(e),new xs({manifestPath:this.manifestPath,browser:this.browser}).apply(e)}},ha=Cr;var vs=class{static name="plugin-reload";manifestPath;browser;port;stats;autoReload;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.port=e.port,this.stats=e.stats,this.autoReload=e.autoReload}apply(e){e.options.mode==="development"&&new Je({manifestPath:this.manifestPath,browser:this.browser,port:this.port,stats:this.stats}).apply(e),e.options.mode==="development"&&new ha({manifestPath:this.manifestPath,browser:this.browser,autoReload:this.autoReload,stats:this.stats}).apply(e)}};var ya=a(require("webpack")),_s=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser}apply(e){new ya.default.ProvidePlugin({browser:require.resolve("webextension-polyfill")}).apply(e)}};var Ps=require("webpack");var Ss=class{browser;manifestPath;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}patchManifest(e){let s=ce(e,this.browser);return JSON.stringify(s,null,2)}apply(e){e.hooks.compilation.tap("compatibility:browser-fields",s=>{s.hooks.processAssets.tap({name:"compatibility:browser-fields",stage:Ps.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE},()=>{let r=B(s,this.manifestPath),n=this.patchManifest(r),i=new Ps.sources.RawSource(n);s.updateAsset("manifest.json",i)})})}};var ks=class{static name="plugin-compatibility";manifestPath;browser;polyfill;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.polyfill=e.polyfill||!1}async apply(e){this.polyfill&&this.browser!=="firefox"&&new _s({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new Ss({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e)}};var $a=a(require("fs"));var ba=a(require("webpack")),wa=a(require("content-security-policy-parser"));function xa(t){let e=t.content_security_policy,s=t.content_security_policy?.extension_pages,r=n=>{if(!n)return;let i=(0,wa.default)(n);if(i.get("script-src")&&i.get("script-src")?.includes("'unsafe-eval'")){let o=t.name||"Extension.js";return on(o)}};if(t.manifest_version===3){let n=e?r(s):void 0;if(n)return new ba.default.WebpackError(n)}return null}var Fr=a(require("webpack"));function va(t,e){let s=t.web_accessible_resources;if(s){let r=s.some(o=>typeof o=="string"),n=s.some(o=>typeof o=="object"||o.resources||o.matches),i=t.name||"Extension.js";if(t.manifest_version===2&&!r)return new Fr.default.WebpackError(cn(i,e));if(t.manifest_version===3&&!n)return new Fr.default.WebpackError(pn(i,e))}return null}var _a=a(require("webpack"));function Sa(t,e){if((e==="firefox"||e==="gecko-based")&&t.background?.service_worker){let s=t.name||"Extension.js";return new _a.default.WebpackError(nn(s))}return null}var Pa=a(require("path")),ka=a(require("fs")),Ea=a(require("webpack"));function ja(t,e){let s=Pa.default.join(e.options.context||"","_locales"),r=t.name||"Extension.js";return ka.default.existsSync(s)&&!t.default_locale?new Ea.default.WebpackError(an(r)):null}var Es=class{options;constructor(e){this.options=e}handleRuntimeErrors(e,s,r){let n=xa(s),i=va(s,r),o=Sa(s,r),c=ja(s,e);n&&e.errors.push(n),i&&e.errors.push(i),o&&e.options.mode==="production"&&e.errors.push(o),c&&e.errors.push(c)}apply(e){e.hooks.afterCompile.tapAsync("CompatPlugin (module)",(s,r)=>{let n=this.options.manifestPath,i=JSON.parse($a.default.readFileSync(n,"utf-8")),o=this.options.browser||"chrome";this.handleRuntimeErrors(s,i,o),r()})}};var Ta=a(require("fs")),qa=a(require("ajv"));var Ca={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://json.schemastore.org/chrome-manifest.json",additionalProperties:!0,definitions:{action_v2:{type:"object",properties:{default_title:{type:"string",description:"Tooltip for the main toolbar icon."},default_popup:{$ref:"#/definitions/uri",description:"The popup appears when the user clicks the icon."},default_icon:{anyOf:[{type:"string",description:"FIXME: String form is deprecated."},{type:"object",description:"Icon for the main toolbar.",properties:{"19":{$ref:"#/definitions/icon"},"38":{$ref:"#/definitions/icon"}}}]}},dependencies:{name:{not:{required:["name"]}},icons:{not:{required:["icons"]}},popup:{not:{required:["popup"]}}}},action_v3:{type:"object",properties:{default_title:{type:"string",description:"Tooltip for the main toolbar icon."},default_popup:{$ref:"#/definitions/uri",description:"The popup appears when the user clicks the icon."},default_icon:{type:"object",properties:{"16":{$ref:"#/definitions/icon"},"24":{$ref:"#/definitions/icon"},"32":{$ref:"#/definitions/icon"}}}},dependencies:{name:{not:{required:["name"]}},icons:{not:{required:["icons"]}},popup:{not:{required:["popup"]}}}},command:{type:"object",if:{$comment:"Global shortcuts change the acceptable pattern for the suggested_key.",properties:{global:{const:!0}},required:["global"]},then:{additionalProperties:!1,properties:{description:{type:"string"},global:{type:"boolean",description:"Whether this command should work while Chrome does not have focus. Keyboard shortcut suggestions for global commands are limited to Ctrl+Shift+[0..9]"},suggested_key:{type:"object",additionalProperties:!1,patternProperties:{"^(default|mac|windows|linux|chromeos)$":{type:"string",pattern:"^(Ctrl|Command|MacCtrl)\\+Shift\\+[0-9]"}}}}},else:{additionalProperties:!1,properties:{description:{type:"string"},global:{type:"boolean",description:"Whether this command should work while Chrome does not have focus. Keyboard shortcut suggestions for global commands are limited to Ctrl+Shift+[0..9]"},suggested_key:{type:"object",additionalProperties:!1,patternProperties:{"^(default|mac|windows|linux|chromeos)$":{type:"string",pattern:"^(Ctrl|Command|MacCtrl|Alt|Option)\\+(Shift\\+)?[A-Z]"}}}}}},content_security_policy:{type:"string",description:"This introduces some fairly strict policies that will make extensions more secure by default, and provides you with the ability to create and enforce rules governing the types of content that can be loaded and executed by your extensions and applications.",format:"content-security-policy",default:"script-src 'self'; object-src 'self'"},glob_pattern:{type:"string",format:"glob-pattern"},icon:{$ref:"#/definitions/uri"},match_pattern:{type:"string",format:"match-pattern",pattern:"^((\\*|http|https|file|ftp|chrome-extension):\\/\\/(\\*|\\*\\.[^\\/\\*]+|[^\\/\\*]+)?(\\/.*))|urn:(\\*|.*)|<all_urls>$"},mime_type:{type:"string",format:"mime-type",pattern:"^(?:application|audio|image|message|model|multipart|text|video)\\/[-+.\\w]+$"},page:{$ref:"#/definitions/uri"},permissions:{type:"array",uniqueItems:!0,items:{type:"string",format:"permission"}},scripts:{type:"array",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/uri"}},uri:{type:"string"},version_string:{type:"string",pattern:"^(?:\\d{1,5}\\.){0,3}\\d{1,5}$"},web_resource:{type:"object",required:["resources"],properties:{resources:{type:"array",description:`An array of resources to be exposed. Resources are specified as strings and may contain * for wildcard matches. For example, "/images/*" exposes everything in the extension's /images directory recursively while "*.png" exposes all PNG files.`,items:{$ref:"#/definitions/glob_pattern"}},matches:{type:"array",description:"A list of URL match patterns specifying which pages can access the resources. Only the origin is used to match URLs; subdomains patterns (*.google.com) and paths are ignored.",items:{$ref:"#/definitions/match_pattern"}},extension_ids:{type:"array",description:"A list of extension IDs, specifying which extensions can access the resources.",items:{type:"string"}},use_dynamic_url:{type:"boolean",description:"If true, only allow resources to be accessible through dynamic ID. The dynamic ID is generated per session. It's regenerated on browser restart or extension reload."}}}},dependencies:{content_scripts:{not:{required:["script_badge"]}},script_badge:{not:{required:["content_scripts"]}}},else:{properties:{background:{type:"object",description:"The background page is an HTML page that runs in the extension process. It exists for the lifetime of your extension, and only one instance of it at a time is active.",properties:{persistent:{type:"boolean",description:"When false, makes the background page an event page (loaded only when needed).",default:!0},page:{$ref:"#/definitions/page",description:"Specify the HTML of the background page.",default:"background.html"},scripts:{$ref:"#/definitions/scripts",description:"A background page will be generated by the extension system that includes each of the files listed in the scripts property.",default:["background.js"]}},dependencies:{page:{not:{required:["scripts"]}},scripts:{not:{required:["page"]}}}},browser_action:{$ref:"#/definitions/action_v2",description:"Use browser actions to put icons in the main Google Chrome toolbar, to the right of the address bar. In addition to its icon, a browser action can also have a tooltip, a badge, and a popup."},page_action:{$ref:"#/definitions/action_v2",description:"Use the chrome.pageAction API to put icons inside the address bar. Page actions represent actions that can be taken on the current page, but that aren't applicable to all pages."},content_security_policy:{$ref:"#/definitions/content_security_policy"},web_accessible_resources:{type:"array",description:"An array of strings specifying the paths (relative to the package root) of packaged resources that are expected to be usable in the context of a web page.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/uri"}}},dependencies:{page_action:{not:{required:["browser_action"]}},browser_action:{not:{required:["page_action"]}}}},if:{properties:{manifest_version:{const:3}}},properties:{manifest_version:{type:"number",description:"One integer specifying the version of the manifest file format your package requires.",enum:[2,3]},name:{type:"string",description:"The name of the extension",maxLength:45},version:{$ref:"#/definitions/version_string",description:"One to four dot-separated integers identifying the version of this extension."},default_locale:{type:"string",description:"Specifies the subdirectory of _locales that contains the default strings for this extension.",default:"en"},description:{type:"string",description:"A plain text description of the extension",maxLength:132},icons:{type:"object",description:"One or more icons that represent the extension, app, or theme. Recommended format: PNG; also BMP, GIF, ICO, JPEG.",minProperties:1,properties:{"16":{$ref:"#/definitions/icon",description:"Used as the favicon for an extension's pages and infobar."},"48":{$ref:"#/definitions/icon",description:"Used on the extension management page (chrome://extensions)."},"128":{$ref:"#/definitions/icon",description:"Used during installation and in the Chrome Web Store."},"256":{$ref:"#/definitions/icon",description:"Used during installation and in the Chrome Web Store."}}},chrome_url_overrides:{type:"object",description:"Override pages are a way to substitute an HTML file from your extension for a page that Google Chrome normally provides.",additionalProperties:!1,maxProperties:1,properties:{bookmarks:{$ref:"#/definitions/page",description:"The page that appears when the user chooses the Bookmark Manager menu item from the Chrome menu or, on Mac, the Bookmark Manager item from the Bookmarks menu. You can also get to this page by entering the URL chrome://bookmarks.",default:"bookmarks.html"},history:{$ref:"#/definitions/page",description:"The page that appears when the user chooses the History menu item from the Chrome menu or, on Mac, the Show Full History item from the History menu. You can also get to this page by entering the URL chrome://history.",default:"history.html"},newtab:{$ref:"#/definitions/page",description:"The page that appears when the user creates a new tab or window. You can also get to this page by entering the URL chrome://newtab.",default:"newtab.html"}}},commands:{type:"object",description:"Use the commands API to add keyboard shortcuts that trigger actions in your extension, for example, an action to open the browser action or send a command to the extension.",patternProperties:{".*":{$ref:"#/definitions/command"},"^_execute_browser_action$":{$ref:"#/definitions/command"},"^_execute_page_action$":{$ref:"#/definitions/command"}}},content_scripts:{type:"array",description:"Content scripts are JavaScript files that run in the context of web pages.",minItems:1,uniqueItems:!0,items:{type:"object",required:["matches"],additionalProperties:!1,properties:{matches:{type:"array",description:"Specifies which pages this content script will be injected into.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/match_pattern"}},exclude_matches:{type:"array",description:"Excludes pages that this content script would otherwise be injected into.",uniqueItems:!0,items:{$ref:"#/definitions/match_pattern"}},css:{type:"array",description:"The list of CSS files to be injected into matching pages. These are injected in the order they appear in this array, before any DOM is constructed or displayed for the page.",uniqueItems:!0,items:{$ref:"#/definitions/uri"}},js:{$ref:"#/definitions/scripts",description:"The list of JavaScript files to be injected into matching pages. These are injected in the order they appear in this array."},world:{type:"string",description:"The JavaScript world for a script to execute within.",enum:["ISOLATED","MAIN"],default:"ISOLATED"},run_at:{type:"string",description:"Controls when the files in js are injected.",enum:["document_start","document_end","document_idle"],default:"document_idle"},all_frames:{type:"boolean",description:"Controls whether the content script runs in all frames of the matching page, or only the top frame.",default:!1},include_globs:{type:"array",description:"Applied after matches to include only those URLs that also match this glob. Intended to emulate the @include Greasemonkey keyword.",uniqueItems:!0,items:{$ref:"#/definitions/glob_pattern"}},exclude_globs:{type:"array",description:"Applied after matches to exclude URLs that match this glob. Intended to emulate the @exclude Greasemonkey keyword.",uniqueItems:!0,items:{$ref:"#/definitions/glob_pattern"}},match_about_blank:{type:"boolean",description:"Whether to insert the content script on about:blank and about:srcdoc.",default:!1}}}},devtools_page:{$ref:"#/definitions/page",description:"A DevTools extension adds functionality to the Chrome DevTools. It can add new UI panels and sidebars, interact with the inspected page, get information about network requests, and more."},externally_connectable:{description:"Declares which extensions, apps, and web pages can connect to your extension via runtime.connect and runtime.sendMessage.",type:"object",additionalProperties:!1,properties:{ids:{type:"array",items:{type:"string",description:"The IDs of extensions or apps that are allowed to connect. If left empty or unspecified, no extensions or apps can connect."}},matches:{type:"array",items:{type:"string",description:"The URL patterns for web pages that are allowed to connect. This does not affect content scripts. If left empty or unspecified, no web pages can connect."}},accepts_tls_channel_id:{type:"boolean",default:!1,description:"Indicates that the extension would like to make use of the TLS channel ID of the web page connecting to it. The web page must also opt to send the TLS channel ID to the extension via setting includeTlsChannelId to true in runtime.connect's connectInfo or runtime.sendMessage's options."}}},file_browser_handlers:{type:"array",description:"You can use this API to enable users to upload files to your website.",minItems:1,items:{type:"object",required:["id","default_title","file_filters"],additionalProperties:!1,properties:{id:{type:"string",description:"Used by event handling code to differentiate between multiple file handlers"},default_title:{type:"string",description:"What the button will display."},file_filters:{type:"array",description:"Filetypes to match.",minItems:1,items:{type:"string"}}}}},homepage_url:{$ref:"#/definitions/uri",description:"The URL of the homepage for this extension."},incognito:{type:"string",description:"Specify how this extension will behave if allowed to run in incognito mode.",enum:["spanning","split","not_allowed"],default:"spanning"},input_components:{type:"array",description:"Allows your extension to handle keystrokes, set the composition, and manage the candidate window.",items:{type:"object",required:["name","type","id","description","language","layouts"],additionalProperties:!1,properties:{name:{type:"string"},type:{type:"string"},id:{type:"string"},description:{type:"string"},language:{type:"string"},layouts:{type:"array"}}}},key:{type:"string",description:"This value can be used to control the unique ID of an extension, app, or theme when it is loaded during development."},minimum_chrome_version:{$ref:"#/definitions/version_string",description:"The version of Chrome that your extension, app, or theme requires, if any."},nacl_modules:{type:"array",description:"One or more mappings from MIME types to the Native Client module that handles each type.",minItems:1,uniqueItems:!0,items:{type:"object",required:["path","mime_type"],additionalProperties:!1,properties:{path:{$ref:"#/definitions/uri",description:"The location of a Native Client manifest (a .nmf file) within the extension directory."},mime_type:{$ref:"#/definitions/mime_type",description:"The MIME type for which the Native Client module will be registered as content handler."}}}},oauth2:{type:"object",description:"Use the Chrome Identity API to authenticate users: the getAuthToken for users logged into their Google Account and the launchWebAuthFlow for users logged into a non-Google account.",required:["client_id","scopes"],additionalProperties:!1,properties:{client_id:{type:"string",description:"You need to register your app in the Google APIs Console to get the client ID."},scopes:{type:"array",minItems:1,items:{type:"string"}}}},offline_enabled:{type:"boolean",description:"Whether the app or extension is expected to work offline. When Chrome detects that it is offline, apps with this field set to true will be highlighted on the New Tab page."},omnibox:{type:"object",description:"The omnibox API allows you to register a keyword with Google Chrome's address bar, which is also known as the omnibox.",required:["keyword"],additionalProperties:!1,properties:{keyword:{type:"string",description:"The keyword that will trigger your extension."}}},optional_permissions:{$ref:"#/definitions/permissions",description:"Use the chrome.permissions API to request declared optional permissions at run time rather than install time, so users understand why the permissions are needed and grant only those that are necessary."},options_page:{$ref:"#/definitions/page",description:"To allow users to customize the behavior of your extension, you may wish to provide an options page. If you do, a link to it will be provided from the extensions management page at chrome://extensions. Clicking the Options link opens a new tab pointing at your options page.",default:"options.html"},options_ui:{type:"object",description:"To allow users to customize the behavior of your extension, you may wish to provide an options page. If you do, an Options link will be shown on the extensions management page at chrome://extensions which opens a dialogue containing your options page.",required:["page"],properties:{page:{type:"string",description:"The path to your options page, relative to your extension's root."},chrome_style:{type:"boolean",default:!0,description:"If true, a Chrome user agent stylesheet will be applied to your options page. The default value is false, but we recommend you enable it for a consistent UI with Chrome."},open_in_tab:{type:"boolean",default:!1,description:"If true, your extension's options page will be opened in a new tab rather than embedded in chrome://extensions. The default is false, and we recommend that you don't change it. This is only useful to delay the inevitable deprecation of the old options UI! It will be removed soon, so try not to use it. It will break."}}},permissions:{$ref:"#/definitions/permissions",description:"Permissions help to limit damage if your extension or app is compromised by malware. Some permissions are also displayed to users before installation, as detailed in Permission Warnings."},requirements:{type:"object",description:"Technologies required by the app or extension. Hosting sites such as the Chrome Web Store may use this list to dissuade users from installing apps or extensions that will not work on their computer.",additionalProperties:!1,properties:{plugins:{type:"object",description:"Indicates if an app or extension requires NPAPI to run. This requirement is enabled by default when the manifest includes the 'plugins' field.",required:["npapi"],additionalProperties:!1,properties:{npapi:{type:"boolean",default:!0}}},"3D":{type:"object",description:"The '3D' requirement denotes GPU hardware acceleration.",required:["features"],additionalProperties:!1,properties:{features:{type:"array",description:"List of the 3D-related features your app requires.",minItems:1,uniqueItems:!0,items:{type:"string",enum:["webgl"]}}}}}},sandbox:{type:"object",description:"Defines an collection of app or extension pages that are to be served in a sandboxed unique origin, and optionally a Content Security Policy to use with them.",required:["pages"],additionalProperties:!1,properties:{pages:{type:"array",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/page"}},content_security_policy:{$ref:"#/definitions/content_security_policy",default:"sandbox allow-scripts allow-forms"}}},short_name:{type:"string",description:"The short name is typically used where there is insufficient space to display the full name.",maxLength:12},update_url:{$ref:"#/definitions/uri",description:"If you publish using the Chrome Developer Dashboard, ignore this field. If you host your own extension or app: URL to an update manifest XML file."},tts_engine:{type:"object",description:"Register itself as a speech engine.",required:["voices"],additionalProperties:!1,properties:{voices:{type:"array",description:"Voices the extension can synthesize.",minItems:1,uniqueItems:!0,items:{type:"object",required:["voice_name","event_types"],additionalProperties:!1,properties:{voice_name:{type:"string",description:"Identifies the name of the voice and the engine used."},lang:{type:"string",description:"Almost always, a voice can synthesize speech in just a single language. When an engine supports more than one language, it can easily register a separate voice for each language."},gender:{type:"string",description:"If your voice corresponds to a male or female voice, you can use this parameter to help clients choose the most appropriate voice for their application."},event_types:{type:"array",description:"Events sent to update the client on the progress of speech synthesis.",minItems:1,uniqueItems:!0,items:{type:"string",description:"",enum:["start","word","sentence","marker","end","error"]}}}}}}},version_name:{type:"string",description:"In addition to the version field, which is used for update purposes, version_name can be set to a descriptive version string and will be used for display purposes if present."},chrome_settings_overrides:{},content_pack:{},current_locale:{},import:{},platforms:{},signature:{},spellcheck:{},storage:{},system_indicator:{}},required:["manifest_version","name","version"],then:{$comment:"browser_action and page_action are no longer present in v3",properties:{background:{type:"object",description:"The background page is an HTML page that runs in the extension process. It exists for the lifetime of your extension, and only one instance of it at a time is active.",properties:{service_worker:{type:"string",description:"The service worker js file."},type:{type:"string",enum:["module"]}},dependencies:{page:{not:{required:["scripts"]}},scripts:{not:{required:["page"]}}}},host_permissions:{$ref:"#/definitions/permissions"},action:{$ref:"#/definitions/action_v3",description:"Used to control the toolbar button for your extension in Chrome's UI."},content_security_policy:{type:"object",properties:{extension_pages:{$ref:"#/definitions/content_security_policy",description:"This policy covers pages in your extension, including html files and service workers."},sandbox:{$ref:"#/definitions/content_security_policy",description:"This policy covers any sandboxed extension pages that your extension uses."}}},web_accessible_resources:{type:"array",description:"An array of objects that declare resource access rules. Each object maps an array of extension resources to an array of URLs and/or extension IDs that can access those resources.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/web_resource"}}},dependencies:{browser_action:{not:{required:["browser_action"]}},page_action:{not:{required:["page_action"]}}}},title:"JSON schema for Google Chrome extension manifest files",type:"object"};function Fa(t){t.addFormat("permission",{type:"string",validate:e=>typeof e=="string"&&e.trim()!==""}),t.addFormat("content-security-policy",{type:"string",validate:e=>typeof e=="string"}),t.addFormat("glob-pattern",{type:"string",validate:e=>typeof e=="string"&&/[\*\?\[\]]/.test(e)}),t.addFormat("match-pattern",{type:"string",validate:e=>e==="<all_urls>"||e==="file:///"||e.startsWith("http://localhost")||e.startsWith("http:// ")||e.startsWith("http://*:*/*")?!0:typeof e=="string"&&/^(\*|http|https|file|ftp):\/\//.test(e)}),t.addFormat("uri",{type:"string",validate:e=>typeof e=="string"&&/^(\w+:)?\/\//.test(e)}),t.addFormat("mime-type",{type:"string",validate:e=>typeof e=="string"&&/^[a-z]+\/[a-z0-9\-\+]+$/.test(e)})}var Da=a(require("path")),La=require("webpack");function Ia(t,e,s){let r=t.options.context||"",n=Da.default.join(r,"manifest.json"),o=require(n).name||"Extension.js",c=e?.params.missingProperty;t.errors.push(new La.WebpackError(un(o,s,c)))}var Oa=a(require("path")),Ma=require("webpack");function Aa(t,e,s){let r=t.options.context||"",n=Oa.default.join(r,"manifest.json"),o=require(n).name||"Extension.js";t.warnings.push(new Ma.WebpackError(fn(o,e,s)))}var Ra=a(require("path")),Na=require("webpack");function Dr(t,e,s){let r=t.options.context||"",n=Ra.default.join(r,"manifest.json"),o=require(n).name||"Extension.js";t.warnings.push(new Na.WebpackError(ln(o,s,e)))}var js=class{options;constructor(e){this.options=e}handleSchemaErrors(e,s,r){let n=new qa.default;Fa(n);let i={allOf:[Ca]},o=n.compile(i),c=o(s),p=s.manifest_version===3;if(!c&&o.errors){let l=o.errors[0];if(l?.keyword==="required"){Ia(e,l,r);return}p&&(l?.keyword==="type"&&Aa(e,l,r),l?.keyword==="not"&&Dr(e,l,r))}}apply(e){e.hooks.afterCompile.tapAsync("CompatPlugin (module)",(s,r)=>{let n=this.options.manifestPath,i=JSON.parse(Ta.default.readFileSync(n,"utf-8")),o=this.options.browser||"chrome";this.handleSchemaErrors(s,i,o),r()})}};var Ba=a(require("fs")),Ir=a(require("path"));var Lr=a(require("webpack"));function Ua(t,e){let s="Conflict: Multiple assets emit different content to the same filename ";if(e.message.includes(s)){let r=e.message.replace(s,"");if(r.startsWith("content_scripts"))return new Lr.default.WebpackError(mn(t,r))}return null}function Wa(t,e){let s=require(t);return e.message.includes("Top-level-await is only supported in EcmaScript Modules")?new Lr.default.WebpackError(dn(s.name)):null}var $s=class{manifestPath;constructor(e){this.manifestPath=e.manifestPath}apply(e){let s=Ir.default.join(Ir.default.dirname(this.manifestPath),"package.json");if(!Ba.default.existsSync(s))return;let r=require(s).name;e.hooks.compilation.tap("develop:common-errors",n=>{n.hooks.afterSeal.tapAsync("develop:common-errors",i=>{n.errors.forEach((o,c)=>{let p=Ua(r,o),l=Wa(r,o);p&&(n.errors[c]=p),l&&(n.errors[c]=l)}),i()})})}};var Cs=class{static name="plugin-errors";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){new Es({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new js({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new $s({manifestPath:this.manifestPath}).apply(e)}};var rp=a(require("os")),Tr=a(require("path"));var uc=a(require("fs")),mc=a(require("path")),dc=require("child_process");var te=a(require("path")),Ve=a(require("fs"));var Ja={alternate_error_pages:{enabled:!1},autofill:{enabled:!1},browser:{check_default_browser:!1,default_browser_setting_enabled:!1},default_apps:"install",distribution:{alternate_shortcut_text:!1,auto_launch_chrome:!1,import_bookmarks:!1,import_history:!1,import_home_page:!1,import_search_engine:!1,suppress_first_run_bubble:!0,do_not_register_for_update_launch:!0,make_chrome_default:!1,make_chrome_default_for_user:!1,require_eula:!1,suppress_first_run_default_browser_prompt:!0},dns_prefetching:{enabled:!1},download:{default_directory:"/tmp/",directory_upgrade:!0,open_pdf_in_adobe_reader:!1,prompt_for_download:!0},enable_do_not_track:!0,extensions:{theme:{use_system:!1},toolbarsize:-1,ui:{developer_mode:!0}},plugins:{plugins_list:[{enabled:!1,name:"Java(TM)"}],show_details:!0},profile:{password_manager_enabled:!1},safebrowsing:{enabled:!1,safebrowsingextended_reporting_enabled:!1},savefile:{default_directory:"/tmp",type:0},search:{suggest_enabled:!1},session:{restore_on_startup:1},sync:{suppress_start:!0},sync_promo:{show_on_first_run_allowed:!1,show_ntp_bubble:!1},translate:{enabled:!1}},za={...Ja},Ha={...Ja};var b=require("@colors/colors/safe");function E(t,e){let s=e==="warn"?(0,b.brightYellow)("\u25BA\u25BA\u25BA"):e==="info"?(0,b.cyan)("\u25BA\u25BA\u25BA"):e==="error"?`${(0,b.bold)((0,b.red)("ERROR"))} in ${ze(t)} ${(0,b.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:(0,b.brightGreen)("\u25BA\u25BA\u25BA");return`${(0,b.gray)("")}${s}`}function ze(t){return t.charAt(0).toUpperCase()+t.slice(1)}function Fs(t){let e=ze(t);return`${E(t,"info")} Creating new ${e} user profile...`}function Va(t){return`${E(t,"success")} Instance already running.`}function Ga(t){return`${E(t,"info")} Instance exited.`}function Ds(t,e){let s=t==="firefox"||t==="gecko-based"?"Add-on":"Extension";return`${E(t,"success")} ${ze(t)} ${s} running in ${(0,b.brightBlue)(e||"unknown")} mode.`}function He(t,e){let s=e=="null"?`Browser is not installed
110
+ of your ${(0,f.brightYellow)("extension.config.js")} is defined as your extension URL.`}var it=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){let r=st.default.dirname(this.manifestPath),s=e.options.mode||"development",i=[`.env.${this.browser}.${s}`,`.env.${this.browser}`,`.env.${s}`,".env.local",".env",".env.example"],o="";for(let d of i){let g=st.default.join(r,d);if(Br.default.existsSync(g)){o=g;break}}if(!o)return;console.log(Zs());let n=Jr.default.config({path:o}).parsed||{},c=st.default.join(r,".env.defaults"),l={...Br.default.existsSync(c)?Jr.default.config({path:c}).parsed||{}:{},...n,...process.env},u=Object.keys(l).filter(d=>d.startsWith("EXTENSION_PUBLIC_")).reduce((d,g)=>(d[`process.env.${g}`]=JSON.stringify(l[g]),d[`import.meta.env.${g}`]=JSON.stringify(l[g]),d),{});u["process.env.EXTENSION_PUBLIC_BROWSER"]=JSON.stringify(this.browser),u["import.meta.env.EXTENSION_PUBLIC_BROWSER"]=JSON.stringify(this.browser),u["process.env.EXTENSION_PUBLIC_ENV_MODE"]=JSON.stringify(s),u["import.meta.env.EXTENSION_PUBLIC_ENV_MODE"]=JSON.stringify(s),new oe.DefinePlugin(u).apply(e),e.hooks.thisCompilation.tap("manifest:update-manifest",d=>{d.hooks.processAssets.tap({name:"env:module",stage:oe.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},g=>{Object.keys(g).forEach(_=>{if(_.endsWith(".json")||_.endsWith(".html")){let v=d.assets[_].source().toString();v=v.replace(/\$EXTENSION_PUBLIC_[A-Z_]+/g,M=>{let T=M.slice(1);return l[T]||M}),d.updateAsset(_,new oe.sources.RawSource(v))}})})})}};var zr=a(require("fs")),_i=a(require("path")),ot=class{apply(e){let r=_i.default.join(e.options.output.path||"","hot");zr.default.existsSync(r)&&(zr.default.rmSync(r,{recursive:!0,force:!0}),process.env.EXTENSION_ENV==="development"&&console.log("[CleanHotUpdatesPlugin] Removed old hot-update files before compilation."))}};var nt=class{static name="plugin-compilation";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){new Si.default().apply(e),new it({manifestPath:this.manifestPath,browser:this.browser}).apply(e),new ot().apply(e),e.hooks.done.tap("develop:brand",r=>{r.compilation.name=void 0;let s=r.endTime-r.startTime,i=require(this.manifestPath).name;console.log(Gs(i,s,r))})}};var Hi=a(require("path")),Vi=a(require("mini-css-extract-plugin"));var Bi=a(require("mini-css-extract-plugin"));var ve=a(require("path")),_e=a(require("fs"));var ne=a(require("path")),at=a(require("fs")),Hr=require("child_process"),ki=require("package-manager-detector");function Ei(t,e){return Object.values(e||{}).some(r=>r===t)}function h(t,e,r){let s=ne.default.extname(e),o=k(e,r)?ne.default.normalize(e):t;return[".js",".jsx",".tsx",".ts"].includes(s)&&(o=o.replace(s,".js")),[".html",".njk",".nunjucks"].includes(s)&&(o=o.replace(s,".html")),[".css",".scss",".sass",".less"].includes(s)&&(o=o.replace(s,".css")),Vr(o||"")}function Vr(t){return t.replace(/\\/g,"/")}function k(t,e={}){if(!e)return!1;let r=ne.default.normalize(Vr(t));return Object.values(e).some(i=>typeof i!="string"?!1:Vr(i).includes(r))}function J(t,e){if(t.getAsset("manifest.json")||t.assets["manifest.json"]){let r=t.assets["manifest.json"].source().toString();return JSON.parse(r||"{}")}return require(e)}function ae(){return process.env.npm_config_user_agent&&process.env.npm_config_user_agent.includes("pnpm")?"pnpm":!1}function Pi(){return process.env.npm_execpath?"npm":!1}async function C(t,e){try{let r=await(0,ki.detect)();console.log(Xs(t,r?.name||"unknown"));let s="";r?.name==="yarn"?s=`yarn --silent add ${e.join(" ")} --cwd ${__dirname} --optional`:r?.name==="npm"||Pi()?s=`npm --silent install ${e.join(" ")} --prefix ${__dirname} --save-optional`:ae()?s=`pnpm --silent add ${e.join(" ")} --prefix ${__dirname} --save-optional`:s=`${r} --silent install ${e.join(" ")} --cwd ${__dirname} --optional`,(0,Hr.execSync)(s,{stdio:"inherit"}),await new Promise(i=>setTimeout(i,2e3)),process.env.EXTENSION_ENV==="development"&&(console.log(Ks(t)),r?.name==="yarn"?s="yarn install --silent > /dev/null 2>&1":r?.name==="npm"||Pi()?s="npm install --silent > /dev/null 2>&1":ae()?s="pnpm install --silent > /dev/null 2>&1":s=`${r} install --silent > /dev/null 2>&1`,(0,Hr.execSync)(s,{stdio:"inherit"})),console.log(Ys(t))}catch(r){console.error(Qs(t,r))}}function ct(t){let e=ne.default.join(t,"package.json");if(!at.default.existsSync(e))return!1;let r=JSON.parse(at.default.readFileSync(e,"utf-8")),s=["react","vue","@angular/core","svelte","solid-js","preact"],i=r.dependencies||{},o=r.devDependencies||{};for(let n of s)if(i[n]||o[n])return!0;return!1}function $i(t){return!at.default.existsSync(ne.default.resolve(__dirname,`run-${t}-profile`))}function Ci(t){let e=t.name?.replace(/ /g,"-").toLowerCase();return{data:{id:`${e}@extension-js`,manifest:t,management:{id:`${e}@extension-js`,mayDisable:!0,optionsUrl:"",installType:"development",type:"extension",enabled:!0,name:t.name||"",description:t.description||"",version:t.version||"",hostPermissions:t.host_permissions||[],permissions:t.permissions||[],offlineEnabled:t.offline_enabled||!1,shortName:t.short_name||"",isApp:t.app&&t.app.background&&t.app.background.scripts}}}}function O(t,e){return JSON.parse(JSON.stringify(t),function(i,o){let n=i.indexOf(":");if(n===-1)return o;let c=i.substring(0,n);(c===e||c==="chromium"&&Q.includes(e))&&(this[i.substring(n+1)]=o)})}var ji=!1;function pt(t){let e=ve.default.join(t,"package.json");if(!_e.default.existsSync(e))return!1;let r=Xp(t),s=require(e),i=s.devDependencies&&s.devDependencies.tailwindcss,o=s.dependencies&&s.dependencies.tailwindcss,n=!!r&&!!(i||o);return n&&(ji||(process.env.EXTENSION_ENV==="development"&&console.log(S("Tailwind")),ji=!0)),n}function Xp(t){let e=ve.default.join(t,"tailwind.config.mjs"),r=ve.default.join(t,"tailwind.config.cjs"),s=ve.default.join(t,"tailwind.config.js");if(_e.default.existsSync(e))return e;if(_e.default.existsSync(r))return r;if(_e.default.existsSync(s))return s}var Fi=a(require("path")),Li=a(require("fs"));var Di=!1;function Se(t){let e=Fi.default.join(t,"package.json");if(!Li.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies.sass,i=r.dependencies&&r.dependencies.sass;return s||i?(Di||(process.env.EXTENSION_ENV==="development"&&console.log(S("SASS")),Di=!0),!0):!1}async function Ii(t,e){if(!Se(t))return[];try{require.resolve("sass-loader")}catch{await C("PostCSS",["postcss-loader","postcss-scss","postcss-flexbugs-fixes","postcss-preset-env","postcss-normalize"]),await C("SASS",["sass","sass-loader","resolve-url-loader"]),console.log(D("SASS")),process.exit(0)}return[{test:/\.(s(a|c)ss)$/,exclude:/\.module\.(s(a|c)ss)$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await N(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await N(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:e==="production"})}]},{test:/\.module\.(s(a|c)ss)$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await N(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await N(t,{loader:"sass-loader",mode:e,useMiniCssExtractPlugin:!0})}]}]}var Mi=a(require("path")),Ai=a(require("fs"));var Oi=!1;function Pe(t){let e=Mi.default.join(t,"package.json");if(!Ai.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies.less,i=r.dependencies&&r.dependencies.less;return s||i?(Oi||(process.env.EXTENSION_ENV==="development"&&console.log(S("LESS")),Oi=!0),!0):!1}async function Ri(t,e){if(!Pe(t))return[];try{require.resolve("less-loader")}catch{await C("LESS",["less","less-loader","resolve-url-loader"]),console.log(D("LESS")),process.exit(0)}return[{test:/\.less$/,oneOf:[{resourceQuery:/is_content_css_import=true/,use:await N(t,{loader:"less-loader",mode:e,useMiniCssExtractPlugin:!1})},{use:await N(t,{loader:"less-loader",mode:e,useMiniCssExtractPlugin:e==="production"})}]}]}var ft=a(require("path")),lt=a(require("fs"));var ce=!1;function Zp(t){let e=ft.default.join(t,"package.json");if(!lt.default.existsSync(e))return!1;let r=[".postcssrc",".postcssrc.json",".postcssrc.yaml",".postcssrc.yml",".postcssrc.js",".postcssrc.cjs","postcss.config.js","postcss.config.cjs"];if(lt.default.existsSync(e)){let s=require(e);if(s.dependencies&&s.dependencies.postcss||s.devDependencies&&s.devDependencies.postcss)return ce||(process.env.EXTENSION_ENV==="development"&&console.log(S("PostCSS")),ce=!0),!0}for(let s of r)if(lt.default.existsSync(ft.default.join(t,s)))return ce||(process.env.EXTENSION_ENV==="development"&&console.log(S("PostCSS")),ce=!0),!0;return pt(t)?(ce||(process.env.EXTENSION_ENV==="development"&&console.log(S("PostCSS")),ce=!0),!0):!1}async function Ti(t,e){if(!Zp(t))return{};try{require.resolve("postcss-loader")}catch{!Se(t)&&!Pe(t)&&await C("PostCSS",["postcss","postcss-loader","postcss-scss","postcss-flexbugs-fixes","postcss-preset-env","postcss-normalize"]),console.log(D("PostCSS")),process.exit(0)}return{loader:require.resolve("postcss-loader"),options:{postcssOptions:{parser:require.resolve("postcss-scss"),ident:"postcss",config:ft.default.resolve(t,"postcss.config.js"),plugins:[require.resolve("postcss-flexbugs-fixes"),[require.resolve("postcss-preset-env"),{autoprefixer:{flexbox:"no-2009"},stage:3}].filter(Boolean),require.resolve("postcss-normalize")].filter(Boolean)},sourceMap:e.mode==="development"}}}var Ui=a(require("path")),qi=a(require("fs"));var Ni=!1;function ke(t){let e=Ui.default.join(t,"package.json");if(!qi.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies.vue,i=r.dependencies&&r.dependencies.vue;return(s||i)&&(Ni||(process.env.EXTENSION_ENV==="development"&&console.log(S("Vue")),Ni=!0)),!!s||!!i}async function Wi(t){if(!ke(t))return;try{require.resolve("vue-loader")}catch{await C("TypeScript",["typescript"]),await C("Vue",["vue-loader","vue-template-compiler","vue-style-loader"]),console.log(D("Vue")),process.exit(0)}let e=[{test:/\.vue$/,loader:require.resolve("vue-loader"),include:t,exclude:/node_modules/}];return{plugins:[new(require("vue-loader")).VueLoaderPlugin],loaders:e,alias:void 0}}async function N(t,e){let r=Bi.default.loader,s=[e.useMiniCssExtractPlugin?r:ke(t)?require.resolve("vue-style-loader"):require.resolve("style-loader"),{loader:require.resolve("css-loader"),options:{sourceMap:e.mode==="development"}}].filter(Boolean);if(pt(t)||Se(t)||Pe(t)){let i=await Ti(t,e);i.loader&&s.push(i)}return e.loader&&s.push({loader:require.resolve("resolve-url-loader"),options:{sourceMap:e.mode==="development",root:t}},{loader:require.resolve(e.loader),options:{sourceMap:e.mode==="development"}}),s.filter(Boolean)}var A=a(require("path")),R=a(require("fs"));function Kp(t){let e=A.default.join(t,"stylelint.config.json"),r=A.default.join(t,".stylelintrc.js file"),s=A.default.join(t,"stylelint.config.mjs"),i=A.default.join(t,".stylelintrc.mjs"),o=A.default.join(t,"stylelint.config.cjs"),n=A.default.join(t,".stylelintrc.cjs"),c=A.default.join(t,".stylelintrc.json"),p=A.default.join(t,".stylelintrc"),l=A.default.join(t,".stylelintrc.yml"),u=A.default.join(t,".stylelintrc.yaml");if(R.default.existsSync(e))return e;if(R.default.existsSync(r))return r;if(R.default.existsSync(s))return s;if(R.default.existsSync(i))return i;if(R.default.existsSync(o))return o;if(R.default.existsSync(n))return n;if(R.default.existsSync(c))return c;if(R.default.existsSync(p))return p;if(R.default.existsSync(l))return l;if(R.default.existsSync(u))return u}var Ji=!1;function Yp(t){let e=A.default.join(t,"package.json");if(!R.default.existsSync(e))return!1;let s=!!Kp(t);return s&&(Ji||(process.env.EXTENSION_ENV==="development"&&console.log(S("Stylelint")),Ji=!0)),s}async function zi(t){return Yp(t),[]}var ut=class t{static name="plugin-css";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async configureOptions(e){let r=e.options.mode||"development",s=Hi.default.dirname(this.manifestPath),i=[new Vi.default];i.forEach(l=>l.apply(e));let o=await zi(s);i.push(...o);let n=[{test:/\.css$/,exclude:/\.module\.css$/,oneOf:[{use:await N(s,{mode:r,useMiniCssExtractPlugin:r==="production"})}]},{test:/\.module\.css$/,oneOf:[{use:await N(s,{mode:r,useMiniCssExtractPlugin:r==="production"})}]}];e.options.plugins=[...e.options.plugins,...i].filter(Boolean);let c=await Ii(s,r),p=await Ri(s,r);n.push(...c),n.push(...p),e.options.module.rules=[...e.options.module.rules,...n].filter(Boolean)}async apply(e){if((e.options.mode||"development")==="production"){e.hooks.beforeRun.tapPromise(t.name,async()=>await this.configureOptions(e));return}await this.configureOptions(e)}};var mt=class{static name="plugin-css";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async apply(e){let r={test:/\.svg$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2048}}},i=[...e.options.module.rules.some(o=>o&&o.test instanceof RegExp&&o.test.test(".svg")&&o.use!==void 0)?[]:[r],{test:/\.(png|jpg|jpeg|gif|webp|avif|ico|bmp)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2*1024}}},{test:/\.(woff|woff2|eot|ttf|otf)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"}},{test:/\.(txt|md|csv|tsv|xml|pdf|docx|doc|xls|xlsx|ppt|pptx|zip|gz|gzip|tgz)$/i,type:"asset/resource",generator:{filename:"assets/[name][ext]"},parser:{dataUrlCondition:{maxSize:2*1024}}},{test:/\.(csv|tsv)$/i,use:[require.resolve("csv-loader")],generator:{filename:"assets/[name][ext]"}}];e.options.module.rules=[...e.options.module.rules,...i].filter(Boolean)}};var Zr=a(require("path"));var Gr=a(require("path")),Xr=a(require("fs"));var Gi=!1,Qp=[".babelrc",".babelrc.json",".babelrc.js",".babelrc.cjs","babel.config.json","babel.config.js","babel.config.cjs"];function el(t){let e=Gr.default.join(t,"package.json");if(!Xr.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies["babel-core"],i=r.dependencies&&r.dependencies["babel-core"],o=Qp.some(n=>Xr.default.existsSync(Gr.default.join(t,n)))||!!s||!!i;return o&&(Gi||(process.env.EXTENSION_ENV==="development"&&process.env.EXTENSION_ENV==="development"&&console.log(S("Babel")),Gi=!0)),o}async function Xi(t,e){el(e)}var Ki=a(require("path")),Yi=a(require("fs"));var Zi=!1;function pe(t){let e=Ki.default.join(t,"package.json");if(!Yi.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies.preact,i=r.dependencies&&r.dependencies.preact;return(s||i)&&(Zi||(process.env.EXTENSION_ENV==="development"&&console.log(S("Preact")),Zi=!0)),!!s||!!i}async function Qi(t){if(!pe(t))return;try{require.resolve("@prefresh/webpack")}catch{await C("Preact",["@prefresh/webpack"]),console.log(D("Preact")),process.exit(0)}return{plugins:[new(require("@prefresh/webpack"))],loaders:void 0,alias:{react:"preact/compat","react-dom/test-utils":"preact/test-utils","react-dom":"preact/compat","react/jsx-runtime":"preact/jsx-runtime"}}}var to=a(require("path")),ro=a(require("fs"));var eo=!1;function le(t){let e=to.default.join(t,"package.json");if(!ro.default.existsSync(e))return!1;let r=require(e),s=r.devDependencies&&r.devDependencies.react,i=r.dependencies&&r.dependencies.react;return(s||i)&&(eo||(process.env.EXTENSION_ENV==="development"&&console.log(S("React")),eo=!0)),!!s||!!i}async function so(t){if(!le(t))return;try{require.resolve("@pmmmwh/react-refresh-webpack-plugin")}catch{await C("React",["react-refresh","@pmmmwh/react-refresh-webpack-plugin","react-refresh-typescript"]),console.log(D("React")),process.exit(0)}return{plugins:[new(require("@pmmmwh/react-refresh-webpack-plugin"))({overlay:!1})],loaders:void 0,alias:void 0}}var dt=a(require("path")),gt=a(require("fs"));var io=!1;function V(t){let e=dt.default.join(t,"package.json");if(!gt.default.existsSync(e))return!1;let r=rl(t),s=require(e),i=s.devDependencies&&s.devDependencies.typescript,o=s.dependencies&&s.dependencies.typescript;return io||((i||o)&&(r?process.env.EXTENSION_ENV==="development"&&console.log(S("TypeScript")):(console.log(di()),sl(t))),io=!0),!!r&&!!(i||o)}function tl(t,e){return{compilerOptions:{allowJs:!0,allowSyntheticDefaultImports:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,jsx:ct(t)?"react-jsx":"preserve",lib:["dom","dom.iterable","esnext"],moduleResolution:"node",module:"esnext",resolveJsonModule:!0,strict:!0,target:"esnext",isolatedModules:!1,skipLibCheck:!0},exclude:["node_modules","dist"]}}function rl(t){let e=dt.default.join(t,"tsconfig.json");if(gt.default.existsSync(e))return e}function sl(t){gt.default.writeFileSync(dt.default.join(t,"tsconfig.json"),JSON.stringify(tl(t,{mode:"development"}),null,2))}var ht=class t{static name="plugin-js-frameworks";manifestPath;constructor(e){this.manifestPath=e.manifestPath}async configureOptions(e){let r=e.options.mode||"development",s=Zr.default.dirname(this.manifestPath),i=await Xi(e,s),o=await so(s),n=await Qi(s),c=await Wi(s);e.options.resolve.alias={...i?.alias||{},...o?.alias||{},...n?.alias||{},...c?.alias||{},...e.options.resolve.alias},e.options.module.rules=[{test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Zr.default.dirname(this.manifestPath)],exclude:/node_modules/,use:{loader:require.resolve("swc-loader"),options:{sync:!0,module:{type:"es6"},minify:r==="production",isModule:!0,jsc:{target:"es2016",parser:{syntax:V(s)?"typescript":"ecmascript",tsx:V(s)&&(le(s)||pe(s)),jsx:!V(s)&&(le(s)||pe(s)),dynamicImport:!0},transform:{react:{development:r==="development",refresh:r==="development",runtime:"automatic",importSource:"react"}}}}}},...i?.loaders||[],...o?.loaders||[],...n?.loaders||[],...c?.loaders||[],...e.options.module.rules].filter(Boolean),o?.plugins?.forEach(p=>p.apply(e)),n?.plugins?.forEach(p=>p.apply(e)),c?.plugins?.forEach(p=>p.apply(e))}async apply(e){if((e.options.mode||"development")==="production"){e.hooks.beforeRun.tapPromise(t.name,async()=>await this.configureOptions(e));return}await this.configureOptions(e)}};var Re=a(require("path"));var zo=a(require("path"));var oo=a(require("path"));function no(t,e){if(!e||!e.action||!e.action.default_popup)return;let r=e.action.default_popup;return oo.default.join(t,r)}var ao=a(require("path"));function co(t,e){if(!e||!e.browser_action||!e.browser_action.default_popup)return;let r=e.browser_action.default_popup;return ao.default.join(t,r)}var yt=a(require("path"));function po(t,e){let r={newtab:void 0};if(!e||!e.chrome_url_overrides)return{"chrome_url_overrides/newtab":void 0};if(e.chrome_url_overrides.history){let s=e.chrome_url_overrides.history;r={"chrome_url_overrides/history":yt.default.join(t,s)}}if(e.chrome_url_overrides.newtab){let s=e.chrome_url_overrides.newtab;r={"chrome_url_overrides/newtab":yt.default.join(t,s)}}if(e.chrome_url_overrides.bookmarks){let s=e.chrome_url_overrides.bookmarks;r={"chrome_url_overrides/bookmarks":yt.default.join(t,s)}}return r}var lo=a(require("path"));function fo(t,e){if(!e||!e.devtools_page)return;let r=e.devtools_page;return lo.default.join(t,r)}var Kr=a(require("path"));function uo(t,e){if(e.options_page){let s=e.options_page;return Kr.default.join(t,s)}if(!e||!e.options_ui||!e.options_ui.page)return;let r=e.options_ui.page;return Kr.default.join(t,r)}var mo=a(require("path"));function go(t,e){if(!e||!e.page_action||!e.page_action.default_popup)return;let r=e.page_action.default_popup;return mo.default.join(t,r)}var ho=a(require("path"));function yo(t,e){if(!e||!e.sandbox||!e.sandbox.pages)return{"sandbox/page-0":void 0};let r=e.sandbox.pages,s={};for(let[i,o]of r.entries())s[`sandbox/page-${i}`]=ho.default.join(t,o);return s}var bo=a(require("path"));function wo(t,e){if(!e||!e.side_panel||!e.side_panel.default_path)return;let r=e.side_panel.default_path;return bo.default.join(t,r)}var xo=a(require("path"));function vo(t,e){if(!e||!e.sidebar_action||!e.sidebar_action.default_panel)return;let r=e.sidebar_action.default_panel;return xo.default.join(t,r)}function Ee(t,e){return{"action/default_popup":no(t,e),"browser_action/default_popup":co(t,e),...po(t,e),devtools_page:fo(t,e),"options_ui/page":uo(t,e),"page_action/default_popup":go(t,e),...yo(t,e),"side_panel/default_path":wo(t,e),"sidebar_action/default_panel":vo(t,e)}}var Yr=a(require("path"));function _o(t,e){if(!e||!e.action||!e.action.default_icon)return;if(typeof e.action.default_icon=="string")return Yr.default.join(t,e.action.default_icon);let r=[];for(let s in e.action.default_icon)r.push(Yr.default.join(t,e.action.default_icon[s]));return r}var Qr=a(require("path"));function So(t,e){if(!e||!e.browser_action||!e.browser_action.default_icon)return;let r=[];if(typeof e.browser_action.default_icon=="string")return Qr.default.join(t,e.browser_action.default_icon);for(let s in e.browser_action.default_icon){let i=e.browser_action.default_icon[s]=Qr.default.join(t,e.browser_action.default_icon[s]);r.push(i)}return r}var es=a(require("path"));function Po(t,e){if(!(!e||!e.browser_action||!e.browser_action.theme_icons)){for(let r of e.browser_action.theme_icons)r.light&&(r.light=es.default.join(t,r.light)),r.dark&&(r.dark=es.default.join(t,r.dark)),r.size&&delete r.size;return e.browser_action.theme_icons}}var ko=a(require("path"));function Eo(t,e){if(!e||!e.icons)return;let r=[];for(let s in e.icons){let i=ko.default.join(t,e.icons[s]);r.push(i)}return r}var ts=a(require("path"));function $o(t,e){if(!e||!e.page_action||!e.page_action.default_icon)return;if(typeof e.page_action.default_icon=="string")return ts.default.join(t,e.page_action.default_icon);let r=[];for(let s in e.page_action.default_icon){let i=ts.default.join(t,e.page_action.default_icon[s]);r.push(i)}return r}var Co=a(require("path"));function jo(t,e){return!e||!e.sidebar_action||!e.sidebar_action.default_icon?void 0:Co.default.join(t,e.sidebar_action.default_icon)}function Do(t,e){return{action:_o(t,e),browser_action:So(t,e),"browser_action/theme_icons":Po(t,e),icons:Eo(t,e),page_action:$o(t,e),sidebar_action:jo(t,e)}}var Fo=a(require("path"));function Lo(t,e){let r={};return!e||!e.declarative_net_request||!e.declarative_net_request.rule_resources?{"declarative_net_request/rule_resources-0":void 0}:(e.declarative_net_request.rule_resources.forEach(i=>{r[`declarative_net_request/${i.id}`]=Fo.default.join(t,i.path)}),r)}var Io=a(require("path"));function Oo(t,e){if(!e||!e.storage||!e.storage.managed_schema)return;let r=e.storage.managed_schema;return Io.default.join(t,r)}function Mo(t,e){return{...Lo(t,e),"storage/managed_schema":Oo(t,e)}}var $e=a(require("path")),bt=a(require("fs"));function Ao(t,e){let r=$e.default.join($e.default.dirname(e),"_locales"),s=[];if(bt.default.existsSync(r))for(let i of bt.default.readdirSync(r)){let o=$e.default.join(r,i);for(let n of bt.default.readdirSync(o))s.push($e.default.join(t,"_locales",i,n))}return s}var Ro=a(require("path"));function To(t,e){if(!e||!e.background)return;let r=e.background.scripts;if(r)return r.map(s=>Ro.default.join(t,s))}var No=a(require("path"));function Uo(t,e){if(!e||!e.background)return;let r=e.background.service_worker;if(r)return No.default.join(t,r)}var rs=a(require("path"));function qo(t,e){if(!e||!e.content_scripts)return{"content_scripts/content-0":void 0};let r=o=>{if(o.js?.length!==0)return o.js?.map(n=>rs.default.join(t,n))},s=o=>{if(o.css?.length!==0)return o.css?.map(n=>rs.default.join(t,n))},i={};for(let[o,n]of e.content_scripts.entries()){let c=r(n),p=s(n);i[`content_scripts/content-${o}`]=[...(c||[]).filter(l=>l!=null),...(p||[]).filter(l=>l!=null)]}return i}var Wo=a(require("path"));function Bo(t,e){if(!e||!e.user_scripts||!e.user_scripts.api_script)return;let r=e.user_scripts.api_script;return Wo.default.join(t,r)}function Ce(t,e){return{"background/scripts":To(t,e),"background/service_worker":Uo(t,e),...qo(t,e),"user_scripts/api_script":Bo(t,e)}}function Jo(t){if(!(!t||!t.web_accessible_resources||!t.web_accessible_resources.length))return t.web_accessible_resources}function fe({manifestPath:t,browser:e}){let r=zo.default.dirname(t),s=require(t),i=O(s,e||"chrome");return{html:Ee(r,i),icons:Do(r,i),json:Mo(r,i),locales:Ao(r,t),scripts:Ce(r,i),web_accessible_resources:Jo(i)}}var ue=a(require("path"));var wt=a(require("fs")),je=a(require("path"));function xt(t,e){if(!wt.default.existsSync(t)||!wt.default.statSync(t).isDirectory())return[];let r=[];function s(i){let o=wt.default.readdirSync(i,{withFileTypes:!0});for(let n of o){let c=je.default.join(i,n.name);n.isDirectory()?s(c):n.isFile()&&e(n.name)&&r.push(c)}}return s(t),r}function vt(t,e,r=""){return!e||!e.length?{}:e.reduce((s,i)=>{let o=je.default.extname(i),n=je.default.basename(i,o),c=r?`${r}/${n}`:je.default.relative(t,i);return{...s,[c]:i}},{})}function Ho({manifestPath:t}){let e=ue.default.dirname(t),r={public:ue.default.join(e,"public"),pages:ue.default.join(e,"pages"),scripts:ue.default.join(e,"scripts")},s={public:xt(r.public,()=>!0),pages:xt(r.pages,o=>o.endsWith(".html")),scripts:xt(r.scripts,o=>[".js",".mjs",".jsx",".mjsx",".ts",".mts",".tsx",".mtsx"].includes(ue.default.extname(o)))};return{public:vt(e,s.public),pages:vt(e,s.pages,"pages"),scripts:vt(e,s.scripts,"scripts")}}var _t=a(require("path")),Vo=a(require("webpack")),St=class{manifestPath;browser;includeList;excludeList;loaderOptions;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList,this.excludeList=e.excludeList,this.loaderOptions=e.loaderOptions}apply(e){new Vo.default.ProvidePlugin({r:[_t.default.resolve(__dirname,"./resolver-module.mjs"),"default"]}).apply(e),e.options.module?.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,loader:require.resolve(_t.default.resolve(__dirname,"./resolver-loader.js")),include:[_t.default.dirname(this.manifestPath)],exclude:/node_modules/,options:{manifestPath:this.manifestPath,browser:this.browser,includeList:this.includeList,jsx:this.loaderOptions?this.loaderOptions.jsx:!1,typescript:this.loaderOptions?this.loaderOptions.typescript:!1,minify:this.loaderOptions?this.loaderOptions.minify:!1}})}};var Go=a(require("fs")),kt=a(require("webpack")),Xo=require("webpack");var Pt=class{manifestPath;constructor(e){this.manifestPath=e.manifestPath}apply(e){e.hooks.compilation.tap("manifest:emit-manifest",r=>{r.hooks.processAssets.tap({name:"manifest:emit-manifest",stage:kt.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{let s=this.manifestPath,i;try{let c=Go.default.readFileSync(s,"utf-8");i=JSON.parse(c),"$schema"in i&&delete i.$schema}catch(c){r.errors.push(new kt.default.WebpackError(fi(c)));return}let o=JSON.stringify(i,null,2);r.emitAsset("manifest.json",new Xo.sources.RawSource(o))})})}};var $n=a(require("path")),De=require("webpack");function Zo(t,e){return t.background&&t.background.scripts&&{background:{...t.background,...t.background.scripts&&{scripts:[...t.background.scripts.map(r=>h("background/scripts.js",r,e))]}}}}var Ko=a(require("path"));var Et=t=>Ko.default.basename(t);function Yo(t,e){return t.browser_action&&{browser_action:{...t.browser_action,...t.browser_action.default_popup&&{default_popup:h("browser_action/default_popup.html",t.browser_action.default_popup,e)},...t.browser_action.default_icon&&{default_icon:typeof t.browser_action.default_icon=="string"?h(`icons/${Et(t.browser_action.default_icon)}`,t.browser_action.default_icon,e):Object.fromEntries(Object.entries(t.browser_action.default_icon).map(([r,s])=>[r,h(`icons/${Et(s)}`,s,e)]))},...t.browser_action.theme_icons&&{theme_icons:t.browser_action.theme_icons.map(r=>({...r,...r.light&&{light:h(`browser_action/${Et(r.light)}`,r.light,e)},...r.dark&&{dark:h(`browser_action/${Et(r.dark)}`,r.dark,e)}}))}}}}function Qo(t,e){return t.declarative_net_request&&{declarative_net_request:{...t.declarative_net_request,rule_resources:t.declarative_net_request.rule_resources.map(r=>({...r,path:r.path&&h(`declarative_net_request/${r.id}.json`,r.path,e)}))}}}function en(t,e){return{...Zo(t,e),...Yo(t,e),...Qo(t,e)}}var rn=a(require("path"));var tn=t=>rn.default.basename(t);function sn(t,e){return t.action&&{action:{...t.action,...t.action.default_popup&&{default_popup:h("action/default_popup.html",t.action.default_popup,e)},...t.action.default_icon&&{default_icon:typeof t.action.default_icon=="string"?h(`action/${tn(t.action.default_icon)}`,t.action.default_icon,e):Object.fromEntries(Object.entries(t.action.default_icon).map(([r,s])=>[r,h(`action/${tn(s)}`,s,e)]))}}}}function on(t,e){return t.background&&t.background.service_worker&&{background:{...t.background,...t.background.service_worker&&{service_worker:h("background/service_worker.js",t.background.service_worker,e)}}}}function $t(t,e){return t.side_panel&&{side_panel:{...t.side_panel.default_path&&{default_path:h("side_panel/default_path.html",t.side_panel.default_path,e)}}}}function nn(t,e){return{...sn(t,e),...on(t,e),...$t(t,e)}}function an(t,e){return t.background&&t.background.page&&{background:{...t.background,...t.background.page&&{page:h("background/page.html",t.background.page,e)}}}}function cn(t,e){return t.chrome_url_overrides&&{chrome_url_overrides:{...t.chrome_url_overrides.bookmarks&&{bookmarks:h("chrome_url_overrides/bookmarks.html",t.chrome_url_overrides.bookmarks,e)},...t.chrome_url_overrides.history&&{history:h("chrome_url_overrides/history.html",t.chrome_url_overrides.history,e)},...t.chrome_url_overrides.newtab&&{newtab:h("chrome_url_overrides/newtab.html",t.chrome_url_overrides.newtab,e)}}}}function pn(t,e){return t.content_scripts&&{content_scripts:t.content_scripts.map((r,s)=>{let i=[...new Set(r.js)],o=[...new Set(r.css)];return{...r,js:[...i.map(n=>h(`content_scripts/content-${s}.js`,n,e))],css:[...o.map(n=>h(`content_scripts/content-${s}.css`,n,e))]}})}}function ln(t,e){return t.devtools_page&&{devtools_page:h("devtools_page.html",t.devtools_page,e)}}var fn=a(require("path"));var il=t=>fn.default.basename(t);function un(t,e){return t.icons&&{icons:Object.fromEntries(Object.entries(t.icons).map(([r,s])=>[r,h(`icons/${il(s)}`,s,e)]))}}function mn(t,e){return t.options_page&&{options_page:h("options_ui/page.html",t.options_page,e)}}function dn(t,e){return t.options_ui&&{options_ui:{...t.options_ui,...t.options_ui.page&&{page:h("options_ui/page.html",t.options_ui.page,e)}}}}var hn=a(require("path"));var gn=t=>hn.default.basename(t);function yn(t,e){return t.page_action&&{page_action:{...t.page_action,...t.page_action.default_popup&&{default_popup:h("page_action/default_popup.html",t.page_action.default_popup,e)},...t.page_action.default_icon&&{default_icon:typeof t.page_action.default_icon=="string"?h(`icons/${gn(t.page_action.default_icon)}`,t.page_action.default_icon,e):Object.fromEntries(Object.entries(t.page_action.default_icon).map(([r,s])=>[r,h(`icons/${gn(s)}`,s,e)]))}}}}function bn(t,e){return t.sandbox&&{sandbox:{...t.sandbox,...t.sandbox.pages&&{pages:t.sandbox.pages.map((r,s)=>h(`sandbox/page-${s}.html`,r,e))}}}}var wn=a(require("path"));var ol=t=>wn.default.basename(t);function xn(t,e){return t.sidebar_action&&{sidebar_action:{...t.sidebar_action,...t.sidebar_action.default_panel&&{default_panel:h("sidebar_action/default_panel.html",t.sidebar_action.default_panel,e)},...t.sidebar_action.default_icon&&{default_icon:h(`icons/${ol(t.sidebar_action.default_icon)}`,t.sidebar_action.default_icon,e)}}}}function vn(t,e){return t.storage&&{storage:{...t.storage.managed_schema&&{managed_schema:h("storage/managed_schema.json",t.storage.managed_schema,e)}}}}var _n=a(require("path"));var nl=t=>_n.default.basename(t);function Sn(t,e){return t.theme&&{theme:{...t.theme,...t.theme.images&&{images:{...t.theme.images,theme_frame:h(`theme/images/${nl(t.theme.images.theme_frame)}`,t.theme.images.theme_frame,e)}}}}}function Pn(t,e){return t.user_scripts&&{user_scripts:{...t.user_scripts,...t.user_scripts.api_script&&{api_script:h("user_scripts/api_script.js",t.user_scripts.api_script,e)}}}}function kn(t){return t.web_accessible_resources&&t.web_accessible_resources.length&&{web_accessible_resources:t.web_accessible_resources}}function En(t,e){return{...an(t,e),...cn(t,e),...pn(t,e),...ln(t,e),...un(t,e),...mn(t,e),...dn(t,e),...yn(t,e),...bn(t,e),...$t(t,e),...xn(t,e),...vn(t,e),...Sn(t,e),...Pn(t,e),...kn(t)}}function ss(t,e,r){let s=e||require(t);return JSON.stringify({...s,...En(s,r),...en(s,r),...nn(s,r)},null,2)}var Ct=class{manifestPath;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.excludeList=e.excludeList}applyDevOverrides(e){return e.content_scripts?e.content_scripts.map((r,s)=>(r.css.length&&!r.js.length&&(r.js=[h(`content_scripts-${s}`,"dev.js",{})]),r)):{}}applyProdOverrides(e,r){return r.content_scripts?r.content_scripts.map((s,i)=>{if(s.js.length&&!s.css.length){let o=e.options.output?.path||"";s.css=s.js.map(n=>{let c=$n.default.join(o,n.replace(".js",".css"));return h(`content_scripts/content-${i}.css`,c,{})})}return s}):{}}apply(e){e.hooks.thisCompilation.tap("manifest:update-manifest",r=>{r.hooks.processAssets.tap({name:"manifest:update-manifest",stage:De.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},()=>{if(r.errors.length>0)return;let s=J(r,this.manifestPath),i=ss(this.manifestPath,s,this.excludeList||{}),o={...s,...JSON.parse(i)};e.options.mode==="development"&&o.content_scripts&&(o.content_scripts=this.applyDevOverrides(o)),e.options.mode==="development"&&o.content_scripts&&(o.content_scripts=this.applyDevOverrides(o));let n=JSON.stringify(o,null,2),c=new De.sources.RawSource(n);r.updateAsset("manifest.json",c)}),e.options.mode==="production"&&r.hooks.afterProcessAssets.tap("manifest:update-manifest",()=>{if(r.errors.length>0)return;let s=J(r,this.manifestPath),i=ss(this.manifestPath,s,this.excludeList||{}),o={...s,...JSON.parse(i)};o.content_scripts&&(o.content_scripts=this.applyProdOverrides(e,o));let n=JSON.stringify(o,null,2),c=new De.sources.RawSource(n);r.updateAsset("manifest.json",c)})})}};var Cn=a(require("fs")),jt=class{dependencyList;constructor(e){this.dependencyList=e}apply(e){e.hooks.afterCompile.tap("ManifestPlugin (AddDependenciesPlugin)",r=>{if(r.errors?.length)return;let s=new Set(r.fileDependencies);this.dependencyList&&this.dependencyList.forEach(i=>{Cn.default.existsSync(i)&&(s.has(i)||(s.add(i),r.fileDependencies.add(i)))})})}};var jn=a(require("fs")),Dn=a(require("path")),Ft=a(require("webpack"));var Dt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}extractPaths(e){let r=Array.isArray(e)?e:[e];if(typeof r[0]=="string")return r;let s=[];if(typeof e=="object"&&!Array.isArray(e)){let i=e;i.light&&s.push(i.light),i.dark&&s.push(i.dark)}return s}handleErrors(e,r){let s=[".png",".jpg",".jpeg",".svg",".gif",".webp"],i=[".json"],o=[".js",".ts",".jsx",".tsx",".mjs",".cjs"],n=".html",c=Object.entries(this.includeList||{});for(let[p,l]of c)if(l){let u=this.extractPaths(l);for(let d of u){let g=Dn.default.extname(d),_=require(this.manifestPath).name||"Extension.js";if(!jn.default.existsSync(d)){if(d.startsWith("/"))return;let v=ie(_,p,d);s.includes(g)?e.errors.push(new r(v)):i.includes(g)?e.errors.push(new r(v)):o.includes(g)?e.errors.push(new r(v)):g===n?e.errors.push(new r(v)):e.errors.push(new r(v))}}}}apply(e){e.hooks.compilation.tap("manifest:check-manifest-files",r=>{r.hooks.processAssets.tap({name:"compatibility:check-manifest-files",stage:Ft.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_COUNT},()=>{let s=Ft.default.WebpackError;this.handleErrors(r,s)})})}};var Fn=a(require("fs")),It=a(require("webpack"));var Lt=class{manifestPath;browser;includeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList}flattenAndSort(e){return e.flat(1/0).sort()}apply(e){e.hooks.watchRun.tapAsync("manifest:throw-if-recompile-is-needed",(r,s)=>{if((r.modifiedFiles||new Set).has(this.manifestPath)){let o=r.options.context||"",n=`${o}/package.json`;if(!Fn.default.existsSync(n)){s();return}let c=require(this.manifestPath),p=O(c,this.browser),l=this.flattenAndSort(Object.values(Ee(o,p))),u=this.flattenAndSort(Object.values(Ce(o,p)));r.hooks.thisCompilation.tap("manifest:throw-if-recompile-is-needed",d=>{d.hooks.processAssets.tap({name:"manifest:check-manifest-files",stage:It.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_COMPATIBILITY},()=>{let y=d.getAsset("manifest.json")?.source.source().toString(),_=JSON.parse(y||"{}"),v=this.flattenAndSort(Object.values(Ee(o,_))),M=this.flattenAndSort(Object.values(Ce(o,_)));if(u.toString()!==M.toString()||l.toString()!==v.toString()){let T=l.filter(B=>!v.includes(B))[0],W=v.filter(B=>!l.includes(B))[0],we=ui(W,T);d.errors.push(new It.default.WebpackError(we))}})})}s()})}};var Ot=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new Pt({manifestPath:this.manifestPath}).apply(e),new Dt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Ct({manifestPath:this.manifestPath,excludeList:this.excludeList}).apply(e),new jt([this.manifestPath]).apply(e),new Lt({manifestPath:this.manifestPath,browser:this.browser,includeList:this.includeList}).apply(e)}};var cs=a(require("path"));var os=a(require("fs")),Rt=a(require("webpack")),An=require("webpack");var Ln=a(require("fs")),de=a(require("path")),In=a(require("parse5-utils"));var me=a(require("parse5-utils"));function Mt(t){try{return new URL(t),!0}catch{return!1}}function Fe(t,e){let{childNodes:r=[]}=t;for(let s of r)if(s.nodeName==="script"){let i=me.default.getAttribute(s,"src");if(!i||Mt(i))continue;e({filePath:i,childNode:s,assetType:"script"})}else if(s.nodeName==="link"){let i=me.default.getAttribute(s,"href"),o=me.default.getAttribute(s,"rel");if(!i||Mt(i))continue;e(o==="dns-prefetch"||o==="icon"||o==="manifest"||o==="modulepreload"||o==="preconnect"||o==="prefetch"||o==="preload"||o==="prerender"?{filePath:i,childNode:s,assetType:"staticHref"}:{filePath:i,childNode:s,assetType:"css"})}else if(s.nodeName==="a"||s.nodeName==="area"){let i=me.default.getAttribute(s,"href");if(!i||Mt(i))continue;e({filePath:i,childNode:s,assetType:"staticHref"})}else if(s.nodeName==="audio"||s.nodeName==="embed"||s.nodeName==="iframe"||s.nodeName==="img"||s.nodeName==="input"||s.nodeName==="source"||s.nodeName==="track"||s.nodeName==="video"){let i=me.default.getAttribute(s,"src");if(!i||Mt(i))continue;e({filePath:i,childNode:s,assetType:"staticSrc"})}else Fe(s,e)}function j(t,e){let r={css:[],js:[],static:[]};if(!t)return r;let s=e||Ln.default.readFileSync(t,{encoding:"utf8"}),i=In.default.parse(s),o=(n,c)=>de.default.join(de.default.dirname(n),c.startsWith("/")?de.default.relative(de.default.dirname(n),c):c);for(let n of i.childNodes)if(n.nodeName==="html"){for(let c of n.childNodes)(c.nodeName==="head"||c.nodeName==="body")&&Fe(c,({filePath:p,assetType:l})=>{let u=o(t,p);switch(l){case"script":r.js?.push(u);break;case"css":r.css?.push(u);break;case"staticSrc":case"staticHref":if(p.startsWith("#"))break;r.static?.push(u);break;default:break}});return{css:r.css,js:r.js,static:r.static}}}function On(t,e,r){let s=Object.keys(t).find(o=>{let n=t[o];return t[o]===e||j(n)?.js?.includes(e)||j(n)?.css?.includes(e)})||"",i=is(e);return s?`/${s.replace(i,"")}${r}`:`${e.replace(i,"")}${r}`}function is(t){switch(de.default.extname(t)){case".js":case".mjs":case".ts":case".tsx":return".js";case".css":case".scss":case".sass":case".less":return".css";case".html":return".html";default:return".js"}}function G(t,e,r){return r?`/${t}${e}`:`${t}${e}`}function Mn(t,e){return Object.values(e||{}).some(r=>r===t)}var At=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){let s=require(this.manifestPath).name||"Extension.js";e.hooks.thisCompilation.tap("html:emit-html-file",i=>{i.hooks.processAssets.tap({name:"AddAssetsToCompilationPlugin",stage:Rt.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL},()=>{let o=Object.entries(this.includeList||{});for(let n of o){let[c,p]=n;if(p){if(!os.default.existsSync(p)){let u=ie(s,c,p);i.warnings.push(new Rt.default.WebpackError(u));return}let l=os.default.readFileSync(p,"utf8");if(!k(p,this.excludeList)){let u=new An.sources.RawSource(l),d=G(c,".html");i.emitAsset(d,u)}}}})})}};var Tt=a(require("fs")),ge=a(require("path")),Rn=a(require("webpack")),Le=require("webpack");var Nt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.thisCompilation.tap("html:add-assets-to-compilation",r=>{r.hooks.processAssets.tap({name:"html:add-assets-to-compilation",stage:Le.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL},()=>{if(r.errors.length>0)return;let s=Object.entries(this.includeList||{});for(let i of s){let[o,n]=i,c=o+".html";if(n){let p=r.getAsset(c);if(p){let l=p.source.source().toString(),u=j(n,l)?.static,d=[...new Set(u)];for(let g of d)if(!g.startsWith("/")){if(!Tt.default.existsSync(g)&&!Mn(g,this.includeList)&&!ge.default.basename(g).startsWith("#")){let T=tt(n,g);g.startsWith("/")||r.warnings.push(new Rn.default.WebpackError(T));return}let y=Tt.default.readFileSync(g),_=new Le.sources.RawSource(y),v=ge.default.join("assets",ge.default.basename(g));if(!r.getAsset(v))if(g.endsWith(".html")){let M=j(g),T=[...M?.js||[],...M?.css||[],...M?.static||[]];r.emitAsset(v,_),T.forEach(W=>{let we=Tt.default.readFileSync(W),B=new Le.sources.RawSource(we),Bs=ge.default.join("assets",ge.default.basename(W));r.getAsset(Bs)||r.emitAsset(Bs,B)})}else r.emitAsset(v,_)}}}}})})}};var Tn=a(require("path")),ns=a(require("fs"));var Ut=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){let r=this.includeList||{};for(let s of Object.entries(r)){let[i,o]=s;if(o){if(!ns.default.existsSync(o))return;let n=j(o),c=n?.js||[],p=n?.css||[],l=[...c,...p].filter(u=>!k(u,this.excludeList));if(e.options.mode==="development"){let u=Tn.default.resolve(__dirname,"minimum-script-file.mjs");l.push(u)}ns.default.existsSync(o)&&(k(o,this.excludeList)||(e.options.entry={...e.options.entry,[i]:{import:l}}))}}}};var Wt=require("webpack");var as=a(require("fs")),X=a(require("path")),F=a(require("parse5-utils"));function Nn(t,e,r,s,i){let o=as.default.readFileSync(r,{encoding:"utf8"}),n=F.default.parse(o),c=!!t.getAsset(e+".css"),p=!1;for(let l of n.childNodes)if(l.nodeName==="html"){for(let u of l.childNodes){if((u.nodeName==="head"||u.nodeName==="body")&&Fe(u,({filePath:d,childNode:g,assetType:y})=>{let _=X.default.dirname(r),v=X.default.resolve(_,d),M=is(v),T=k(X.default.resolve(_,d),i),W=X.default.join("/",X.default.normalize(d)),we=Ei(v,s);switch(y){case"script":{T?l=F.default.setAttribute(g,"src",W):(l=F.default.remove(g),p=!0);break}case"css":{T?l=F.default.setAttribute(g,"href",W):(l=F.default.remove(g),c=!0);break}case"staticHref":case"staticSrc":{if(T)l=F.default.setAttribute(g,y==="staticSrc"?"src":"href",W);else if(we){let B=On(s,v,M);l=F.default.setAttribute(g,y==="staticSrc"?"src":"href",B)}else{let B=X.default.join("assets",X.default.basename(v,M));as.default.existsSync(v)&&(l=F.default.setAttribute(g,y==="staticSrc"?"src":"href",G(B,"",!0)))}break}default:break}}),u.nodeName==="head"&&c&&t.options.mode==="production"){let d=F.default.createNode("link");d.attrs=[{name:"rel",value:"stylesheet"},{name:"href",value:G(e,".css",!0)}],F.default.append(u,d)}if(u.nodeName==="body"&&(p||t.options.mode!=="production")){let d=F.default.createNode("script");d.attrs=[{name:"src",value:G(e,".js",!0)}],F.default.append(u,d)}}return F.default.serialize(n)}}var qt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("html:update-html-file",r=>{r.hooks.processAssets.tap({name:"html:update-html-file",stage:Wt.Compilation.PROCESS_ASSETS_STAGE_DERIVED},()=>{if(r.errors.length>0)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[o,n]=i;if(n){let c=Nn(r,o,n,s,this.excludeList||{});if(!k(n,this.excludeList)&&c){let p=new Wt.sources.RawSource(c),l=G(o,".html");r.updateAsset(l,p)}}}})})}};var Un=a(require("fs")),qn=require("webpack");var Bt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.thisCompilation.tap("html:add-to-file-dependencies",r=>{r.hooks.processAssets.tap({name:"html:add-to-file-dependencies",stage:qn.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(r.errors?.length)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[,o]=i;if(o){let n=j(o),c=new Set(r.fileDependencies);if(Un.default.existsSync(o)){let p=[o,...n?.static||[]];for(let l of p)c.has(l)||(c.add(l),l===o&&r.fileDependencies.add(l))}}}})})}};var Wn=a(require("fs"));var Jt=class{manifestPath;includeList;initialHtmlAssets={};constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}hasEntriesChanged(e,r){if(!r||!e||e.length!==r.length)return!0;for(let s=0;s<e.length;s++)if(e[s]!==r[s])return!0;return!1}storeInitialHtmlAssets(e){Object.entries(e).forEach(([r,s])=>{let i=s;if(i){if(!Wn.default.existsSync(i)){let n=require(this.manifestPath).name||"Extension.js";console.error(ie(n,r,i)),process.exit(1)}this.initialHtmlAssets[i]={js:j(i)?.js||[],css:j(i)?.css||[]}}})}apply(e){let r=this.includeList||{};this.storeInitialHtmlAssets(r),e.hooks.make.tapAsync("html:throw-if-recompile-is-needed",(s,i)=>{let o=e.modifiedFiles||new Set,n=Array.from(o)[0];if(n&&this.initialHtmlAssets[n]){let c=j(n)?.js||[],p=j(n)?.css||[],{js:l,css:u}=this.initialHtmlAssets[n];(this.hasEntriesChanged(p,u)||this.hasEntriesChanged(c,l))&&console.log(bi(n))}i()})}};var Bn=a(require("fs")),Jn=require("webpack");function cl(t,e){let r="Module not found: Error: Can't resolve ",i=e.message.replace(r,"").split("'")[1];if(e.message.includes(r))for(let o of Object.entries(t)){let[,n]=o;if(n){if(!Bn.default.existsSync(n))return null;let c=j(n),p=c?.js?.filter(u=>!u.startsWith("/"))||[],l=c?.css?.filter(u=>!u.startsWith("/"))||[];if(p.includes(i)||l.includes(i)){let u=tt(n,i);return new Jn.WebpackError(u)}}}return null}var zt=class{manifestPath;includeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList}apply(e){e.hooks.compilation.tap("html:handle-common-errors",r=>{r.hooks.afterSeal.tapPromise("html:handle-common-errors",async()=>{r.errors.forEach((s,i)=>{let o=cl(this.includeList||{},s);o&&(r.errors[i]=o)})})})}};var Ht=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new At({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Nt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Ut({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new qt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[cs.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(cs.default.join(__dirname,"ensure-hmr-for-scripts.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}}]}),new Bt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new Jt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new zt({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e)}};var Ie=a(require("path"));var ps=a(require("fs")),zn=a(require("path"));function Hn(t,e){return(Array.isArray(t)?t||[]:t?[t]:[]).filter(i=>{let o=ps.default.existsSync(i)&&!k(i,e),n=zn.default.extname(i);return o&&(n===".js"||n===".mjs"||n===".jsx"||n===".ts"||n===".tsx")})}function Vn(t,e){return(Array.isArray(t)?t||[]:t?[t]:[]).filter(i=>ps.default.existsSync(i)&&!k(i,e)&&(i.endsWith(".css")||i.endsWith(".scss")||i.endsWith(".sass")||i.endsWith(".less")))}var Vt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList||{},this.excludeList=e.excludeList||{}}apply(e){let r=this.includeList||{},s={};for(let[i,o]of Object.entries(r)){let n=Hn(o,this.excludeList),c=Vn(o,this.excludeList),p=[...n];e.options.mode==="production"&&p.push(...c),(c.length||n.length)&&(s[i]={import:p})}e.options.entry={...e.options.entry,...s}}};var ee=require("webpack"),pl=['var isBrowser = !!(() => { try { return browser.runtime.getURL("/") } catch(e) {} })()','var isChrome = !!(() => { try { return chrome.runtime.getURL("/") } catch(e) {} })()'],ll=[...pl,`var runtime = isBrowser ? browser : isChrome ? chrome : (typeof self === 'object' && self.addEventListener) ? { get runtime() { throw new Error("No chrome or browser runtime found") } } : { runtime: { getURL: x => x } }`],Gt=class t{apply(e){let{RuntimeGlobals:r}=e.webpack;e.hooks.compilation.tap("PublicPathRuntimeModule",s=>{s.hooks.runtimeRequirementInTree.for(r.publicPath).tap(t.name,i=>{let o=fl();return s.addRuntimeModule(i,o),!0})})}};function fl(){class t extends ee.RuntimeModule{constructor(){super("publicPath",ee.RuntimeModule.STAGE_BASIC)}generate(){let r=this.compilation?.outputOptions.publicPath;return ee.Template.asString([...ll,`var path = ${JSON.stringify(this.compilation?.getPath(r||"",{hash:this.compilation.hash||"XXXX"}))}`,`${ee.RuntimeGlobals.publicPath} = typeof importScripts === 'function' || !(isBrowser || isChrome) ? path : runtime.runtime.getURL(path);`])}}return new t}var Xt=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList||{},this.excludeList=e.excludeList||{}}apply(e){let r=require(this.manifestPath);r.content_scripts?.some(s=>s.world&&s.world.toLowerCase()==="main")&&Q.includes(this.browser)&&!r.key&&(console.error(vi()),process.exit(1))}};var Zt=class{manifestPath;browser;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new Vt({manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}).apply(e),e.options.mode==="development"&&e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Ie.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(Ie.default.join(__dirname,"inject-content-css-during-dev.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}}]}),e.options.mode==="development"&&e.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[Ie.default.dirname(this.manifestPath)],exclude:/node_modules/,use:[{loader:require.resolve(Ie.default.join(__dirname,"add-hmr-accept-code.js")),options:{manifestPath:this.manifestPath,includeList:this.includeList||{},excludeList:this.excludeList||{}}}]}),e.options.mode==="production"&&new Gt().apply(e),new Xt({manifestPath:this.manifestPath,browser:this.browser||"chrome",includeList:this.includeList||{},excludeList:this.excludeList||{}}).apply(e)}};var fs=a(require("path")),Oe=a(require("fs")),us=a(require("webpack")),Me=require("webpack");var he=a(require("path")),Kt=a(require("fs"));function ls(t){let e=he.default.join(he.default.dirname(t),"_locales"),r=[];if(Kt.default.existsSync(e))for(let s of Kt.default.readdirSync(e)){let i=he.default.join(e,s);for(let o of Kt.default.readdirSync(i))r.push(he.default.join(he.default.dirname(t),"_locales",s,o))}return r}var Yt=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("locales:module",r=>{r.hooks.processAssets.tap({name:"locales:module",stage:Me.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{let i=require(this.manifestPath).name||"Extension.js";if(!Oe.default.existsSync(this.manifestPath)){r.errors.push(new us.default.WebpackError(li(i,this.manifestPath)));return}if(r.errors.length>0)return;let o=ls(this.manifestPath);for(let n of Object.entries(o||[])){let[c,p]=n,l=p;if(l){if(!Oe.default.existsSync(l)){r.warnings.push(new us.default.WebpackError(rt(c,l)));return}let u=Oe.default.readFileSync(l),d=new Me.sources.RawSource(u),g=e.options.context||fs.default.dirname(this.manifestPath);if(!k(l,this.excludeList)){let y=fs.default.relative(g,l);r.emitAsset(y,d)}}}})}),e.hooks.thisCompilation.tap("locales:module",r=>{r.hooks.processAssets.tap({name:"locales:module",stage:Me.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(r.errors?.length)return;let s=ls(this.manifestPath);for(let i of Object.entries(s||[])){let[,o]=i;if(o){let n=new Set(r.fileDependencies),c=s||[];for(let p of c)Oe.default.existsSync(p)&&(n.has(p)||(n.add(p),r.fileDependencies.add(p)))}}})})}};var Qt=a(require("fs")),Gn=a(require("webpack")),Ae=require("webpack");var er=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("json:module",r=>{r.hooks.processAssets.tap({name:"json:module",stage:Ae.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(r.errors.length>0)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[o,n]=i,c=Array.isArray(n)?n:[n];for(let p of c)if(p&&!k(p,this.excludeList)){if(!Qt.default.existsSync(p)){r.warnings.push(new Gn.default.WebpackError(rt(o,p)));return}let l=Qt.default.readFileSync(p),u=new Ae.sources.RawSource(l);r.emitAsset(o+".json",u)}}})}),e.hooks.thisCompilation.tap("json:module",r=>{r.hooks.processAssets.tap({name:"json:module",stage:Ae.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(r.errors?.length)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[,o]=i,n=Array.isArray(o)?o:[o];for(let c of n)if(c){let p=new Set(r.fileDependencies);k(c,this.excludeList)||Qt.default.existsSync(c)&&(p.has(c)||(p.add(c),r.fileDependencies.add(c)))}}})})}};var ms=a(require("fs")),Xn=a(require("path")),rr=require("webpack");var tr=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("icons:emit-file",r=>{r.hooks.processAssets.tap({name:"icons:emit-file",stage:rr.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER},()=>{if(r.errors.length>0)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[o,n]=i;if(n===void 0)continue;let c=Array.isArray(n)?typeof n[0]=="string"?n:n.map(Object.values).flat():[n];for(let p of c)if(p){if(!ms.default.existsSync(p))continue;if(!k(p,this.excludeList)){let l=ms.default.readFileSync(p),u=new rr.sources.RawSource(l),d=Xn.default.basename(p),y=`${o.endsWith("theme_icons")?o.replace("theme_icons",""):o}/${d}`;r.emitAsset(y,u)}}}})})}};var Zn=a(require("fs")),Kn=require("webpack"),sr=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){e.hooks.thisCompilation.tap("icons:add-to-file-dependencies",r=>{r.hooks.processAssets.tap({name:"icons:add-to-file-dependencies",stage:Kn.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{if(r.errors?.length)return;let s=this.includeList||{};for(let i of Object.entries(s)){let[,o]=i,n=Array.isArray(o)?typeof o[0]=="string"?o:o.map(Object.values).flat():[o];for(let c of n)if(c){let p=new Set(r.fileDependencies);Zn.default.existsSync(c)&&(p.has(c)||(p.add(c),r.fileDependencies.add(c)))}}})})}};var ir=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}apply(e){new tr({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e),new sr({manifestPath:this.manifestPath,includeList:this.includeList,excludeList:this.excludeList}).apply(e)}};var nr=require("webpack");function Yn(t){return t.map(e=>{try{let r=new URL(e.replace(/^\*:\/\//,"https://"));return e.endsWith(r.pathname)?`${e.substring(0,e.length-r.pathname.length)}/*`:r.pathname==="/"?`${e}/*`:e}catch{return e}})}var or=class{manifestPath;includeList;excludeList;constructor(e){this.manifestPath=e.manifestPath,this.includeList=e.includeList,this.excludeList=e.excludeList}generateManifestPatches(e,r){let s=J(e,this.manifestPath),i=s.web_accessible_resources||[],o=s.web_accessible_resources||[];for(let[p,l]of Object.entries(r)){let u=s.content_scripts?.find(d=>d.js&&d.js.some(g=>g.includes(p)));if(u){let d=u.matches||[];if(s.manifest_version===3){let g=i.find(y=>y.matches.some(_=>d.includes(_)));g?l.forEach(y=>{!g.resources.includes(y)&&!y.endsWith(".map")&&g.resources.push(y)}):i.push({resources:l.filter(y=>!y.endsWith(".map")),matches:Yn(d)})}else l.forEach(g=>{o.includes(g)||o.push(g)})}}s.manifest_version===3?i.length>0&&(s.web_accessible_resources=i):o.length>0&&(s.web_accessible_resources=Array.from(new Set(o)));let n=JSON.stringify(s,null,2),c=new nr.sources.RawSource(n);e.getAsset("manifest.json")&&e.updateAsset("manifest.json",c)}apply(e){e.hooks.thisCompilation.tap("plugin-extension:feature-web-resources",r=>{r.hooks.processAssets.tap({name:"plugin-extension:feature-web-resources",stage:nr.Compilation.PROCESS_ASSETS_STAGE_ANALYSE},()=>{let s=[],i=Object.keys(this.includeList||{});for(let c of i.filter(Boolean))c.startsWith("content_scripts")&&(Array.isArray(c)?s.push(...c):typeof c=="string"&&s.push(c));let o=r.chunkGraph,n={};r.entrypoints.forEach((c,p)=>{if(s.includes(p)){let l=[];c.chunks.forEach(u=>{Array.from(o.getChunkModulesIterable(u)).forEach(g=>{o.getModuleChunks(g).forEach(y=>{y.auxiliaryFiles.forEach(_=>{l.includes(_)||l.push(_)})})})}),n[p]=l}}),this.generateManifestPatches(r,n)})})}};var L=a(require("fs")),I=a(require("path")),Qn=a(require("chokidar")),ar=class{options;constructor(e){this.options=e}ensureDirectoryExistence(e){let r=I.default.dirname(e);if(L.default.existsSync(r))return!0;L.default.mkdirSync(r,{recursive:!0})}copyFile(e,r){this.ensureDirectoryExistence(r),L.default.copyFileSync(e,r)}copyFolder(e,r){L.default.existsSync(r)||L.default.mkdirSync(r,{recursive:!0}),L.default.readdirSync(e).forEach(i=>{let o=I.default.join(e,i),n=I.default.join(r,i);L.default.statSync(o).isDirectory()?this.copyFolder(o,n):this.copyFile(o,n)})}apply(e){let r=I.default.dirname(this.options.manifestPath),s=I.default.join(r,"public"),i=e.options.output?.path||"";L.default.existsSync(s)&&(e.hooks.afterEmit.tap("special-folders:copy-public-folder",()=>{let o=I.default.join(i,"/");L.default.existsSync(o)||L.default.mkdirSync(o,{recursive:!0}),L.default.existsSync(s)&&this.copyFolder(s,o)}),e.options.mode!=="production"&&e.hooks.afterPlugins.tap("special-folders:copy-public-folder",()=>{let o=I.default.join(r,"public"),n=Qn.default.watch(o,{ignoreInitial:!0});n.on("add",c=>{let p=I.default.join(i,I.default.relative(r,c));this.copyFile(c,p)}),n.on("change",c=>{let p=I.default.join(i,I.default.relative(r,c));this.copyFile(c,p)}),n.on("unlink",c=>{let p=I.default.join(i,I.default.relative(r,c));L.default.existsSync(p)&&L.default.unlinkSync(p)}),e.hooks.watchClose.tap("special-folders:copy-public-folder",()=>{n.close().catch(console.error)})}))}};var U=a(require("path")),ds=a(require("chokidar"));var cr=class{manifestPath;constructor(e){this.manifestPath=e}throwCompilationError(e,r,s){let i=U.relative(process.cwd(),r),p=mi(s?"Adding":"Removing",s?"added":"removed",e,e==="pages"?"HTML pages":"script files",i);if(s){console.warn(p);return}console.error(p),process.exit(1)}apply(e){e.hooks.afterPlugins.tap("special-folders:warn-upon-folder-changes",()=>{let r=U.dirname(this.manifestPath),s=U.join(r,"pages"),i=U.join(r,"scripts"),o=ds.watch(s,{ignoreInitial:!0}),n=ds.watch(i,{ignoreInitial:!0}),c=e.options.resolve?.extensions;o.on("add",p=>{p.endsWith(".html")&&this.throwCompilationError("pages",p,!0)}),o.on("unlink",p=>{p.endsWith(".html")&&this.throwCompilationError("pages",p)}),n.on("add",p=>{c?.includes(U.extname(p))&&this.throwCompilationError("scripts",p,!0)}),n.on("unlink",p=>{c?.includes(U.extname(p))&&this.throwCompilationError("scripts",p)}),e.hooks.watchClose.tap("WarnUponFolderChanges",()=>{o.close().catch(console.error),n.close().catch(console.error)})})}};var pr=class{static name="plugin-special-folders";options;constructor(e){this.options=e}apply(e){let{manifestPath:r}=this.options;new ar({manifestPath:r}).apply(e),e.options.mode==="development"&&e.options.watchOptions&&new cr(r).apply(e)}};var lr=class{static name="plugin-extension";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){let r=this.manifestPath,s=fe({manifestPath:r}),i=Ho({manifestPath:r});process.env.EXPERIMENTAL_EXTENSION_RESOLVER_PLUGIN==="true"&&new St({manifestPath:r,browser:this.browser,includeList:{...i?.pages||{},...i?.scripts||{}},excludeList:i.public,loaderOptions:{jsx:le(Re.default.dirname(this.manifestPath))||pe(Re.default.dirname(this.manifestPath))||ke(Re.default.dirname(this.manifestPath)),typescript:V(Re.default.dirname(this.manifestPath)),minify:e.options.mode==="production"}}).apply(e),new Ot({browser:this.browser,manifestPath:r,includeList:{...s.html,...s.icons,...s.json,...s.scripts},excludeList:i.public}).apply(e),new Ht({manifestPath:r,includeList:{...s.html,...i.pages},excludeList:{...i.public,...i.scripts}}).apply(e),new Zt({manifestPath:r,browser:this.browser,includeList:{...s.scripts,...i.scripts},excludeList:{...i.public,...i.pages}}).apply(e),new Yt({manifestPath:r}).apply(e),new er({manifestPath:r,includeList:s.json,excludeList:i.public}).apply(e),new ir({manifestPath:r,includeList:s.icons,excludeList:i.public}).apply(e),new or({manifestPath:r,includeList:{...s.scripts,...i.scripts},excludeList:i.public}).apply(e),new pr({manifestPath:r}).apply(e)}};var Ue=a(require("path"));var ea=a(require("path")),ta=a(require("ws"));function fr(t,e){t.clients.forEach(r=>{r.readyState===ta.default.OPEN&&r.send(JSON.stringify(e))})}function ra(t,e,r){if(!r||!e)return;let s=fe({manifestPath:e}).locales,i=fe({manifestPath:e}).scripts,o=fe({manifestPath:e}).json;if(!t){process.env.EXTENSION_ENV==="development"&&console.error("WebSocket server is not running.");return}ea.default.basename(r)==="manifest.json"&&fr(t,{changedFile:"manifest.json"}),s?.forEach(n=>{n.includes(r)&&fr(t,{changedFile:"_locales"})}),Object.entries(i).forEach(([n,c])=>{let p=Array.isArray(c)?c:[c];Object.values(p).flatMap(u=>u).includes(r)&&n==="background/service_worker"&&fr(t,{changedFile:"service_worker"})}),Object.entries(o).forEach(([n,c])=>{c?.includes(r)&&n==="declarative_net_request"&&fr(t,{changedFile:"declarative_net_request"})})}var hs=a(require("path")),na=a(require("fs")),Ne=a(require("ws"));var Te=a(require("path")),ul=a(require("http")),ia=a(require("https")),gs=a(require("fs"));var sa=t=>{if(!gs.default.existsSync(t))return;let e=Te.default.basename(t);return gs.default.readFileSync(Te.default.join(__dirname,"certs",e))};function oa(t){let e={key:sa(Te.default.join(__dirname,"certs","localhost.key")),cert:sa(Te.default.join(__dirname,"certs","localhost.cert"))},r=ia.default.createServer(e,(s,i)=>{i.writeHead(200),i.end()});return r.on("error",s=>{throw console.error(xi(t)),new Error(s.message)}),{server:r,port:t}}function ml(t,e){switch(e){case"chrome":return new Ne.default.Server({host:"localhost",port:t});case"edge":return new Ne.default.Server({host:"localhost",port:t+1});case"firefox":return new Ne.default.Server({server:oa(t+2).server});default:return new Ne.default.Server({host:"localhost",port:8888})}}async function aa(t,e){let r=t.options.context||"",s=require(hs.default.join(r,"manifest.json")),i=e.port||8e3,o=ml(i,e.browser);if(o.on("connection",n=>{n.send(JSON.stringify({status:"serverReady"})),n.on("error",c=>{console.log(hi(c))}),n.on("message",c=>{let p=JSON.parse(c.toString());if(p.status==="clientReady"){let l=require(hs.default.join(r,"manifest.json"));setTimeout(()=>{console.log(Wr(l,e.browser,p)),console.log("")},2500),$i(e.browser)&&setTimeout(()=>{console.log(gi(e.browser))},5e3)}})}),(e.browser==="firefox"||e.browser==="gecko-based")&&!na.default.existsSync(et)){let n=Ci(s);console.log(Wr(s,e.browser,n)),console.log(""),console.log(wi()),console.log("")}return o}var ca=a(require("path")),ys=a(require("fs"));function pa(t,e){let r=ca.default.resolve(__dirname,`./extensions/${t}-manager-extension/reload-service.js`);try{let s=ys.default.readFileSync(r,"utf8"),i=s.replace(/__RELOAD_PORT__/g,e.toString());i!==s&&ys.default.writeFileSync(r,i,"utf8")}catch(s){console.error(`Error processing file: ${s.message}`)}}process.on("SIGINT",()=>{process.exit()});process.on("SIGTERM",()=>{process.exit()});var qe=class{manifestPath;port;browser;stats;constructor(e){this.manifestPath=e.manifestPath,this.port=e.port||8e3,this.browser=e.browser||"chrome",this.stats=e.stats}async apply(e){if(!this.manifestPath)return;pa(this.browser,this.port);let r=await aa(e,{...this,mode:e.options.mode,browser:this.browser,stats:this.stats,port:this.port});e.hooks.watchRun.tapAsync("reload:create-web-socket-server",(s,i)=>{let n=(s.modifiedFiles||new Set).values().next().value;if(!n){i();return}let c=Ue.default.relative(Ue.default.dirname(this.manifestPath),n),p=Ue.default.relative(process.cwd(),Ue.default.dirname(n));process.env.EXTENSION_ENV==="development"&&console.info(`\u25BA\u25BA Updated file \`${c}\` (relative to ${p})`),this.manifestPath&&ra(r,this.manifestPath,n),i()})}};var bs=a(require("path"));function la(t,e,r){t.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[bs.default.dirname(r)],exclude:/node_modules/,use:[{loader:bs.default.resolve(__dirname,"./inject-chromium-client-loader"),options:{manifestPath:r,browser:e}}]})}var ws=a(require("path"));function fa(t,e,r){t.options.module.rules.push({test:/\.(js|mjs|jsx|mjsx|ts|mts|tsx|mtsx)$/,include:[ws.default.dirname(r)],exclude:/node_modules/,use:[{loader:ws.default.resolve(__dirname,"./inject-firefox-client-loader"),options:{manifestPath:r,browser:e}}]})}var mr=require("webpack");var xs=a(require("content-security-policy-parser"));function ua(t){let e="";for(let r in t)e+=`${r} ${t[r].join(" ")}; `;return e.trim()}function ma(t){let e=t.content_security_policy;if(!e)return"script-src 'self' 'unsafe-eval' blob: filesystem:; object-src 'self' blob: filesystem:; ";let r=(0,xs.default)(e);if(!r.get("script-src"))r.set("script-src",["'self'","'unsafe-eval'","blob:","filesystem:"]);else{let i=r.get("script-src")||[];i.includes("'unsafe-eval'")||i.push("'unsafe-eval'"),i.includes("blob:")||i.push("blob:"),i.includes("filesystem:")||i.push("filesystem:"),r.set("script-src",i)}r.get("object-src")||r.set("object-src",["'self'","blob:","filesystem:"]);let s=Object.fromEntries(r.entries());return ua(s)}function da(t){let e=t.content_security_policy;if(!e)return{extension_pages:"script-src 'self'; object-src 'self';"};let r=(0,xs.default)(e.extension_pages||""),s={};for(let n in s)r.get(n)||r.set(n,s[n]);let i=Object.fromEntries(r.entries());return{extension_pages:ua(i)}}function ga(t){let e=["/*.json","/*.js","/*.css"],r=t.web_accessible_resources;if(!r||r.length===0)return e;let s=new Set(r);for(let i of e)s.has(i)||s.add(i);return Array.from(s)}function ha(t){let e=["/*.json","/*.js","/*.css"];return[...t.web_accessible_resources||[],{resources:e,matches:["<all_urls>"]}]}function vs(t,e){return t.background?{background:{...t.background}}:e==="firefox"||e==="gecko-based"?{background:{...t.background||{},scripts:["background/script.js"]}}:t.manifest_version===2?{background:{...t.background||{},scripts:["background/script.js"]}}:{background:{...t.background||{},service_worker:"background/service_worker.js"}}}function _s(t){return t.externally_connectable&&!t.externally_connectable.ids?{externally_connectable:{...t.externally_connectable,ids:[...new Set(t.externally_connectable.ids||[]),"*"]}}:t.externally_connectable&&!t.externally_connectable.ids?{externally_connectable:{...t.externally_connectable,ids:["*"]}}:{}}var ur=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}generateManifestPatches(e){let r=J(e,this.manifestPath),s={...r,content_security_policy:r.manifest_version===3?da(r):ma(r),...r.manifest_version===3?r.permissions?{permissions:[...new Set(["scripting",...r.permissions])]}:{permissions:["scripting"]}:{},...vs(r,this.browser),..._s(r),web_accessible_resources:r.manifest_version===3?ha(r):ga(r)},i=JSON.stringify(s,null,2),o=new mr.sources.RawSource(i);e.getAsset("manifest.json")&&e.updateAsset("manifest.json",o)}apply(e){e.hooks.thisCompilation.tap("run-chromium:apply-manifest-dev-defaults",r=>{r.hooks.processAssets.tap({name:"run-chromium:apply-manifest-dev-defaults",stage:mr.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE},s=>{if(!this.manifestPath){let i="No manifest.json found in your extension bundle. Unable to patch manifest.json.";r&&e.webpack.WebpackError&&r.errors.push(new e.webpack.WebpackError(`run-chromium: ${i}`));return}this.generateManifestPatches(r)})})}};var Ss=a(require("fs")),We=a(require("path")),ya=a(require("webpack-target-webextension"));var dr=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}handleBackground(e,r,s){let i=We.default.resolve(__dirname,r==="firefox"||r==="gecko-based"?"minimum-firefox-file.mjs":"minimum-chromium-file.mjs"),o=O(s,r);if(r==="firefox"||r==="gecko-based"){o=s.background;let n=o?.scripts;n&&n.length>0?this.ensureFileExists("background.scripts"):this.addDefaultEntry(e,"background/script",i)}else{let n=We.default.dirname(this.manifestPath);if(o=s.background,s.manifest_version===3){let c=o?.service_worker;if(c){let p=We.default.join(n,c);this.ensureFileExists(p)}else this.addDefaultEntry(e,"background/service_worker",i)}else if(s.manifest_version===2){let c=o?.scripts;if(c&&c.length>0){let p=We.default.join(n,c[0]);this.ensureFileExists(p)}else this.addDefaultEntry(e,"background/script",i)}}}ensureFileExists(e){if(!Ss.default.existsSync(e)&&this.manifestPath){let s=require(this.manifestPath).name||"Extension.js",i=yi(s,e);throw console.error(i),new Error(i)}}addDefaultEntry(e,r,s){e.options.entry={...e.options.entry,[r]:{import:[s]}}}getEntryName(e){if(e.background){if(e.manifest_version===3)return{serviceWorkerEntry:"background/service_worker"};if(e.manifest_version===2)return{pageEntry:"background/script"}}return{pageEntry:"background"}}apply(e){if(!this.manifestPath||!Ss.default.lstatSync(this.manifestPath).isFile())return;let r=require(this.manifestPath),s=O(r,this.browser);this.handleBackground(e,this.browser,s),new ya.default({background:this.getEntryName(s),weakRuntimeCheck:!0}).apply(e)}};var Ps=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){(Q.includes(this.browser)||this.browser==="chromium-based")&&la(e,this.browser,this.manifestPath),(this.browser==="firefox"||this.browser==="gecko-based")&&fa(e,this.browser,this.manifestPath),new ur({manifestPath:this.manifestPath,browser:this.browser}).apply(e),new dr({manifestPath:this.manifestPath,browser:this.browser}).apply(e)}},ba=Ps;var gr=class{static name="plugin-reload";manifestPath;browser;port;stats;autoReload;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.port=e.port,this.stats=e.stats,this.autoReload=e.autoReload}apply(e){e.options.mode==="development"&&new qe({manifestPath:this.manifestPath,browser:this.browser,port:this.port,stats:this.stats}).apply(e),e.options.mode==="development"&&new ba({manifestPath:this.manifestPath,browser:this.browser,autoReload:this.autoReload,stats:this.stats}).apply(e)}};var wa=a(require("webpack")),hr=class{manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser}apply(e){new wa.default.ProvidePlugin({browser:require.resolve("webextension-polyfill")}).apply(e)}};var br=require("webpack");var yr=class{browser;manifestPath;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}patchManifest(e){let r=O(e,this.browser);return JSON.stringify(r,null,2)}apply(e){e.hooks.compilation.tap("compatibility:browser-fields",r=>{r.hooks.processAssets.tap({name:"compatibility:browser-fields",stage:br.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE},()=>{let s=J(r,this.manifestPath),i=this.patchManifest(s),o=new br.sources.RawSource(i);r.updateAsset("manifest.json",o)})})}};var wr=class{static name="plugin-compatibility";manifestPath;browser;polyfill;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome",this.polyfill=e.polyfill||!1}async apply(e){this.polyfill&&this.browser!=="firefox"&&new hr({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new yr({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e)}};var Da=a(require("fs"));var xa=a(require("webpack")),va=a(require("content-security-policy-parser"));function _a(t){let e=t.content_security_policy,r=t.content_security_policy?.extension_pages,s=i=>{if(!i)return;let o=(0,va.default)(i);if(o.get("script-src")&&o.get("script-src")?.includes("'unsafe-eval'"))return ti()};if(t.manifest_version===3){let i=e?s(r):void 0;if(i)return new xa.default.WebpackError(i)}return null}var ks=a(require("webpack"));function Sa(t,e){let r=t.web_accessible_resources;if(r){let s=r.some(o=>typeof o=="string"),i=r.some(o=>typeof o=="object"||o.resources||o.matches);if(t.manifest_version===2&&!s)return new ks.default.WebpackError(si(e));if(t.manifest_version===3&&!i)return new ks.default.WebpackError(ii(e))}return null}var Pa=a(require("webpack"));function ka(t,e){return(e==="firefox"||e==="gecko-based")&&t.background?.service_worker?new Pa.default.WebpackError(ei()):null}var Ea=a(require("path")),$a=a(require("fs")),Ca=a(require("webpack"));function ja(t,e){let r=Ea.default.join(e.options.context||"","_locales");return $a.default.existsSync(r)&&!t.default_locale?new Ca.default.WebpackError(ri()):null}var xr=class{options;constructor(e){this.options=e}handleRuntimeErrors(e,r,s){let i=_a(r),o=Sa(r,s),n=ka(r,s),c=ja(r,e);i&&e.errors.push(i),o&&e.errors.push(o),n&&e.options.mode==="production"&&e.errors.push(n),c&&e.errors.push(c)}apply(e){e.hooks.afterCompile.tapAsync("CompatPlugin (module)",(r,s)=>{let i=this.options.manifestPath,o=JSON.parse(Da.default.readFileSync(i,"utf-8")),n=this.options.browser||"chrome";this.handleRuntimeErrors(r,o,n),s()})}};var Ta=a(require("fs")),Na=a(require("ajv"));var Fa={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://json.schemastore.org/chrome-manifest.json",additionalProperties:!0,definitions:{action_v2:{type:"object",properties:{default_title:{type:"string",description:"Tooltip for the main toolbar icon."},default_popup:{$ref:"#/definitions/uri",description:"The popup appears when the user clicks the icon."},default_icon:{anyOf:[{type:"string",description:"FIXME: String form is deprecated."},{type:"object",description:"Icon for the main toolbar.",properties:{"19":{$ref:"#/definitions/icon"},"38":{$ref:"#/definitions/icon"}}}]}},dependencies:{name:{not:{required:["name"]}},icons:{not:{required:["icons"]}},popup:{not:{required:["popup"]}}}},action_v3:{type:"object",properties:{default_title:{type:"string",description:"Tooltip for the main toolbar icon."},default_popup:{$ref:"#/definitions/uri",description:"The popup appears when the user clicks the icon."},default_icon:{type:"object",properties:{"16":{$ref:"#/definitions/icon"},"24":{$ref:"#/definitions/icon"},"32":{$ref:"#/definitions/icon"}}}},dependencies:{name:{not:{required:["name"]}},icons:{not:{required:["icons"]}},popup:{not:{required:["popup"]}}}},command:{type:"object",if:{$comment:"Global shortcuts change the acceptable pattern for the suggested_key.",properties:{global:{const:!0}},required:["global"]},then:{additionalProperties:!1,properties:{description:{type:"string"},global:{type:"boolean",description:"Whether this command should work while Chrome does not have focus. Keyboard shortcut suggestions for global commands are limited to Ctrl+Shift+[0..9]"},suggested_key:{type:"object",additionalProperties:!1,patternProperties:{"^(default|mac|windows|linux|chromeos)$":{type:"string",pattern:"^(Ctrl|Command|MacCtrl)\\+Shift\\+[0-9]"}}}}},else:{additionalProperties:!1,properties:{description:{type:"string"},global:{type:"boolean",description:"Whether this command should work while Chrome does not have focus. Keyboard shortcut suggestions for global commands are limited to Ctrl+Shift+[0..9]"},suggested_key:{type:"object",additionalProperties:!1,patternProperties:{"^(default|mac|windows|linux|chromeos)$":{type:"string",pattern:"^(Ctrl|Command|MacCtrl|Alt|Option)\\+(Shift\\+)?[A-Z]"}}}}}},content_security_policy:{type:"string",description:"This introduces some fairly strict policies that will make extensions more secure by default, and provides you with the ability to create and enforce rules governing the types of content that can be loaded and executed by your extensions and applications.",format:"content-security-policy",default:"script-src 'self'; object-src 'self'"},glob_pattern:{type:"string",format:"glob-pattern"},icon:{$ref:"#/definitions/uri"},match_pattern:{type:"string",format:"match-pattern",pattern:"^((\\*|http|https|file|ftp|chrome-extension):\\/\\/(\\*|\\*\\.[^\\/\\*]+|[^\\/\\*]+)?(\\/.*))|urn:(\\*|.*)|<all_urls>$"},mime_type:{type:"string",format:"mime-type",pattern:"^(?:application|audio|image|message|model|multipart|text|video)\\/[-+.\\w]+$"},page:{$ref:"#/definitions/uri"},permissions:{type:"array",uniqueItems:!0,items:{type:"string",format:"permission"}},scripts:{type:"array",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/uri"}},uri:{type:"string"},version_string:{type:"string",pattern:"^(?:\\d{1,5}\\.){0,3}\\d{1,5}$"},web_resource:{type:"object",required:["resources"],properties:{resources:{type:"array",description:`An array of resources to be exposed. Resources are specified as strings and may contain * for wildcard matches. For example, "/images/*" exposes everything in the extension's /images directory recursively while "*.png" exposes all PNG files.`,items:{$ref:"#/definitions/glob_pattern"}},matches:{type:"array",description:"A list of URL match patterns specifying which pages can access the resources. Only the origin is used to match URLs; subdomains patterns (*.google.com) and paths are ignored.",items:{$ref:"#/definitions/match_pattern"}},extension_ids:{type:"array",description:"A list of extension IDs, specifying which extensions can access the resources.",items:{type:"string"}},use_dynamic_url:{type:"boolean",description:"If true, only allow resources to be accessible through dynamic ID. The dynamic ID is generated per session. It's regenerated on browser restart or extension reload."}}}},dependencies:{content_scripts:{not:{required:["script_badge"]}},script_badge:{not:{required:["content_scripts"]}}},else:{properties:{background:{type:"object",description:"The background page is an HTML page that runs in the extension process. It exists for the lifetime of your extension, and only one instance of it at a time is active.",properties:{persistent:{type:"boolean",description:"When false, makes the background page an event page (loaded only when needed).",default:!0},page:{$ref:"#/definitions/page",description:"Specify the HTML of the background page.",default:"background.html"},scripts:{$ref:"#/definitions/scripts",description:"A background page will be generated by the extension system that includes each of the files listed in the scripts property.",default:["background.js"]}},dependencies:{page:{not:{required:["scripts"]}},scripts:{not:{required:["page"]}}}},browser_action:{$ref:"#/definitions/action_v2",description:"Use browser actions to put icons in the main Google Chrome toolbar, to the right of the address bar. In addition to its icon, a browser action can also have a tooltip, a badge, and a popup."},page_action:{$ref:"#/definitions/action_v2",description:"Use the chrome.pageAction API to put icons inside the address bar. Page actions represent actions that can be taken on the current page, but that aren't applicable to all pages."},content_security_policy:{$ref:"#/definitions/content_security_policy"},web_accessible_resources:{type:"array",description:"An array of strings specifying the paths (relative to the package root) of packaged resources that are expected to be usable in the context of a web page.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/uri"}}},dependencies:{page_action:{not:{required:["browser_action"]}},browser_action:{not:{required:["page_action"]}}}},if:{properties:{manifest_version:{const:3}}},properties:{manifest_version:{type:"number",description:"One integer specifying the version of the manifest file format your package requires.",enum:[2,3]},name:{type:"string",description:"The name of the extension",maxLength:45},version:{$ref:"#/definitions/version_string",description:"One to four dot-separated integers identifying the version of this extension."},default_locale:{type:"string",description:"Specifies the subdirectory of _locales that contains the default strings for this extension.",default:"en"},description:{type:"string",description:"A plain text description of the extension",maxLength:132},icons:{type:"object",description:"One or more icons that represent the extension, app, or theme. Recommended format: PNG; also BMP, GIF, ICO, JPEG.",minProperties:1,properties:{"16":{$ref:"#/definitions/icon",description:"Used as the favicon for an extension's pages and infobar."},"48":{$ref:"#/definitions/icon",description:"Used on the extension management page (chrome://extensions)."},"128":{$ref:"#/definitions/icon",description:"Used during installation and in the Chrome Web Store."},"256":{$ref:"#/definitions/icon",description:"Used during installation and in the Chrome Web Store."}}},chrome_url_overrides:{type:"object",description:"Override pages are a way to substitute an HTML file from your extension for a page that Google Chrome normally provides.",additionalProperties:!1,maxProperties:1,properties:{bookmarks:{$ref:"#/definitions/page",description:"The page that appears when the user chooses the Bookmark Manager menu item from the Chrome menu or, on Mac, the Bookmark Manager item from the Bookmarks menu. You can also get to this page by entering the URL chrome://bookmarks.",default:"bookmarks.html"},history:{$ref:"#/definitions/page",description:"The page that appears when the user chooses the History menu item from the Chrome menu or, on Mac, the Show Full History item from the History menu. You can also get to this page by entering the URL chrome://history.",default:"history.html"},newtab:{$ref:"#/definitions/page",description:"The page that appears when the user creates a new tab or window. You can also get to this page by entering the URL chrome://newtab.",default:"newtab.html"}}},commands:{type:"object",description:"Use the commands API to add keyboard shortcuts that trigger actions in your extension, for example, an action to open the browser action or send a command to the extension.",patternProperties:{".*":{$ref:"#/definitions/command"},"^_execute_browser_action$":{$ref:"#/definitions/command"},"^_execute_page_action$":{$ref:"#/definitions/command"}}},content_scripts:{type:"array",description:"Content scripts are JavaScript files that run in the context of web pages.",minItems:1,uniqueItems:!0,items:{type:"object",required:["matches"],additionalProperties:!1,properties:{matches:{type:"array",description:"Specifies which pages this content script will be injected into.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/match_pattern"}},exclude_matches:{type:"array",description:"Excludes pages that this content script would otherwise be injected into.",uniqueItems:!0,items:{$ref:"#/definitions/match_pattern"}},css:{type:"array",description:"The list of CSS files to be injected into matching pages. These are injected in the order they appear in this array, before any DOM is constructed or displayed for the page.",uniqueItems:!0,items:{$ref:"#/definitions/uri"}},js:{$ref:"#/definitions/scripts",description:"The list of JavaScript files to be injected into matching pages. These are injected in the order they appear in this array."},world:{type:"string",description:"The JavaScript world for a script to execute within.",enum:["ISOLATED","MAIN"],default:"ISOLATED"},run_at:{type:"string",description:"Controls when the files in js are injected.",enum:["document_start","document_end","document_idle"],default:"document_idle"},all_frames:{type:"boolean",description:"Controls whether the content script runs in all frames of the matching page, or only the top frame.",default:!1},include_globs:{type:"array",description:"Applied after matches to include only those URLs that also match this glob. Intended to emulate the @include Greasemonkey keyword.",uniqueItems:!0,items:{$ref:"#/definitions/glob_pattern"}},exclude_globs:{type:"array",description:"Applied after matches to exclude URLs that match this glob. Intended to emulate the @exclude Greasemonkey keyword.",uniqueItems:!0,items:{$ref:"#/definitions/glob_pattern"}},match_about_blank:{type:"boolean",description:"Whether to insert the content script on about:blank and about:srcdoc.",default:!1}}}},devtools_page:{$ref:"#/definitions/page",description:"A DevTools extension adds functionality to the Chrome DevTools. It can add new UI panels and sidebars, interact with the inspected page, get information about network requests, and more."},externally_connectable:{description:"Declares which extensions, apps, and web pages can connect to your extension via runtime.connect and runtime.sendMessage.",type:"object",additionalProperties:!1,properties:{ids:{type:"array",items:{type:"string",description:"The IDs of extensions or apps that are allowed to connect. If left empty or unspecified, no extensions or apps can connect."}},matches:{type:"array",items:{type:"string",description:"The URL patterns for web pages that are allowed to connect. This does not affect content scripts. If left empty or unspecified, no web pages can connect."}},accepts_tls_channel_id:{type:"boolean",default:!1,description:"Indicates that the extension would like to make use of the TLS channel ID of the web page connecting to it. The web page must also opt to send the TLS channel ID to the extension via setting includeTlsChannelId to true in runtime.connect's connectInfo or runtime.sendMessage's options."}}},file_browser_handlers:{type:"array",description:"You can use this API to enable users to upload files to your website.",minItems:1,items:{type:"object",required:["id","default_title","file_filters"],additionalProperties:!1,properties:{id:{type:"string",description:"Used by event handling code to differentiate between multiple file handlers"},default_title:{type:"string",description:"What the button will display."},file_filters:{type:"array",description:"Filetypes to match.",minItems:1,items:{type:"string"}}}}},homepage_url:{$ref:"#/definitions/uri",description:"The URL of the homepage for this extension."},incognito:{type:"string",description:"Specify how this extension will behave if allowed to run in incognito mode.",enum:["spanning","split","not_allowed"],default:"spanning"},input_components:{type:"array",description:"Allows your extension to handle keystrokes, set the composition, and manage the candidate window.",items:{type:"object",required:["name","type","id","description","language","layouts"],additionalProperties:!1,properties:{name:{type:"string"},type:{type:"string"},id:{type:"string"},description:{type:"string"},language:{type:"string"},layouts:{type:"array"}}}},key:{type:"string",description:"This value can be used to control the unique ID of an extension, app, or theme when it is loaded during development."},minimum_chrome_version:{$ref:"#/definitions/version_string",description:"The version of Chrome that your extension, app, or theme requires, if any."},nacl_modules:{type:"array",description:"One or more mappings from MIME types to the Native Client module that handles each type.",minItems:1,uniqueItems:!0,items:{type:"object",required:["path","mime_type"],additionalProperties:!1,properties:{path:{$ref:"#/definitions/uri",description:"The location of a Native Client manifest (a .nmf file) within the extension directory."},mime_type:{$ref:"#/definitions/mime_type",description:"The MIME type for which the Native Client module will be registered as content handler."}}}},oauth2:{type:"object",description:"Use the Chrome Identity API to authenticate users: the getAuthToken for users logged into their Google Account and the launchWebAuthFlow for users logged into a non-Google account.",required:["client_id","scopes"],additionalProperties:!1,properties:{client_id:{type:"string",description:"You need to register your app in the Google APIs Console to get the client ID."},scopes:{type:"array",minItems:1,items:{type:"string"}}}},offline_enabled:{type:"boolean",description:"Whether the app or extension is expected to work offline. When Chrome detects that it is offline, apps with this field set to true will be highlighted on the New Tab page."},omnibox:{type:"object",description:"The omnibox API allows you to register a keyword with Google Chrome's address bar, which is also known as the omnibox.",required:["keyword"],additionalProperties:!1,properties:{keyword:{type:"string",description:"The keyword that will trigger your extension."}}},optional_permissions:{$ref:"#/definitions/permissions",description:"Use the chrome.permissions API to request declared optional permissions at run time rather than install time, so users understand why the permissions are needed and grant only those that are necessary."},options_page:{$ref:"#/definitions/page",description:"To allow users to customize the behavior of your extension, you may wish to provide an options page. If you do, a link to it will be provided from the extensions management page at chrome://extensions. Clicking the Options link opens a new tab pointing at your options page.",default:"options.html"},options_ui:{type:"object",description:"To allow users to customize the behavior of your extension, you may wish to provide an options page. If you do, an Options link will be shown on the extensions management page at chrome://extensions which opens a dialogue containing your options page.",required:["page"],properties:{page:{type:"string",description:"The path to your options page, relative to your extension's root."},chrome_style:{type:"boolean",default:!0,description:"If true, a Chrome user agent stylesheet will be applied to your options page. The default value is false, but we recommend you enable it for a consistent UI with Chrome."},open_in_tab:{type:"boolean",default:!1,description:"If true, your extension's options page will be opened in a new tab rather than embedded in chrome://extensions. The default is false, and we recommend that you don't change it. This is only useful to delay the inevitable deprecation of the old options UI! It will be removed soon, so try not to use it. It will break."}}},permissions:{$ref:"#/definitions/permissions",description:"Permissions help to limit damage if your extension or app is compromised by malware. Some permissions are also displayed to users before installation, as detailed in Permission Warnings."},requirements:{type:"object",description:"Technologies required by the app or extension. Hosting sites such as the Chrome Web Store may use this list to dissuade users from installing apps or extensions that will not work on their computer.",additionalProperties:!1,properties:{plugins:{type:"object",description:"Indicates if an app or extension requires NPAPI to run. This requirement is enabled by default when the manifest includes the 'plugins' field.",required:["npapi"],additionalProperties:!1,properties:{npapi:{type:"boolean",default:!0}}},"3D":{type:"object",description:"The '3D' requirement denotes GPU hardware acceleration.",required:["features"],additionalProperties:!1,properties:{features:{type:"array",description:"List of the 3D-related features your app requires.",minItems:1,uniqueItems:!0,items:{type:"string",enum:["webgl"]}}}}}},sandbox:{type:"object",description:"Defines an collection of app or extension pages that are to be served in a sandboxed unique origin, and optionally a Content Security Policy to use with them.",required:["pages"],additionalProperties:!1,properties:{pages:{type:"array",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/page"}},content_security_policy:{$ref:"#/definitions/content_security_policy",default:"sandbox allow-scripts allow-forms"}}},short_name:{type:"string",description:"The short name is typically used where there is insufficient space to display the full name.",maxLength:12},update_url:{$ref:"#/definitions/uri",description:"If you publish using the Chrome Developer Dashboard, ignore this field. If you host your own extension or app: URL to an update manifest XML file."},tts_engine:{type:"object",description:"Register itself as a speech engine.",required:["voices"],additionalProperties:!1,properties:{voices:{type:"array",description:"Voices the extension can synthesize.",minItems:1,uniqueItems:!0,items:{type:"object",required:["voice_name","event_types"],additionalProperties:!1,properties:{voice_name:{type:"string",description:"Identifies the name of the voice and the engine used."},lang:{type:"string",description:"Almost always, a voice can synthesize speech in just a single language. When an engine supports more than one language, it can easily register a separate voice for each language."},gender:{type:"string",description:"If your voice corresponds to a male or female voice, you can use this parameter to help clients choose the most appropriate voice for their application."},event_types:{type:"array",description:"Events sent to update the client on the progress of speech synthesis.",minItems:1,uniqueItems:!0,items:{type:"string",description:"",enum:["start","word","sentence","marker","end","error"]}}}}}}},version_name:{type:"string",description:"In addition to the version field, which is used for update purposes, version_name can be set to a descriptive version string and will be used for display purposes if present."},chrome_settings_overrides:{},content_pack:{},current_locale:{},import:{},platforms:{},signature:{},spellcheck:{},storage:{},system_indicator:{}},required:["manifest_version","name","version"],then:{$comment:"browser_action and page_action are no longer present in v3",properties:{background:{type:"object",description:"The background page is an HTML page that runs in the extension process. It exists for the lifetime of your extension, and only one instance of it at a time is active.",properties:{service_worker:{type:"string",description:"The service worker js file."},type:{type:"string",enum:["module"]}},dependencies:{page:{not:{required:["scripts"]}},scripts:{not:{required:["page"]}}}},host_permissions:{$ref:"#/definitions/permissions"},action:{$ref:"#/definitions/action_v3",description:"Used to control the toolbar button for your extension in Chrome's UI."},content_security_policy:{type:"object",properties:{extension_pages:{$ref:"#/definitions/content_security_policy",description:"This policy covers pages in your extension, including html files and service workers."},sandbox:{$ref:"#/definitions/content_security_policy",description:"This policy covers any sandboxed extension pages that your extension uses."}}},web_accessible_resources:{type:"array",description:"An array of objects that declare resource access rules. Each object maps an array of extension resources to an array of URLs and/or extension IDs that can access those resources.",minItems:1,uniqueItems:!0,items:{$ref:"#/definitions/web_resource"}}},dependencies:{browser_action:{not:{required:["browser_action"]}},page_action:{not:{required:["page_action"]}}}},title:"JSON schema for Google Chrome extension manifest files",type:"object"};function La(t){t.addFormat("permission",{type:"string",validate:e=>typeof e=="string"&&e.trim()!==""}),t.addFormat("content-security-policy",{type:"string",validate:e=>typeof e=="string"}),t.addFormat("glob-pattern",{type:"string",validate:e=>typeof e=="string"&&/[\*\?\[\]]/.test(e)}),t.addFormat("match-pattern",{type:"string",validate:e=>e==="<all_urls>"||e==="file:///"||e.startsWith("http://localhost")||e.startsWith("http:// ")||e.startsWith("http://*:*/*")?!0:typeof e=="string"&&/^(\*|http|https|file|ftp):\/\//.test(e)}),t.addFormat("uri",{type:"string",validate:e=>typeof e=="string"&&/^(\w+:)?\/\//.test(e)}),t.addFormat("mime-type",{type:"string",validate:e=>typeof e=="string"&&/^[a-z]+\/[a-z0-9\-\+]+$/.test(e)})}var Ia=require("webpack");function Oa(t,e,r){let s=e?.params.missingProperty;t.errors.push(new Ia.WebpackError(ai(r,s)))}var Ma=require("webpack");function Aa(t,e,r){t.warnings.push(new Ma.WebpackError(ni(e,r)))}var Ra=require("webpack");function Es(t,e,r){t.warnings.push(new Ra.WebpackError(oi(r,e)))}var vr=class{options;constructor(e){this.options=e}handleSchemaErrors(e,r,s){let i=new Na.default;La(i);let o={allOf:[Fa]},n=i.compile(o),c=O(r,s),p=n(c),l=c.manifest_version===3;if(!p&&n.errors){let u=n.errors[0];if(u?.keyword==="required"){Oa(e,u,s);return}l&&(u?.keyword==="type"&&Aa(e,u,s),u?.keyword==="not"&&Es(e,u,s))}}apply(e){e.hooks.afterCompile.tapAsync("CompatPlugin (module)",(r,s)=>{let i=this.options.manifestPath,o=JSON.parse(Ta.default.readFileSync(i,"utf-8")),n=this.options.browser||"chrome";this.handleSchemaErrors(r,o,n),s()})}};var Wa=a(require("fs")),Cs=a(require("path"));var $s=a(require("webpack"));function Ua(t,e){let r="Conflict: Multiple assets emit different content to the same filename ";if(e.message.includes(r)){let s=e.message.replace(r,"");if(s.startsWith("content_scripts"))return new $s.default.WebpackError(ci(t,s))}return null}function qa(t,e){let r=require(t);return e.message.includes("Top-level-await is only supported in EcmaScript Modules")?new $s.default.WebpackError(pi(r.name)):null}var _r=class{manifestPath;constructor(e){this.manifestPath=e.manifestPath}apply(e){let r=Cs.default.join(Cs.default.dirname(this.manifestPath),"package.json");if(!Wa.default.existsSync(r))return;let s=require(r).name;e.hooks.compilation.tap("develop:common-errors",i=>{i.hooks.afterSeal.tapAsync("develop:common-errors",o=>{i.errors.forEach((n,c)=>{let p=Ua(s,n),l=qa(s,n);p&&(i.errors[c]=p),l&&(i.errors[c]=l)}),o()})})}};var Sr=class{static name="plugin-errors";manifestPath;browser;constructor(e){this.manifestPath=e.manifestPath,this.browser=e.browser||"chrome"}apply(e){new xr({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new vr({manifestPath:this.manifestPath,browser:this.browser||"chrome"}).apply(e),new _r({manifestPath:this.manifestPath}).apply(e)}};var rp=a(require("os")),Os=a(require("path"));var fc=a(require("fs")),uc=a(require("path")),mc=require("child_process");var te=a(require("path")),ze=a(require("fs"));var Ba={alternate_error_pages:{enabled:!1},autofill:{enabled:!1},browser:{check_default_browser:!1,default_browser_setting_enabled:!1},default_apps:"install",distribution:{alternate_shortcut_text:!1,auto_launch_chrome:!1,import_bookmarks:!1,import_history:!1,import_home_page:!1,import_search_engine:!1,suppress_first_run_bubble:!0,do_not_register_for_update_launch:!0,make_chrome_default:!1,make_chrome_default_for_user:!1,require_eula:!1,suppress_first_run_default_browser_prompt:!0},dns_prefetching:{enabled:!1},download:{default_directory:"/tmp/",directory_upgrade:!0,open_pdf_in_adobe_reader:!1,prompt_for_download:!0},enable_do_not_track:!0,extensions:{theme:{use_system:!1},toolbarsize:-1,ui:{developer_mode:!0}},plugins:{plugins_list:[{enabled:!1,name:"Java(TM)"}],show_details:!0},profile:{password_manager_enabled:!1},safebrowsing:{enabled:!1,safebrowsingextended_reporting_enabled:!1},savefile:{default_directory:"/tmp",type:0},search:{suggest_enabled:!1},session:{restore_on_startup:1},sync:{suppress_start:!0},sync_promo:{show_on_first_run_allowed:!1,show_ntp_bubble:!1},translate:{enabled:!1}},Ja={...Ba},za={...Ba};var b=require("@colors/colors/safe");function E(t,e){let r=e==="warn"?(0,b.brightYellow)("\u25BA\u25BA\u25BA"):e==="info"?(0,b.cyan)("\u25BA\u25BA\u25BA"):e==="error"?`${(0,b.bold)((0,b.red)("ERROR"))} in ${Be(t)} ${(0,b.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:(0,b.brightGreen)("\u25BA\u25BA\u25BA");return`${(0,b.gray)("")}${r}`}function Be(t){return t.charAt(0).toUpperCase()+t.slice(1)}function Pr(t){let e=Be(t);return`${E(t,"info")} Creating new ${e} user profile...`}function Ha(t){return`${E(t,"success")} Instance already running.`}function Va(t){return`${E(t,"info")} Instance exited.`}function kr(t,e){let r=t==="firefox"||t==="gecko-based"?"Add-on":"Extension";return`${E(t,"success")} ${Be(t)} ${r} running in ${(0,b.brightBlue)(e||"unknown")} mode.`}function Je(t,e){let r=e=="null"?`Browser is not installed
111
111
 
112
112
  `:`Can't find the browser path
113
113
 
114
- `;return`${E(t,"error")} ${s}Either install the missing browser or choose a different one via ${(0,b.brightYellow)("--browser")} flag.
115
- ${(0,b.red)("NOT FOUND")} ${(0,b.underline)(e||ze(t)+"BROWSER")}`}function Xa(t){return`${E(t,"error")} No Service Worker Support
114
+ `;return`${E(t,"error")} ${r}Either install the missing browser or choose a different one via ${(0,b.brightYellow)("--browser")} flag.
115
+ ${(0,b.red)("NOT FOUND")} ${(0,b.underline)(e||Be(t)+"BROWSER")}`}function Ga(t){return`${E(t,"error")} No Service Worker Support
116
116
 
117
117
  Firefox does not support the ${(0,b.brightYellow)("background.service_worker")} field yet.
118
118
  Update your manifest.json file to use ${(0,b.brightYellow)("background.scripts")} instead.
119
119
 
120
- Read more: ${(0,b.underline)("https://bugzilla.mozilla.org/show_bug.cgi?id=1573659")}.`}function Za(t,e){return`${E(t,"error")} Error launching browser:
121
- ${(0,b.red)(e)}`}function Ya(t,e){return`${E(t,"error")} ${(0,b.red)(e.stack)}`}function Ka(t){return`${E(t,"error")} Unable to connect to ${ze(t)}. Too many retries.`}function Qa(t,e){return`${E(t,"error")} Error while installing temporary addon:
122
- ${(0,b.red)(e)}`}function ec(t,e){return`${E(t,"error")} Path is not directory
120
+ Read more: ${(0,b.underline)("https://bugzilla.mozilla.org/show_bug.cgi?id=1573659")}.`}function Xa(t,e){return`${E(t,"error")} Error launching browser:
121
+ ${(0,b.red)(e)}`}function Za(t,e){return`${E(t,"error")} ${(0,b.red)(e.stack)}`}function Ka(t){return`${E(t,"error")} Unable to connect to ${Be(t)}. Too many retries.`}function Ya(t,e){return`${E(t,"error")} Error while installing temporary addon:
122
+ ${(0,b.red)(e)}`}function Qa(t,e){return`${E(t,"error")} Path is not directory
123
123
 
124
124
  Please provide a valid directory path and try again.
125
- ${(0,b.red)("NOT DIRECTORY")} ${(0,b.underline)(e)}`}function tc(t){return`${E(t,"error")} Error parsing message length.`}function sc(t){return`${E(t,"error")} ${(0,b.magenta)("MessagingClient")} connection closed.`}function rc(t,e){return`${E(t,"error")} Unexpected ${(0,b.magenta)("MessagingClient")} request without target actor: ${(0,b.brightYellow)(e)}`}function nc(t){return`${E(t,"error")} ${(0,b.magenta)("MessagingClient")} connection closed.`}function ic(t,e){return`${E(t,"error")} Target actor ${(0,b.brightYellow)(e)} already has an active request.`}function oc(t,e){return`${E(t,"error")} Error parsing packet: ${(0,b.red)(e)}`}function ac(t,e){return`${E(t,"error")} Message received without a sender actor:
126
- ${(0,b.brightYellow)(JSON.stringify(e))}`}function cc(t,e){return`${E(t,"error")} Received unexpected message:
127
- ${(0,b.red)(e)}`}var pc=a(require("progress"));function Ls(t,e){let r=new pc.default(`${t} [:bar] :percent :etas`,{complete:"=",incomplete:" ",width:50,total:131072}),n=setInterval(()=>{let i=Math.random()*10*1024;r.tick(i),r.complete&&(clearInterval(n),e())},50)}function lc(t,e,s){if(e&&Ve.default.existsSync(e))return e;if(Ve.default.existsSync(te.default.resolve(__dirname,`run-${t}-profile`)))return te.default.resolve(__dirname,`run-${t}-profile`);let n=JSON.stringify({...t==="chrome"?za:Ha,...s});return Ls(Fs(t),()=>{let i=te.default.resolve(__dirname,`run-${t}-profile`),o=te.default.join(i,"Default");Ve.default.mkdirSync(o,{recursive:!0});let c=te.default.join(o,"Preferences");Ve.default.writeFileSync(c,n,"utf8")}),te.default.resolve(__dirname,`run-${t}-profile`)}function fc(t){let e=Array.isArray(t.extension)?t.extension:[t.extension],s=lc(t.browser,t.profile,t.preferences);return[`--load-extension=${e.join()}`,`--user-data-dir=${s}`,"--no-first-run","--disable-client-side-phishing-detection","--disable-component-extensions-with-background-pages","--disable-default-apps","--disable-features=InterestFeedContentSuggestions","--disable-features=Translate","--hide-scrollbars","--mute-audio","--no-default-browser-check","--no-first-run","--ash-no-nudges","--disable-search-engine-choice-screen","--disable-features=MediaRoute","--use-mock-keychain","--disable-background-networking","--disable-breakpad","--disable-component-update","--disable-domain-reliability","--disable-features=AutofillServerCommunicatio","--disable-features=CertificateTransparencyComponentUpdate","--disable-sync","--disable-features=OptimizationHints","--disable-features=DialMediaRouteProvider","--no-pings","--enable-features=SidePanelUpdates",...t.browserFlags||[]]}process.on("SIGINT",()=>{process.exit()});process.on("SIGTERM",()=>{process.exit()});var Ge=class{extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;autoReload;stats;chromiumBinary;constructor(e){this.extension=e.extension,this.browser=e.browser,this.browserFlags=e.browserFlags||[],this.userDataDir=e.userDataDir,this.profile=e.profile||e.userDataDir,this.preferences=e.preferences,this.startingUrl=e.startingUrl,this.chromiumBinary=e.chromiumBinary}launchChromium(e){let s;switch(e){case"chrome":s=require(`${e}-location`);break;case"edge":s=require(`${e}-location`)();break;case"chromium-based":s=mc.default.normalize(this.chromiumBinary);break;default:s=require(`${e}`);break}uc.default.existsSync(s)||(console.error(He(e,s)),process.exit());let r=fc(this);console.log("asdlasdlasdaldjsalds",this.startingUrl);let n=this.startingUrl?[this.startingUrl,...r]:[...r],i=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",o=(0,dc.spawn)(`${s}`,n,{stdio:i});process.env.EXTENSION_ENV==="development"&&(o.stdout?.pipe(process.stdout),o.stderr?.pipe(process.stderr))}apply(e){let s=!1;e.hooks.done.tapAsync("run-browsers:module",(r,n)=>{if(r.compilation.errors.length>0){n();return}if(s){n();return}this.launchChromium(this.browser),setTimeout(()=>{console.log(Ds(this.browser,r.compilation.options.mode))},2e3),s=!0,n()})}};var tp=a(require("fs")),sp=a(require("path")),Nr=require("child_process");var Xe=a(require("fs")),Is=a(require("path")),gc=a(require("os")),hc=a(require("which")),yc=process.platform==="darwin",hl=process.platform==="win32",yl=!yc&&!hl;function bl(){if(yl)try{return hc.default.sync("firefox")}catch{return null}else if(yc){let t="/Applications/Firefox.app/Contents/MacOS/firefox",e=Is.default.join(gc.default.homedir(),t.slice(1));return Xe.default.existsSync(t)?t:Xe.default.existsSync(e)?e:null}else{let t=Is.default.join("Mozilla Firefox","firefox.exe"),e=[process.env.LOCALAPPDATA,process.env.PROGRAMFILES,process.env["PROGRAMFILES(X86)"]];for(let r of e)if(r){let n=Is.default.join(r,t);if(Xe.default.existsSync(n))return n}let s=["C:\\Program Files\\Mozilla Firefox\\firefox.exe","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"];for(let r of s)if(Xe.default.existsSync(r))return r;return null}}var bc=bl();var Ar=a(require("path")),Ns=a(require("fs")),Rr=a(require("firefox-profile"));var wl={"app.update.enabled":!1,"browser.dom.window.dump.enabled":!0,"browser.formfill.enable":!1,"browser.link.open_newwindow":3,"browser.sessionstore.enabled":!1,"browser.shell.checkDefaultBrowser":!1,"browser.sync.enabled":!1,"browser.startup.page":0,"browser.startup.homepage_welcome_url":"about:blank","browser.startup.homepage_welcome_url_additional":"about:blank","browser.urlbar.suggest.bookmark":!1,"browser.urlbar.suggest.clipboard":!1,"browser.urlbar.suggest.history":!1,"browser.urlbar.suggest.openpage":!1,"browser.urlbar.suggest.remotetab":!1,"browser.urlbar.suggest.searches":!1,"browser.urlbar.suggest.topsites":!1,"browser.urlbar.suggest.engines":!1,"browser.urlbar.suggest.calculator":!1,"browser.urlbar.suggest.recentsearches":!1,"datareporting.policy.dataSubmissionEnabled":!1,"datareporting.policy.firstRunURL":"","devtools.browserconsole.contentMessages":!0,"devtools.chrome.enabled":!0,"devtools.debugger.prompt-connection":!1,"devtools.debugger.remote-enabled":!0,"devtools.errorconsole.enabled":!0,"extensions.installDistroAddons":!1,"extensions.autoDisableScopes":10,"extensions.chrome.enabled":!0,"extensions.logging.enabled":!1,"extensions.checkCompatibility.nightly":!1,"extensions.update.enabled":!1,"extensions.update.notifyUser":!1,"extensions.enabledScopes":5,"extensions.getAddons.cache.enabled":!1,"network.prefetch.next":!1,"network.speculative.preconnect.enabled":!1,"toolkit.telemetry.enabled":!1,"toolkit.telemetry.archive.enabled":!1,"toolkit.telemetry.newProfilePing.enabled":!1,"toolkit.recovery.enabled":!1,"urlclassifier.updateinterval":172800,"security.enterprise_roots.enabled":!0,"xpinstall.signatures.required":!1};function Or(t){return{...wl,...t}}var Ye=a(require("fs")),Ke=a(require("path"));var Ze=a(require("path")),Os=a(require("fs")),m=require("@colors/colors/safe");function S(t){return`${t==="warn"?(0,m.brightYellow)("\u25BA\u25BA\u25BA"):t==="info"?(0,m.cyan)("\u25BA\u25BA\u25BA"):t==="error"?`${(0,m.bold)((0,m.red)("ERROR"))} in Extension.js ${(0,m.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:(0,m.brightGreen)("\u25BA\u25BA\u25BA")}`}function X(t){return`${S("error")} Manifest file not found.
125
+ ${(0,b.red)("NOT DIRECTORY")} ${(0,b.underline)(e)}`}function ec(t){return`${E(t,"error")} Error parsing message length.`}function tc(t){return`${E(t,"error")} ${(0,b.magenta)("MessagingClient")} connection closed.`}function rc(t,e){return`${E(t,"error")} Unexpected ${(0,b.magenta)("MessagingClient")} request without target actor: ${(0,b.brightYellow)(e)}`}function sc(t){return`${E(t,"error")} ${(0,b.magenta)("MessagingClient")} connection closed.`}function ic(t,e){return`${E(t,"error")} Target actor ${(0,b.brightYellow)(e)} already has an active request.`}function oc(t,e){return`${E(t,"error")} Error parsing packet: ${(0,b.red)(e)}`}function nc(t,e){return`${E(t,"error")} Message received without a sender actor:
126
+ ${(0,b.brightYellow)(JSON.stringify(e))}`}function ac(t,e){return`${E(t,"error")} Received unexpected message:
127
+ ${(0,b.red)(e)}`}var cc=a(require("progress"));function Er(t,e){let s=new cc.default(`${t} [:bar] :percent :etas`,{complete:"=",incomplete:" ",width:50,total:131072}),i=setInterval(()=>{let o=Math.random()*10*1024;s.tick(o),s.complete&&(clearInterval(i),e())},50)}function pc(t,e,r){if(e&&ze.default.existsSync(e))return e;if(ze.default.existsSync(te.default.resolve(__dirname,`run-${t}-profile`)))return te.default.resolve(__dirname,`run-${t}-profile`);let i=JSON.stringify({...t==="chrome"?Ja:za,...r});return Er(Pr(t),()=>{let o=te.default.resolve(__dirname,`run-${t}-profile`),n=te.default.join(o,"Default");ze.default.mkdirSync(n,{recursive:!0});let c=te.default.join(n,"Preferences");ze.default.writeFileSync(c,i,"utf8")}),te.default.resolve(__dirname,`run-${t}-profile`)}function lc(t){let e=Array.isArray(t.extension)?t.extension:[t.extension],r=pc(t.browser,t.profile,t.preferences);return[`--load-extension=${e.join()}`,`--user-data-dir=${r}`,"--no-first-run","--disable-client-side-phishing-detection","--disable-component-extensions-with-background-pages","--disable-default-apps","--disable-features=InterestFeedContentSuggestions","--disable-features=Translate","--hide-scrollbars","--mute-audio","--no-default-browser-check","--no-first-run","--ash-no-nudges","--disable-search-engine-choice-screen","--disable-features=MediaRoute","--use-mock-keychain","--disable-background-networking","--disable-breakpad","--disable-component-update","--disable-domain-reliability","--disable-features=AutofillServerCommunicatio","--disable-features=CertificateTransparencyComponentUpdate","--disable-sync","--disable-features=OptimizationHints","--disable-features=DialMediaRouteProvider","--no-pings","--enable-features=SidePanelUpdates",...t.browserFlags||[]]}process.on("SIGINT",()=>{process.exit()});process.on("SIGTERM",()=>{process.exit()});var He=class{extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;autoReload;stats;chromiumBinary;constructor(e){this.extension=e.extension,this.browser=e.browser,this.browserFlags=e.browserFlags||[],this.userDataDir=e.userDataDir,this.profile=e.profile||e.userDataDir,this.preferences=e.preferences,this.startingUrl=e.startingUrl,this.chromiumBinary=e.chromiumBinary}launchChromium(e){let r;switch(e){case"chrome":r=require(`${e}-location`);break;case"edge":r=require(`${e}-location`)();break;case"chromium-based":r=uc.default.normalize(this.chromiumBinary);break;default:r=require(`${e}`);break}fc.default.existsSync(r)||(console.error(Je(e,r)),process.exit());let s=lc(this),i=this.startingUrl?[this.startingUrl,...s]:[...s],o=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",n=(0,mc.spawn)(`${r}`,i,{stdio:o});process.env.EXTENSION_ENV==="development"&&(n.stdout?.pipe(process.stdout),n.stderr?.pipe(process.stderr))}apply(e){let r=!1;e.hooks.done.tapAsync("run-browsers:module",(s,i)=>{if(s.compilation.errors.length>0){i();return}if(r){i();return}this.launchChromium(this.browser),setTimeout(()=>{console.log(kr(this.browser,s.compilation.options.mode))},2e3),r=!0,i()})}};var ep=a(require("fs")),tp=a(require("path")),Is=require("child_process");var Ve=a(require("fs")),$r=a(require("path")),dc=a(require("os")),gc=a(require("which")),hc=process.platform==="darwin",gl=process.platform==="win32",hl=!hc&&!gl;function yl(){if(hl)try{return gc.default.sync("firefox")}catch{return null}else if(hc){let t="/Applications/Firefox.app/Contents/MacOS/firefox",e=$r.default.join(dc.default.homedir(),t.slice(1));return Ve.default.existsSync(t)?t:Ve.default.existsSync(e)?e:null}else{let t=$r.default.join("Mozilla Firefox","firefox.exe"),e=[process.env.LOCALAPPDATA,process.env.PROGRAMFILES,process.env["PROGRAMFILES(X86)"]];for(let s of e)if(s){let i=$r.default.join(s,t);if(Ve.default.existsSync(i))return i}let r=["C:\\Program Files\\Mozilla Firefox\\firefox.exe","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"];for(let s of r)if(Ve.default.existsSync(s))return s;return null}}var yc=yl();var Fs=a(require("path")),Lr=a(require("fs")),Ls=a(require("firefox-profile"));var bl={"app.update.enabled":!1,"browser.dom.window.dump.enabled":!0,"browser.formfill.enable":!1,"browser.link.open_newwindow":3,"browser.sessionstore.enabled":!1,"browser.shell.checkDefaultBrowser":!1,"browser.sync.enabled":!1,"browser.startup.page":0,"browser.startup.homepage_welcome_url":"about:blank","browser.startup.homepage_welcome_url_additional":"about:blank","browser.urlbar.suggest.bookmark":!1,"browser.urlbar.suggest.clipboard":!1,"browser.urlbar.suggest.history":!1,"browser.urlbar.suggest.openpage":!1,"browser.urlbar.suggest.remotetab":!1,"browser.urlbar.suggest.searches":!1,"browser.urlbar.suggest.topsites":!1,"browser.urlbar.suggest.engines":!1,"browser.urlbar.suggest.calculator":!1,"browser.urlbar.suggest.recentsearches":!1,"datareporting.policy.dataSubmissionEnabled":!1,"datareporting.policy.firstRunURL":"","devtools.browserconsole.contentMessages":!0,"devtools.chrome.enabled":!0,"devtools.debugger.prompt-connection":!1,"devtools.debugger.remote-enabled":!0,"devtools.errorconsole.enabled":!0,"extensions.installDistroAddons":!1,"extensions.autoDisableScopes":10,"extensions.chrome.enabled":!0,"extensions.logging.enabled":!1,"extensions.checkCompatibility.nightly":!1,"extensions.update.enabled":!1,"extensions.update.notifyUser":!1,"extensions.enabledScopes":5,"extensions.getAddons.cache.enabled":!1,"network.prefetch.next":!1,"network.speculative.preconnect.enabled":!1,"toolkit.telemetry.enabled":!1,"toolkit.telemetry.archive.enabled":!1,"toolkit.telemetry.newProfilePing.enabled":!1,"toolkit.recovery.enabled":!1,"urlclassifier.updateinterval":172800,"security.enterprise_roots.enabled":!0,"xpinstall.signatures.required":!1};function js(t){return{...bl,...t}}var Xe=a(require("fs")),Ze=a(require("path"));var Ge=a(require("path")),Cr=a(require("fs")),m=require("@colors/colors/safe");function P(t){return`${t==="warn"?(0,m.brightYellow)("\u25BA\u25BA\u25BA"):t==="info"?(0,m.cyan)("\u25BA\u25BA\u25BA"):t==="error"?`${(0,m.bold)((0,m.red)("ERROR"))} in Extension.js ${(0,m.red)("\u2716\uFE0E\u2716\uFE0E\u2716\uFE0E")}`:(0,m.brightGreen)("\u25BA\u25BA\u25BA")}`}function Z(t){return`${P("error")} Manifest file not found.
128
128
 
129
129
  Ensure the path to your extension exists and try again.
130
- ${(0,m.red)("NOT FOUND")} ${(0,m.underline)(t)}`}function Ms(t){let e=t==="firefox"||t==="gecko-based"?"Add-on":"Extension";return`${S("info")} Building ${se(t)} ${e} package...`}function As(t,e){let s=Ze.default.join(t,"dist",e.browser||"chrome"),r=Ze.default.join(s,"manifest.json"),n=require(r),{name:i,version:o,hostPermissions:c,permissions:p}=n,l=wc(t,n).defaultLocale,u=wc(t,n).otherLocales.join(", "),d=`${l} ${u&&", "+u}`,g=c&&c.length,h=p&&p.length,v=Hs().version;return`
131
- \u{1F9E9} ${(0,m.brightGreen)("Extension.js")} ${(0,m.gray)(`${v}`)}
132
- Extension Name ${(0,m.gray)(i)}
133
- Extension Version ${(0,m.gray)(o)}
130
+ ${(0,m.red)("NOT FOUND")} ${(0,m.underline)(t)}`}function jr(t){let e=t==="firefox"||t==="gecko-based"?"Add-on":"Extension";return`${P("info")} Building ${re(t)} ${e} package...`}function Dr(t,e){let r=Ge.default.join(t,"dist",e.browser||"chrome"),s=Ge.default.join(r,"manifest.json"),i=require(s),{name:o,version:n,hostPermissions:c,permissions:p}=i,l=bc(t,i).defaultLocale,u=bc(t,i).otherLocales.join(", "),d=`${l} ${u&&", "+u}`,g=c&&c.length,y=p&&p.length,_=Ur().version;return`
131
+ \u{1F9E9} ${(0,m.brightGreen)("Extension.js")} ${(0,m.gray)(`${_}`)}
132
+ Extension Name ${(0,m.gray)(o)}
133
+ Extension Version ${(0,m.gray)(n)}
134
134
  Locales ${(0,m.gray)(d)}
135
135
  Host Permissions ${(0,m.gray)(g?c.join(", "):"Browser defaults")}
136
- Permissions ${(0,m.gray)(h?p.join(", "):"Browser defaults")}
137
- `}function xc(t,e){let s=t==="production"?m.brightBlue:m.brightBlue,r=e==="firefox"||e==="gecko-based"?"Add-on":"Extension";return`${S("success")} ${se(e)} ${r} ready for ${s(t||"unknown")}.`}function vc(t,e,s){let r=e?.toJson(),n=Ze.default.join(t,"manifest.json"),i=JSON.parse(Os.default.readFileSync(n,"utf8")),o=r?.assets,c=`${S("info")} Building ${(0,m.cyan)(i.name)} extension using ${se(s)} defaults...
136
+ Permissions ${(0,m.gray)(y?p.join(", "):"Browser defaults")}
137
+ `}function wc(t,e){let r=t==="production"?m.brightBlue:m.brightBlue,s=e==="firefox"||e==="gecko-based"?"Add-on":"Extension";return`${P("success")} ${re(e)} ${s} ready for ${r(t||"unknown")}.`}function xc(t,e,r){let s=e?.toJson(),i=Ge.default.join(t,"manifest.json"),o=JSON.parse(Cr.default.readFileSync(i,"utf8")),n=s?.assets,c=`${P("info")} Building ${(0,m.cyan)(o.name)} extension using ${re(r)} defaults...
138
138
 
139
139
  `,p=`
140
- Build completed in ${((r?.time||0)/1e3).toFixed(2)} seconds.`,l=`Build Target: ${(0,m.gray)(se(s))}
140
+ Build completed in ${((s?.time||0)/1e3).toFixed(2)} seconds.`,l=`Build Target: ${(0,m.gray)(re(r))}
141
141
  `,u=`Build Status: ${e?.hasErrors()?(0,m.red)("Failed"):(0,m.brightGreen)("Success")}
142
142
  `,d=`
143
- Version: ${(0,m.gray)(i.version)}
144
- `,g=`Size: ${(0,m.gray)(xl(o))}
145
- `,h="";return h+=c,h+=vl(o),h+=d,h+=g,h+=l,h+=u,h+=p,h}function _c(){return`${S("success")} No errors or warnings found. Your extension is ${(0,m.brightGreen)("ready for deployment")}.`}function Sc(t,e){return`${S("info")} Fetching data...
146
- ${(0,m.gray)("URL")} ${(0,m.underline)(`https://github.com/${t}/${e}`)}`}function Pc(t){return`${S("info")} Downloading ${(0,m.cyan)(t)}...`}function kc(t){return`
147
- ${S("info")} Creating a new browser extension...
148
- ${(0,m.gray)("PATH")} ${(0,m.underline)(`${t}`)}`}function Ec(t){return`${S("info")} No ${(0,m.brightYellow)(".gitignore")} found, zipping all the content inside path:
149
- ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function jc(t){return`${S("info")} Packaging source files. Files in ${(0,m.brightYellow)(".gitignore")} will be excluded...
150
- ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}.`}function $c(t){return`${S("info")} Packaging extension distribution files...
151
- ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function Cc(t,e,s,r){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${e}`)}, Target Browser: ${`${se(t)}`}
152
- ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${s}`)} (source)
153
- ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${r}`)} (distribution)`}function Fc(t,e,s,r){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${t}.${e}`)}, Target Browser: ${`${se(s)}`}
154
- ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${r}`)} ${(0,m.gray)("(distribution)")}`}function Dc(t,e,s,r){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${t}-source.${e}`)}, Target Browser: ${`${se(s)}`}
155
- ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${r}`)} (source)`}function Lc(t){return`${S("error")} Failed to compress extension package.
156
- ${(0,m.red)(t)}`}function Ic(t){return`${S("info")} Writing type definitions for ${(0,m.cyan)(t.name||"")}...`}function Oc(t){return`${S("error")} Failed to write the extension type definition.
157
- ${(0,m.red)(t)}`}function Mc(t){return`${S("info")} Downloading extension...
158
- ${(0,m.gray)("URL")} ${(0,m.underline)(t)}`}function Ac(t){return`${S("info")} Unpackaging browser extension...
159
- ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function Rc(){return`${S("info")} Browser extension unpackaged ${(0,m.brightGreen)("successfully")}. Compiling...`}function Nc(t){return`${S("error")} Failed to download or extract ZIP file. ${(0,m.red)(t)}`}function se(t){return t.charAt(0).toUpperCase()+t.slice(1)}function wc(t,e){let s=e.default_locale,r=Ze.default.join(t,"_locales");if(!Os.default.existsSync(r))return{defaultLocale:"Browser defaults",otherLocales:[]};let n=Os.default.readdirSync(r).filter(i=>i!==s);return{defaultLocale:s,otherLocales:n}}function Tc(t){return`${(t/1024).toFixed(2)}KB`}function xl(t){let e=0;return t?.forEach(s=>{e+=s.size}),Tc(e)}function qc(t,e=""){let s="";return Object.keys(t).forEach((r,n,i)=>{let o=n===i.length-1,c=o?"\u2514\u2500":"\u251C\u2500",p=t[r].size?` (${Tc(t[r].size)})`:"";s+=`${(0,m.gray)(e)}${(0,m.gray)(c)} ${r}${(0,m.gray)(p)}
160
- `,typeof t[r]=="object"&&!t[r].size&&(s+=qc(t[r],`${e}${o?" ":(0,m.gray)("\u2502 ")}`))}),s}function vl(t){let e={};return t?.forEach(s=>{let r=s.name.split("/"),n=e;r.forEach((i,o)=>{n[i]||(n[i]={}),o===r.length-1?n[i]={size:s.size}:n=n[i]})}),`.
161
- ${qc(e)}`}function Uc(t){return`${S("info")} Using ${(0,m.brightYellow)(t)}. ${(0,m.magenta)("This is very experimental")}.`}function Wc(t){return`${S("info")} Installing ${(0,m.cyan)(t)} dependencies...`}function Bc(t,e,s){return`${S("error")} Command ${t} ${e.join(" ")} failed with exit code ${s}`}function Jc(t){return`${S("error")} Can't install project dependencies. ${(0,m.red)(t.message||t.toString())}`}function Z(t){let e=Ke.default.join(t,"extension.config.js");if(Ye.default.existsSync(e)&&Mr(t)){let s=require(e);if(s&&s!=null&&s&&typeof s.config=="function")return s.config}return s=>s}function Hc(t,e){let s=Ke.default.join(t,"extension.config.js");if(Ye.default.existsSync(s)&&Mr(t)){let r=require(s);if(r&&r!=null)return r[e]}return{}}function Rs(t,e){let s=Ke.default.join(t,"extension.config.js");if(Ye.default.existsSync(s)&&Mr(t)){let r=require(s);if(r&&r!=null)return r.browsers[e]}return{}}var zc=!1;function Mr(t){let e=Ke.default.join(t,"extension.config.js");return Ye.default.existsSync(e)?(zc||(console.log(Uc("extension.config.js")),zc=!0),!0):!1}function Vc(t,e){let s={...Rs(Ar.default.resolve(__dirname,"run-firefox"),"firefox"),...Or(e)};Object.keys(s).forEach(i=>{t.setPreference(i,s[i])});let n=Object.keys(e);return n.length>0&&n.forEach(i=>{t.setPreference(i,e[i])}),t.updatePreferences(),t}function _l(t,e){let s=new Rr.default({destinationDirectory:t}),r=Vc(s,e);return console.log({profileConfigured:r}),r}function Sl(t,e,s){let r;if(Ns.default.statSync(e).isDirectory())r=e;else throw new Error(ec(t,e));let i=new Rr.default({destinationDirectory:r});return Vc(i,s)}function Gc(t,e,s){let r,n=e||Ar.default.resolve(__dirname,"run-firefox-data-dir"),c={...Or(s||{}),...s};return Ns.default.existsSync(n)?r=Sl(t,n,c):(Ls(Fs(t),()=>{}),Ns.default.mkdirSync(n,{recursive:!0}),r=_l(n,c)),r}async function Xc(t,e){let{browser:s,startingUrl:r,preferences:n,userDataDir:i,browserFlags:o=[]}=e,c=Gc(s,i,n),p=[];r&&p.push(`--url=${r}`),o&&p.push(...o);let l=t.options.devServer?.port?t.options.devServer?.port+100:9222;return[`--binary-args="${p.join(" ")}"`,`--profile="${c.path()}"`,`--listen=${l}`,"--verbose"].join(" ")}var ep=a(require("path"));var Zc=a(require("net")),Yc=a(require("events"));function Pl(t,e){let s=e.toString(),r=s.indexOf(":");if(r<1)return{remainingData:e};let n=parseInt(s.substring(0,r),10);if(isNaN(n))return{remainingData:e,error:new Error(tc(t)),fatal:!0};if(e.length-(r+1)<n)return{remainingData:e};let i=e.slice(r+1,r+1+n),o=e.slice(r+1+n);try{let c=JSON.parse(i.toString());return{remainingData:o,parsedMessage:c}}catch(c){return{remainingData:o,error:c,fatal:!1}}}var Ts=class extends Yc.default{incomingData=Buffer.alloc(0);pendingRequests=[];activeRequests=new Map;connection;async connect(e){await new Promise((s,r)=>{try{let n={port:e,host:"127.0.0.1"},i=Zc.default.createConnection(n,()=>{s()});this.connection=i,i.on("data",this.onData.bind(this)),i.on("error",r),i.on("end",this.onEnd.bind(this)),i.on("timeout",this.onTimeout.bind(this)),this.expectReply("root",{resolve:s,reject:r})}catch(n){r(n)}})}disconnect(){this.connection&&(this.connection.removeAllListeners(),this.connection.end(),this.rejectAllRequests(new Error(sc("firefox"))))}rejectAllRequests(e){this.activeRequests.forEach(s=>{s.reject(e)}),this.activeRequests.clear(),this.pendingRequests.forEach(({deferred:s})=>{s.reject(e)}),this.pendingRequests=[]}async request(e){let s=typeof e=="string"?{to:"root",type:e}:e;if(!s.to)throw new Error(rc("firefox",s.type));return await new Promise((r,n)=>{let i={resolve:r,reject:n};this.pendingRequests.push({request:s,deferred:i}),this.flushPendingRequests()})}flushPendingRequests(){this.pendingRequests=this.pendingRequests.filter(({request:e,deferred:s})=>{if(this.activeRequests.has(e.to))return!0;if(!this.connection)throw new Error(nc("firefox"));try{let r=`${Buffer.from(JSON.stringify(e)).length}:${JSON.stringify(e)}`;this.connection.write(r),this.expectReply(e.to,s)}catch(r){s.reject(r)}return!1})}expectReply(e,s){if(this.activeRequests.has(e))throw new Error(ic("firefox",e));this.activeRequests.set(e,s)}onData(e){for(this.incomingData=Buffer.concat([this.incomingData,e]);this.readMessage(););}readMessage(){let{remainingData:e,parsedMessage:s,error:r,fatal:n}=Pl("firefox",this.incomingData);return this.incomingData=e,r?(this.emit("error",new Error(oc("firefox",r))),n&&this.disconnect(),!n):s?(this.handleMessage(s),!0):!1}handleMessage(e){if(!e.from){this.emit("error",new Error(ac("firefox",e)));return}let s=this.activeRequests.get(e.from);s?(this.activeRequests.delete(e.from),e.error?s.reject(e):s.resolve(e),this.flushPendingRequests()):this.emit("error",new Error(cc("firefox",JSON.stringify(e))))}onError(e){this.emit("error",e)}onEnd(){this.emit("end")}onTimeout(){this.emit("timeout")}};function Kc(t){return t instanceof Error?String(t):`${t.error}: ${t.message}`}function Qc(t,e){return Array.isArray(t)&&t.includes(e.code)?!0:e.code===t}var kl=150,El=1e3,qs=class{options;constructor(e){this.options=e}async connectClient(e){let s;for(let r of Array.from({length:kl}))try{let n=new Ts;return await n.connect(e),n}catch(n){if(Qc("ECONNREFUSED",n))await new Promise(i=>setTimeout(i,El)),s=n;else throw console.error(Ya(this.options.browser,n.stack)),n}throw console.error(Ka(this.options.browser)),s}async installAddons(e){let{devtools:s}=this.options,r=Array.isArray(this.options.extension)?this.options.extension:[this.options.extension],n=e.options.devServer?.port,i=n?n+100:9222,o=await this.connectClient(i);for(let[c,p]of r.entries()){let l=ep.default.join(p.replace(/"/g,"")),u=c===0&&s;try{let d=await o.request({to:"root",type:"getRoot"});await o.request({to:d.addonsActor,type:"installTemporaryAddon",addonPath:l,openDevTools:u})}catch(d){let g=Kc(d);throw new Error(Qa(this.options.browser,g))}}}};var re=null;process.on("SIGINT",()=>{re&&re.kill("SIGINT"),process.exit()});process.on("SIGTERM",()=>{re&&re.kill("SIGTERM"),process.exit()});var Us=class{extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;autoReload;stats;geckoBinary;constructor(e){this.extension=e.extension,this.browser=e.browser||"firefox",this.browserFlags=e.browserFlags||[],this.userDataDir=e.userDataDir,this.profile=e.profile,this.preferences=e.preferences,this.startingUrl=e.startingUrl,this.geckoBinary=e.geckoBinary}async getFxRunnerCommand(){let e=ae()?"pnpm dlx fx-runner":"npm exec fx-runner";try{return await new Promise((s,r)=>{(0,Nr.exec)(`${e} --version`,n=>{n?r(n):s(null)})}),e}catch{console.error(He("firefox",e)),process.exit(1)}}async launchFirefox(e,s){let r=await this.getFxRunnerCommand(),n;switch(s.browser){case"gecko-based":n=sp.default.normalize(this.geckoBinary);break;default:n=bc;break}let i=`${r} start --binary "${n}" --foreground --no-remote`;tp.default.existsSync(n||"")||(console.error(He(this.browser,n||"")),process.exit(1));let o=await Xc(e,s),c=`${i} ${o}`;re=(0,Nr.exec)(c,(l,u,d)=>{if(l!=null)throw l;d.includes("Unable to move the cache")?console.log(Va(this.browser)):(console.log(Ga(this.browser)),process.exit())}),process.env.EXTENSION_ENV==="development"&&(re.stdout?.pipe(process.stdout),re.stderr?.pipe(process.stderr));let p=new qs(this);try{await p.installAddons(e)}catch(l){l?.toString()?.includes("background.service_worker is currently disabled")&&(console.error(Xa(this.browser)),process.exit(1)),console.error(Za(this.browser,l)),process.exit(1)}}apply(e){let s=!1;e.hooks.done.tapAsync("run-firefox:module",async(r,n)=>{if(r.compilation.errors.length>0){n();return}if(s){n();return}setTimeout(()=>{console.log(Ds(this.browser,r.compilation.options.mode))},2e3),await this.launchFirefox(e,{browser:this.browser,browserFlags:this.browserFlags,userDataDir:this.userDataDir,profile:this.profile,preferences:this.preferences,startingUrl:this.startingUrl,mode:r.compilation.options.mode}),s=!0,n()})}};var Ws=class{static name="plugin-browsers";extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;chromiumBinary;geckoBinary;constructor(e){this.extension=[...e.extension,...e.browserFlags?.filter(s=>!s.startsWith("--load-extension="))||[]],this.browser=e.browser||"chrome",this.browserFlags=e.browserFlags?.filter(s=>!s.startsWith("--load-extension="))||[],this.userDataDir=e.userDataDir,this.profile=e.profile||"",this.preferences=e.preferences||{},this.startingUrl=e.startingUrl||"",this.chromiumBinary=e.chromiumBinary,this.geckoBinary=e.geckoBinary}getProfilePath(e,s,r){return r||(e.options.mode==="production"?Tr.default.join(rp.default.tmpdir(),"extension-js",s,"profile"):Tr.default.resolve(__dirname,`run-${s}-profile`))}apply(e){let r={...{stats:!0,extension:this.extension,browser:this.browser,browserFlags:this.browserFlags||[],userDataDir:this.getProfilePath(e,this.browser,this.userDataDir||this.profile),startingUrl:this.startingUrl,chromiumBinary:this.chromiumBinary,geckoBinary:this.geckoBinary},...Rs(e.context,this.browser)};switch(this.browser){case"chrome":case"edge":case"chromium-based":{new Ge(r).apply(e);break}case"firefox":case"gecko-based":new Us(r).apply(e);break;default:{new Ge({...r,browser:"chrome"}).apply(e);break}}}};function J(t,e){let s=Qe.default.join(t,"manifest.json"),r=Qe.default.join(t,`dist/${e.browser}`),n=require(s),i=e.chromiumBinary?"chromium-based":e.geckoBinary?"gecko-based":e.browser;return{mode:e.mode||"development",entry:{},target:"web",context:t,devtool:n.manifest_version===3?"cheap-source-map":"eval-cheap-source-map",output:{clean:{keep(o){return!o.startsWith("hot/background")}},path:r,publicPath:"/",hotUpdateChunkFilename:"hot/[id].[fullhash].hot-update.js",hotUpdateMainFilename:"hot/[runtime].[fullhash].hot-update.json",environment:{bigIntLiteral:!0,dynamicImport:!0}},resolve:{modules:["node_modules",Qe.default.join(t,"node_modules")],extensions:[".js",".mjs",".jsx",".ts",".mts",".tsx",".json",".wasm",".less",".css",".sass",".scss"]},watchOptions:{ignored:/node_modules|dist/},module:{rules:[]},plugins:[new ct({manifestPath:s,browser:i}),new yt({manifestPath:s}),new ht({manifestPath:s}),new _t({manifestPath:s}),process.env.EXPERIMENTAL_ERRORS_PLUGIN&&new Cs({manifestPath:s,browser:i}),new ks({manifestPath:s,browser:i,polyfill:e.polyfill}),new hs({manifestPath:s,browser:i}),new vs({manifestPath:s,browser:i,stats:!0,port:8e3}),!e.noOpen&&new Ws({extension:[r,Qe.default.join(__dirname,"extensions",`${i}-manager-extension`)],browser:i,startingUrl:e.startingUrl,profile:e.profile||e.userDataDir,preferences:e.preferences,browserFlags:e.browserFlags,chromiumBinary:e.chromiumBinary,geckoBinary:e.geckoBinary})].filter(Boolean),stats:{all:!1,errors:!0,warnings:!0},infrastructureLogging:{level:"none"},performance:{hints:!1,maxAssetSize:999e3,maxEntrypointSize:999e3},optimization:{minimize:e.mode==="production"},experiments:{asyncWebAssembly:!0}}}var et=a(require("path")),cp=a(require("go-git-it"));var Bs=a(require("path")),np=a(require("axios")),ip=a(require("adm-zip"));var qr=a(require("stream")),op=require("util"),jl=(0,op.promisify)(qr.default.pipeline);async function ap(t,e){let s=t.split("?")[0];try{console.log(Mc(s));let r=await(0,np.default)({url:t,method:"GET",responseType:"stream"}),n=Bs.default.extname(s),i=Bs.default.basename(s,n),o=Bs.default.join(e,i);console.log(Ac(o));let c=[];await jl(r.data,new qr.default.Writable({write(u,d,g){c.push(u),g()}}));let p=Buffer.concat(c);return new ip.default(p).extractAllTo(o,!0),console.log(Rc()),o}catch(r){throw console.error(Nc(r)),r}}var $l=t=>{try{return new URL(t),!0}catch{return!1}};async function Cl(t,e){return await(0,cp.default)(t,process.cwd(),e),et.default.resolve(process.cwd(),et.default.basename(t))}async function Fl(t){return await ap(t,process.cwd())}async function Y(t){if(!t)return process.cwd();if($l(t)){let e=new URL(t);if(e.protocol.startsWith("http")){if(e.origin!=="https://github.com")return await Fl(t);let s=e.pathname.split("/"),r=s.slice(1,3)[0],n=s.slice(1,3)[1];console.log(Sc(r,n));let i=et.default.basename(e.pathname),o=await Cl(t,Pc(i));return console.log(kc(i)),o}}return et.default.resolve(process.cwd(),t)}var z=a(require("path")),pp=a(require("fs")),lp=a(require("ignore")),fp=a(require("tiny-glob")),Ur=a(require("adm-zip")),up=a(require("slugify"));function Dl(t){try{return pp.default.readFileSync(t,"utf8")}catch{return""}}function Ll(t){return(0,up.default)(t,{replacement:"-",remove:/[^a-zA-Z0-9 ]/g,lower:!0})}function Il(t){switch(t){case"opera":return"crx";case"firefox":return"xpi";default:return"zip"}}function Ol(t,e){let s=Ll(e.zipFilename||t.name);return e.zipFilename?s:`${s}-${t.version}`}async function Ml(t){let e=z.default.join(t,".gitignore"),s=Dl(e),r=(0,lp.default)();return s?r.add(s):console.log(Ec(t)),(await(0,fp.default)("**/*",{cwd:t,dot:!0})).filter(i=>!r.ignores(i))}async function mp(t,{browser:e="chrome",...s}){try{let r=z.default.join(t,"dist"),n=z.default.join(r,e),i=s.zipSource?t:n,o=require(z.default.join(i,"manifest.json")),c=Ol(o,s),p=Il(e),l=z.default.join(n,`${c}.${p}`),u=z.default.join(r,`${c}-source.${p}`);if(s.zipSource){console.log(""),console.log(jc(u));let d=new Ur.default;(await Ml(t)).forEach(h=>{d.addLocalFile(z.default.join(t,h),z.default.dirname(h))}),d.writeZip(u)}if(s.zip){console.log(""),console.log($c(l));let d=new Ur.default;d.addLocalFolder(n),d.writeZip(l)}s.zip&&s.zipSource?(console.log(""),console.log(Cc(e,c,u,l))):s.zip?(console.log(""),console.log(Fc(c,p,e,l))):s.zipSource&&(console.log(""),console.log(Dc(c,p,e,u)))}catch(r){throw console.error(Lc(r)),r}}async function yp(t,e){let s=await Y(t);!t?.startsWith("http")&&!dp.default.existsSync(Wr.default.join(s,"manifest.json"))&&(console.log(X(Wr.default.join(s,"manifest.json"))),process.exit(1));try{let r=e?.browser||"chrome",n=J(s,{...e,browser:r,mode:"production"}),i=n.plugins?.filter(u=>u?.constructor.name!=="plugin-browsers"&&u?.constructor.name!=="plugin-reload"),c=Z(s)({...n,plugins:i}),p=(0,hp.merge)(c),l=(0,gp.default)(p);await new Promise((u,d)=>{l.run(async(g,h)=>{if(g)return console.error(g.stack||g),d(g);console.log(vc(s,h,r)),(e?.zip||e?.zipSource)&&await mp(s,{...e,browser:r}),h?.hasErrors()?(console.log(h.toString({colors:!0})),process.exit(1)):(console.log(_c()),u())})})}catch(r){process.env.EXTENSION_ENV==="development"&&console.error(r),process.exit(1)}}var zr=a(require("fs")),zs=a(require("path"));var Jr=a(require("path")),bp=a(require("webpack")),wp=a(require("webpack-dev-server")),xp=require("webpack-merge");function Br(t){t.stop().then(()=>{process.exit()}).catch(e=>{console.log(`Error in the Extension.js runner: ${e.stack||""}`)})}async function vp(t,{...e}){let s=Hc(t,"dev"),r=J(t,{...e,...s,mode:"development"}),i=Z(t)(r),o=(0,xp.merge)(i),c=(0,bp.default)(o),p={host:"127.0.0.1",allowedHosts:"all",static:Jr.default.join(t,"public"),compress:!1,devMiddleware:{writeToDisk:!0},watchFiles:lt(t)?void 0:{paths:[Jr.default.join(t,"**/*.html")],options:{usePolling:!0,interval:1e3}},client:{logging:process.env.EXTENSION_ENV==="development"?"error":"none",progress:!1,overlay:!1},headers:{"Access-Control-Allow-Origin":"*"},port:"auto",hot:"only"},l=new wp.default(p,c);l.startCallback(u=>{u!=null&&console.log(`Error in the Extension.js runner: ${u.stack||""}`)}),process.on("ERROR",()=>{Br(l)}),process.on("SIGINT",()=>{Br(l)}),process.on("SIGTERM",()=>{Br(l)})}var Js=a(require("path")),_e=a(require("fs/promises"));async function _p(t){let e=Js.default.join(t,"extension-env.d.ts"),s=process.env.EXTENSION_ENV==="development"?Js.default.resolve(process.cwd(),"programs/cli/types"):"extension/dist/types",r=`// Required Extension.js types for TypeScript projects.
143
+ Version: ${(0,m.gray)(o.version)}
144
+ `,g=`Size: ${(0,m.gray)(wl(n))}
145
+ `,y="";return y+=c,y+=xl(n),y+=d,y+=g,y+=l,y+=u,y+=p,y}function vc(){return`${P("success")} No errors or warnings found. Your extension is ${(0,m.brightGreen)("ready for deployment")}.`}function _c(t,e){return`${P("info")} Fetching data...
146
+ ${(0,m.gray)("URL")} ${(0,m.underline)(`https://github.com/${t}/${e}`)}`}function Sc(t){return`${P("info")} Downloading ${(0,m.cyan)(t)}...`}function Pc(t){return`
147
+ ${P("info")} Creating a new browser extension...
148
+ ${(0,m.gray)("PATH")} ${(0,m.underline)(`${t}`)}`}function kc(t){return`${P("info")} No ${(0,m.brightYellow)(".gitignore")} found, zipping all the content inside path:
149
+ ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function Ec(t){return`${P("info")} Packaging source files. Files in ${(0,m.brightYellow)(".gitignore")} will be excluded...
150
+ ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}.`}function $c(t){return`${P("info")} Packaging extension distribution files...
151
+ ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function Cc(t,e,r,s){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${e}`)}, Target Browser: ${`${re(t)}`}
152
+ ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${r}`)} (source)
153
+ ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${s}`)} (distribution)`}function jc(t,e,r,s){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${t}.${e}`)}, Target Browser: ${`${re(r)}`}
154
+ ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${s}`)} ${(0,m.gray)("(distribution)")}`}function Dc(t,e,r,s){return`\u{1F4E6} Package name: ${(0,m.brightYellow)(`${t}-source.${e}`)}, Target Browser: ${`${re(r)}`}
155
+ ${(0,m.gray)("\u2514\u2500")} ${(0,m.underline)(`${s}`)} (source)`}function Fc(t){return`${P("error")} Failed to compress extension package.
156
+ ${(0,m.red)(t)}`}function Lc(t){return`${P("info")} Writing type definitions for ${(0,m.cyan)(t.name||"")}...`}function Ic(t){return`${P("error")} Failed to write the extension type definition.
157
+ ${(0,m.red)(t)}`}function Oc(t){return`${P("info")} Downloading extension...
158
+ ${(0,m.gray)("URL")} ${(0,m.underline)(t)}`}function Mc(t){return`${P("info")} Unpackaging browser extension...
159
+ ${(0,m.gray)("PATH")} ${(0,m.underline)(t)}`}function Ac(){return`${P("info")} Browser extension unpackaged ${(0,m.brightGreen)("successfully")}. Compiling...`}function Rc(t){return`${P("error")} Failed to download or extract ZIP file. ${(0,m.red)(t)}`}function re(t){return t.charAt(0).toUpperCase()+t.slice(1)}function bc(t,e){let r=e.default_locale,s=Ge.default.join(t,"_locales");if(!Cr.default.existsSync(s))return{defaultLocale:"Browser defaults",otherLocales:[]};let i=Cr.default.readdirSync(s).filter(o=>o!==r);return{defaultLocale:r,otherLocales:i}}function Tc(t){return`${(t/1024).toFixed(2)}KB`}function wl(t){let e=0;return t?.forEach(r=>{e+=r.size}),Tc(e)}function Nc(t,e=""){let r="";return Object.keys(t).forEach((s,i,o)=>{let n=i===o.length-1,c=n?"\u2514\u2500":"\u251C\u2500",p=t[s].size?` (${Tc(t[s].size)})`:"";r+=`${(0,m.gray)(e)}${(0,m.gray)(c)} ${s}${(0,m.gray)(p)}
160
+ `,typeof t[s]=="object"&&!t[s].size&&(r+=Nc(t[s],`${e}${n?" ":(0,m.gray)("\u2502 ")}`))}),r}function xl(t){let e={};return t?.forEach(r=>{let s=r.name.split("/"),i=e;s.forEach((o,n)=>{i[o]||(i[o]={}),n===s.length-1?i[o]={size:r.size}:i=i[o]})}),`.
161
+ ${Nc(e)}`}function Uc(t){return`${P("info")} Using ${(0,m.magenta)(t)}. ${(0,m.brightYellow)("This is very experimental")}.`}function qc(){return`${P("info")} Installing project dependencies...`}function Wc(t,e,r){return`${P("error")} Command ${t} ${e.join(" ")} failed with exit code ${r}`}function Bc(t){return`${P("error")} Can't install project dependencies. ${(0,m.red)(t.message||t.toString())}`}function K(t){let e=Ze.default.join(t,"extension.config.js");if(Xe.default.existsSync(e)&&Ds(t)){let r=require(e);if(r&&r!=null&&r&&typeof r.config=="function")return r.config}return r=>r}function zc(t,e){let r=Ze.default.join(t,"extension.config.js");if(Xe.default.existsSync(r)&&Ds(t)){let s=require(r);if(s&&s!=null)return s[e]}return{}}function Fr(t,e){let r=Ze.default.join(t,"extension.config.js");if(Xe.default.existsSync(r)&&Ds(t)){let s=require(r);if(s&&s.browsers!=null)return s.browsers[e]}return{}}var Jc=!1;function Ds(t){let e=Ze.default.join(t,"extension.config.js");return Xe.default.existsSync(e)?(Jc||(console.log(Uc("extension.config.js")),Jc=!0),!0):!1}function Hc(t,e){let r={...Fr(Fs.default.resolve(__dirname,"run-firefox"),"firefox"),...js(e)};Object.keys(r).forEach(o=>{t.setPreference(o,r[o])});let i=Object.keys(e);return i.length>0&&i.forEach(o=>{t.setPreference(o,e[o])}),t.updatePreferences(),t}function vl(t,e){let r=new Ls.default({destinationDirectory:t}),s=Hc(r,e);return console.log({profileConfigured:s}),s}function _l(t,e,r){let s;if(Lr.default.statSync(e).isDirectory())s=e;else throw new Error(Qa(t,e));let o=new Ls.default({destinationDirectory:s});return Hc(o,r)}function Vc(t,e,r){let s,i=e||Fs.default.resolve(__dirname,"run-firefox-data-dir"),c={...js(r||{}),...r};return Lr.default.existsSync(i)?s=_l(t,i,c):(Er(Pr(t),()=>{}),Lr.default.mkdirSync(i,{recursive:!0}),s=vl(i,c)),s}async function Gc(t,e){let{browser:r,startingUrl:s,preferences:i,userDataDir:o,browserFlags:n=[]}=e,c=Vc(r,o,i),p=[];s&&p.push(`--url=${s}`),n&&p.push(...n);let l=t.options.devServer?.port?t.options.devServer?.port+100:9222;return[`--binary-args="${p.join(" ")}"`,`--profile="${c.path()}"`,`--listen=${l}`,"--verbose"].join(" ")}var Qc=a(require("path"));var Xc=a(require("net")),Zc=a(require("events"));function Sl(t,e){let r=e.toString(),s=r.indexOf(":");if(s<1)return{remainingData:e};let i=parseInt(r.substring(0,s),10);if(isNaN(i))return{remainingData:e,error:new Error(ec(t)),fatal:!0};if(e.length-(s+1)<i)return{remainingData:e};let o=e.slice(s+1,s+1+i),n=e.slice(s+1+i);try{let c=JSON.parse(o.toString());return{remainingData:n,parsedMessage:c}}catch(c){return{remainingData:n,error:c,fatal:!1}}}var Ir=class extends Zc.default{incomingData=Buffer.alloc(0);pendingRequests=[];activeRequests=new Map;connection;async connect(e){await new Promise((r,s)=>{try{let i={port:e,host:"127.0.0.1"},o=Xc.default.createConnection(i,()=>{r()});this.connection=o,o.on("data",this.onData.bind(this)),o.on("error",s),o.on("end",this.onEnd.bind(this)),o.on("timeout",this.onTimeout.bind(this)),this.expectReply("root",{resolve:r,reject:s})}catch(i){s(i)}})}disconnect(){this.connection&&(this.connection.removeAllListeners(),this.connection.end(),this.rejectAllRequests(new Error(tc("firefox"))))}rejectAllRequests(e){this.activeRequests.forEach(r=>{r.reject(e)}),this.activeRequests.clear(),this.pendingRequests.forEach(({deferred:r})=>{r.reject(e)}),this.pendingRequests=[]}async request(e){let r=typeof e=="string"?{to:"root",type:e}:e;if(!r.to)throw new Error(rc("firefox",r.type));return await new Promise((s,i)=>{let o={resolve:s,reject:i};this.pendingRequests.push({request:r,deferred:o}),this.flushPendingRequests()})}flushPendingRequests(){this.pendingRequests=this.pendingRequests.filter(({request:e,deferred:r})=>{if(this.activeRequests.has(e.to))return!0;if(!this.connection)throw new Error(sc("firefox"));try{let s=`${Buffer.from(JSON.stringify(e)).length}:${JSON.stringify(e)}`;this.connection.write(s),this.expectReply(e.to,r)}catch(s){r.reject(s)}return!1})}expectReply(e,r){if(this.activeRequests.has(e))throw new Error(ic("firefox",e));this.activeRequests.set(e,r)}onData(e){for(this.incomingData=Buffer.concat([this.incomingData,e]);this.readMessage(););}readMessage(){let{remainingData:e,parsedMessage:r,error:s,fatal:i}=Sl("firefox",this.incomingData);return this.incomingData=e,s?(this.emit("error",new Error(oc("firefox",s))),i&&this.disconnect(),!i):r?(this.handleMessage(r),!0):!1}handleMessage(e){if(!e.from){this.emit("error",new Error(nc("firefox",e)));return}let r=this.activeRequests.get(e.from);r?(this.activeRequests.delete(e.from),e.error?r.reject(e):r.resolve(e),this.flushPendingRequests()):this.emit("error",new Error(ac("firefox",JSON.stringify(e))))}onError(e){this.emit("error",e)}onEnd(){this.emit("end")}onTimeout(){this.emit("timeout")}};function Kc(t){return t instanceof Error?String(t):`${t.error}: ${t.message}`}function Yc(t,e){return Array.isArray(t)&&t.includes(e.code)?!0:e.code===t}var Pl=150,kl=1e3,Or=class{options;constructor(e){this.options=e}async connectClient(e){let r;for(let s of Array.from({length:Pl}))try{let i=new Ir;return await i.connect(e),i}catch(i){if(Yc("ECONNREFUSED",i))await new Promise(o=>setTimeout(o,kl)),r=i;else throw console.error(Za(this.options.browser,i.stack)),i}throw console.error(Ka(this.options.browser)),r}async installAddons(e){let{devtools:r}=this.options,s=Array.isArray(this.options.extension)?this.options.extension:[this.options.extension],i=e.options.devServer?.port,o=i?i+100:9222,n=await this.connectClient(o);for(let[c,p]of s.entries()){let l=Qc.default.join(p.replace(/"/g,"")),u=c===0&&r;try{let d=await n.request({to:"root",type:"getRoot"});await n.request({to:d.addonsActor,type:"installTemporaryAddon",addonPath:l,openDevTools:u})}catch(d){let g=Kc(d);throw new Error(Ya(this.options.browser,g))}}}};var se=null;process.on("SIGINT",()=>{se&&se.kill("SIGINT"),process.exit()});process.on("SIGTERM",()=>{se&&se.kill("SIGTERM"),process.exit()});var Mr=class{extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;autoReload;stats;geckoBinary;constructor(e){this.extension=e.extension,this.browser=e.browser||"firefox",this.browserFlags=e.browserFlags||[],this.userDataDir=e.userDataDir,this.profile=e.profile,this.preferences=e.preferences,this.startingUrl=e.startingUrl,this.geckoBinary=e.geckoBinary}async getFxRunnerCommand(){let e=ae()?"pnpm dlx fx-runner":"npm exec fx-runner";try{return await new Promise((r,s)=>{(0,Is.exec)(`${e} --version`,i=>{i?s(i):r(null)})}),e}catch{console.error(Je("firefox",e)),process.exit(1)}}async launchFirefox(e,r){let s=await this.getFxRunnerCommand(),i;switch(r.browser){case"gecko-based":i=tp.default.normalize(this.geckoBinary);break;default:i=yc;break}let o=`${s} start --binary "${i}" --foreground --no-remote`;ep.default.existsSync(i||"")||(console.error(Je(this.browser,i||"")),process.exit(1));let n=await Gc(e,r),c=`${o} ${n}`;se=(0,Is.exec)(c,(l,u,d)=>{if(l!=null)throw l;d.includes("Unable to move the cache")?console.log(Ha(this.browser)):(console.log(Va(this.browser)),process.exit())}),process.env.EXTENSION_ENV==="development"&&(se.stdout?.pipe(process.stdout),se.stderr?.pipe(process.stderr));let p=new Or(this);try{await p.installAddons(e)}catch(l){l?.toString()?.includes("background.service_worker is currently disabled")&&(console.error(Ga(this.browser)),process.exit(1)),console.error(Xa(this.browser,l)),process.exit(1)}}apply(e){let r=!1;e.hooks.done.tapAsync("run-firefox:module",async(s,i)=>{if(s.compilation.errors.length>0){i();return}if(r){i();return}setTimeout(()=>{console.log(kr(this.browser,s.compilation.options.mode))},2e3),await this.launchFirefox(e,{browser:this.browser,browserFlags:this.browserFlags,userDataDir:this.userDataDir,profile:this.profile,preferences:this.preferences,startingUrl:this.startingUrl,mode:s.compilation.options.mode}),r=!0,i()})}};var Ar=class{static name="plugin-browsers";extension;browser;browserFlags;userDataDir;profile;preferences;startingUrl;chromiumBinary;geckoBinary;constructor(e){this.extension=[...e.extension,...e.browserFlags?.filter(r=>!r.startsWith("--load-extension="))||[]],this.browser=e.browser||"chrome",this.browserFlags=e.browserFlags?.filter(r=>!r.startsWith("--load-extension="))||[],this.userDataDir=e.userDataDir,this.profile=e.profile||"",this.preferences=e.preferences||{},this.startingUrl=e.startingUrl||"",this.chromiumBinary=e.chromiumBinary,this.geckoBinary=e.geckoBinary}getProfilePath(e,r,s){return s||(e.options.mode==="production"?Os.default.join(rp.default.tmpdir(),"extension-js",r,"profile"):Os.default.resolve(__dirname,`run-${r}-profile`))}apply(e){let s={...{stats:!0,extension:this.extension,browser:this.browser,browserFlags:this.browserFlags||[],userDataDir:this.getProfilePath(e,this.browser,this.userDataDir||this.profile),startingUrl:this.startingUrl,chromiumBinary:this.chromiumBinary,geckoBinary:this.geckoBinary},...Fr(e.context,this.browser)};switch(this.browser){case"chrome":case"edge":case"chromium-based":{new He(s).apply(e);break}case"firefox":case"gecko-based":new Mr(s).apply(e);break;default:{new He({...s,browser:"chrome"}).apply(e);break}}}};function z(t,e){let r=Ke.default.join(t,"manifest.json"),s=O(require(r),e.browser),i=Ke.default.join(t,`dist/${e.browser}`),o=e.chromiumBinary?"chromium-based":e.geckoBinary?"gecko-based":e.browser;return{mode:e.mode||"development",entry:{},target:"web",context:t,devtool:s.manifest_version===3?"cheap-source-map":"eval-cheap-source-map",output:{clean:{keep(n){return!n.startsWith("hot/background")}},path:i,publicPath:"/",hotUpdateChunkFilename:"hot/[id].[fullhash].hot-update.js",hotUpdateMainFilename:"hot/[runtime].[fullhash].hot-update.json",environment:{bigIntLiteral:!0,dynamicImport:!0}},resolve:{modules:["node_modules",Ke.default.join(t,"node_modules")],extensions:[".js",".mjs",".jsx",".ts",".mts",".tsx",".json",".wasm",".less",".css",".sass",".scss"]},watchOptions:{ignored:/node_modules|dist/},module:{rules:[]},plugins:[new nt({manifestPath:r,browser:o}),new mt({manifestPath:r}),new ut({manifestPath:r}),new ht({manifestPath:r}),process.env.EXPERIMENTAL_ERRORS_PLUGIN==="true"&&new Sr({manifestPath:r,browser:o}),new wr({manifestPath:r,browser:o,polyfill:e.polyfill}),new lr({manifestPath:r,browser:o}),new gr({manifestPath:r,browser:o,stats:!0,port:e.port||8e3}),!e.noOpen&&new Ar({extension:[i,Ke.default.join(__dirname,"extensions",`${o}-manager-extension`)],browser:o,startingUrl:e.startingUrl,profile:e.profile||e.userDataDir,preferences:e.preferences,browserFlags:e.browserFlags,chromiumBinary:e.chromiumBinary,geckoBinary:e.geckoBinary})].filter(Boolean),stats:{all:!1,errors:!0,warnings:!0},infrastructureLogging:{level:"none"},performance:{hints:!1,maxAssetSize:999e3,maxEntrypointSize:999e3},optimization:{minimize:e.mode==="production"},experiments:{asyncWebAssembly:!0}}}var Ye=a(require("path")),ap=a(require("go-git-it"));var Rr=a(require("path")),sp=a(require("axios")),ip=a(require("adm-zip"));var Ms=a(require("stream")),op=require("util"),El=(0,op.promisify)(Ms.default.pipeline);async function np(t,e){let r=t.split("?")[0];try{console.log(Oc(r));let s=await(0,sp.default)({url:t,method:"GET",responseType:"stream"}),i=Rr.default.extname(r),o=Rr.default.basename(r,i),n=Rr.default.join(e,o);console.log(Mc(n));let c=[];await El(s.data,new Ms.default.Writable({write(u,d,g){c.push(u),g()}}));let p=Buffer.concat(c);return new ip.default(p).extractAllTo(n,!0),console.log(Ac()),n}catch(s){throw console.error(Rc(s)),s}}var $l=t=>{try{return new URL(t),!0}catch{return!1}};async function Cl(t,e){return await(0,ap.default)(t,process.cwd(),e),Ye.default.resolve(process.cwd(),Ye.default.basename(t))}async function jl(t){return await np(t,process.cwd())}async function Y(t){if(!t)return process.cwd();if($l(t)){let e=new URL(t);if(e.protocol.startsWith("http")){if(e.origin!=="https://github.com")return await jl(t);let r=e.pathname.split("/"),s=r.slice(1,3)[0],i=r.slice(1,3)[1];console.log(_c(s,i));let o=Ye.default.basename(e.pathname),n=await Cl(t,Sc(o));return console.log(Pc(o)),n}}return Ye.default.resolve(process.cwd(),t)}var H=a(require("path")),cp=a(require("fs")),pp=a(require("ignore")),lp=a(require("tiny-glob")),As=a(require("adm-zip")),fp=a(require("slugify"));function Dl(t){try{return cp.default.readFileSync(t,"utf8")}catch{return""}}function Fl(t){return(0,fp.default)(t,{replacement:"-",remove:/[^a-zA-Z0-9 ]/g,lower:!0})}function Ll(t){switch(t){case"opera":return"crx";case"firefox":return"xpi";default:return"zip"}}function Il(t,e){let r=Fl(e.zipFilename||t.name);return e.zipFilename?r:`${r}-${t.version}`}async function Ol(t){let e=H.default.join(t,".gitignore"),r=Dl(e),s=(0,pp.default)();return r?s.add(r):console.log(kc(t)),(await(0,lp.default)("**/*",{cwd:t,dot:!0})).filter(o=>!s.ignores(o))}async function up(t,{browser:e="chrome",...r}){try{let s=H.default.join(t,"dist"),i=H.default.join(s,e),o=r.zipSource?t:i,n=require(H.default.join(o,"manifest.json")),c=Il(n,r),p=Ll(e),l=H.default.join(i,`${c}.${p}`),u=H.default.join(s,`${c}-source.${p}`);if(r.zipSource){console.log(""),console.log(Ec(u));let d=new As.default;(await Ol(t)).forEach(y=>{d.addLocalFile(H.default.join(t,y),H.default.dirname(y))}),d.writeZip(u)}if(r.zip){console.log(""),console.log($c(l));let d=new As.default;d.addLocalFolder(i),d.writeZip(l)}r.zip&&r.zipSource?(console.log(""),console.log(Cc(e,c,u,l))):r.zip?(console.log(""),console.log(jc(c,p,e,l))):r.zipSource&&(console.log(""),console.log(Dc(c,p,e,u)))}catch(s){throw console.error(Fc(s)),s}}async function hp(t,e){let r=await Y(t);!t?.startsWith("http")&&!mp.default.existsSync(Rs.default.join(r,"manifest.json"))&&(console.log(Z(Rs.default.join(r,"manifest.json"))),process.exit(1));try{let s=e?.browser||"chrome",i=z(r,{...e,browser:s,mode:"production"}),o=i.plugins?.filter(u=>u?.constructor.name!=="plugin-browsers"&&u?.constructor.name!=="plugin-reload"),c=K(r)({...i,plugins:o}),p=(0,gp.merge)(c),l=(0,dp.default)(p);await new Promise((u,d)=>{l.run(async(g,y)=>{if(g)return console.error(g.stack||g),d(g);console.log(xc(r,y,s)),(e?.zip||e?.zipSource)&&await up(r,{...e,browser:s}),y?.hasErrors()?(console.log(y.toString({colors:!0})),process.exit(1)):(console.log(vc()),u())})})}catch(s){process.env.EXTENSION_ENV==="development"&&console.error(s),process.exit(1)}}var Us=a(require("fs")),Nr=a(require("path"));var Ns=a(require("path")),yp=a(require("webpack")),bp=a(require("webpack-dev-server")),wp=require("webpack-merge");function Ts(t){t.stop().then(()=>{process.exit()}).catch(e=>{console.log(`Error in the Extension.js runner: ${e.stack||""}`)})}async function xp(t,{...e}){let r=zc(t,"dev"),s=z(t,{...e,...r,mode:"development"}),o=K(t)(s),n=(0,wp.merge)(o),c=(0,yp.default)(n),p={host:"127.0.0.1",allowedHosts:"all",static:Ns.default.join(t,"public"),compress:!1,devMiddleware:{writeToDisk:!0},watchFiles:ct(t)?void 0:{paths:[Ns.default.join(t,"**/*.html")],options:{usePolling:!0,interval:1e3}},client:{logging:process.env.EXTENSION_ENV==="development"?"error":"none",progress:!1,overlay:!1},headers:{"Access-Control-Allow-Origin":"*"},port:"auto",hot:"only"},l=new bp.default(p,c);l.startCallback(u=>{u!=null&&console.log(`Error in the Extension.js runner: ${u.stack||""}`)}),process.on("ERROR",()=>{Ts(l)}),process.on("SIGINT",()=>{Ts(l)}),process.on("SIGTERM",()=>{Ts(l)})}var Tr=a(require("path")),be=a(require("fs/promises"));async function vp(t){let e=Tr.default.join(t,"extension-env.d.ts"),r=process.env.EXTENSION_ENV==="development"?Tr.default.resolve(process.cwd(),"programs/cli/types"):"extension/dist/types",s=`// Required Extension.js types for TypeScript projects.
162
162
  // This file is auto-generated and should not be excluded.
163
163
  // If you need additional types, consider creating a new *.d.ts file and
164
164
  // referencing it in the "include" array of your tsconfig.json file.
165
165
  // See https://www.typescriptlang.org/tsconfig#include for more information.
166
- /// <reference types="${s}/index.d.ts" />
166
+ /// <reference types="${r}/index.d.ts" />
167
167
 
168
168
  // Polyfill types for browser.* APIs.
169
- /// <reference types="${s}/polyfill.d.ts" />
170
- `;try{await _e.default.access(e),(await _e.default.readFile(e,"utf8")).includes("develop/dist/types")&&await _e.default.writeFile(e,r),process.env.EXTENSION_ENV==="development"&&await _e.default.writeFile(e,r)}catch{let i=require(Js.default.join(t,"manifest.json"));console.log(Ic(i));try{await _e.default.writeFile(e,r)}catch(o){console.log(Oc(o))}}}var Sp=a(require("path")),Pp=require("cross-spawn"),kp=a(require("fs")),Ep=require("package-manager-detector");async function Al(){let t=await(0,Ep.detect)(),e="npm";if(ae())return"pnpm";switch(t?.name){case"yarn":e="yarn";break;case"pnpm":e="pnpm";break;default:e="npm"}return e}function Rl(){return["install"]}async function jp(t){let e=Sp.default.join(t,"node_modules"),s=await Al(),r=Rl(),n=process.cwd();try{process.chdir(t),await kp.default.promises.mkdir(e,{recursive:!0});let i=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",o=(0,Pp.spawn)(s,r,{stdio:i});await new Promise((c,p)=>{o.on("close",l=>{l!==0?p(new Error(Bc(s,r,l))):c()}),o.on("error",l=>{p(l)})})}catch(i){console.error(Jc(i)),process.exit(1)}finally{process.chdir(n)}}async function $p(t,e){let s=await Y(t),r=zs.default.join(s,"manifest.json");!t?.startsWith("http")&&!zr.default.existsSync(r)&&(console.log(X(zs.default.join(s,"manifest.json"))),process.exit(1));try{H(s)&&await _p(s);let n=zs.default.join(s,"node_modules");if(!zr.default.existsSync(n)){let i=require(r).name;console.log(Wc(i)),await jp(s)}setTimeout(async()=>{await vp(s,{...e,mode:"development",browser:e.browser||"chrome"})},50)}catch(n){process.env.EXTENSION_ENV==="development"&&console.error(n),process.exit(1)}}var Cp=a(require("fs")),Hr=a(require("path")),Fp=a(require("webpack")),Dp=require("webpack-merge");async function Lp(t,e){let s=await Y(t);!t?.startsWith("http")&&!Cp.default.existsSync(Hr.default.join(s,"manifest.json"))&&(console.log(X(Hr.default.join(s,"manifest.json"))),process.exit(1));try{let r=e.browser||"chrome",n=J(s,{...e,browser:r,mode:"production"}),i=n.plugins?.filter(u=>u?.constructor.name==="plugin-browsers");console.log(Ms(r));let c=Z(s)({...n,plugins:i}),p=(0,Dp.merge)(c);(0,Fp.default)(p).run(async(u,d)=>{u&&(console.error(u.stack||u),process.exit(1)),d?.hasErrors()?(console.log(d.toString({colors:!0})),process.exit(1)):console.log(As(s,{browser:r,mode:"production"}))})}catch(r){process.env.EXTENSION_ENV==="development"&&console.error(r),process.exit(1)}}var Ip=a(require("fs")),Vr=a(require("path")),Op=a(require("webpack")),Mp=require("webpack-merge");async function Ap(t,e){let s=await Y(t);!t?.startsWith("http")&&!Ip.default.existsSync(Vr.default.join(s,"manifest.json"))&&(console.log(X(Vr.default.join(s,"manifest.json"))),process.exit(1));try{let r=e.browser||"chrome",n=J(s,{...e,browser:r,mode:"production"}),i=n.plugins?.filter(u=>u?.constructor.name!=="plugin-reload");console.log(Ms(r));let c=Z(s)({...n,plugins:i}),p=(0,Mp.merge)(c);(0,Op.default)(p).run((u,d)=>{u&&(console.error(u.stack||u),process.exit(1)),d?.hasErrors()?(console.log(d.toString({colors:!0})),process.exit(1)):(console.log(As(s,e)),setTimeout(()=>{console.log(xc("production",r))},1500))})}catch(r){process.env.EXTENSION_ENV==="development"&&console.error(r),process.exit(1)}}0&&(module.exports={extensionBuild,extensionDev,extensionPreview,extensionStart});
169
+ /// <reference types="${r}/polyfill.d.ts" />
170
+ `;try{await be.default.access(e),(await be.default.readFile(e,"utf8")).includes("develop/dist/types")&&await be.default.writeFile(e,s),process.env.EXTENSION_ENV==="development"&&await be.default.writeFile(e,s)}catch{let o=require(Tr.default.join(t,"manifest.json"));console.log(Lc(o));try{await be.default.writeFile(e,s)}catch(n){console.log(Ic(n))}}}var _p=a(require("path")),Sp=require("cross-spawn"),Pp=a(require("fs")),kp=require("package-manager-detector");async function Ml(){let t=await(0,kp.detect)(),e="npm";if(ae())return"pnpm";switch(t?.name){case"yarn":e="yarn";break;case"pnpm":e="pnpm";break;default:e="npm"}return e}function Al(){return["install"]}async function Ep(t){let e=_p.default.join(t,"node_modules"),r=await Ml(),s=Al(),i=process.cwd();try{process.chdir(t),await Pp.default.promises.mkdir(e,{recursive:!0});let o=process.env.EXTENSION_ENV==="development"?"inherit":"ignore",n=(0,Sp.spawn)(r,s,{stdio:o});await new Promise((c,p)=>{n.on("close",l=>{l!==0?p(new Error(Wc(r,s,l))):c()}),n.on("error",l=>{p(l)})})}catch(o){console.error(Bc(o)),process.exit(1)}finally{process.chdir(i)}}async function $p(t,e){let r=await Y(t),s=Nr.default.join(r,"manifest.json");!t?.startsWith("http")&&!Us.default.existsSync(s)&&(console.log(Z(Nr.default.join(r,"manifest.json"))),process.exit(1));try{V(r)&&await vp(r);let i=Nr.default.join(r,"node_modules");Us.default.existsSync(i)||(console.log(qc()),await Ep(r)),setTimeout(async()=>{await xp(r,{...e,mode:"development",browser:e.browser||"chrome"})},50)}catch(i){process.env.EXTENSION_ENV==="development"&&console.error(i),process.exit(1)}}var Cp=a(require("fs")),qs=a(require("path")),jp=a(require("webpack")),Dp=require("webpack-merge");async function Fp(t,e){let r=await Y(t);!t?.startsWith("http")&&!Cp.default.existsSync(qs.default.join(r,"manifest.json"))&&(console.log(Z(qs.default.join(r,"manifest.json"))),process.exit(1));try{let s=e.browser||"chrome",i=z(r,{...e,browser:s,mode:"production"}),o=i.plugins?.filter(u=>u?.constructor.name==="plugin-browsers");console.log(jr(s));let c=K(r)({...i,plugins:o}),p=(0,Dp.merge)(c);(0,jp.default)(p).run(async(u,d)=>{u&&(console.error(u.stack||u),process.exit(1)),d?.hasErrors()?(console.log(d.toString({colors:!0})),process.exit(1)):console.log(Dr(r,{browser:s,mode:"production"}))})}catch(s){process.env.EXTENSION_ENV==="development"&&console.error(s),process.exit(1)}}var Lp=a(require("fs")),Ws=a(require("path")),Ip=a(require("webpack")),Op=require("webpack-merge");async function Mp(t,e){let r=await Y(t);!t?.startsWith("http")&&!Lp.default.existsSync(Ws.default.join(r,"manifest.json"))&&(console.log(Z(Ws.default.join(r,"manifest.json"))),process.exit(1));try{let s=e.browser||"chrome",i=z(r,{...e,browser:s,mode:"production"}),o=i.plugins?.filter(u=>u?.constructor.name!=="plugin-reload");console.log(jr(s));let c=K(r)({...i,plugins:o}),p=(0,Op.merge)(c);(0,Ip.default)(p).run((u,d)=>{u&&(console.error(u.stack||u),process.exit(1)),d?.hasErrors()?(console.log(d.toString({colors:!0})),process.exit(1)):(console.log(Dr(r,e)),setTimeout(()=>{console.log(wc("production",s))},1500))})}catch(s){process.env.EXTENSION_ENV==="development"&&console.error(s),process.exit(1)}}0&&(module.exports={extensionBuild,extensionDev,extensionPreview,extensionStart});