adnbn 0.5.7 → 0.6.0

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 (497) hide show
  1. package/dist/cli/builders/app/command.d.ts +3 -6
  2. package/dist/cli/builders/app/index.d.ts +2 -14
  3. package/dist/cli/builders/locale/FirefoxLocaleValidator.d.ts +4 -7
  4. package/dist/cli/builders/locale/LocaleBuilder.d.ts +3 -6
  5. package/dist/cli/builders/locale/LocaleBuilder.js +3 -1
  6. package/dist/cli/builders/locale/LocaleBuilder.js.map +1 -1
  7. package/dist/cli/builders/locale/LocaleStructureValidator.d.ts +8 -0
  8. package/dist/cli/builders/locale/LocaleStructureValidator.js +64 -0
  9. package/dist/cli/builders/locale/LocaleStructureValidator.js.map +1 -0
  10. package/dist/cli/builders/locale/LocaleValidator.d.ts +4 -7
  11. package/dist/cli/builders/locale/LocaleValidator.js +2 -0
  12. package/dist/cli/builders/locale/LocaleValidator.js.map +1 -1
  13. package/dist/cli/builders/locale/OperaLocaleValidator.d.ts +4 -7
  14. package/dist/cli/builders/locale/index.d.ts +10 -19
  15. package/dist/cli/builders/locale/index.js +2 -0
  16. package/dist/cli/builders/locale/index.js.map +1 -1
  17. package/dist/cli/builders/manifest/ManifestBase.d.ts +30 -18
  18. package/dist/cli/builders/manifest/ManifestBase.js +212 -70
  19. package/dist/cli/builders/manifest/ManifestBase.js.map +1 -1
  20. package/dist/cli/builders/manifest/ManifestV2.d.ts +5 -12
  21. package/dist/cli/builders/manifest/ManifestV2.js +8 -7
  22. package/dist/cli/builders/manifest/ManifestV2.js.map +1 -1
  23. package/dist/cli/builders/manifest/ManifestV3.d.ts +5 -12
  24. package/dist/cli/builders/manifest/ManifestV3.js +9 -6
  25. package/dist/cli/builders/manifest/ManifestV3.js.map +1 -1
  26. package/dist/cli/builders/manifest/index.d.ts +3 -14
  27. package/dist/cli/builders/manifest/utils.d.ts +10 -15
  28. package/dist/cli/builders/manifest/utils.js +14 -2
  29. package/dist/cli/builders/manifest/utils.js.map +1 -1
  30. package/dist/cli/bundler/index.d.ts +2 -16
  31. package/dist/cli/bundler/plugins/EntrypointPlugin.d.ts +10 -19
  32. package/dist/cli/bundler/plugins/EntrypointPlugin.js +1 -0
  33. package/dist/cli/bundler/plugins/EntrypointPlugin.js.map +1 -1
  34. package/dist/cli/bundler/plugins/GenerateJsonPlugin.d.ts +5 -7
  35. package/dist/cli/bundler/plugins/GenerateJsonPlugin.js +1 -0
  36. package/dist/cli/bundler/plugins/GenerateJsonPlugin.js.map +1 -1
  37. package/dist/cli/bundler/plugins/ManifestPlugin.d.ts +3 -11
  38. package/dist/cli/bundler/plugins/ManifestPlugin.js +1 -0
  39. package/dist/cli/bundler/plugins/ManifestPlugin.js.map +1 -1
  40. package/dist/cli/bundler/plugins/ReplacePlugin.d.ts +3 -5
  41. package/dist/cli/bundler/plugins/ReplacePlugin.js +1 -0
  42. package/dist/cli/bundler/plugins/ReplacePlugin.js.map +1 -1
  43. package/dist/cli/bundler/plugins/WatchPlugin.d.ts +3 -6
  44. package/dist/cli/bundler/plugins/WatchPlugin.js +1 -0
  45. package/dist/cli/bundler/plugins/WatchPlugin.js.map +1 -1
  46. package/dist/cli/bundler/plugins/index.d.ts +5 -14
  47. package/dist/cli/bundler/utils/index.d.ts +2 -3
  48. package/dist/cli/bundler/utils/optimization.d.ts +2 -5
  49. package/dist/cli/bundler/utils/output.d.ts +2 -5
  50. package/dist/cli/entrypoint/file/ExpressionFile.d.ts +4 -10
  51. package/dist/cli/entrypoint/file/OptionFile.d.ts +3 -9
  52. package/dist/cli/entrypoint/file/SourceFile.d.ts +7 -11
  53. package/dist/cli/entrypoint/file/SourceFile.js +1 -0
  54. package/dist/cli/entrypoint/file/SourceFile.js.map +1 -1
  55. package/dist/cli/entrypoint/file/index.d.ts +4 -8
  56. package/dist/cli/entrypoint/file/injectors/core.d.ts +2 -4
  57. package/dist/cli/entrypoint/file/injectors/index.d.ts +2 -4
  58. package/dist/cli/entrypoint/file/parsers/AbstractParser.d.ts +6 -12
  59. package/dist/cli/entrypoint/file/parsers/AbstractParser.js +1 -0
  60. package/dist/cli/entrypoint/file/parsers/AbstractParser.js.map +1 -1
  61. package/dist/cli/entrypoint/file/parsers/ClassParser.d.ts +9 -15
  62. package/dist/cli/entrypoint/file/parsers/ClassParser.js +3 -0
  63. package/dist/cli/entrypoint/file/parsers/ClassParser.js.map +1 -1
  64. package/dist/cli/entrypoint/file/parsers/FunctionParser.d.ts +9 -17
  65. package/dist/cli/entrypoint/file/parsers/FunctionParser.js +3 -0
  66. package/dist/cli/entrypoint/file/parsers/FunctionParser.js.map +1 -1
  67. package/dist/cli/entrypoint/file/parsers/JSDocParser.d.ts +2 -5
  68. package/dist/cli/entrypoint/file/parsers/NodeFinder.d.ts +4 -10
  69. package/dist/cli/entrypoint/file/parsers/NodeFinder.js +1 -0
  70. package/dist/cli/entrypoint/file/parsers/NodeFinder.js.map +1 -1
  71. package/dist/cli/entrypoint/file/parsers/ObjectParser.d.ts +7 -15
  72. package/dist/cli/entrypoint/file/parsers/ObjectParser.js +1 -0
  73. package/dist/cli/entrypoint/file/parsers/ObjectParser.js.map +1 -1
  74. package/dist/cli/entrypoint/file/parsers/SignatureBuilder.d.ts +4 -12
  75. package/dist/cli/entrypoint/file/parsers/SignatureBuilder.js +5 -4
  76. package/dist/cli/entrypoint/file/parsers/SignatureBuilder.js.map +1 -1
  77. package/dist/cli/entrypoint/file/parsers/TypeResolver.d.ts +5 -11
  78. package/dist/cli/entrypoint/file/parsers/TypeResolver.js +2 -0
  79. package/dist/cli/entrypoint/file/parsers/TypeResolver.js.map +1 -1
  80. package/dist/cli/entrypoint/file/parsers/helpers/memberFilters.d.ts +1 -3
  81. package/dist/cli/entrypoint/file/parsers/index.d.ts +7 -14
  82. package/dist/cli/entrypoint/file/parsers/types.d.ts +4 -6
  83. package/dist/cli/entrypoint/file/resolvers/ImportResolver.d.ts +2 -6
  84. package/dist/cli/entrypoint/file/resolvers/ImportResolver.js +1 -0
  85. package/dist/cli/entrypoint/file/resolvers/ImportResolver.js.map +1 -1
  86. package/dist/cli/entrypoint/file/resolvers/TsResolver.d.ts +2 -5
  87. package/dist/cli/entrypoint/file/resolvers/index.d.ts +2 -3
  88. package/dist/cli/entrypoint/file/types.d.ts +5 -7
  89. package/dist/cli/entrypoint/finder/AbstractAssetFinder.d.ts +3 -16
  90. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.d.ts +4 -17
  91. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js +22 -17
  92. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js.map +1 -1
  93. package/dist/cli/entrypoint/finder/AbstractFinder.d.ts +4 -15
  94. package/dist/cli/entrypoint/finder/AbstractFinder.js +7 -2
  95. package/dist/cli/entrypoint/finder/AbstractFinder.js.map +1 -1
  96. package/dist/cli/entrypoint/finder/AbstractOptionsFinder.d.ts +3 -16
  97. package/dist/cli/entrypoint/finder/AbstractPluginFinder.d.ts +3 -18
  98. package/dist/cli/entrypoint/finder/AbstractTransportFinder.d.ts +9 -26
  99. package/dist/cli/entrypoint/finder/AbstractViewFinder.d.ts +9 -24
  100. package/dist/cli/entrypoint/finder/AssetPluginFinder.d.ts +8 -19
  101. package/dist/cli/entrypoint/finder/AssetPluginFinder.js +2 -0
  102. package/dist/cli/entrypoint/finder/AssetPluginFinder.js.map +1 -1
  103. package/dist/cli/entrypoint/finder/BackgroundFinder.d.ts +5 -19
  104. package/dist/cli/entrypoint/finder/CommandFinder.d.ts +7 -22
  105. package/dist/cli/entrypoint/finder/ContentFinder.d.ts +5 -19
  106. package/dist/cli/entrypoint/finder/IconFinder.d.ts +12 -25
  107. package/dist/cli/entrypoint/finder/LocaleFinder.d.ts +14 -22
  108. package/dist/cli/entrypoint/finder/LocaleFinder.js +23 -9
  109. package/dist/cli/entrypoint/finder/LocaleFinder.js.map +1 -1
  110. package/dist/cli/entrypoint/finder/OffscreenFinder.d.ts +5 -26
  111. package/dist/cli/entrypoint/finder/OffscreenViewFinder.d.ts +8 -29
  112. package/dist/cli/entrypoint/finder/OffscreenViewFinder.js +1 -0
  113. package/dist/cli/entrypoint/finder/OffscreenViewFinder.js.map +1 -1
  114. package/dist/cli/entrypoint/finder/PageFinder.d.ts +5 -22
  115. package/dist/cli/entrypoint/finder/PluginFinder.d.ts +7 -19
  116. package/dist/cli/entrypoint/finder/PluginFinder.js +2 -0
  117. package/dist/cli/entrypoint/finder/PluginFinder.js.map +1 -1
  118. package/dist/cli/entrypoint/finder/PopupFinder.d.ts +5 -22
  119. package/dist/cli/entrypoint/finder/RelayFinder.d.ts +5 -25
  120. package/dist/cli/entrypoint/finder/ServiceFinder.d.ts +5 -25
  121. package/dist/cli/entrypoint/finder/SidebarFinder.d.ts +5 -22
  122. package/dist/cli/entrypoint/finder/index.d.ts +18 -43
  123. package/dist/cli/entrypoint/index.d.ts +4 -64
  124. package/dist/cli/entrypoint/name/InlineNameGenerator.d.ts +2 -12
  125. package/dist/cli/entrypoint/name/NameGenerator.d.ts +2 -11
  126. package/dist/cli/entrypoint/name/NameGenerator.js +1 -0
  127. package/dist/cli/entrypoint/name/NameGenerator.js.map +1 -1
  128. package/dist/cli/entrypoint/name/index.d.ts +2 -9
  129. package/dist/cli/entrypoint/parser/AbstractParser.d.ts +14 -29
  130. package/dist/cli/entrypoint/parser/AbstractParser.js +1 -0
  131. package/dist/cli/entrypoint/parser/AbstractParser.js.map +1 -1
  132. package/dist/cli/entrypoint/parser/BackgroundParser.d.ts +3 -23
  133. package/dist/cli/entrypoint/parser/CommandParser.d.ts +4 -24
  134. package/dist/cli/entrypoint/parser/CommandParser.js +20 -5
  135. package/dist/cli/entrypoint/parser/CommandParser.js.map +1 -1
  136. package/dist/cli/entrypoint/parser/ContentParser.d.ts +4 -23
  137. package/dist/cli/entrypoint/parser/OffscreenParser.d.ts +3 -28
  138. package/dist/cli/entrypoint/parser/PageParser.d.ts +3 -26
  139. package/dist/cli/entrypoint/parser/PopupParser.d.ts +3 -26
  140. package/dist/cli/entrypoint/parser/RelayParser.d.ts +4 -27
  141. package/dist/cli/entrypoint/parser/ServiceParser.d.ts +3 -27
  142. package/dist/cli/entrypoint/parser/SidebarParser.d.ts +3 -26
  143. package/dist/cli/entrypoint/parser/ViewParser.d.ts +60 -80
  144. package/dist/cli/entrypoint/parser/index.d.ts +9 -38
  145. package/dist/cli/entrypoint/utils/framework.d.ts +3 -12
  146. package/dist/cli/entrypoint/utils/index.d.ts +2 -10
  147. package/dist/cli/entrypoint/utils/resolve.d.ts +3 -5
  148. package/dist/cli/index.d.ts +1 -2
  149. package/dist/cli/plugins/asset.d.ts +2 -15
  150. package/dist/cli/plugins/background/Background.d.ts +4 -21
  151. package/dist/cli/plugins/background/BackgroundEntry.d.ts +7 -21
  152. package/dist/cli/plugins/background/BackgroundEntry.js +1 -0
  153. package/dist/cli/plugins/background/BackgroundEntry.js.map +1 -1
  154. package/dist/cli/plugins/background/BackgroundManifest.d.ts +5 -21
  155. package/dist/cli/plugins/background/Command.d.ts +6 -23
  156. package/dist/cli/plugins/background/Service.d.ts +5 -27
  157. package/dist/cli/plugins/background/ServiceDeclaration.d.ts +3 -17
  158. package/dist/cli/plugins/background/index.d.ts +2 -15
  159. package/dist/cli/plugins/bundler.d.ts +2 -15
  160. package/dist/cli/plugins/content/Content.d.ts +9 -24
  161. package/dist/cli/plugins/content/ContentDriver.d.ts +7 -22
  162. package/dist/cli/plugins/content/ContentDriver.js +1 -0
  163. package/dist/cli/plugins/content/ContentDriver.js.map +1 -1
  164. package/dist/cli/plugins/content/ContentManager.d.ts +8 -19
  165. package/dist/cli/plugins/content/ContentName.d.ts +5 -17
  166. package/dist/cli/plugins/content/ContentName.js +1 -0
  167. package/dist/cli/plugins/content/ContentName.js.map +1 -1
  168. package/dist/cli/plugins/content/Relay.d.ts +9 -30
  169. package/dist/cli/plugins/content/RelayDeclaration.d.ts +3 -17
  170. package/dist/cli/plugins/content/index.d.ts +2 -15
  171. package/dist/cli/plugins/content/types.d.ts +8 -16
  172. package/dist/cli/plugins/content/utils.d.ts +2 -11
  173. package/dist/cli/plugins/dotenv/index.d.ts +3 -16
  174. package/dist/cli/plugins/dotenv/utils.d.ts +4 -7
  175. package/dist/cli/plugins/html.d.ts +2 -15
  176. package/dist/cli/plugins/icon/Icon.d.ts +6 -22
  177. package/dist/cli/plugins/icon/declaration/IconDeclaration.d.ts +3 -16
  178. package/dist/cli/plugins/icon/declaration/index.d.ts +1 -13
  179. package/dist/cli/plugins/icon/index.d.ts +4 -21
  180. package/dist/cli/plugins/index.d.ts +22 -58
  181. package/dist/cli/plugins/index.js +32 -30
  182. package/dist/cli/plugins/index.js.map +1 -1
  183. package/dist/cli/plugins/locale/Locale.d.ts +3 -20
  184. package/dist/cli/plugins/locale/declaration/LocaleDeclaration.d.ts +4 -16
  185. package/dist/cli/plugins/locale/declaration/index.d.ts +1 -13
  186. package/dist/cli/plugins/locale/declaration/locale.d.ts +61 -11
  187. package/dist/cli/plugins/locale/index.d.ts +2 -15
  188. package/dist/cli/plugins/locale/index.js +44 -49
  189. package/dist/cli/plugins/locale/index.js.map +1 -1
  190. package/dist/cli/plugins/manifest.d.ts +2 -0
  191. package/dist/cli/plugins/manifest.js +27 -0
  192. package/dist/cli/plugins/manifest.js.map +1 -0
  193. package/dist/cli/plugins/meta/AbstractMeta.d.ts +2 -15
  194. package/dist/cli/plugins/meta/AbstractMeta.js +1 -0
  195. package/dist/cli/plugins/meta/AbstractMeta.js.map +1 -1
  196. package/dist/cli/plugins/meta/Author.d.ts +3 -16
  197. package/dist/cli/plugins/meta/Homepage.d.ts +3 -16
  198. package/dist/cli/plugins/meta/Incognito.d.ts +4 -16
  199. package/dist/cli/plugins/meta/SpecificSettings.d.ts +4 -16
  200. package/dist/cli/plugins/meta/index.d.ts +7 -20
  201. package/dist/cli/plugins/offscreen/Offscreen.d.ts +11 -35
  202. package/dist/cli/plugins/offscreen/OffscreenDeclaration.d.ts +3 -17
  203. package/dist/cli/plugins/offscreen/index.d.ts +2 -15
  204. package/dist/cli/plugins/optimization.d.ts +2 -15
  205. package/dist/cli/plugins/output.d.ts +2 -15
  206. package/dist/cli/plugins/page/Page.d.ts +8 -26
  207. package/dist/cli/plugins/page/declaration/PageDeclaration.d.ts +3 -16
  208. package/dist/cli/plugins/page/declaration/index.d.ts +1 -13
  209. package/dist/cli/plugins/page/index.d.ts +2 -15
  210. package/dist/cli/plugins/popup/Popup.d.ts +9 -27
  211. package/dist/cli/plugins/popup/declaration/PopupDeclaration.d.ts +3 -16
  212. package/dist/cli/plugins/popup/declaration/index.d.ts +1 -13
  213. package/dist/cli/plugins/popup/index.d.ts +2 -15
  214. package/dist/cli/plugins/public.d.ts +2 -15
  215. package/dist/cli/plugins/react.d.ts +2 -15
  216. package/dist/cli/plugins/sidebar/Sidebar.d.ts +9 -27
  217. package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.d.ts +3 -16
  218. package/dist/cli/plugins/sidebar/declaration/index.d.ts +1 -13
  219. package/dist/cli/plugins/sidebar/index.d.ts +2 -15
  220. package/dist/cli/plugins/style.d.ts +2 -15
  221. package/dist/cli/plugins/typescript/FileBuilder.d.ts +2 -15
  222. package/dist/cli/plugins/typescript/FileBuilder.js +1 -0
  223. package/dist/cli/plugins/typescript/FileBuilder.js.map +1 -1
  224. package/dist/cli/plugins/typescript/TypescriptConfig.d.ts +4 -17
  225. package/dist/cli/plugins/typescript/declaration/index.d.ts +2 -14
  226. package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.d.ts +4 -17
  227. package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.js +1 -0
  228. package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.js.map +1 -1
  229. package/dist/cli/plugins/typescript/declaration/transport/index.d.ts +1 -13
  230. package/dist/cli/plugins/typescript/declaration/vendor/VendorDeclaration.d.ts +3 -16
  231. package/dist/cli/plugins/typescript/declaration/vendor/index.d.ts +1 -13
  232. package/dist/cli/plugins/typescript/index.d.ts +6 -20
  233. package/dist/cli/plugins/version/AbstractVersion.d.ts +2 -15
  234. package/dist/cli/plugins/version/AbstractVersion.js +2 -1
  235. package/dist/cli/plugins/version/AbstractVersion.js.map +1 -1
  236. package/dist/cli/plugins/version/AddonVersion.d.ts +3 -16
  237. package/dist/cli/plugins/version/BrowserMinimumVersion.d.ts +3 -16
  238. package/dist/cli/plugins/version/index.d.ts +5 -18
  239. package/dist/cli/plugins/view/View.d.ts +10 -24
  240. package/dist/cli/plugins/view/View.js +2 -0
  241. package/dist/cli/plugins/view/View.js.map +1 -1
  242. package/dist/cli/plugins/view/index.d.ts +3 -22
  243. package/dist/cli/resolvers/bundler.d.ts +4 -15
  244. package/dist/cli/resolvers/config.d.ts +2 -14
  245. package/dist/cli/resolvers/config.js +45 -6
  246. package/dist/cli/resolvers/config.js.map +1 -1
  247. package/dist/cli/resolvers/path.d.ts +11 -24
  248. package/dist/cli/resolvers/plugin.d.ts +3 -16
  249. package/dist/cli/utils/fs.d.ts +3 -5
  250. package/dist/cli/utils/path.d.ts +3 -5
  251. package/dist/cli/utils/string.d.ts +2 -4
  252. package/dist/cli/virtual/background.d.ts +1 -0
  253. package/dist/cli/virtual/command.d.ts +1 -0
  254. package/dist/cli/virtual/content.d.ts +1 -0
  255. package/dist/cli/virtual/index.d.ts +9 -0
  256. package/dist/cli/virtual/index.js +2 -2
  257. package/dist/cli/virtual/offscreen.background.d.ts +1 -0
  258. package/dist/cli/virtual/offscreen.d.ts +1 -0
  259. package/dist/cli/virtual/relay.d.ts +1 -0
  260. package/dist/cli/virtual/transport.d.ts +1 -0
  261. package/dist/cli/virtual/view.d.ts +1 -0
  262. package/dist/cli/virtual/virtual.d.ts +38 -38
  263. package/dist/entry/background/Builder.d.ts +3 -12
  264. package/dist/entry/background/Builder.js +1 -0
  265. package/dist/entry/background/Builder.js.map +1 -1
  266. package/dist/entry/background/index.d.ts +3 -12
  267. package/dist/entry/background/resolvers/definition.d.ts +3 -12
  268. package/dist/entry/background/resolvers/index.d.ts +1 -8
  269. package/dist/entry/command/Builder.d.ts +4 -12
  270. package/dist/entry/command/index.d.ts +3 -12
  271. package/dist/entry/command/resolvers/definition.d.ts +4 -13
  272. package/dist/entry/command/resolvers/index.d.ts +1 -8
  273. package/dist/entry/content/adapters/react/Builder.d.ts +3 -17
  274. package/dist/entry/content/adapters/react/Node.d.ts +6 -14
  275. package/dist/entry/content/adapters/react/Node.js +2 -0
  276. package/dist/entry/content/adapters/react/Node.js.map +1 -1
  277. package/dist/entry/content/adapters/react/index.d.ts +4 -18
  278. package/dist/entry/content/adapters/react/resolvers/index.d.ts +1 -8
  279. package/dist/entry/content/adapters/react/resolvers/render.d.ts +2 -11
  280. package/dist/entry/content/adapters/vanilla/Builder.d.ts +3 -17
  281. package/dist/entry/content/adapters/vanilla/Node.d.ts +2 -11
  282. package/dist/entry/content/adapters/vanilla/Node.js +2 -0
  283. package/dist/entry/content/adapters/vanilla/Node.js.map +1 -1
  284. package/dist/entry/content/adapters/vanilla/index.d.ts +4 -18
  285. package/dist/entry/content/core/AbstractMarker.d.ts +2 -11
  286. package/dist/entry/content/core/AbstractMarker.js +1 -0
  287. package/dist/entry/content/core/AbstractMarker.js.map +1 -1
  288. package/dist/entry/content/core/AttributeMarker.d.ts +3 -12
  289. package/dist/entry/content/core/Builder.d.ts +8 -17
  290. package/dist/entry/content/core/Context.d.ts +2 -11
  291. package/dist/entry/content/core/Context.js +1 -0
  292. package/dist/entry/content/core/Context.js.map +1 -1
  293. package/dist/entry/content/core/EventEmitter.d.ts +2 -11
  294. package/dist/entry/content/core/EventNode.d.ts +2 -11
  295. package/dist/entry/content/core/EventNode.js +2 -0
  296. package/dist/entry/content/core/EventNode.js.map +1 -1
  297. package/dist/entry/content/core/ManagedContext.d.ts +3 -12
  298. package/dist/entry/content/core/MarkerNode.d.ts +2 -11
  299. package/dist/entry/content/core/MarkerNode.js +2 -0
  300. package/dist/entry/content/core/MarkerNode.js.map +1 -1
  301. package/dist/entry/content/core/MountBuilder.d.ts +3 -16
  302. package/dist/entry/content/core/MountNode.d.ts +2 -11
  303. package/dist/entry/content/core/MountNode.js +2 -0
  304. package/dist/entry/content/core/MountNode.js.map +1 -1
  305. package/dist/entry/content/core/Node.d.ts +2 -11
  306. package/dist/entry/content/core/Node.js +2 -0
  307. package/dist/entry/content/core/Node.js.map +1 -1
  308. package/dist/entry/content/core/WeakMarker.d.ts +3 -12
  309. package/dist/entry/content/core/resolvers/anchor.d.ts +2 -11
  310. package/dist/entry/content/core/resolvers/container.d.ts +2 -11
  311. package/dist/entry/content/core/resolvers/definition.d.ts +3 -12
  312. package/dist/entry/content/core/resolvers/index.d.ts +6 -13
  313. package/dist/entry/content/core/resolvers/mount.d.ts +2 -11
  314. package/dist/entry/content/core/resolvers/render.d.ts +3 -12
  315. package/dist/entry/content/core/resolvers/watch.d.ts +4 -13
  316. package/dist/entry/content/index.d.ts +1 -8
  317. package/dist/entry/core/Builder.d.ts +2 -11
  318. package/dist/entry/offscreen/Builder.d.ts +8 -25
  319. package/dist/entry/offscreen/Builder.js +8 -1
  320. package/dist/entry/offscreen/Builder.js.map +1 -1
  321. package/dist/entry/offscreen/TransportBuilder.d.ts +6 -24
  322. package/dist/entry/offscreen/index.d.ts +4 -25
  323. package/dist/entry/relay/Builder.d.ts +7 -21
  324. package/dist/entry/relay/Builder.js +1 -0
  325. package/dist/entry/relay/Builder.js.map +1 -1
  326. package/dist/entry/relay/TransportBuilder.d.ts +6 -20
  327. package/dist/entry/relay/index.d.ts +4 -21
  328. package/dist/entry/service/Builder.d.ts +6 -20
  329. package/dist/entry/service/index.d.ts +2 -14
  330. package/dist/entry/transport/AbstractBuilder.d.ts +4 -14
  331. package/dist/entry/transport/index.d.ts +1 -14
  332. package/dist/entry/transport/resolvers/definition.d.ts +7 -20
  333. package/dist/entry/transport/resolvers/index.d.ts +1 -14
  334. package/dist/entry/view/adapters/react/Builder.d.ts +4 -16
  335. package/dist/entry/view/adapters/react/index.d.ts +4 -17
  336. package/dist/entry/view/adapters/react/resolvers/render.d.ts +2 -13
  337. package/dist/entry/view/adapters/vanilla/Builder.d.ts +3 -15
  338. package/dist/entry/view/adapters/vanilla/index.d.ts +4 -16
  339. package/dist/entry/view/core/Builder.d.ts +3 -14
  340. package/dist/entry/view/core/resolvers/container.d.ts +2 -13
  341. package/dist/entry/view/core/resolvers/definition.d.ts +3 -14
  342. package/dist/entry/view/core/resolvers/render.d.ts +3 -14
  343. package/dist/entry/view/index.d.ts +1 -10
  344. package/dist/index.d.ts +1 -43
  345. package/dist/locale/adapters/react/LocaleProvider.d.ts +4 -6
  346. package/dist/locale/adapters/react/LocaleProvider.js +5 -5
  347. package/dist/locale/adapters/react/LocaleProvider.js.map +1 -1
  348. package/dist/locale/adapters/react/context.d.ts +8 -13
  349. package/dist/locale/adapters/react/context.js +2 -5
  350. package/dist/locale/adapters/react/context.js.map +1 -1
  351. package/dist/locale/adapters/react/index.d.ts +2 -6
  352. package/dist/locale/helpers.d.ts +60 -36
  353. package/dist/locale/helpers.js +14 -14
  354. package/dist/locale/helpers.js.map +1 -1
  355. package/dist/locale/index.d.ts +3 -7
  356. package/dist/locale/index.js.map +1 -1
  357. package/dist/locale/providers/AbstractLocale.d.ts +5 -8
  358. package/dist/locale/providers/AbstractLocale.js +9 -6
  359. package/dist/locale/providers/AbstractLocale.js.map +1 -1
  360. package/dist/locale/providers/CustomLocale.d.ts +5 -8
  361. package/dist/locale/providers/CustomLocale.js +3 -1
  362. package/dist/locale/providers/CustomLocale.js.map +1 -1
  363. package/dist/locale/providers/DynamicLocale.d.ts +7 -11
  364. package/dist/locale/providers/DynamicLocale.js +1 -1
  365. package/dist/locale/providers/DynamicLocale.js.map +1 -1
  366. package/dist/locale/providers/NativeLocale.d.ts +7 -10
  367. package/dist/locale/providers/NativeLocale.js.map +1 -1
  368. package/dist/locale/providers/index.d.ts +3 -6
  369. package/dist/locale/utils.d.ts +11 -14
  370. package/dist/main/app.d.ts +1 -1
  371. package/dist/main/app.js +3 -2
  372. package/dist/main/app.js.map +1 -1
  373. package/dist/main/background.d.ts +3 -12
  374. package/dist/main/browser.d.ts +1 -1
  375. package/dist/main/command.d.ts +4 -13
  376. package/dist/main/config.d.ts +3 -16
  377. package/dist/main/config.js.map +1 -1
  378. package/dist/main/content.d.ts +6 -18
  379. package/dist/main/env.d.ts +7 -15
  380. package/dist/main/icon.d.ts +6 -7
  381. package/dist/main/index.d.ts +17 -43
  382. package/dist/main/manifest.d.ts +1 -7
  383. package/dist/main/offscreen.d.ts +9 -22
  384. package/dist/main/offscreen.js +1 -1
  385. package/dist/main/offscreen.js.map +1 -1
  386. package/dist/main/page.d.ts +7 -19
  387. package/dist/main/plugin.d.ts +3 -16
  388. package/dist/main/popup.d.ts +8 -18
  389. package/dist/main/popup.js +2 -2
  390. package/dist/main/popup.js.map +1 -1
  391. package/dist/main/relay.d.ts +8 -21
  392. package/dist/main/service.d.ts +6 -15
  393. package/dist/main/sidebar.d.ts +8 -18
  394. package/dist/main/sidebar.js +2 -2
  395. package/dist/main/sidebar.js.map +1 -1
  396. package/dist/main/view.d.ts +1 -9
  397. package/dist/message/MessageManager.d.ts +2 -5
  398. package/dist/message/adapters/react/index.d.ts +1 -2
  399. package/dist/message/adapters/react/useMessageHandler.d.ts +2 -5
  400. package/dist/message/handlers/AbstractHandler.d.ts +2 -5
  401. package/dist/message/handlers/GeneralHandler.d.ts +3 -6
  402. package/dist/message/handlers/GeneralHandler.js +1 -0
  403. package/dist/message/handlers/GeneralHandler.js.map +1 -1
  404. package/dist/message/handlers/MapHandler.d.ts +3 -6
  405. package/dist/message/handlers/MapHandler.js +1 -0
  406. package/dist/message/handlers/MapHandler.js.map +1 -1
  407. package/dist/message/handlers/SingleHandler.d.ts +3 -6
  408. package/dist/message/handlers/SingleHandler.js +2 -0
  409. package/dist/message/handlers/SingleHandler.js.map +1 -1
  410. package/dist/message/handlers/index.d.ts +3 -5
  411. package/dist/message/index.d.ts +9 -13
  412. package/dist/message/providers/AbstractMessage.d.ts +2 -5
  413. package/dist/message/providers/Message.d.ts +4 -7
  414. package/dist/message/providers/index.d.ts +1 -4
  415. package/dist/offscreen/OffscreenBackground.d.ts +2 -9
  416. package/dist/offscreen/OffscreenBridge.d.ts +8 -9
  417. package/dist/offscreen/OffscreenBridge.js +55 -7
  418. package/dist/offscreen/OffscreenBridge.js.map +1 -1
  419. package/dist/offscreen/OffscreenManager.d.ts +4 -15
  420. package/dist/offscreen/OffscreenMessage.d.ts +2 -14
  421. package/dist/offscreen/index.d.ts +5 -26
  422. package/dist/offscreen/providers/Offscreen.d.ts +3 -14
  423. package/dist/offscreen/providers/ProxyOffscreen.d.ts +7 -18
  424. package/dist/offscreen/providers/ProxyOffscreen.js +44 -23
  425. package/dist/offscreen/providers/ProxyOffscreen.js.map +1 -1
  426. package/dist/offscreen/providers/RegisterOffscreen.d.ts +5 -18
  427. package/dist/offscreen/providers/RegisterOffscreen.js +1 -0
  428. package/dist/offscreen/providers/RegisterOffscreen.js.map +1 -1
  429. package/dist/offscreen/providers/index.d.ts +3 -17
  430. package/dist/offscreen/utils.d.ts +1 -3
  431. package/dist/relay/RelayManager.d.ts +6 -16
  432. package/dist/relay/RelayMessage.d.ts +2 -14
  433. package/dist/relay/RelayPermission.d.ts +4 -15
  434. package/dist/relay/index.d.ts +4 -22
  435. package/dist/relay/providers/ProxyRelay.d.ts +8 -19
  436. package/dist/relay/providers/ProxyRelay.js +2 -0
  437. package/dist/relay/providers/ProxyRelay.js.map +1 -1
  438. package/dist/relay/providers/RegisterRelay.d.ts +4 -16
  439. package/dist/relay/providers/RegisterRelay.js +2 -0
  440. package/dist/relay/providers/RegisterRelay.js.map +1 -1
  441. package/dist/relay/providers/Relay.d.ts +3 -14
  442. package/dist/relay/providers/index.d.ts +3 -18
  443. package/dist/relay/utils.d.ts +3 -5
  444. package/dist/service/ServiceManager.d.ts +4 -15
  445. package/dist/service/ServiceMessage.d.ts +2 -14
  446. package/dist/service/index.d.ts +4 -19
  447. package/dist/service/providers/ProxyService.d.ts +4 -15
  448. package/dist/service/providers/RegisterService.d.ts +3 -15
  449. package/dist/service/providers/RegisterService.js +1 -0
  450. package/dist/service/providers/RegisterService.js.map +1 -1
  451. package/dist/service/providers/Service.d.ts +3 -14
  452. package/dist/service/providers/index.d.ts +3 -15
  453. package/dist/transport/BaseTransport.d.ts +2 -13
  454. package/dist/transport/BaseTransport.js +1 -0
  455. package/dist/transport/BaseTransport.js.map +1 -1
  456. package/dist/transport/ProxyTransport.d.ts +4 -14
  457. package/dist/transport/RegisterTransport.d.ts +4 -16
  458. package/dist/transport/RegisterTransport.js +13 -20
  459. package/dist/transport/RegisterTransport.js.map +1 -1
  460. package/dist/transport/TransportManager.d.ts +2 -13
  461. package/dist/transport/TransportMessage.d.ts +3 -13
  462. package/dist/transport/index.d.ts +1 -9
  463. package/dist/types/app.d.ts +8 -6
  464. package/dist/types/app.js +7 -1
  465. package/dist/types/app.js.map +1 -1
  466. package/dist/types/background.d.ts +20 -7
  467. package/dist/types/browser.d.ts +6 -8
  468. package/dist/types/command.d.ts +27 -7
  469. package/dist/types/config.d.ts +673 -11
  470. package/dist/types/content.d.ts +195 -7
  471. package/dist/types/entrypoint.d.ts +106 -7
  472. package/dist/types/entrypoint.js.map +1 -1
  473. package/dist/types/env.d.ts +4 -6
  474. package/dist/types/framework.d.ts +1 -3
  475. package/dist/types/helpers.d.ts +6 -7
  476. package/dist/types/icon.d.ts +3 -5
  477. package/dist/types/locale.d.ts +35 -29
  478. package/dist/types/locale.js.map +1 -1
  479. package/dist/types/manifest.d.ts +163 -7
  480. package/dist/types/manifest.js.map +1 -1
  481. package/dist/types/message.d.ts +17 -19
  482. package/dist/types/message.js +1 -1
  483. package/dist/types/message.js.map +1 -1
  484. package/dist/types/offscreen.d.ts +13 -23
  485. package/dist/types/offscreen.js +2 -0
  486. package/dist/types/offscreen.js.map +1 -1
  487. package/dist/types/page.d.ts +5 -16
  488. package/dist/types/plugin.d.ts +101 -11
  489. package/dist/types/popup.d.ts +5 -16
  490. package/dist/types/relay.d.ts +13 -21
  491. package/dist/types/service.d.ts +9 -18
  492. package/dist/types/sidebar.d.ts +7 -17
  493. package/dist/types/transport.d.ts +22 -29
  494. package/dist/types/view.d.ts +18 -24
  495. package/package.json +9 -11
  496. package/dist/config-B38J9WIM.d.ts +0 -743
  497. package/dist/manifest-DKvERQ4d.d.ts +0 -503
@@ -1,7 +1,4 @@
1
- import { MessageDictionary, MessageHandler, MessageType, MessageData, MessageSender, MessageResponse } from '../../types/message.js';
2
-
3
- declare abstract class AbstractHandler<T extends MessageDictionary> implements MessageHandler<T> {
1
+ import { MessageData, MessageDictionary, MessageHandler, MessageResponse, MessageSender, MessageType } from "../../types/message.js";
2
+ export default abstract class AbstractHandler<T extends MessageDictionary> implements MessageHandler<T> {
4
3
  abstract run(type: MessageType<T>, data: MessageData<T, MessageType<T>>, sender: MessageSender): MessageResponse<T, MessageType<T>> | undefined | null;
5
4
  }
6
-
7
- export { AbstractHandler as default };
@@ -1,10 +1,7 @@
1
- import AbstractHandler from './AbstractHandler.js';
2
- import { MessageDictionary, MessageType, MessageGeneralHandler, MessageData, MessageSender, MessageResponse } from '../../types/message.js';
3
-
4
- declare class GeneralHandler<T extends MessageDictionary, K extends MessageType<T>> extends AbstractHandler<T> {
1
+ import AbstractHandler from "./AbstractHandler.js";
2
+ import { MessageData, MessageDictionary, MessageGeneralHandler, MessageResponse, MessageSender, MessageType } from "../../types/message.js";
3
+ export default class GeneralHandler<T extends MessageDictionary, K extends MessageType<T>> extends AbstractHandler<T> {
5
4
  private generalHandler;
6
5
  constructor(generalHandler: MessageGeneralHandler<T, K>);
7
6
  run(type: K, data: MessageData<T, MessageType<T>>, sender: MessageSender): MessageResponse<T, MessageType<T>> | undefined | null;
8
7
  }
9
-
10
- export { GeneralHandler as default };
@@ -4,6 +4,7 @@ class GeneralHandler extends AbstractHandler {
4
4
  super();
5
5
  this.generalHandler = generalHandler;
6
6
  }
7
+ generalHandler;
7
8
  run(type, data, sender) {
8
9
  return this.generalHandler(type, data, sender);
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/message/handlers/GeneralHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageGeneralHandler,\n MessageResponse,\n MessageSender,\n MessageType,\n} from \"@typing/message\";\n\nexport default class GeneralHandler<T extends MessageDictionary, K extends MessageType<T>> extends AbstractHandler<T> {\n constructor(private generalHandler: MessageGeneralHandler<T, K>) {\n super();\n }\n\n public run(\n type: K,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n return this.generalHandler(type, data, sender);\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,uBAA4F,gBAAmB;AAAA,EAClH,YAAoB,gBAA6C;AAC7D,UAAM;AADU;AAAA,EAEpB;AAAA,EAEO,IACH,MACA,MACA,QACqD;AACrD,WAAO,KAAK,eAAe,MAAM,MAAM,MAAM;AAAA,EACjD;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/message/handlers/GeneralHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageGeneralHandler,\n MessageResponse,\n MessageSender,\n MessageType,\n} from \"@typing/message\";\n\nexport default class GeneralHandler<T extends MessageDictionary, K extends MessageType<T>> extends AbstractHandler<T> {\n constructor(private generalHandler: MessageGeneralHandler<T, K>) {\n super();\n }\n\n public run(\n type: K,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n return this.generalHandler(type, data, sender);\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,uBAA4F,gBAAmB;AAAA,EAClH,YAAoB,gBAA6C;AAC7D,UAAM;AADU;AAAA,EAEpB;AAAA,EAFoB;AAAA,EAIb,IACH,MACA,MACA,QACqD;AACrD,WAAO,KAAK,eAAe,MAAM,MAAM,MAAM;AAAA,EACjD;AACJ;","names":[]}
@@ -1,10 +1,7 @@
1
- import AbstractHandler from './AbstractHandler.js';
2
- import { MessageDictionary, MessageMapHandler, MessageType, MessageData, MessageSender, MessageResponse } from '../../types/message.js';
3
-
4
- declare class MapHandler<T extends MessageDictionary> extends AbstractHandler<T> {
1
+ import AbstractHandler from "./AbstractHandler.js";
2
+ import { MessageData, MessageDictionary, MessageMapHandler, MessageResponse, MessageSender, MessageType } from "../../types/message.js";
3
+ export default class MapHandler<T extends MessageDictionary> extends AbstractHandler<T> {
5
4
  private map;
6
5
  constructor(map: MessageMapHandler<T>);
7
6
  run(type: MessageType<T>, data: MessageData<T, MessageType<T>>, sender: MessageSender): MessageResponse<T, MessageType<T>> | undefined | null;
8
7
  }
9
-
10
- export { MapHandler as default };
@@ -4,6 +4,7 @@ class MapHandler extends AbstractHandler {
4
4
  super();
5
5
  this.map = map;
6
6
  }
7
+ map;
7
8
  run(type, data, sender) {
8
9
  const handler = this.map[type];
9
10
  if (handler) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/message/handlers/MapHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageMapHandler,\n MessageResponse,\n MessageSender,\n MessageType,\n} from \"@typing/message\";\n\nexport default class MapHandler<T extends MessageDictionary> extends AbstractHandler<T> {\n constructor(private map: MessageMapHandler<T>) {\n super();\n }\n\n public run(\n type: MessageType<T>,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n const handler = this.map[type];\n\n if (handler) {\n if (typeof handler === \"function\") {\n return handler(data, sender) || null;\n } else {\n throw new Error(`Handler for type \"${type}\" in object of handlers must be a function`);\n }\n }\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,mBAA8D,gBAAmB;AAAA,EACpF,YAAoB,KAA2B;AAC3C,UAAM;AADU;AAAA,EAEpB;AAAA,EAEO,IACH,MACA,MACA,QACqD;AACrD,UAAM,UAAU,KAAK,IAAI,IAAI;AAE7B,QAAI,SAAS;AACT,UAAI,OAAO,YAAY,YAAY;AAC/B,eAAO,QAAQ,MAAM,MAAM,KAAK;AAAA,MACpC,OAAO;AACH,cAAM,IAAI,MAAM,qBAAqB,IAAI,4CAA4C;AAAA,MACzF;AAAA,IACJ;AAAA,EACJ;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/message/handlers/MapHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageMapHandler,\n MessageResponse,\n MessageSender,\n MessageType,\n} from \"@typing/message\";\n\nexport default class MapHandler<T extends MessageDictionary> extends AbstractHandler<T> {\n constructor(private map: MessageMapHandler<T>) {\n super();\n }\n\n public run(\n type: MessageType<T>,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n const handler = this.map[type];\n\n if (handler) {\n if (typeof handler === \"function\") {\n return handler(data, sender) || null;\n } else {\n throw new Error(`Handler for type \"${type}\" in object of handlers must be a function`);\n }\n }\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,mBAA8D,gBAAmB;AAAA,EACpF,YAAoB,KAA2B;AAC3C,UAAM;AADU;AAAA,EAEpB;AAAA,EAFoB;AAAA,EAIb,IACH,MACA,MACA,QACqD;AACrD,UAAM,UAAU,KAAK,IAAI,IAAI;AAE7B,QAAI,SAAS;AACT,UAAI,OAAO,YAAY,YAAY;AAC/B,eAAO,QAAQ,MAAM,MAAM,KAAK;AAAA,MACpC,OAAO;AACH,cAAM,IAAI,MAAM,qBAAqB,IAAI,4CAA4C;AAAA,MACzF;AAAA,IACJ;AAAA,EACJ;AACJ;","names":[]}
@@ -1,11 +1,8 @@
1
- import AbstractHandler from './AbstractHandler.js';
2
- import { MessageDictionary, MessageType, MessageTargetHandler, MessageData, MessageSender, MessageResponse } from '../../types/message.js';
3
-
4
- declare class SingleHandler<T extends MessageDictionary> extends AbstractHandler<T> {
1
+ import AbstractHandler from "./AbstractHandler.js";
2
+ import { MessageData, MessageDictionary, MessageResponse, MessageSender, MessageTargetHandler, MessageType } from "../../types/message.js";
3
+ export default class SingleHandler<T extends MessageDictionary> extends AbstractHandler<T> {
5
4
  private messageType;
6
5
  private handler;
7
6
  constructor(messageType: MessageType<T>, handler: MessageTargetHandler<T, MessageType<T>>);
8
7
  run(type: MessageType<T>, data: MessageData<T, MessageType<T>>, sender: MessageSender): MessageResponse<T, MessageType<T>> | undefined | null;
9
8
  }
10
-
11
- export { SingleHandler as default };
@@ -5,6 +5,8 @@ class SingleHandler extends AbstractHandler {
5
5
  this.messageType = messageType;
6
6
  this.handler = handler;
7
7
  }
8
+ messageType;
9
+ handler;
8
10
  run(type, data, sender) {
9
11
  if (type === this.messageType) {
10
12
  return this.handler(data, sender) || null;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/message/handlers/SingleHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageResponse,\n MessageSender,\n MessageTargetHandler,\n MessageType,\n} from \"@typing/message\";\n\nexport default class SingleHandler<T extends MessageDictionary> extends AbstractHandler<T> {\n constructor(\n private messageType: MessageType<T>,\n private handler: MessageTargetHandler<T, MessageType<T>>\n ) {\n super();\n }\n\n public run(\n type: MessageType<T>,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n if (type === this.messageType) {\n return this.handler(data, sender) || null;\n }\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,sBAAiE,gBAAmB;AAAA,EACvF,YACY,aACA,SACV;AACE,UAAM;AAHE;AACA;AAAA,EAGZ;AAAA,EAEO,IACH,MACA,MACA,QACqD;AACrD,QAAI,SAAS,KAAK,aAAa;AAC3B,aAAO,KAAK,QAAQ,MAAM,MAAM,KAAK;AAAA,IACzC;AAAA,EACJ;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/message/handlers/SingleHandler.ts"],"sourcesContent":["import AbstractHandler from \"./AbstractHandler\";\nimport {\n MessageData,\n MessageDictionary,\n MessageResponse,\n MessageSender,\n MessageTargetHandler,\n MessageType,\n} from \"@typing/message\";\n\nexport default class SingleHandler<T extends MessageDictionary> extends AbstractHandler<T> {\n constructor(\n private messageType: MessageType<T>,\n private handler: MessageTargetHandler<T, MessageType<T>>\n ) {\n super();\n }\n\n public run(\n type: MessageType<T>,\n data: MessageData<T, MessageType<T>>,\n sender: MessageSender\n ): MessageResponse<T, MessageType<T>> | undefined | null {\n if (type === this.messageType) {\n return this.handler(data, sender) || null;\n }\n }\n}\n"],"mappings":"AAAA,OAAO,qBAAqB;AAU5B,MAAO,sBAAiE,gBAAmB;AAAA,EACvF,YACY,aACA,SACV;AACE,UAAM;AAHE;AACA;AAAA,EAGZ;AAAA,EAJY;AAAA,EACA;AAAA,EAKL,IACH,MACA,MACA,QACqD;AACrD,QAAI,SAAS,KAAK,aAAa;AAC3B,aAAO,KAAK,QAAQ,MAAM,MAAM,KAAK;AAAA,IACzC;AAAA,EACJ;AACJ;","names":[]}
@@ -1,5 +1,3 @@
1
- export { default as SingleHandler } from './SingleHandler.js';
2
- export { default as MapHandler } from './MapHandler.js';
3
- export { default as GeneralHandler } from './GeneralHandler.js';
4
- import './AbstractHandler.js';
5
- import '../../types/message.js';
1
+ export { default as SingleHandler } from "./SingleHandler.js";
2
+ export { default as MapHandler } from "./MapHandler.js";
3
+ export { default as GeneralHandler } from "./GeneralHandler.js";
@@ -1,14 +1,10 @@
1
- export { default as Message } from './providers/Message.js';
2
- import { MessageDictionary, MessageType, MessageTargetHandler, MessageGeneralHandler, MessageMapHandler, MessageData, MessageSendOptions, MessageResponse } from '../types/message.js';
3
- export { MessageSender, MessageSenderAware } from '../types/message.js';
4
- import './providers/AbstractMessage.js';
5
- import './MessageManager.js';
6
-
7
- interface MessageRegistry extends MessageDictionary {
1
+ import { Message } from "./providers/index.js";
2
+ import { MessageData, MessageDictionary, MessageGeneralHandler, MessageMapHandler, MessageResponse, MessageSenderAware, MessageTargetHandler, MessageType, MessageSender, MessageSendOptions } from "../types/message.js";
3
+ export type { MessageData, MessageDictionary, MessageGeneralHandler, MessageMapHandler, MessageResponse, MessageTargetHandler, MessageType, MessageSendOptions, MessageSenderAware, MessageSender, };
4
+ export { Message };
5
+ export interface MessageRegistry extends MessageDictionary {
8
6
  }
9
- declare function sendMessage<K extends MessageType<MessageRegistry>>(type: K, data: MessageData<MessageRegistry, K>, options?: MessageSendOptions): Promise<MessageResponse<MessageRegistry, K>>;
10
- declare function onMessage<K extends MessageType<MessageRegistry>>(type: K, handler: MessageTargetHandler<MessageRegistry, K>): () => void;
11
- declare function onMessage<K extends MessageType<MessageRegistry>>(handler: MessageGeneralHandler<MessageRegistry, K>): () => void;
12
- declare function onMessage(map: MessageMapHandler<MessageRegistry>): () => void;
13
-
14
- export { MessageData, MessageDictionary, MessageGeneralHandler, MessageMapHandler, type MessageRegistry, MessageResponse, MessageSendOptions, MessageTargetHandler, MessageType, onMessage, sendMessage };
7
+ export declare function sendMessage<K extends MessageType<MessageRegistry>>(type: K, data: MessageData<MessageRegistry, K>, options?: MessageSendOptions): Promise<MessageResponse<MessageRegistry, K>>;
8
+ export declare function onMessage<K extends MessageType<MessageRegistry>>(type: K, handler: MessageTargetHandler<MessageRegistry, K>): () => void;
9
+ export declare function onMessage<K extends MessageType<MessageRegistry>>(handler: MessageGeneralHandler<MessageRegistry, K>): () => void;
10
+ export declare function onMessage(map: MessageMapHandler<MessageRegistry>): () => void;
@@ -1,11 +1,8 @@
1
- import { MessageDictionary, MessageProvider, MessageType, MessageData, MessageResponse, MessageTargetHandler, MessageMapHandler, MessageGeneralHandler, MessageBody } from '../../types/message.js';
2
-
3
- declare abstract class AbstractMessage<T extends MessageDictionary, TOptions> implements MessageProvider<T, TOptions> {
1
+ import { MessageBody, MessageData, MessageDictionary, MessageGeneralHandler, MessageMapHandler, MessageProvider, MessageResponse, MessageTargetHandler, MessageType } from "../../types/message.js";
2
+ export default abstract class AbstractMessage<T extends MessageDictionary, TOptions> implements MessageProvider<T, TOptions> {
4
3
  abstract send<K extends MessageType<T>>(type: K, data: MessageData<T, K>, options?: TOptions): Promise<MessageResponse<T, K>>;
5
4
  abstract watch<K extends MessageType<T>>(type: K, handler: MessageTargetHandler<T, K>): () => void;
6
5
  abstract watch(map: MessageMapHandler<T>): () => void;
7
6
  abstract watch<K extends MessageType<T>>(general: MessageGeneralHandler<T, K>): () => void;
8
7
  protected buildMessage<K extends MessageType<T>>(type: K, data: MessageData<T, K>): MessageBody<T, K>;
9
8
  }
10
-
11
- export { AbstractMessage as default };
@@ -1,13 +1,10 @@
1
- import { MessageDictionary, MessageSendOptions, MessageType, MessageData, MessageResponse, MessageMapHandler, MessageGeneralHandler, MessageTargetHandler } from '../../types/message.js';
2
- import AbstractMessage from './AbstractMessage.js';
3
- import MessageManager from '../MessageManager.js';
4
-
5
- declare class Message<T extends MessageDictionary> extends AbstractMessage<T, MessageSendOptions> {
1
+ import { MessageData, MessageDictionary, MessageGeneralHandler, MessageMapHandler, MessageResponse, MessageSendOptions, MessageTargetHandler, MessageType } from "../../types/message.js";
2
+ import AbstractMessage from "./AbstractMessage.js";
3
+ import MessageManager from "../MessageManager.js";
4
+ export default class Message<T extends MessageDictionary> extends AbstractMessage<T, MessageSendOptions> {
6
5
  private static instance;
7
6
  static getInstance<T extends MessageDictionary>(): Message<MessageDictionary>;
8
7
  protected get manager(): MessageManager<T>;
9
8
  send<K extends MessageType<T>>(type: K, data: MessageData<T, K>, options?: MessageSendOptions): Promise<MessageResponse<T, K>>;
10
9
  watch<K extends MessageType<T>>(arg1: K | MessageMapHandler<T> | MessageGeneralHandler<T, K>, arg2?: MessageTargetHandler<T, K>): () => void;
11
10
  }
12
-
13
- export { Message as default };
@@ -1,4 +1 @@
1
- export { default as Message } from './Message.js';
2
- import '../../types/message.js';
3
- import './AbstractMessage.js';
4
- import '../MessageManager.js';
1
+ export { default as Message } from "./Message.js";
@@ -1,11 +1,4 @@
1
- import OffscreenBridge from './OffscreenBridge.js';
2
- import '../types/message.js';
3
- import '../message/providers/Message.js';
4
- import '../message/providers/AbstractMessage.js';
5
- import '../message/MessageManager.js';
6
-
7
- declare class export_default extends OffscreenBridge {
1
+ import OffscreenBridge from "./OffscreenBridge.js";
2
+ export default class extends OffscreenBridge {
8
3
  build(): void;
9
4
  }
10
-
11
- export { export_default as default };
@@ -1,17 +1,16 @@
1
- import { MessageDictionary } from '../types/message.js';
2
- import Message from '../message/providers/Message.js';
3
- import '../message/providers/AbstractMessage.js';
4
- import '../message/MessageManager.js';
5
-
1
+ import { Message } from "../message/providers/index.js";
6
2
  type CreateParameters = chrome.offscreen.CreateParameters;
7
- declare class OffscreenBridge {
3
+ export default class OffscreenBridge {
8
4
  protected readonly key: string;
9
- protected readonly message: Message<MessageDictionary>;
5
+ protected readonly message: Message<import("../message/index.js").MessageDictionary>;
6
+ protected readonly readyTimeout = 10000;
7
+ private readonly framesReady;
10
8
  private static instance?;
11
9
  static getInstance(): OffscreenBridge;
12
10
  static createOffscreen(parameters: CreateParameters): Promise<void>;
13
11
  create(parameters: CreateParameters): Promise<any>;
14
12
  protected apply({ url }: CreateParameters): Promise<void>;
13
+ private createFrame;
14
+ private getFrame;
15
15
  }
16
-
17
- export { OffscreenBridge as default };
16
+ export {};
@@ -1,8 +1,11 @@
1
1
  import { isBackground } from "@addon-core/browser";
2
2
  import { Message } from "./../message/providers/index.js";
3
+ import { OffscreenBridgeReadyMessageType } from "./../types/offscreen.js";
3
4
  class OffscreenBridge {
4
5
  key = "offscreen-background";
5
6
  message = new Message();
7
+ readyTimeout = 1e4;
8
+ framesReady = /* @__PURE__ */ new Map();
6
9
  static instance;
7
10
  static getInstance() {
8
11
  return OffscreenBridge.instance ?? (OffscreenBridge.instance = new OffscreenBridge());
@@ -18,18 +21,63 @@ class OffscreenBridge {
18
21
  await this.message.send(this.key, parameters);
19
22
  }
20
23
  apply({ url }) {
24
+ const ready = this.framesReady.get(url);
25
+ if (ready) {
26
+ return ready;
27
+ }
28
+ const existing = this.getFrame(url);
29
+ if ((existing == null ? void 0 : existing.dataset.ready) === "true") {
30
+ return Promise.resolve();
31
+ }
32
+ const creation = this.createFrame(url, existing).finally(() => {
33
+ this.framesReady.delete(url);
34
+ });
35
+ this.framesReady.set(url, creation);
36
+ return creation;
37
+ }
38
+ createFrame(url, existing) {
21
39
  return new Promise((resolve, reject) => {
22
- if (document.querySelector(`iframe[src="${url}"]`)) {
40
+ const iframe = existing ?? document.createElement("iframe");
41
+ const cleanup = () => {
42
+ clearTimeout(timeout);
43
+ window.removeEventListener("message", listener);
44
+ iframe.onerror = null;
45
+ };
46
+ const listener = (event) => {
47
+ var _a;
48
+ if (event.source !== iframe.contentWindow) {
49
+ return;
50
+ }
51
+ if (event.origin !== location.origin) {
52
+ return;
53
+ }
54
+ if (((_a = event.data) == null ? void 0 : _a.type) !== OffscreenBridgeReadyMessageType) {
55
+ return;
56
+ }
57
+ iframe.dataset.ready = "true";
58
+ cleanup();
23
59
  resolve();
24
- return;
60
+ };
61
+ const timeout = setTimeout(() => {
62
+ cleanup();
63
+ iframe.remove();
64
+ reject(new Error(`Offscreen iframe "${url}" was not ready in time.`));
65
+ }, this.readyTimeout);
66
+ iframe.onerror = () => {
67
+ cleanup();
68
+ iframe.remove();
69
+ reject(new Error(`Offscreen iframe failed to load: ${url}`));
70
+ };
71
+ window.addEventListener("message", listener);
72
+ if (!existing) {
73
+ iframe.src = url;
74
+ document.body.appendChild(iframe);
25
75
  }
26
- const iframe = document.createElement("iframe");
27
- iframe.src = url;
28
- iframe.onload = () => resolve();
29
- iframe.onerror = () => reject();
30
- document.body.appendChild(iframe);
31
76
  });
32
77
  }
78
+ getFrame(url) {
79
+ return Array.from(document.querySelectorAll("iframe")).find((iframe) => iframe.getAttribute("src") === url);
80
+ }
33
81
  }
34
82
  export {
35
83
  OffscreenBridge as default
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/offscreen/OffscreenBridge.ts"],"sourcesContent":["import {isBackground} from \"@addon-core/browser\";\n\nimport {Message} from \"@message/providers\";\n\ntype CreateParameters = chrome.offscreen.CreateParameters;\n\nexport default class OffscreenBridge {\n protected readonly key: string = \"offscreen-background\";\n\n protected readonly message = new Message();\n\n private static instance?: OffscreenBridge;\n\n public static getInstance(): OffscreenBridge {\n return (OffscreenBridge.instance ??= new OffscreenBridge());\n }\n\n public static async createOffscreen(parameters: CreateParameters): Promise<void> {\n return OffscreenBridge.getInstance().create(parameters);\n }\n\n public async create(parameters: CreateParameters): Promise<any> {\n if (isBackground()) {\n await this.apply(parameters);\n\n return;\n }\n\n await this.message.send(this.key, parameters);\n }\n\n protected apply({url}: CreateParameters): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (document.querySelector(`iframe[src=\"${url}\"]`)) {\n resolve();\n\n return;\n }\n\n const iframe = document.createElement(\"iframe\");\n\n iframe.src = url;\n iframe.onload = () => resolve();\n iframe.onerror = () => reject();\n\n document.body.appendChild(iframe);\n });\n }\n}\n"],"mappings":"AAAA,SAAQ,oBAAmB;AAE3B,SAAQ,eAAc;AAItB,MAAO,gBAA8B;AAAA,EACd,MAAc;AAAA,EAEd,UAAU,IAAI,QAAQ;AAAA,EAEzC,OAAe;AAAA,EAEf,OAAc,cAA+B;AACzC,WAAQ,gBAAgB,aAAhB,gBAAgB,WAAa,IAAI,gBAAgB;AAAA,EAC7D;AAAA,EAEA,aAAoB,gBAAgB,YAA6C;AAC7E,WAAO,gBAAgB,YAAY,EAAE,OAAO,UAAU;AAAA,EAC1D;AAAA,EAEA,MAAa,OAAO,YAA4C;AAC5D,QAAI,aAAa,GAAG;AAChB,YAAM,KAAK,MAAM,UAAU;AAE3B;AAAA,IACJ;AAEA,UAAM,KAAK,QAAQ,KAAK,KAAK,KAAK,UAAU;AAAA,EAChD;AAAA,EAEU,MAAM,EAAC,IAAG,GAAoC;AACpD,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC1C,UAAI,SAAS,cAAc,eAAe,GAAG,IAAI,GAAG;AAChD,gBAAQ;AAER;AAAA,MACJ;AAEA,YAAM,SAAS,SAAS,cAAc,QAAQ;AAE9C,aAAO,MAAM;AACb,aAAO,SAAS,MAAM,QAAQ;AAC9B,aAAO,UAAU,MAAM,OAAO;AAE9B,eAAS,KAAK,YAAY,MAAM;AAAA,IACpC,CAAC;AAAA,EACL;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../src/offscreen/OffscreenBridge.ts"],"sourcesContent":["import {isBackground} from \"@addon-core/browser\";\n\nimport {Message} from \"@message/providers\";\n\nimport {OffscreenBridgeReadyMessageType} from \"@typing/offscreen\";\n\ntype CreateParameters = chrome.offscreen.CreateParameters;\n\nexport default class OffscreenBridge {\n protected readonly key: string = \"offscreen-background\";\n\n protected readonly message = new Message();\n\n protected readonly readyTimeout = 10000;\n\n private readonly framesReady: Map<string, Promise<void>> = new Map();\n\n private static instance?: OffscreenBridge;\n\n public static getInstance(): OffscreenBridge {\n return (OffscreenBridge.instance ??= new OffscreenBridge());\n }\n\n public static async createOffscreen(parameters: CreateParameters): Promise<void> {\n return OffscreenBridge.getInstance().create(parameters);\n }\n\n public async create(parameters: CreateParameters): Promise<any> {\n if (isBackground()) {\n await this.apply(parameters);\n\n return;\n }\n\n await this.message.send(this.key, parameters);\n }\n\n protected apply({url}: CreateParameters): Promise<void> {\n const ready = this.framesReady.get(url);\n\n if (ready) {\n return ready;\n }\n\n const existing = this.getFrame(url);\n\n if (existing?.dataset.ready === \"true\") {\n return Promise.resolve();\n }\n\n const creation = this.createFrame(url, existing).finally(() => {\n this.framesReady.delete(url);\n });\n\n this.framesReady.set(url, creation);\n\n return creation;\n }\n\n private createFrame(url: string, existing?: HTMLIFrameElement): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n const iframe = existing ?? document.createElement(\"iframe\");\n\n const cleanup = () => {\n clearTimeout(timeout);\n window.removeEventListener(\"message\", listener);\n iframe.onerror = null;\n };\n\n const listener = (event: MessageEvent) => {\n if (event.source !== iframe.contentWindow) {\n return;\n }\n\n if (event.origin !== location.origin) {\n return;\n }\n\n if (event.data?.type !== OffscreenBridgeReadyMessageType) {\n return;\n }\n\n iframe.dataset.ready = \"true\";\n\n cleanup();\n resolve();\n };\n\n const timeout = setTimeout(() => {\n cleanup();\n iframe.remove();\n\n reject(new Error(`Offscreen iframe \"${url}\" was not ready in time.`));\n }, this.readyTimeout);\n\n iframe.onerror = () => {\n cleanup();\n iframe.remove();\n reject(new Error(`Offscreen iframe failed to load: ${url}`));\n };\n\n window.addEventListener(\"message\", listener);\n\n if (!existing) {\n iframe.src = url;\n document.body.appendChild(iframe);\n }\n });\n }\n\n private getFrame(url: string): HTMLIFrameElement | undefined {\n return Array.from(document.querySelectorAll(\"iframe\")).find(iframe => iframe.getAttribute(\"src\") === url);\n }\n}\n"],"mappings":"AAAA,SAAQ,oBAAmB;AAE3B,SAAQ,eAAc;AAEtB,SAAQ,uCAAsC;AAI9C,MAAO,gBAA8B;AAAA,EACd,MAAc;AAAA,EAEd,UAAU,IAAI,QAAQ;AAAA,EAEtB,eAAe;AAAA,EAEjB,cAA0C,oBAAI,IAAI;AAAA,EAEnE,OAAe;AAAA,EAEf,OAAc,cAA+B;AACzC,WAAQ,gBAAgB,aAAhB,gBAAgB,WAAa,IAAI,gBAAgB;AAAA,EAC7D;AAAA,EAEA,aAAoB,gBAAgB,YAA6C;AAC7E,WAAO,gBAAgB,YAAY,EAAE,OAAO,UAAU;AAAA,EAC1D;AAAA,EAEA,MAAa,OAAO,YAA4C;AAC5D,QAAI,aAAa,GAAG;AAChB,YAAM,KAAK,MAAM,UAAU;AAE3B;AAAA,IACJ;AAEA,UAAM,KAAK,QAAQ,KAAK,KAAK,KAAK,UAAU;AAAA,EAChD;AAAA,EAEU,MAAM,EAAC,IAAG,GAAoC;AACpD,UAAM,QAAQ,KAAK,YAAY,IAAI,GAAG;AAEtC,QAAI,OAAO;AACP,aAAO;AAAA,IACX;AAEA,UAAM,WAAW,KAAK,SAAS,GAAG;AAElC,SAAI,qCAAU,QAAQ,WAAU,QAAQ;AACpC,aAAO,QAAQ,QAAQ;AAAA,IAC3B;AAEA,UAAM,WAAW,KAAK,YAAY,KAAK,QAAQ,EAAE,QAAQ,MAAM;AAC3D,WAAK,YAAY,OAAO,GAAG;AAAA,IAC/B,CAAC;AAED,SAAK,YAAY,IAAI,KAAK,QAAQ;AAElC,WAAO;AAAA,EACX;AAAA,EAEQ,YAAY,KAAa,UAA6C;AAC1E,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC1C,YAAM,SAAS,YAAY,SAAS,cAAc,QAAQ;AAE1D,YAAM,UAAU,MAAM;AAClB,qBAAa,OAAO;AACpB,eAAO,oBAAoB,WAAW,QAAQ;AAC9C,eAAO,UAAU;AAAA,MACrB;AAEA,YAAM,WAAW,CAAC,UAAwB;AArEtD;AAsEgB,YAAI,MAAM,WAAW,OAAO,eAAe;AACvC;AAAA,QACJ;AAEA,YAAI,MAAM,WAAW,SAAS,QAAQ;AAClC;AAAA,QACJ;AAEA,cAAI,WAAM,SAAN,mBAAY,UAAS,iCAAiC;AACtD;AAAA,QACJ;AAEA,eAAO,QAAQ,QAAQ;AAEvB,gBAAQ;AACR,gBAAQ;AAAA,MACZ;AAEA,YAAM,UAAU,WAAW,MAAM;AAC7B,gBAAQ;AACR,eAAO,OAAO;AAEd,eAAO,IAAI,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAAA,MACxE,GAAG,KAAK,YAAY;AAEpB,aAAO,UAAU,MAAM;AACnB,gBAAQ;AACR,eAAO,OAAO;AACd,eAAO,IAAI,MAAM,oCAAoC,GAAG,EAAE,CAAC;AAAA,MAC/D;AAEA,aAAO,iBAAiB,WAAW,QAAQ;AAE3C,UAAI,CAAC,UAAU;AACX,eAAO,MAAM;AACb,iBAAS,KAAK,YAAY,MAAM;AAAA,MACpC;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEQ,SAAS,KAA4C;AACzD,WAAO,MAAM,KAAK,SAAS,iBAAiB,QAAQ,CAAC,EAAE,KAAK,YAAU,OAAO,aAAa,KAAK,MAAM,GAAG;AAAA,EAC5G;AACJ;","names":[]}
@@ -1,16 +1,5 @@
1
- import TransportManager from '../transport/TransportManager.js';
2
- import { TransportManager as TransportManager$1 } from '../types/transport.js';
3
- import 'utility-types';
4
- import '../manifest-DKvERQ4d.js';
5
- import 'react';
6
- import '../types/app.js';
7
- import '../types/browser.js';
8
- import '../types/helpers.js';
9
- import '../types/locale.js';
10
- import '../types/message.js';
11
-
12
- declare class OffscreenManager extends TransportManager {
13
- static getInstance(): TransportManager$1;
1
+ import TransportManager from "../transport/TransportManager.js";
2
+ import type { TransportManager as TransportManagerContract } from "../types/transport.js";
3
+ export default class OffscreenManager extends TransportManager {
4
+ static getInstance(): TransportManagerContract;
14
5
  }
15
-
16
- export { OffscreenManager as default };
@@ -1,17 +1,5 @@
1
- import TransportMessage from '../transport/TransportMessage.js';
2
- import '../types/message.js';
3
- import '../types/transport.js';
4
- import 'utility-types';
5
- import '../manifest-DKvERQ4d.js';
6
- import 'react';
7
- import '../types/app.js';
8
- import '../types/browser.js';
9
- import '../types/helpers.js';
10
- import '../types/locale.js';
11
-
12
- declare class OffscreenMessage extends TransportMessage {
1
+ import TransportMessage from "../transport/TransportMessage.js";
2
+ export default class OffscreenMessage extends TransportMessage {
13
3
  protected readonly key: string;
14
4
  constructor(name: string);
15
5
  }
16
-
17
- export { OffscreenMessage as default };
@@ -1,26 +1,5 @@
1
- import { TransportName, TransportDictionary } from '../types/transport.js';
2
- export { TransportProxyTarget as OffscreenProxyTarget, TransportTarget as OffscreenTarget } from '../types/transport.js';
3
- export { default as ProxyOffscreen } from './providers/ProxyOffscreen.js';
4
- export { default as RegisterOffscreen } from './providers/RegisterOffscreen.js';
5
- export { default as OffscreenBackground } from './OffscreenBackground.js';
6
- import 'utility-types';
7
- import '../manifest-DKvERQ4d.js';
8
- import 'react';
9
- import '../types/app.js';
10
- import '../types/browser.js';
11
- import '../types/helpers.js';
12
- import '../types/locale.js';
13
- import '../types/message.js';
14
- import '../transport/ProxyTransport.js';
15
- import '../transport/BaseTransport.js';
16
- import '../transport/RegisterTransport.js';
17
- import './OffscreenMessage.js';
18
- import '../transport/TransportMessage.js';
19
- import './OffscreenBridge.js';
20
- import '../message/providers/Message.js';
21
- import '../message/providers/AbstractMessage.js';
22
- import '../message/MessageManager.js';
23
-
24
- declare const getOffscreen: <N extends TransportName>(name: N) => TransportDictionary[N];
25
-
26
- export { getOffscreen };
1
+ import { ProxyOffscreen, RegisterOffscreen } from "./providers/index.js";
2
+ import OffscreenBackground from "./OffscreenBackground.js";
3
+ import { TransportDictionary, TransportName, TransportProxyTarget as OffscreenProxyTarget, TransportTarget as OffscreenTarget } from "../types/transport.js";
4
+ export { type OffscreenTarget, type OffscreenProxyTarget, ProxyOffscreen, RegisterOffscreen, OffscreenBackground };
5
+ export declare const getOffscreen: <N extends TransportName>(name: N) => TransportDictionary[N];
@@ -1,18 +1,7 @@
1
- import export_default$1 from '../../transport/BaseTransport.js';
2
- import { TransportName, TransportDictionary, TransportManager } from '../../types/transport.js';
3
- import 'utility-types';
4
- import '../../manifest-DKvERQ4d.js';
5
- import 'react';
6
- import '../../types/app.js';
7
- import '../../types/browser.js';
8
- import '../../types/helpers.js';
9
- import '../../types/locale.js';
10
- import '../../types/message.js';
11
-
12
- declare class export_default<N extends TransportName, T = TransportDictionary[N]> extends export_default$1<N, T> {
1
+ import BaseTransport from "../../transport/BaseTransport.js";
2
+ import type { TransportDictionary, TransportName, TransportManager } from "../../types/transport.js";
3
+ export default class<N extends TransportName, T = TransportDictionary[N]> extends BaseTransport<N, T> {
13
4
  constructor(name: N);
14
5
  protected manager(): TransportManager;
15
6
  get(): T;
16
7
  }
17
-
18
- export { export_default as default };
@@ -1,26 +1,15 @@
1
- import export_default from '../../transport/ProxyTransport.js';
2
- import { DeepAsyncProxy } from '../../types/helpers.js';
3
- import { TransportName, TransportDictionary, TransportMessage, TransportManager } from '../../types/transport.js';
4
- import '../../transport/BaseTransport.js';
5
- import 'utility-types';
6
- import '../../manifest-DKvERQ4d.js';
7
- import 'react';
8
- import '../../types/app.js';
9
- import '../../types/browser.js';
10
- import '../../types/locale.js';
11
- import '../../types/message.js';
12
-
1
+ import ProxyTransport from "../../transport/ProxyTransport.js";
2
+ import { DeepAsyncProxy } from "../../types/helpers.js";
3
+ import { TransportDictionary, TransportManager, TransportMessage, TransportName } from "../../types/transport.js";
13
4
  type CreateParameters = chrome.offscreen.CreateParameters;
14
- declare class ProxyOffscreen<N extends TransportName, T = DeepAsyncProxy<TransportDictionary[N]>> extends export_default<N, T> {
5
+ export default class ProxyOffscreen<N extends TransportName, T = DeepAsyncProxy<TransportDictionary[N]>> extends ProxyTransport<N, T> {
15
6
  private parameters;
16
7
  protected message: TransportMessage;
17
- private url?;
18
- private static instance?;
19
- static getInstance<N extends TransportName, T = DeepAsyncProxy<TransportDictionary[N]>>(name: N, parameters: CreateParameters): ProxyOffscreen<N, T>;
20
8
  constructor(name: N, parameters: CreateParameters);
21
9
  protected manager(): TransportManager;
22
10
  protected apply(args: any[], path?: string): Promise<any>;
11
+ private acquire;
12
+ private acquireLock;
23
13
  get(): T;
24
14
  }
25
-
26
- export { ProxyOffscreen as default };
15
+ export {};
@@ -1,45 +1,66 @@
1
- import { closeOffscreen, createOffscreen, hasOffscreen, isManifestVersion3 } from "@addon-core/browser";
2
- import { getBrowser } from "./../../main/env.js";
3
- import { __t } from "./../../locale/helpers.js";
1
+ import { closeOffscreen, createOffscreen, hasOffscreen, hasOffscreenPath, isManifestVersion3 } from "@addon-core/browser";
2
+ import { isBrowser } from "./../../main/env.js";
4
3
  import ProxyTransport from "./../../transport/ProxyTransport.js";
5
4
  import OffscreenManager from "../OffscreenManager.js";
6
5
  import OffscreenMessage from "../OffscreenMessage.js";
7
6
  import OffscreenBridge from "../OffscreenBridge.js";
8
7
  import { isOffscreen } from "../utils.js";
9
8
  import { Browser } from "./../../types/browser.js";
9
+ const GateLockName = "adnbn:offscreen:gate";
10
+ const ActiveLockName = "adnbn:offscreen:active";
10
11
  class ProxyOffscreen extends ProxyTransport {
11
12
  constructor(name, parameters) {
12
13
  super(name);
13
14
  this.parameters = parameters;
14
15
  this.message = new OffscreenMessage(name);
15
16
  }
17
+ parameters;
16
18
  message;
17
- url;
18
- static instance;
19
- static getInstance(name, parameters) {
20
- return this.instance ?? (this.instance = new ProxyOffscreen(name, parameters));
21
- }
22
19
  manager() {
23
20
  return OffscreenManager.getInstance();
24
21
  }
25
22
  async apply(args, path) {
26
- const parameters = {
27
- ...this.parameters,
28
- justification: __t(this.parameters.justification)
29
- };
30
- if (!isManifestVersion3() || getBrowser() === Browser.Firefox) {
31
- await OffscreenBridge.createOffscreen(parameters);
32
- } else {
33
- const exists = await hasOffscreen();
34
- if (!exists || this.url !== parameters.url) {
35
- if (exists) {
36
- await closeOffscreen();
23
+ if (!isManifestVersion3() || isBrowser(Browser.Firefox)) {
24
+ await OffscreenBridge.createOffscreen(this.parameters);
25
+ return this.message.send({ path, args });
26
+ }
27
+ const release = await this.acquire(this.parameters);
28
+ try {
29
+ return await this.message.send({ path, args });
30
+ } finally {
31
+ release();
32
+ }
33
+ }
34
+ async acquire(parameters) {
35
+ return navigator.locks.request(GateLockName, { mode: "exclusive" }, async () => {
36
+ if (await hasOffscreenPath(parameters.url)) {
37
+ return this.acquireLock(ActiveLockName, { mode: "shared" });
38
+ }
39
+ const releaseActive = await this.acquireLock(ActiveLockName, { mode: "exclusive" });
40
+ try {
41
+ if (!await hasOffscreenPath(parameters.url)) {
42
+ if (await hasOffscreen()) {
43
+ await closeOffscreen();
44
+ }
45
+ await createOffscreen(parameters);
37
46
  }
38
- await createOffscreen(parameters);
39
- this.url = parameters.url;
47
+ } finally {
48
+ releaseActive();
40
49
  }
41
- }
42
- return this.message.send({ path, args });
50
+ return this.acquireLock(ActiveLockName, { mode: "shared" });
51
+ });
52
+ }
53
+ async acquireLock(name, options) {
54
+ let releaseLock;
55
+ const lockHeld = new Promise((resolve) => {
56
+ releaseLock = resolve;
57
+ });
58
+ return new Promise((resolve, reject) => {
59
+ navigator.locks.request(name, options, async () => {
60
+ resolve(releaseLock);
61
+ await lockHeld;
62
+ }).catch(reject);
63
+ });
43
64
  }
44
65
  get() {
45
66
  if (isOffscreen()) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/offscreen/providers/ProxyOffscreen.ts"],"sourcesContent":["import {closeOffscreen, createOffscreen, hasOffscreen, isManifestVersion3} from \"@addon-core/browser\";\n\nimport {getBrowser} from \"@main/env\";\n\nimport {__t} from \"@locale/helpers\";\n\nimport ProxyTransport from \"@transport/ProxyTransport\";\n\nimport OffscreenManager from \"../OffscreenManager\";\nimport OffscreenMessage from \"../OffscreenMessage\";\nimport OffscreenBridge from \"../OffscreenBridge\";\n\nimport {isOffscreen} from \"../utils\";\n\nimport {Browser} from \"@typing/browser\";\nimport {DeepAsyncProxy} from \"@typing/helpers\";\nimport {TransportDictionary, TransportManager, TransportMessage, TransportName} from \"@typing/transport\";\n\ntype CreateParameters = chrome.offscreen.CreateParameters;\n\nexport default class ProxyOffscreen<\n N extends TransportName,\n T = DeepAsyncProxy<TransportDictionary[N]>,\n> extends ProxyTransport<N, T> {\n protected message: TransportMessage;\n\n private url?: string;\n\n private static instance?: ProxyOffscreen<any, any>;\n\n public static getInstance<N extends TransportName, T = DeepAsyncProxy<TransportDictionary[N]>>(\n name: N,\n parameters: CreateParameters\n ): ProxyOffscreen<N, T> {\n return (this.instance ??= new ProxyOffscreen(name, parameters));\n }\n\n constructor(\n name: N,\n private parameters: CreateParameters\n ) {\n super(name);\n\n this.message = new OffscreenMessage(name);\n }\n\n protected manager(): TransportManager {\n return OffscreenManager.getInstance();\n }\n\n protected async apply(args: any[], path?: string): Promise<any> {\n const parameters: CreateParameters = {\n ...this.parameters,\n justification: __t(this.parameters.justification),\n };\n\n if (!isManifestVersion3() || getBrowser() === Browser.Firefox) {\n await OffscreenBridge.createOffscreen(parameters);\n } else {\n const exists = await hasOffscreen();\n\n if (!exists || this.url !== parameters.url) {\n if (exists) {\n await closeOffscreen();\n }\n\n await createOffscreen(parameters);\n\n this.url = parameters.url;\n }\n }\n\n return this.message.send({path, args});\n }\n\n public get(): T {\n if (isOffscreen()) {\n throw new Error(\n `You are trying to get proxy offscreen service \"${this.name}\" from offscreen. You can get original offscreen service instead`\n );\n }\n\n return super.get();\n }\n}\n"],"mappings":"AAAA,SAAQ,gBAAgB,iBAAiB,cAAc,0BAAyB;AAEhF,SAAQ,kBAAiB;AAEzB,SAAQ,WAAU;AAElB,OAAO,oBAAoB;AAE3B,OAAO,sBAAsB;AAC7B,OAAO,sBAAsB;AAC7B,OAAO,qBAAqB;AAE5B,SAAQ,mBAAkB;AAE1B,SAAQ,eAAc;AAMtB,MAAO,uBAGG,eAAqB;AAAA,EAc3B,YACI,MACQ,YACV;AACE,UAAM,IAAI;AAFF;AAIR,SAAK,UAAU,IAAI,iBAAiB,IAAI;AAAA,EAC5C;AAAA,EApBU;AAAA,EAEF;AAAA,EAER,OAAe;AAAA,EAEf,OAAc,YACV,MACA,YACoB;AACpB,WAAQ,KAAK,aAAL,KAAK,WAAa,IAAI,eAAe,MAAM,UAAU;AAAA,EACjE;AAAA,EAWU,UAA4B;AAClC,WAAO,iBAAiB,YAAY;AAAA,EACxC;AAAA,EAEA,MAAgB,MAAM,MAAa,MAA6B;AAC5D,UAAM,aAA+B;AAAA,MACjC,GAAG,KAAK;AAAA,MACR,eAAe,IAAI,KAAK,WAAW,aAAa;AAAA,IACpD;AAEA,QAAI,CAAC,mBAAmB,KAAK,WAAW,MAAM,QAAQ,SAAS;AAC3D,YAAM,gBAAgB,gBAAgB,UAAU;AAAA,IACpD,OAAO;AACH,YAAM,SAAS,MAAM,aAAa;AAElC,UAAI,CAAC,UAAU,KAAK,QAAQ,WAAW,KAAK;AACxC,YAAI,QAAQ;AACR,gBAAM,eAAe;AAAA,QACzB;AAEA,cAAM,gBAAgB,UAAU;AAEhC,aAAK,MAAM,WAAW;AAAA,MAC1B;AAAA,IACJ;AAEA,WAAO,KAAK,QAAQ,KAAK,EAAC,MAAM,KAAI,CAAC;AAAA,EACzC;AAAA,EAEO,MAAS;AACZ,QAAI,YAAY,GAAG;AACf,YAAM,IAAI;AAAA,QACN,kDAAkD,KAAK,IAAI;AAAA,MAC/D;AAAA,IACJ;AAEA,WAAO,MAAM,IAAI;AAAA,EACrB;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/offscreen/providers/ProxyOffscreen.ts"],"sourcesContent":["import {closeOffscreen, createOffscreen, hasOffscreen, hasOffscreenPath, isManifestVersion3} from \"@addon-core/browser\";\n\nimport {isBrowser} from \"@main/env\";\n\nimport ProxyTransport from \"@transport/ProxyTransport\";\n\nimport OffscreenManager from \"../OffscreenManager\";\nimport OffscreenMessage from \"../OffscreenMessage\";\nimport OffscreenBridge from \"../OffscreenBridge\";\n\nimport {isOffscreen} from \"../utils\";\n\nimport {Browser} from \"@typing/browser\";\nimport {DeepAsyncProxy} from \"@typing/helpers\";\nimport {TransportDictionary, TransportManager, TransportMessage, TransportName} from \"@typing/transport\";\n\ntype CreateParameters = chrome.offscreen.CreateParameters;\ntype ReleaseLock = () => void;\n\nconst GateLockName = \"adnbn:offscreen:gate\";\nconst ActiveLockName = \"adnbn:offscreen:active\";\n\nexport default class ProxyOffscreen<\n N extends TransportName,\n T = DeepAsyncProxy<TransportDictionary[N]>,\n> extends ProxyTransport<N, T> {\n protected message: TransportMessage;\n\n constructor(\n name: N,\n private parameters: CreateParameters\n ) {\n super(name);\n\n this.message = new OffscreenMessage(name);\n }\n\n protected manager(): TransportManager {\n return OffscreenManager.getInstance();\n }\n\n protected async apply(args: any[], path?: string): Promise<any> {\n if (!isManifestVersion3() || isBrowser(Browser.Firefox)) {\n await OffscreenBridge.createOffscreen(this.parameters);\n\n return this.message.send({path, args});\n }\n\n const release = await this.acquire(this.parameters);\n\n try {\n return await this.message.send({path, args});\n } finally {\n release();\n }\n }\n\n private async acquire(parameters: CreateParameters): Promise<ReleaseLock> {\n return navigator.locks.request(GateLockName, {mode: \"exclusive\"}, async () => {\n if (await hasOffscreenPath(parameters.url)) {\n return this.acquireLock(ActiveLockName, {mode: \"shared\"});\n }\n\n const releaseActive = await this.acquireLock(ActiveLockName, {mode: \"exclusive\"});\n\n try {\n if (!(await hasOffscreenPath(parameters.url))) {\n if (await hasOffscreen()) {\n await closeOffscreen();\n }\n\n await createOffscreen(parameters);\n }\n } finally {\n releaseActive();\n }\n\n return this.acquireLock(ActiveLockName, {mode: \"shared\"});\n });\n }\n\n private async acquireLock(name: string, options: LockOptions): Promise<ReleaseLock> {\n let releaseLock!: ReleaseLock;\n\n // Keep the Web Lock callback pending and expose its resolver as a manual release function.\n const lockHeld = new Promise<void>(resolve => {\n releaseLock = resolve;\n });\n\n return new Promise<ReleaseLock>((resolve, reject) => {\n navigator.locks\n .request(name, options, async () => {\n resolve(releaseLock);\n\n await lockHeld;\n })\n .catch(reject);\n });\n }\n\n public get(): T {\n if (isOffscreen()) {\n throw new Error(\n `You are trying to get proxy offscreen service \"${this.name}\" from offscreen. You can get original offscreen service instead`\n );\n }\n\n return super.get();\n }\n}\n"],"mappings":"AAAA,SAAQ,gBAAgB,iBAAiB,cAAc,kBAAkB,0BAAyB;AAElG,SAAQ,iBAAgB;AAExB,OAAO,oBAAoB;AAE3B,OAAO,sBAAsB;AAC7B,OAAO,sBAAsB;AAC7B,OAAO,qBAAqB;AAE5B,SAAQ,mBAAkB;AAE1B,SAAQ,eAAc;AAOtB,MAAM,eAAe;AACrB,MAAM,iBAAiB;AAEvB,MAAO,uBAGG,eAAqB;AAAA,EAG3B,YACI,MACQ,YACV;AACE,UAAM,IAAI;AAFF;AAIR,SAAK,UAAU,IAAI,iBAAiB,IAAI;AAAA,EAC5C;AAAA,EALY;AAAA,EAJF;AAAA,EAWA,UAA4B;AAClC,WAAO,iBAAiB,YAAY;AAAA,EACxC;AAAA,EAEA,MAAgB,MAAM,MAAa,MAA6B;AAC5D,QAAI,CAAC,mBAAmB,KAAK,UAAU,QAAQ,OAAO,GAAG;AACrD,YAAM,gBAAgB,gBAAgB,KAAK,UAAU;AAErD,aAAO,KAAK,QAAQ,KAAK,EAAC,MAAM,KAAI,CAAC;AAAA,IACzC;AAEA,UAAM,UAAU,MAAM,KAAK,QAAQ,KAAK,UAAU;AAElD,QAAI;AACA,aAAO,MAAM,KAAK,QAAQ,KAAK,EAAC,MAAM,KAAI,CAAC;AAAA,IAC/C,UAAE;AACE,cAAQ;AAAA,IACZ;AAAA,EACJ;AAAA,EAEA,MAAc,QAAQ,YAAoD;AACtE,WAAO,UAAU,MAAM,QAAQ,cAAc,EAAC,MAAM,YAAW,GAAG,YAAY;AAC1E,UAAI,MAAM,iBAAiB,WAAW,GAAG,GAAG;AACxC,eAAO,KAAK,YAAY,gBAAgB,EAAC,MAAM,SAAQ,CAAC;AAAA,MAC5D;AAEA,YAAM,gBAAgB,MAAM,KAAK,YAAY,gBAAgB,EAAC,MAAM,YAAW,CAAC;AAEhF,UAAI;AACA,YAAI,CAAE,MAAM,iBAAiB,WAAW,GAAG,GAAI;AAC3C,cAAI,MAAM,aAAa,GAAG;AACtB,kBAAM,eAAe;AAAA,UACzB;AAEA,gBAAM,gBAAgB,UAAU;AAAA,QACpC;AAAA,MACJ,UAAE;AACE,sBAAc;AAAA,MAClB;AAEA,aAAO,KAAK,YAAY,gBAAgB,EAAC,MAAM,SAAQ,CAAC;AAAA,IAC5D,CAAC;AAAA,EACL;AAAA,EAEA,MAAc,YAAY,MAAc,SAA4C;AAChF,QAAI;AAGJ,UAAM,WAAW,IAAI,QAAc,aAAW;AAC1C,oBAAc;AAAA,IAClB,CAAC;AAED,WAAO,IAAI,QAAqB,CAAC,SAAS,WAAW;AACjD,gBAAU,MACL,QAAQ,MAAM,SAAS,YAAY;AAChC,gBAAQ,WAAW;AAEnB,cAAM;AAAA,MACV,CAAC,EACA,MAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACL;AAAA,EAEO,MAAS;AACZ,QAAI,YAAY,GAAG;AACf,YAAM,IAAI;AAAA,QACN,kDAAkD,KAAK,IAAI;AAAA,MAC/D;AAAA,IACJ;AAEA,WAAO,MAAM,IAAI;AAAA,EACrB;AACJ;","names":[]}