adnbn 0.9.0 → 0.11.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 (608) hide show
  1. package/dist/cli/builders/locale/LocaleBuilder.js +2 -11
  2. package/dist/cli/builders/locale/LocaleBuilder.js.map +1 -1
  3. package/dist/cli/builders/locale/index.js +1 -1
  4. package/dist/cli/builders/locale/index.js.map +1 -1
  5. package/dist/cli/builders/manifest/ManifestBase.d.ts +4 -1
  6. package/dist/cli/builders/manifest/ManifestBase.js +35 -6
  7. package/dist/cli/builders/manifest/ManifestBase.js.map +1 -1
  8. package/dist/cli/builders/manifest/ManifestV2.js +1 -1
  9. package/dist/cli/builders/manifest/ManifestV3.js +12 -5
  10. package/dist/cli/builders/manifest/ManifestV3.js.map +1 -1
  11. package/dist/cli/builders/manifest/utils/data-collection-permissions.d.ts +15 -0
  12. package/dist/cli/builders/manifest/utils/data-collection-permissions.js +26 -0
  13. package/dist/cli/builders/manifest/utils/data-collection-permissions.js.map +1 -0
  14. package/dist/cli/builders/manifest/utils/host-patterns.d.ts +1 -0
  15. package/dist/cli/builders/manifest/utils/host-patterns.js +40 -0
  16. package/dist/cli/builders/manifest/utils/host-patterns.js.map +1 -0
  17. package/dist/cli/builders/manifest/utils/index.d.ts +4 -0
  18. package/dist/cli/builders/manifest/utils/index.js +19 -0
  19. package/dist/cli/builders/manifest/utils/index.js.map +1 -0
  20. package/dist/cli/builders/manifest/utils/permissions.d.ts +14 -0
  21. package/dist/cli/builders/manifest/utils/permissions.js +34 -0
  22. package/dist/cli/builders/manifest/utils/permissions.js.map +1 -0
  23. package/dist/cli/builders/manifest/utils/web-accessible-resources.d.ts +2 -0
  24. package/dist/cli/builders/manifest/utils/web-accessible-resources.js +92 -0
  25. package/dist/cli/builders/manifest/utils/web-accessible-resources.js.map +1 -0
  26. package/dist/cli/bundler/plugins/build-assets-map/BuildAssetsMapPlugin.d.ts +14 -0
  27. package/dist/cli/bundler/plugins/build-assets-map/BuildAssetsMapPlugin.js +523 -0
  28. package/dist/cli/bundler/plugins/build-assets-map/BuildAssetsMapPlugin.js.map +1 -0
  29. package/dist/cli/bundler/plugins/build-assets-map/entrypoint-module.d.ts +13 -0
  30. package/dist/cli/bundler/plugins/build-assets-map/entrypoint-module.js +16 -0
  31. package/dist/cli/bundler/plugins/build-assets-map/entrypoint-module.js.map +1 -0
  32. package/dist/cli/bundler/plugins/build-assets-map/index.d.ts +3 -0
  33. package/dist/cli/bundler/plugins/build-assets-map/index.js +8 -0
  34. package/dist/cli/bundler/plugins/build-assets-map/index.js.map +1 -0
  35. package/dist/cli/bundler/plugins/build-assets-map/usage.d.ts +12 -0
  36. package/dist/cli/bundler/plugins/build-assets-map/usage.js +28 -0
  37. package/dist/cli/bundler/plugins/build-assets-map/usage.js.map +1 -0
  38. package/dist/cli/bundler/plugins/chunk-loader/ChunkLoaderPlugin.d.ts +9 -0
  39. package/dist/cli/bundler/plugins/chunk-loader/ChunkLoaderPlugin.js +43 -0
  40. package/dist/cli/bundler/plugins/chunk-loader/ChunkLoaderPlugin.js.map +1 -0
  41. package/dist/cli/bundler/plugins/chunk-loader/index.d.ts +1 -0
  42. package/dist/cli/bundler/plugins/chunk-loader/index.js +5 -0
  43. package/dist/cli/bundler/plugins/chunk-loader/index.js.map +1 -0
  44. package/dist/cli/bundler/plugins/chunk-loader/templates/runtime.template.d.ts +2 -0
  45. package/dist/cli/bundler/plugins/chunk-loader/templates.d.ts +7 -0
  46. package/dist/cli/bundler/plugins/chunk-loader/templates.js +30 -0
  47. package/dist/cli/bundler/plugins/{EntrypointPlugin.d.ts → entrypoint/EntrypointPlugin.d.ts} +7 -2
  48. package/dist/cli/bundler/plugins/{EntrypointPlugin.js → entrypoint/EntrypointPlugin.js} +46 -26
  49. package/dist/cli/bundler/plugins/entrypoint/EntrypointPlugin.js.map +1 -0
  50. package/dist/cli/bundler/plugins/entrypoint/index.d.ts +1 -0
  51. package/dist/cli/bundler/plugins/entrypoint/index.js +7 -0
  52. package/dist/cli/bundler/plugins/entrypoint/index.js.map +1 -0
  53. package/dist/cli/bundler/plugins/{GenerateJsonPlugin.d.ts → generate-json/GenerateJsonPlugin.d.ts} +1 -0
  54. package/dist/cli/bundler/plugins/generate-json/GenerateJsonPlugin.js +73 -0
  55. package/dist/cli/bundler/plugins/generate-json/GenerateJsonPlugin.js.map +1 -0
  56. package/dist/cli/bundler/plugins/generate-json/index.d.ts +1 -0
  57. package/dist/cli/bundler/plugins/generate-json/index.js +5 -0
  58. package/dist/cli/bundler/plugins/generate-json/index.js.map +1 -0
  59. package/dist/cli/bundler/plugins/generate-module/GenerateModulePlugin.d.ts +23 -0
  60. package/dist/cli/bundler/plugins/generate-module/GenerateModulePlugin.js +88 -0
  61. package/dist/cli/bundler/plugins/generate-module/GenerateModulePlugin.js.map +1 -0
  62. package/dist/cli/bundler/plugins/generate-module/index.d.ts +1 -0
  63. package/dist/cli/bundler/plugins/generate-module/index.js +7 -0
  64. package/dist/cli/bundler/plugins/generate-module/index.js.map +1 -0
  65. package/dist/cli/bundler/plugins/index.d.ts +11 -5
  66. package/dist/cli/bundler/plugins/index.js +32 -10
  67. package/dist/cli/bundler/plugins/index.js.map +1 -1
  68. package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.d.ts +21 -0
  69. package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.js +174 -0
  70. package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.js.map +1 -0
  71. package/dist/cli/bundler/plugins/isolated-styles/index.d.ts +1 -0
  72. package/dist/cli/bundler/plugins/isolated-styles/index.js +5 -0
  73. package/dist/cli/bundler/plugins/isolated-styles/index.js.map +1 -0
  74. package/dist/cli/bundler/plugins/isolated-styles/templates/css-loader.template.d.ts +1 -0
  75. package/dist/cli/bundler/plugins/isolated-styles/templates/runtime.template.d.ts +7 -0
  76. package/dist/cli/bundler/plugins/isolated-styles/templates.d.ts +18 -0
  77. package/dist/cli/bundler/plugins/isolated-styles/templates.js +174 -0
  78. package/dist/cli/bundler/plugins/manifest/ManifestPlugin.d.ts +10 -0
  79. package/dist/cli/bundler/plugins/manifest/ManifestPlugin.js +55 -0
  80. package/dist/cli/bundler/plugins/manifest/ManifestPlugin.js.map +1 -0
  81. package/dist/cli/bundler/plugins/manifest/index.d.ts +1 -0
  82. package/dist/cli/bundler/plugins/manifest/index.js +6 -0
  83. package/dist/cli/bundler/plugins/manifest/index.js.map +1 -0
  84. package/dist/cli/bundler/plugins/replace/ReplacePlugin.js.map +1 -0
  85. package/dist/cli/bundler/plugins/replace/index.d.ts +1 -0
  86. package/dist/cli/bundler/plugins/replace/index.js +5 -0
  87. package/dist/cli/bundler/plugins/replace/index.js.map +1 -0
  88. package/dist/cli/bundler/plugins/resource-access/ResourceAccessPlugin.d.ts +19 -0
  89. package/dist/cli/bundler/plugins/resource-access/ResourceAccessPlugin.js +20 -0
  90. package/dist/cli/bundler/plugins/resource-access/ResourceAccessPlugin.js.map +1 -0
  91. package/dist/cli/bundler/plugins/resource-access/index.d.ts +1 -0
  92. package/dist/cli/bundler/plugins/resource-access/index.js +5 -0
  93. package/dist/cli/bundler/plugins/resource-access/index.js.map +1 -0
  94. package/dist/cli/bundler/plugins/resource-access/utils.d.ts +8 -0
  95. package/dist/cli/bundler/plugins/resource-access/utils.js +42 -0
  96. package/dist/cli/bundler/plugins/resource-access/utils.js.map +1 -0
  97. package/dist/cli/bundler/plugins/types.d.ts +4 -0
  98. package/dist/cli/bundler/plugins/types.js +1 -0
  99. package/dist/cli/bundler/plugins/types.js.map +1 -0
  100. package/dist/cli/bundler/plugins/utils/index.d.ts +3 -0
  101. package/dist/cli/bundler/plugins/utils/index.js +9 -0
  102. package/dist/cli/bundler/plugins/utils/index.js.map +1 -0
  103. package/dist/cli/bundler/plugins/utils/manifest-hooks.d.ts +13 -0
  104. package/dist/cli/bundler/plugins/utils/manifest-hooks.js +17 -0
  105. package/dist/cli/bundler/plugins/utils/manifest-hooks.js.map +1 -0
  106. package/dist/cli/bundler/plugins/utils/runtime-template.d.ts +1 -0
  107. package/dist/cli/bundler/plugins/utils/runtime-template.js +18 -0
  108. package/dist/cli/bundler/plugins/utils/runtime-template.js.map +1 -0
  109. package/dist/cli/bundler/plugins/utils/watch-compilation.d.ts +3 -0
  110. package/dist/cli/bundler/plugins/utils/watch-compilation.js +18 -0
  111. package/dist/cli/bundler/plugins/utils/watch-compilation.js.map +1 -0
  112. package/dist/cli/bundler/plugins/watch/WatchPlugin.js +16 -0
  113. package/dist/cli/bundler/plugins/watch/WatchPlugin.js.map +1 -0
  114. package/dist/cli/bundler/plugins/watch/index.d.ts +1 -0
  115. package/dist/cli/bundler/plugins/watch/index.js +5 -0
  116. package/dist/cli/bundler/plugins/watch/index.js.map +1 -0
  117. package/dist/cli/bundler/utils/chunk-filename.d.ts +6 -0
  118. package/dist/cli/bundler/utils/chunk-filename.js +93 -0
  119. package/dist/cli/bundler/utils/chunk-filename.js.map +1 -0
  120. package/dist/cli/bundler/utils/index.d.ts +2 -0
  121. package/dist/cli/bundler/utils/index.js +2 -0
  122. package/dist/cli/bundler/utils/index.js.map +1 -1
  123. package/dist/cli/bundler/utils/layers.d.ts +4 -0
  124. package/dist/cli/bundler/utils/layers.js +10 -0
  125. package/dist/cli/bundler/utils/layers.js.map +1 -0
  126. package/dist/cli/bundler/utils/output.d.ts +6 -2
  127. package/dist/cli/bundler/utils/output.js +165 -7
  128. package/dist/cli/bundler/utils/output.js.map +1 -1
  129. package/dist/cli/bundler/utils/styles.d.ts +5 -0
  130. package/dist/cli/bundler/utils/styles.js +30 -0
  131. package/dist/cli/bundler/utils/styles.js.map +1 -0
  132. package/dist/cli/entrypoint/file/ExpressionFile.d.ts +4 -1
  133. package/dist/cli/entrypoint/file/ExpressionFile.js +11 -0
  134. package/dist/cli/entrypoint/file/ExpressionFile.js.map +1 -1
  135. package/dist/cli/entrypoint/file/OptionFile.d.ts +4 -2
  136. package/dist/cli/entrypoint/file/OptionFile.js +35 -31
  137. package/dist/cli/entrypoint/file/OptionFile.js.map +1 -1
  138. package/dist/cli/entrypoint/file/SourceFile.d.ts +18 -7
  139. package/dist/cli/entrypoint/file/SourceFile.js +260 -156
  140. package/dist/cli/entrypoint/file/SourceFile.js.map +1 -1
  141. package/dist/cli/entrypoint/file/index.d.ts +2 -0
  142. package/dist/cli/entrypoint/file/index.js +2 -0
  143. package/dist/cli/entrypoint/file/index.js.map +1 -1
  144. package/dist/cli/entrypoint/file/injectors/core.js +22 -1
  145. package/dist/cli/entrypoint/file/injectors/core.js.map +1 -1
  146. package/dist/cli/entrypoint/file/parsers/ExportParser.d.ts +14 -0
  147. package/dist/cli/entrypoint/file/parsers/ExportParser.js +71 -0
  148. package/dist/cli/entrypoint/file/parsers/ExportParser.js.map +1 -0
  149. package/dist/cli/entrypoint/file/parsers/NodeFinder.d.ts +2 -0
  150. package/dist/cli/entrypoint/file/parsers/NodeFinder.js +9 -0
  151. package/dist/cli/entrypoint/file/parsers/NodeFinder.js.map +1 -1
  152. package/dist/cli/entrypoint/file/parsers/ObjectParser.js +5 -1
  153. package/dist/cli/entrypoint/file/parsers/ObjectParser.js.map +1 -1
  154. package/dist/cli/entrypoint/file/parsers/index.d.ts +1 -0
  155. package/dist/cli/entrypoint/file/parsers/index.js +2 -0
  156. package/dist/cli/entrypoint/file/parsers/index.js.map +1 -1
  157. package/dist/cli/entrypoint/file/parsers/types.d.ts +16 -0
  158. package/dist/cli/entrypoint/file/parsers/types.js +13 -0
  159. package/dist/cli/entrypoint/file/parsers/types.js.map +1 -1
  160. package/dist/cli/entrypoint/file/resolvers/ImportResolver.d.ts +1 -0
  161. package/dist/cli/entrypoint/file/resolvers/ImportResolver.js +3 -0
  162. package/dist/cli/entrypoint/file/resolvers/ImportResolver.js.map +1 -1
  163. package/dist/cli/entrypoint/file/types.d.ts +26 -1
  164. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.d.ts +2 -2
  165. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js +2 -2
  166. package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js.map +1 -1
  167. package/dist/cli/entrypoint/finder/{AbstractOptionsFinder.js → AbstractParsedFinder.js} +3 -3
  168. package/dist/cli/entrypoint/finder/AbstractParsedFinder.js.map +1 -0
  169. package/dist/cli/entrypoint/finder/OptionsFinder.d.ts +13 -0
  170. package/dist/cli/entrypoint/finder/OptionsFinder.js +33 -0
  171. package/dist/cli/entrypoint/finder/OptionsFinder.js.map +1 -0
  172. package/dist/cli/entrypoint/finder/PluginFinder.d.ts +4 -4
  173. package/dist/cli/entrypoint/finder/PluginFinder.js +2 -2
  174. package/dist/cli/entrypoint/finder/PluginFinder.js.map +1 -1
  175. package/dist/cli/entrypoint/finder/index.d.ts +2 -1
  176. package/dist/cli/entrypoint/finder/index.js +20 -18
  177. package/dist/cli/entrypoint/finder/index.js.map +1 -1
  178. package/dist/cli/entrypoint/parser/AbstractParser.d.ts +3 -2
  179. package/dist/cli/entrypoint/parser/AbstractParser.js +6 -3
  180. package/dist/cli/entrypoint/parser/AbstractParser.js.map +1 -1
  181. package/dist/cli/entrypoint/parser/CommandParser.js +1 -1
  182. package/dist/cli/entrypoint/parser/CommandParser.js.map +1 -1
  183. package/dist/cli/entrypoint/parser/ContentParser.d.ts +5 -1
  184. package/dist/cli/entrypoint/parser/ContentParser.js +55 -3
  185. package/dist/cli/entrypoint/parser/ContentParser.js.map +1 -1
  186. package/dist/cli/entrypoint/parser/OptionsParser.d.ts +6 -0
  187. package/dist/cli/entrypoint/parser/OptionsParser.js +16 -0
  188. package/dist/cli/entrypoint/parser/OptionsParser.js.map +1 -0
  189. package/dist/cli/entrypoint/parser/RelayParser.d.ts +21 -2
  190. package/dist/cli/entrypoint/parser/RelayParser.js +4 -0
  191. package/dist/cli/entrypoint/parser/RelayParser.js.map +1 -1
  192. package/dist/cli/entrypoint/parser/index.d.ts +1 -0
  193. package/dist/cli/entrypoint/parser/index.js +16 -14
  194. package/dist/cli/entrypoint/parser/index.js.map +1 -1
  195. package/dist/cli/plugins/asset.js +9 -4
  196. package/dist/cli/plugins/asset.js.map +1 -1
  197. package/dist/cli/plugins/background/index.js +1 -1
  198. package/dist/cli/plugins/background/index.js.map +1 -1
  199. package/dist/cli/plugins/content/Content.d.ts +1 -1
  200. package/dist/cli/plugins/content/Content.js +3 -2
  201. package/dist/cli/plugins/content/Content.js.map +1 -1
  202. package/dist/cli/plugins/content/ContentManager.d.ts +8 -5
  203. package/dist/cli/plugins/content/ContentManager.js +79 -28
  204. package/dist/cli/plugins/content/ContentManager.js.map +1 -1
  205. package/dist/cli/plugins/content/ContentName.d.ts +1 -1
  206. package/dist/cli/plugins/content/ContentName.js +8 -7
  207. package/dist/cli/plugins/content/ContentName.js.map +1 -1
  208. package/dist/cli/plugins/content/Relay.d.ts +1 -1
  209. package/dist/cli/plugins/content/Relay.js +3 -2
  210. package/dist/cli/plugins/content/Relay.js.map +1 -1
  211. package/dist/cli/plugins/content/bundler.d.ts +7 -0
  212. package/dist/cli/plugins/content/bundler.js +47 -0
  213. package/dist/cli/plugins/content/bundler.js.map +1 -0
  214. package/dist/cli/plugins/content/index.js +121 -62
  215. package/dist/cli/plugins/content/index.js.map +1 -1
  216. package/dist/cli/plugins/content/relay-module.d.ts +3 -0
  217. package/dist/cli/plugins/content/relay-module.js +11 -0
  218. package/dist/cli/plugins/content/relay-module.js.map +1 -0
  219. package/dist/cli/plugins/content/types.d.ts +1 -1
  220. package/dist/cli/plugins/content/utils.d.ts +2 -0
  221. package/dist/cli/plugins/content/utils.js +8 -1
  222. package/dist/cli/plugins/content/utils.js.map +1 -1
  223. package/dist/cli/plugins/icon/declaration/IconDeclaration.d.ts +1 -1
  224. package/dist/cli/plugins/icon/declaration/IconDeclaration.js +6 -6
  225. package/dist/cli/plugins/icon/declaration/IconDeclaration.js.map +1 -1
  226. package/dist/cli/plugins/icon/declaration/icon.d.ts +3 -5
  227. package/dist/cli/plugins/icon/icon-module.d.ts +2 -0
  228. package/dist/cli/plugins/icon/icon-module.js +11 -0
  229. package/dist/cli/plugins/icon/icon-module.js.map +1 -0
  230. package/dist/cli/plugins/icon/index.js +5 -3
  231. package/dist/cli/plugins/icon/index.js.map +1 -1
  232. package/dist/cli/plugins/index.d.ts +1 -0
  233. package/dist/cli/plugins/index.js +22 -20
  234. package/dist/cli/plugins/index.js.map +1 -1
  235. package/dist/cli/plugins/locale/Locale.d.ts +9 -2
  236. package/dist/cli/plugins/locale/Locale.js +37 -5
  237. package/dist/cli/plugins/locale/Locale.js.map +1 -1
  238. package/dist/cli/plugins/locale/declaration/locale.d.ts +1 -1
  239. package/dist/cli/plugins/locale/index.js +57 -22
  240. package/dist/cli/plugins/locale/index.js.map +1 -1
  241. package/dist/cli/plugins/locale/locale-module.d.ts +4 -0
  242. package/dist/cli/plugins/locale/locale-module.js +16 -0
  243. package/dist/cli/plugins/locale/locale-module.js.map +1 -0
  244. package/dist/cli/plugins/offscreen/Offscreen.d.ts +2 -3
  245. package/dist/cli/plugins/offscreen/Offscreen.js.map +1 -1
  246. package/dist/cli/plugins/offscreen/index.js +5 -4
  247. package/dist/cli/plugins/offscreen/index.js.map +1 -1
  248. package/dist/cli/plugins/offscreen/offscreen-module.d.ts +3 -0
  249. package/dist/cli/plugins/offscreen/offscreen-module.js +11 -0
  250. package/dist/cli/plugins/offscreen/offscreen-module.js.map +1 -0
  251. package/dist/cli/plugins/options/Options.d.ts +10 -0
  252. package/dist/cli/plugins/options/Options.js +24 -0
  253. package/dist/cli/plugins/options/Options.js.map +1 -0
  254. package/dist/cli/plugins/options/index.d.ts +2 -0
  255. package/dist/cli/plugins/options/index.js +41 -0
  256. package/dist/cli/plugins/options/index.js.map +1 -0
  257. package/dist/cli/plugins/output.js +33 -3
  258. package/dist/cli/plugins/output.js.map +1 -1
  259. package/dist/cli/plugins/page/declaration/PageDeclaration.js +4 -4
  260. package/dist/cli/plugins/page/declaration/PageDeclaration.js.map +1 -1
  261. package/dist/cli/plugins/page/declaration/page.d.ts +3 -3
  262. package/dist/cli/plugins/page/index.js +14 -10
  263. package/dist/cli/plugins/page/index.js.map +1 -1
  264. package/dist/cli/plugins/page/page-module.d.ts +2 -0
  265. package/dist/cli/plugins/page/page-module.js +11 -0
  266. package/dist/cli/plugins/page/page-module.js.map +1 -0
  267. package/dist/cli/plugins/popup/Popup.d.ts +1 -1
  268. package/dist/cli/plugins/popup/Popup.js +2 -2
  269. package/dist/cli/plugins/popup/Popup.js.map +1 -1
  270. package/dist/cli/plugins/popup/declaration/PopupDeclaration.d.ts +1 -1
  271. package/dist/cli/plugins/popup/declaration/PopupDeclaration.js +6 -6
  272. package/dist/cli/plugins/popup/declaration/PopupDeclaration.js.map +1 -1
  273. package/dist/cli/plugins/popup/declaration/popup.d.ts +3 -3
  274. package/dist/cli/plugins/popup/index.js +6 -5
  275. package/dist/cli/plugins/popup/index.js.map +1 -1
  276. package/dist/cli/plugins/popup/popup-module.d.ts +3 -0
  277. package/dist/cli/plugins/popup/popup-module.js +11 -0
  278. package/dist/cli/plugins/popup/popup-module.js.map +1 -0
  279. package/dist/cli/plugins/sandbox/Sandbox.d.ts +1 -2
  280. package/dist/cli/plugins/sandbox/Sandbox.js.map +1 -1
  281. package/dist/cli/plugins/sandbox/index.js +5 -4
  282. package/dist/cli/plugins/sandbox/index.js.map +1 -1
  283. package/dist/cli/plugins/sandbox/sandbox-module.d.ts +3 -0
  284. package/dist/cli/plugins/sandbox/sandbox-module.js +11 -0
  285. package/dist/cli/plugins/sandbox/sandbox-module.js.map +1 -0
  286. package/dist/cli/plugins/sidebar/Sidebar.d.ts +1 -1
  287. package/dist/cli/plugins/sidebar/Sidebar.js +2 -2
  288. package/dist/cli/plugins/sidebar/Sidebar.js.map +1 -1
  289. package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.d.ts +1 -1
  290. package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.js +6 -6
  291. package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.js.map +1 -1
  292. package/dist/cli/plugins/sidebar/declaration/sidebar.d.ts +3 -3
  293. package/dist/cli/plugins/sidebar/index.js +6 -5
  294. package/dist/cli/plugins/sidebar/index.js.map +1 -1
  295. package/dist/cli/plugins/sidebar/sidebar-module.d.ts +3 -0
  296. package/dist/cli/plugins/sidebar/sidebar-module.js +11 -0
  297. package/dist/cli/plugins/sidebar/sidebar-module.js.map +1 -0
  298. package/dist/cli/plugins/style/index.d.ts +2 -1
  299. package/dist/cli/plugins/style/index.js +52 -25
  300. package/dist/cli/plugins/style/index.js.map +1 -1
  301. package/dist/cli/plugins/style/types.d.ts +5 -0
  302. package/dist/cli/plugins/style/types.js +1 -0
  303. package/dist/cli/plugins/style/types.js.map +1 -0
  304. package/dist/cli/plugins/view/index.js +1 -1
  305. package/dist/cli/plugins/view/index.js.map +1 -1
  306. package/dist/cli/raw.d.ts +4 -0
  307. package/dist/cli/resolvers/bundler.js +9 -7
  308. package/dist/cli/resolvers/bundler.js.map +1 -1
  309. package/dist/cli/resolvers/config.js +4 -1
  310. package/dist/cli/resolvers/config.js.map +1 -1
  311. package/dist/cli/virtual/index.d.ts +2 -2
  312. package/dist/cli/virtual/index.js +11 -8
  313. package/dist/cli/virtual/virtual.d.ts +8 -10
  314. package/dist/entry/content/adapters/react/Builder.js +1 -1
  315. package/dist/entry/content/adapters/react/Builder.js.map +1 -1
  316. package/dist/entry/content/adapters/react/Node.d.ts +2 -0
  317. package/dist/entry/content/adapters/react/Node.js +10 -2
  318. package/dist/entry/content/adapters/react/Node.js.map +1 -1
  319. package/dist/entry/content/adapters/vanilla/Builder.js +1 -1
  320. package/dist/entry/content/adapters/vanilla/Builder.js.map +1 -1
  321. package/dist/entry/content/adapters/vanilla/Node.d.ts +2 -1
  322. package/dist/entry/content/adapters/vanilla/Node.js +10 -7
  323. package/dist/entry/content/adapters/vanilla/Node.js.map +1 -1
  324. package/dist/entry/content/core/Builder.d.ts +1 -2
  325. package/dist/entry/content/core/Builder.js +9 -5
  326. package/dist/entry/content/core/Builder.js.map +1 -1
  327. package/dist/entry/content/core/MountBuilder.js +14 -6
  328. package/dist/entry/content/core/MountBuilder.js.map +1 -1
  329. package/dist/entry/content/core/{Context.d.ts → context/Context.d.ts} +2 -1
  330. package/dist/entry/content/core/{Context.js → context/Context.js} +7 -0
  331. package/dist/entry/content/core/context/Context.js.map +1 -0
  332. package/dist/entry/content/core/{EventEmitter.d.ts → context/EventEmitter.d.ts} +1 -1
  333. package/dist/entry/content/core/{EventEmitter.js → context/EventEmitter.js} +1 -1
  334. package/dist/entry/content/core/context/EventEmitter.js.map +1 -0
  335. package/dist/entry/content/core/{ManagedContext.d.ts → context/ManagedContext.d.ts} +1 -1
  336. package/dist/entry/content/core/context/ManagedContext.js.map +1 -0
  337. package/dist/entry/content/core/context/index.d.ts +3 -0
  338. package/dist/entry/content/core/context/index.js +9 -0
  339. package/dist/entry/content/core/context/index.js.map +1 -0
  340. package/dist/entry/content/core/{AbstractMarker.d.ts → markers/AbstractMarker.d.ts} +1 -1
  341. package/dist/entry/content/core/{AbstractMarker.js → markers/AbstractMarker.js} +1 -1
  342. package/dist/entry/content/core/markers/AbstractMarker.js.map +1 -0
  343. package/dist/entry/content/core/{AttributeMarker.d.ts → markers/AttributeMarker.d.ts} +1 -1
  344. package/dist/entry/content/core/markers/AttributeMarker.js.map +1 -0
  345. package/dist/entry/content/core/{WeakMarker.d.ts → markers/WeakMarker.d.ts} +1 -1
  346. package/dist/entry/content/core/markers/WeakMarker.js.map +1 -0
  347. package/dist/entry/content/core/markers/index.d.ts +3 -0
  348. package/dist/entry/content/core/markers/index.js +9 -0
  349. package/dist/entry/content/core/markers/index.js.map +1 -0
  350. package/dist/entry/content/core/{EventNode.d.ts → nodes/EventNode.d.ts} +2 -1
  351. package/dist/entry/content/core/{EventNode.js → nodes/EventNode.js} +3 -0
  352. package/dist/entry/content/core/nodes/EventNode.js.map +1 -0
  353. package/dist/entry/content/core/nodes/FrameNode.d.ts +23 -0
  354. package/dist/entry/content/core/nodes/FrameNode.js +125 -0
  355. package/dist/entry/content/core/nodes/FrameNode.js.map +1 -0
  356. package/dist/entry/content/core/{MarkerNode.d.ts → nodes/MarkerNode.d.ts} +2 -1
  357. package/dist/entry/content/core/{MarkerNode.js → nodes/MarkerNode.js} +3 -0
  358. package/dist/entry/content/core/nodes/MarkerNode.js.map +1 -0
  359. package/dist/entry/content/core/{MountNode.d.ts → nodes/MountNode.d.ts} +2 -1
  360. package/dist/entry/content/core/{MountNode.js → nodes/MountNode.js} +3 -0
  361. package/dist/entry/content/core/nodes/MountNode.js.map +1 -0
  362. package/dist/entry/content/core/{Node.d.ts → nodes/Node.d.ts} +2 -1
  363. package/dist/entry/content/core/{Node.js → nodes/Node.js} +3 -0
  364. package/dist/entry/content/core/nodes/Node.js.map +1 -0
  365. package/dist/entry/content/core/nodes/ShadowNode.d.ts +14 -0
  366. package/dist/entry/content/core/nodes/ShadowNode.js +67 -0
  367. package/dist/entry/content/core/nodes/ShadowNode.js.map +1 -0
  368. package/dist/entry/content/core/nodes/index.d.ts +6 -0
  369. package/dist/entry/content/core/nodes/index.js +15 -0
  370. package/dist/entry/content/core/nodes/index.js.map +1 -0
  371. package/dist/entry/content/core/nodes/isolated-styles.d.ts +2 -0
  372. package/dist/entry/content/core/nodes/isolated-styles.js +14 -0
  373. package/dist/entry/content/core/nodes/isolated-styles.js.map +1 -0
  374. package/dist/entry/content/core/resolvers/watch.js +1 -1
  375. package/dist/entry/content/core/resolvers/watch.js.map +1 -1
  376. package/dist/entry/content/frame/Builder.d.ts +7 -0
  377. package/dist/entry/content/frame/Builder.js +14 -0
  378. package/dist/entry/content/frame/Builder.js.map +1 -0
  379. package/dist/entry/content/frame/index.d.ts +4 -0
  380. package/dist/entry/content/frame/index.js +7 -0
  381. package/dist/entry/content/frame/index.js.map +1 -0
  382. package/dist/entry/relay/Builder.js +5 -1
  383. package/dist/entry/relay/Builder.js.map +1 -1
  384. package/dist/entry/relay/index.d.ts +1 -1
  385. package/dist/locale/adapters/react/ReactLocale.d.ts +18 -0
  386. package/dist/locale/adapters/react/ReactLocale.js +41 -0
  387. package/dist/locale/adapters/react/ReactLocale.js.map +1 -0
  388. package/dist/locale/adapters/react/hooks/use-locale-attributes.d.ts +7 -0
  389. package/dist/locale/adapters/react/hooks/use-locale-attributes.js +30 -0
  390. package/dist/locale/adapters/react/hooks/use-locale-attributes.js.map +1 -0
  391. package/dist/locale/adapters/react/hooks/use-locale.d.ts +3 -0
  392. package/dist/locale/adapters/react/hooks/use-locale.js +17 -0
  393. package/dist/locale/adapters/react/hooks/use-locale.js.map +1 -0
  394. package/dist/locale/adapters/react/hooks/use-native-locale.d.ts +3 -0
  395. package/dist/locale/adapters/react/hooks/use-native-locale.js +10 -0
  396. package/dist/locale/adapters/react/hooks/use-native-locale.js.map +1 -0
  397. package/dist/locale/adapters/react/index.d.ts +4 -2
  398. package/dist/locale/adapters/react/index.js +6 -4
  399. package/dist/locale/adapters/react/index.js.map +1 -1
  400. package/dist/locale/adapters/react/types.d.ts +22 -0
  401. package/dist/locale/adapters/react/types.js +1 -0
  402. package/dist/locale/adapters/react/types.js.map +1 -0
  403. package/dist/locale/helpers.d.ts +4 -5
  404. package/dist/locale/helpers.js +1 -1
  405. package/dist/locale/helpers.js.map +1 -1
  406. package/dist/locale/index.d.ts +2 -1
  407. package/dist/locale/index.js +1 -0
  408. package/dist/locale/index.js.map +1 -1
  409. package/dist/locale/providers/AbstractLocale.d.ts +4 -4
  410. package/dist/locale/providers/AbstractLocale.js +13 -94
  411. package/dist/locale/providers/AbstractLocale.js.map +1 -1
  412. package/dist/locale/providers/CustomLocale.d.ts +3 -3
  413. package/dist/locale/providers/CustomLocale.js +6 -5
  414. package/dist/locale/providers/CustomLocale.js.map +1 -1
  415. package/dist/locale/providers/DynamicLocale.d.ts +18 -11
  416. package/dist/locale/providers/DynamicLocale.js +60 -47
  417. package/dist/locale/providers/DynamicLocale.js.map +1 -1
  418. package/dist/locale/providers/NativeLocale.d.ts +4 -7
  419. package/dist/locale/providers/NativeLocale.js +5 -14
  420. package/dist/locale/providers/NativeLocale.js.map +1 -1
  421. package/dist/locale/providers/ObservableLocale.d.ts +35 -0
  422. package/dist/locale/providers/ObservableLocale.js +179 -0
  423. package/dist/locale/providers/ObservableLocale.js.map +1 -0
  424. package/dist/locale/providers/index.d.ts +2 -1
  425. package/dist/locale/providers/index.js +3 -1
  426. package/dist/locale/providers/index.js.map +1 -1
  427. package/dist/locale/storage/LocaleStorage.d.ts +11 -0
  428. package/dist/locale/storage/LocaleStorage.js +40 -0
  429. package/dist/locale/storage/LocaleStorage.js.map +1 -0
  430. package/dist/locale/storage/index.d.ts +1 -0
  431. package/dist/locale/storage/index.js +5 -0
  432. package/dist/locale/storage/index.js.map +1 -0
  433. package/dist/main/entrypoint.d.ts +4 -0
  434. package/dist/main/entrypoint.js +20 -0
  435. package/dist/main/entrypoint.js.map +1 -0
  436. package/dist/main/icon.d.ts +2 -3
  437. package/dist/main/icon.js +2 -1
  438. package/dist/main/icon.js.map +1 -1
  439. package/dist/main/index.d.ts +2 -0
  440. package/dist/main/index.js +2 -0
  441. package/dist/main/index.js.map +1 -1
  442. package/dist/main/offscreen.d.ts +2 -5
  443. package/dist/main/offscreen.js +5 -2
  444. package/dist/main/offscreen.js.map +1 -1
  445. package/dist/main/options.d.ts +3 -0
  446. package/dist/main/options.js +7 -0
  447. package/dist/main/options.js.map +1 -0
  448. package/dist/main/page.d.ts +2 -4
  449. package/dist/main/page.js +2 -1
  450. package/dist/main/page.js.map +1 -1
  451. package/dist/main/popup.d.ts +2 -5
  452. package/dist/main/popup.js +3 -3
  453. package/dist/main/popup.js.map +1 -1
  454. package/dist/main/relay.d.ts +1 -2
  455. package/dist/main/relay.js +2 -1
  456. package/dist/main/relay.js.map +1 -1
  457. package/dist/main/sandbox.d.ts +1 -4
  458. package/dist/main/sandbox.js +2 -1
  459. package/dist/main/sandbox.js.map +1 -1
  460. package/dist/main/service.d.ts +1 -2
  461. package/dist/main/service.js.map +1 -1
  462. package/dist/main/sidebar.d.ts +2 -5
  463. package/dist/main/sidebar.js +3 -3
  464. package/dist/main/sidebar.js.map +1 -1
  465. package/dist/message/index.d.ts +2 -4
  466. package/dist/message/index.js.map +1 -1
  467. package/dist/offscreen/index.d.ts +2 -6
  468. package/dist/offscreen/index.js.map +1 -1
  469. package/dist/relay/index.d.ts +2 -5
  470. package/dist/relay/index.js.map +1 -1
  471. package/dist/sandbox/index.d.ts +1 -5
  472. package/dist/sandbox/index.js.map +1 -1
  473. package/dist/service/index.d.ts +2 -6
  474. package/dist/service/index.js.map +1 -1
  475. package/dist/shared/content/index.d.ts +1 -0
  476. package/dist/shared/content/index.js +6 -0
  477. package/dist/shared/content/index.js.map +1 -0
  478. package/dist/shared/content/isolation.d.ts +4 -0
  479. package/dist/shared/content/isolation.js +70 -0
  480. package/dist/shared/content/isolation.js.map +1 -0
  481. package/dist/shared/locale/index.d.ts +5 -0
  482. package/dist/shared/locale/index.js +21 -0
  483. package/dist/shared/locale/index.js.map +1 -0
  484. package/dist/shared/locale/keys.d.ts +5 -0
  485. package/dist/shared/locale/keys.js +33 -0
  486. package/dist/shared/locale/keys.js.map +1 -0
  487. package/dist/shared/locale/language.d.ts +4 -0
  488. package/dist/shared/locale/language.js +23 -0
  489. package/dist/shared/locale/language.js.map +1 -0
  490. package/dist/shared/locale/messages.d.ts +3 -0
  491. package/dist/shared/locale/messages.js +9 -0
  492. package/dist/shared/locale/messages.js.map +1 -0
  493. package/dist/shared/locale/plural.d.ts +2 -0
  494. package/dist/shared/locale/plural.js +81 -0
  495. package/dist/shared/locale/plural.js.map +1 -0
  496. package/dist/shared/locale/substitutions.d.ts +10 -0
  497. package/dist/shared/locale/substitutions.js +32 -0
  498. package/dist/shared/locale/substitutions.js.map +1 -0
  499. package/dist/types/background.d.ts +1 -1
  500. package/dist/types/background.js.map +1 -1
  501. package/dist/types/command.d.ts +1 -1
  502. package/dist/types/command.js.map +1 -1
  503. package/dist/types/content.d.ts +120 -31
  504. package/dist/types/content.js +22 -1
  505. package/dist/types/content.js.map +1 -1
  506. package/dist/types/entrypoint.d.ts +20 -0
  507. package/dist/types/entrypoint.js +4 -0
  508. package/dist/types/entrypoint.js.map +1 -1
  509. package/dist/types/icon.d.ts +8 -0
  510. package/dist/types/icon.js.map +1 -1
  511. package/dist/types/language.d.ts +57 -0
  512. package/dist/types/language.js +62 -0
  513. package/dist/types/language.js.map +1 -0
  514. package/dist/types/locale.d.ts +34 -63
  515. package/dist/types/locale.js +62 -119
  516. package/dist/types/locale.js.map +1 -1
  517. package/dist/types/manifest.d.ts +24 -7
  518. package/dist/types/manifest.js.map +1 -1
  519. package/dist/types/message.d.ts +7 -0
  520. package/dist/types/message.js.map +1 -1
  521. package/dist/types/offscreen.d.ts +14 -1
  522. package/dist/types/offscreen.js.map +1 -1
  523. package/dist/types/options.d.ts +9 -0
  524. package/dist/types/options.js +1 -0
  525. package/dist/types/options.js.map +1 -0
  526. package/dist/types/page.d.ts +8 -0
  527. package/dist/types/plugin.d.ts +2 -1
  528. package/dist/types/popup.d.ts +9 -0
  529. package/dist/types/relay.d.ts +16 -7
  530. package/dist/types/relay.js.map +1 -1
  531. package/dist/types/sandbox.d.ts +12 -0
  532. package/dist/types/sandbox.js.map +1 -1
  533. package/dist/types/service.d.ts +10 -1
  534. package/dist/types/service.js.map +1 -1
  535. package/dist/types/sidebar.d.ts +9 -0
  536. package/dist/types/sidebar.js.map +1 -1
  537. package/dist/types/transport.d.ts +4 -0
  538. package/dist/virtual/entrypoint.d.ts +5 -0
  539. package/dist/virtual/entrypoint.js +7 -0
  540. package/dist/virtual/entrypoint.js.map +1 -0
  541. package/dist/virtual/icon.d.ts +2 -0
  542. package/dist/virtual/icon.js +5 -0
  543. package/dist/virtual/icon.js.map +1 -0
  544. package/dist/virtual/locale.d.ts +7 -0
  545. package/dist/virtual/locale.js +13 -0
  546. package/dist/virtual/locale.js.map +1 -0
  547. package/dist/virtual/modules.d.ts +40 -0
  548. package/dist/virtual/offscreen.d.ts +3 -0
  549. package/dist/virtual/offscreen.js +5 -0
  550. package/dist/virtual/offscreen.js.map +1 -0
  551. package/dist/virtual/page.d.ts +2 -0
  552. package/dist/virtual/page.js +5 -0
  553. package/dist/virtual/page.js.map +1 -0
  554. package/dist/virtual/popup.d.ts +3 -0
  555. package/dist/virtual/popup.js +5 -0
  556. package/dist/virtual/popup.js.map +1 -0
  557. package/dist/virtual/relay.d.ts +3 -0
  558. package/dist/virtual/relay.js +5 -0
  559. package/dist/virtual/relay.js.map +1 -0
  560. package/dist/virtual/sandbox.d.ts +3 -0
  561. package/dist/virtual/sandbox.js +5 -0
  562. package/dist/virtual/sandbox.js.map +1 -0
  563. package/dist/virtual/sidebar.d.ts +3 -0
  564. package/dist/virtual/sidebar.js +5 -0
  565. package/dist/virtual/sidebar.js.map +1 -0
  566. package/package.json +31 -10
  567. package/scripts/clean-dist.js +7 -0
  568. package/scripts/copy-dts.js +11 -1
  569. package/types/client.d.ts +15 -0
  570. package/dist/cli/builders/manifest/utils.d.ts +0 -32
  571. package/dist/cli/builders/manifest/utils.js +0 -209
  572. package/dist/cli/builders/manifest/utils.js.map +0 -1
  573. package/dist/cli/bundler/plugins/EntrypointPlugin.js.map +0 -1
  574. package/dist/cli/bundler/plugins/GenerateJsonPlugin.js +0 -40
  575. package/dist/cli/bundler/plugins/GenerateJsonPlugin.js.map +0 -1
  576. package/dist/cli/bundler/plugins/ManifestPlugin.d.ts +0 -10
  577. package/dist/cli/bundler/plugins/ManifestPlugin.js +0 -78
  578. package/dist/cli/bundler/plugins/ManifestPlugin.js.map +0 -1
  579. package/dist/cli/bundler/plugins/ReplacePlugin.js.map +0 -1
  580. package/dist/cli/bundler/plugins/WatchPlugin.js +0 -21
  581. package/dist/cli/bundler/plugins/WatchPlugin.js.map +0 -1
  582. package/dist/cli/entrypoint/finder/AbstractOptionsFinder.js.map +0 -1
  583. package/dist/entry/content/core/AbstractMarker.js.map +0 -1
  584. package/dist/entry/content/core/AttributeMarker.js.map +0 -1
  585. package/dist/entry/content/core/Context.js.map +0 -1
  586. package/dist/entry/content/core/EventEmitter.js.map +0 -1
  587. package/dist/entry/content/core/EventNode.js.map +0 -1
  588. package/dist/entry/content/core/ManagedContext.js.map +0 -1
  589. package/dist/entry/content/core/MarkerNode.js.map +0 -1
  590. package/dist/entry/content/core/MountNode.js.map +0 -1
  591. package/dist/entry/content/core/Node.js.map +0 -1
  592. package/dist/entry/content/core/WeakMarker.js.map +0 -1
  593. package/dist/locale/adapters/react/LocaleProvider.d.ts +0 -7
  594. package/dist/locale/adapters/react/LocaleProvider.js +0 -58
  595. package/dist/locale/adapters/react/LocaleProvider.js.map +0 -1
  596. package/dist/locale/adapters/react/context.d.ts +0 -14
  597. package/dist/locale/adapters/react/context.js +0 -25
  598. package/dist/locale/adapters/react/context.js.map +0 -1
  599. package/dist/locale/utils.d.ts +0 -11
  600. package/dist/locale/utils.js +0 -67
  601. package/dist/locale/utils.js.map +0 -1
  602. /package/dist/cli/bundler/plugins/{ReplacePlugin.d.ts → replace/ReplacePlugin.d.ts} +0 -0
  603. /package/dist/cli/bundler/plugins/{ReplacePlugin.js → replace/ReplacePlugin.js} +0 -0
  604. /package/dist/cli/bundler/plugins/{WatchPlugin.d.ts → watch/WatchPlugin.d.ts} +0 -0
  605. /package/dist/cli/entrypoint/finder/{AbstractOptionsFinder.d.ts → AbstractParsedFinder.d.ts} +0 -0
  606. /package/dist/entry/content/core/{ManagedContext.js → context/ManagedContext.js} +0 -0
  607. /package/dist/entry/content/core/{AttributeMarker.js → markers/AttributeMarker.js} +0 -0
  608. /package/dist/entry/content/core/{WeakMarker.js → markers/WeakMarker.js} +0 -0
@@ -1,87 +1,146 @@
1
- import { DefinePlugin } from "@rspack/core";
2
- import { merge as mergeConfig } from "webpack-merge";
3
1
  import ContentManager from "./ContentManager.js";
4
2
  import Content from "./Content.js";
5
3
  import Relay from "./Relay.js";
6
4
  import RelayDeclaration from "./RelayDeclaration.js";
5
+ import { hasIsolatedTarget } from "./utils.js";
6
+ import { createPageAccessRequirements, getContentChunkName, validateContentStyles } from "./bundler.js";
7
+ import { createRelayModule, RelayModuleName } from "./relay-module.js";
7
8
  import { definePlugin } from "./../../../main/plugin.js";
8
- import { EntrypointPlugin, onlyViaTopLevelEntry } from "./../../../cli/bundler/index.js";
9
- import { getResolvePath, getSourcePath } from "./../../../cli/resolvers/path.js";
9
+ import { PageFinder } from "./../../../cli/entrypoint/index.js";
10
+ import { getContentLayer } from "./../../../cli/bundler/utils/layers.js";
11
+ import {
12
+ appFilenameResolver,
13
+ ChunkLoaderPlugin,
14
+ EntrypointPlugin,
15
+ onlyViaTopLevelEntry,
16
+ IsolatedStylesPlugin,
17
+ ResourceAccessPlugin,
18
+ GenerateModulePlugin
19
+ } from "./../../../cli/bundler/index.js";
10
20
  import { Command } from "./../../../types/app.js";
21
+ import { ContentScriptStylesRuntimeProperty, ContentScriptWorld } from "./../../../types/content.js";
11
22
  var content_default = definePlugin(() => {
12
- let content;
13
- let relay;
14
- let manager;
23
+ let contentProvider;
24
+ let relayProvider;
25
+ let contentManager;
15
26
  let relayDeclaration;
16
27
  return {
17
28
  name: "adnbn:content",
18
- startup: async ({ config }) => {
19
- content = new Content(config);
20
- relay = new Relay(config);
21
- manager = new ContentManager(config).provider(content).provider(relay);
29
+ startup: ({ config }) => {
30
+ contentProvider = new Content(config);
31
+ relayProvider = new Relay(config);
32
+ contentManager = new ContentManager(config).provider(contentProvider).provider(relayProvider);
22
33
  relayDeclaration = new RelayDeclaration(config);
23
34
  },
24
- content: () => content.files(),
25
- relay: () => relay.files(),
35
+ content: () => contentProvider.files(),
36
+ relay: () => relayProvider.files(),
26
37
  bundler: async ({ config }) => {
27
- relayDeclaration.dictionary(await relay.dictionary()).build();
28
- let rspack = {};
29
- let options = {};
30
- if (await manager.empty()) {
38
+ relayDeclaration.dictionary(await relayProvider.dictionary()).build();
39
+ let entryOptionsByName = await contentManager.entryOptions();
40
+ const getModules = async () => ({
41
+ [RelayModuleName]: createRelayModule(await relayProvider.getOptionsMap())
42
+ });
43
+ const modulePlugin = new GenerateModulePlugin(await getModules());
44
+ if (config.command === Command.Watch) {
45
+ modulePlugin.watch(getModules);
46
+ }
47
+ const basePlugins = [
48
+ modulePlugin,
49
+ new ResourceAccessPlugin({
50
+ requirements: async () => {
51
+ if (!Array.from(entryOptionsByName.values()).some(
52
+ (options) => {
53
+ var _a;
54
+ return ((_a = options.isolation) == null ? void 0 : _a.page) !== void 0;
55
+ }
56
+ )) {
57
+ return [];
58
+ }
59
+ const views = await new PageFinder(config).views();
60
+ const pages = new Map(Array.from(views.values(), (view) => [view.alias, view.filename]));
61
+ return createPageAccessRequirements(entryOptionsByName, pages);
62
+ }
63
+ })
64
+ ];
65
+ if (await contentManager.empty()) {
31
66
  if (config.debug) {
32
67
  console.warn("Content script or relay entries not found");
33
68
  }
34
- } else {
35
- options = await relay.getOptionsMap();
36
- const plugin = EntrypointPlugin.from(await manager.entries()).virtual((file) => manager.virtual(file));
37
- if (config.command === Command.Watch) {
38
- plugin.watch(async () => {
39
- manager.clear();
40
- relayDeclaration.dictionary(await relay.dictionary()).build();
41
- return manager.entries();
42
- });
69
+ return { plugins: basePlugins };
70
+ }
71
+ const entries = await contentManager.entries();
72
+ const getEntryWorld = (name) => {
73
+ const options = entryOptionsByName.get(name);
74
+ if (!options) {
75
+ throw new Error(`Execution world for content entrypoint "${name}" is unavailable`);
43
76
  }
44
- const entryTypeFilter = onlyViaTopLevelEntry(["content", "relay"]);
45
- rspack = {
46
- plugins: [plugin],
47
- optimization: {
48
- splitChunks: {
49
- cacheGroups: {
50
- adnbnContent: {
51
- minChunks: 2,
52
- name: manager.chunkName(),
53
- test: (module, context) => {
54
- const nm = module;
55
- if (!nm.resource) {
56
- return false;
57
- }
58
- if (nm.resource.startsWith(getResolvePath(getSourcePath(config)))) {
59
- return false;
60
- }
61
- return entryTypeFilter(module, context);
62
- },
63
- chunks: (chunk) => {
64
- return manager.likely(chunk.name);
65
- },
66
- enforce: false,
67
- reuseExistingChunk: true,
68
- priority: 20
69
- }
70
- }
71
- }
72
- }
77
+ return options.world === ContentScriptWorld.Main ? ContentScriptWorld.Main : ContentScriptWorld.Isolated;
78
+ };
79
+ const entrypointPlugin = EntrypointPlugin.from(entries).virtual((file) => contentManager.virtual(file)).entryOptions((name) => {
80
+ const world = getEntryWorld(name);
81
+ return {
82
+ // MAIN cannot resolve an installed extension URL without crossing contexts.
83
+ // ISOLATED keeps physical async chunks and resolves them through the extension API.
84
+ asyncChunks: world === ContentScriptWorld.Isolated,
85
+ layer: getContentLayer(world),
86
+ publicPath: ""
73
87
  };
88
+ });
89
+ if (config.command === Command.Watch) {
90
+ entrypointPlugin.watch(async () => {
91
+ contentManager.clear();
92
+ relayDeclaration.dictionary(await relayProvider.dictionary()).build();
93
+ const entries2 = await contentManager.entries();
94
+ entryOptionsByName = await contentManager.entryOptions();
95
+ return entries2;
96
+ });
74
97
  }
75
- return mergeConfig(rspack, {
76
- plugins: [
77
- new DefinePlugin({
78
- __ADNBN_RELAY_OPTIONS__: JSON.stringify(options)
79
- })
80
- ]
98
+ const isContentModule = onlyViaTopLevelEntry(["content", "relay"]);
99
+ const createCacheGroup = (world) => ({
100
+ minChunks: 2,
101
+ name: getContentChunkName(world),
102
+ test: (module, context) => {
103
+ const normalModule = module;
104
+ if (!normalModule.resource) {
105
+ return false;
106
+ }
107
+ return isContentModule(module, context);
108
+ },
109
+ chunks: (chunk) => chunk.name !== void 0 && entryOptionsByName.has(chunk.name) && getEntryWorld(chunk.name) === world,
110
+ enforce: false,
111
+ reuseExistingChunk: false,
112
+ priority: 20
81
113
  });
114
+ return {
115
+ plugins: [
116
+ entrypointPlugin,
117
+ new ChunkLoaderPlugin({
118
+ test: (entry) => entryOptionsByName.has(entry) && getEntryWorld(entry) === ContentScriptWorld.Isolated
119
+ }),
120
+ new IsolatedStylesPlugin({
121
+ cssFilename: appFilenameResolver(config.app, config.cssFilename, config.cssDir),
122
+ cssChunkFilename: appFilenameResolver(config.app, config.cssFilename, config.cssDir),
123
+ property: ContentScriptStylesRuntimeProperty,
124
+ test: (entry) => {
125
+ const options = entryOptionsByName.get(entry);
126
+ return options !== void 0 && hasIsolatedTarget(options);
127
+ },
128
+ validate: (entry, files) => validateContentStyles(entry, entryOptionsByName.get(entry), files)
129
+ }),
130
+ ...basePlugins
131
+ ],
132
+ optimization: config.commonChunks ? {
133
+ splitChunks: {
134
+ cacheGroups: {
135
+ adnbnContentIsolated: createCacheGroup(ContentScriptWorld.Isolated),
136
+ adnbnContentMain: createCacheGroup(ContentScriptWorld.Main)
137
+ }
138
+ }
139
+ } : void 0
140
+ };
82
141
  },
83
142
  manifest: async ({ manifest }) => {
84
- manifest.setContentScripts(await manager.manifest()).appendHostPermissions(await manager.hostPermissions()).appendOptionalHostPermissions(await manager.optionalHostPermissions()).appendPermissions(await manager.permissions()).appendOptionalPermissions(await manager.optionalPermissions());
143
+ manifest.setContentScripts(await contentManager.manifest()).appendHostPermissions(await contentManager.hostPermissions()).appendOptionalHostPermissions(await contentManager.optionalHostPermissions()).appendPermissions(await contentManager.permissions()).appendOptionalPermissions(await contentManager.optionalPermissions());
85
144
  }
86
145
  };
87
146
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cli/plugins/content/index.ts"],"sourcesContent":["import {Configuration as RspackConfig, DefinePlugin, NormalModule} from \"@rspack/core\";\nimport {merge as mergeConfig} from \"webpack-merge\";\n\nimport ContentManager from \"./ContentManager\";\nimport Content from \"./Content\";\nimport Relay from \"./Relay\";\nimport RelayDeclaration from \"./RelayDeclaration\";\n\nimport {definePlugin} from \"@main/plugin\";\n\nimport {EntrypointPlugin, onlyViaTopLevelEntry} from \"@cli/bundler\";\nimport {getResolvePath, getSourcePath} from \"@cli/resolvers/path\";\n\nimport {Command} from \"@typing/app\";\nimport {RelayOptions} from \"@typing/relay\";\n\nexport default definePlugin(() => {\n let content: Content;\n let relay: Relay;\n let manager: ContentManager;\n let relayDeclaration: RelayDeclaration;\n\n return {\n name: \"adnbn:content\",\n startup: async ({config}) => {\n content = new Content(config);\n relay = new Relay(config);\n\n // prettier-ignore\n manager = new ContentManager(config)\n .provider(content)\n .provider(relay);\n\n relayDeclaration = new RelayDeclaration(config);\n },\n content: () => content.files(),\n relay: () => relay.files(),\n bundler: async ({config}) => {\n relayDeclaration.dictionary(await relay.dictionary()).build();\n\n let rspack: RspackConfig = {};\n let options: Record<string, RelayOptions> = {};\n\n if (await manager.empty()) {\n if (config.debug) {\n console.warn(\"Content script or relay entries not found\");\n }\n } else {\n options = await relay.getOptionsMap();\n\n // prettier-ignore\n const plugin = EntrypointPlugin.from(await manager.entries())\n .virtual(file => manager.virtual(file));\n\n if (config.command === Command.Watch) {\n plugin.watch(async () => {\n manager.clear();\n\n relayDeclaration.dictionary(await relay.dictionary()).build();\n\n return manager.entries();\n });\n }\n\n const entryTypeFilter = onlyViaTopLevelEntry([\"content\", \"relay\"]);\n\n rspack = {\n plugins: [plugin],\n optimization: {\n splitChunks: {\n cacheGroups: {\n adnbnContent: {\n minChunks: 2,\n name: manager.chunkName(),\n test: (module, context) => {\n const nm = module as NormalModule;\n\n if (!nm.resource) {\n return false;\n }\n\n if (nm.resource.startsWith(getResolvePath(getSourcePath(config)))) {\n return false;\n }\n\n return entryTypeFilter(module, context);\n },\n chunks: (chunk): boolean => {\n return manager.likely(chunk.name);\n },\n enforce: false,\n reuseExistingChunk: true,\n priority: 20,\n },\n },\n },\n },\n };\n }\n\n return mergeConfig(rspack, {\n plugins: [\n new DefinePlugin({\n __ADNBN_RELAY_OPTIONS__: JSON.stringify(options),\n }),\n ],\n });\n },\n manifest: async ({manifest}) => {\n // prettier-ignore\n manifest\n .setContentScripts(await manager.manifest())\n .appendHostPermissions(await manager.hostPermissions())\n .appendOptionalHostPermissions(await manager.optionalHostPermissions())\n .appendPermissions(await manager.permissions())\n .appendOptionalPermissions(await manager.optionalPermissions());\n },\n };\n});\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/cli/plugins/content/index.ts"],"sourcesContent":["import type {Chunk, Configuration as RspackConfig, NormalModule, Plugins} from \"@rspack/core\";\n\nimport ContentManager from \"./ContentManager\";\nimport Content from \"./Content\";\nimport Relay from \"./Relay\";\nimport RelayDeclaration from \"./RelayDeclaration\";\nimport {hasIsolatedTarget} from \"./utils\";\nimport {createPageAccessRequirements, getContentChunkName, validateContentStyles} from \"./bundler\";\nimport {createRelayModule, RelayModuleName} from \"./relay-module\";\n\nimport {definePlugin} from \"@main/plugin\";\nimport {PageFinder} from \"@cli/entrypoint/index.js\";\nimport {getContentLayer} from \"@cli/bundler/utils/layers\";\n\nimport {\n appFilenameResolver,\n ChunkLoaderPlugin,\n EntrypointPlugin,\n onlyViaTopLevelEntry,\n IsolatedStylesPlugin,\n ResourceAccessPlugin,\n GenerateModulePlugin,\n} from \"@cli/bundler\";\n\nimport {Command} from \"@typing/app\";\nimport {ContentScriptStylesRuntimeProperty, ContentScriptWorld} from \"@typing/content\";\n\nexport default definePlugin(() => {\n let contentProvider: Content;\n let relayProvider: Relay;\n let contentManager: ContentManager;\n let relayDeclaration: RelayDeclaration;\n\n return {\n name: \"adnbn:content\",\n startup: ({config}) => {\n contentProvider = new Content(config);\n relayProvider = new Relay(config);\n\n // prettier-ignore\n contentManager = new ContentManager(config)\n .provider(contentProvider)\n .provider(relayProvider);\n\n relayDeclaration = new RelayDeclaration(config);\n },\n content: () => contentProvider.files(),\n relay: () => relayProvider.files(),\n bundler: async ({config}) => {\n relayDeclaration.dictionary(await relayProvider.dictionary()).build();\n\n let entryOptionsByName = await contentManager.entryOptions();\n\n const getModules = async () => ({\n [RelayModuleName]: createRelayModule(await relayProvider.getOptionsMap()),\n });\n const modulePlugin = new GenerateModulePlugin(await getModules());\n\n if (config.command === Command.Watch) {\n modulePlugin.watch(getModules);\n }\n\n const basePlugins: Plugins = [\n modulePlugin,\n new ResourceAccessPlugin({\n requirements: async () => {\n if (\n !Array.from(entryOptionsByName.values()).some(\n options => options.isolation?.page !== undefined\n )\n ) {\n return [];\n }\n\n const views = await new PageFinder(config).views();\n const pages = new Map(Array.from(views.values(), view => [view.alias, view.filename]));\n return createPageAccessRequirements(entryOptionsByName, pages);\n },\n }),\n ];\n\n if (await contentManager.empty()) {\n if (config.debug) {\n console.warn(\"Content script or relay entries not found\");\n }\n\n return {plugins: basePlugins};\n }\n\n const entries = await contentManager.entries();\n const getEntryWorld = (name: string): ContentScriptWorld => {\n const options = entryOptionsByName.get(name);\n\n if (!options) {\n throw new Error(`Execution world for content entrypoint \"${name}\" is unavailable`);\n }\n\n return options.world === ContentScriptWorld.Main\n ? ContentScriptWorld.Main\n : ContentScriptWorld.Isolated;\n };\n\n // prettier-ignore\n const entrypointPlugin = EntrypointPlugin.from(entries)\n .virtual(file => contentManager.virtual(file))\n .entryOptions(name => {\n const world = getEntryWorld(name);\n\n return {\n // MAIN cannot resolve an installed extension URL without crossing contexts.\n // ISOLATED keeps physical async chunks and resolves them through the extension API.\n asyncChunks: world === ContentScriptWorld.Isolated,\n layer: getContentLayer(world),\n publicPath: \"\",\n };\n });\n\n if (config.command === Command.Watch) {\n entrypointPlugin.watch(async () => {\n contentManager.clear();\n\n relayDeclaration.dictionary(await relayProvider.dictionary()).build();\n\n const entries = await contentManager.entries();\n entryOptionsByName = await contentManager.entryOptions();\n\n return entries;\n });\n }\n\n const isContentModule = onlyViaTopLevelEntry([\"content\", \"relay\"]);\n\n const createCacheGroup = (world: ContentScriptWorld) => ({\n minChunks: 2,\n name: getContentChunkName(world),\n test: (\n module: Parameters<typeof isContentModule>[0],\n context: Parameters<typeof isContentModule>[1]\n ) => {\n const normalModule = module as NormalModule;\n\n if (!normalModule.resource) {\n return false;\n }\n\n return isContentModule(module, context);\n },\n chunks: (chunk: Chunk): boolean =>\n chunk.name !== undefined &&\n entryOptionsByName.has(chunk.name) &&\n getEntryWorld(chunk.name) === world,\n enforce: false,\n reuseExistingChunk: false,\n priority: 20,\n });\n\n return {\n plugins: [\n entrypointPlugin,\n new ChunkLoaderPlugin({\n test: entry =>\n entryOptionsByName.has(entry) && getEntryWorld(entry) === ContentScriptWorld.Isolated,\n }),\n new IsolatedStylesPlugin({\n cssFilename: appFilenameResolver(config.app, config.cssFilename, config.cssDir),\n cssChunkFilename: appFilenameResolver(config.app, config.cssFilename, config.cssDir),\n property: ContentScriptStylesRuntimeProperty,\n test: entry => {\n const options = entryOptionsByName.get(entry);\n return options !== undefined && hasIsolatedTarget(options);\n },\n validate: (entry, files) => validateContentStyles(entry, entryOptionsByName.get(entry), files),\n }),\n ...basePlugins,\n ],\n optimization: config.commonChunks\n ? {\n splitChunks: {\n cacheGroups: {\n adnbnContentIsolated: createCacheGroup(ContentScriptWorld.Isolated),\n adnbnContentMain: createCacheGroup(ContentScriptWorld.Main),\n },\n },\n }\n : undefined,\n } satisfies RspackConfig;\n },\n manifest: async ({manifest}) => {\n // prettier-ignore\n manifest\n .setContentScripts(await contentManager.manifest())\n .appendHostPermissions(await contentManager.hostPermissions())\n .appendOptionalHostPermissions(await contentManager.optionalHostPermissions())\n .appendPermissions(await contentManager.permissions())\n .appendOptionalPermissions(await contentManager.optionalPermissions());\n },\n };\n});\n"],"mappings":"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","names":["entries"]}
@@ -0,0 +1,3 @@
1
+ import type { RelayOptions } from "../../../types/relay.js";
2
+ export declare const RelayModuleName = "#adnbn/relay";
3
+ export declare const createRelayModule: (options: Record<string, RelayOptions>) => string;
@@ -0,0 +1,11 @@
1
+ const RelayModuleName = "#adnbn/relay";
2
+ const createRelayModule = (options) => (
3
+ // Preserve the JSON payload, including omitted optional values, without retaining unused data.
4
+ `export const options = /*#__PURE__*/ JSON.parse(${JSON.stringify(JSON.stringify(options))});
5
+ `
6
+ );
7
+ export {
8
+ RelayModuleName,
9
+ createRelayModule
10
+ };
11
+ //# sourceMappingURL=relay-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/cli/plugins/content/relay-module.ts"],"sourcesContent":["import type {RelayOptions} from \"@typing/relay\";\n\nexport const RelayModuleName = \"#adnbn/relay\";\n\nexport const createRelayModule = (options: Record<string, RelayOptions>): string =>\n // Preserve the JSON payload, including omitted optional values, without retaining unused data.\n `export const options = /*#__PURE__*/ JSON.parse(${JSON.stringify(JSON.stringify(options))});\\n`;\n"],"mappings":"AAEO,MAAM,kBAAkB;AAExB,MAAM,oBAAoB,CAAC;AAAA;AAAA,EAE9B,mDAAmD,KAAK,UAAU,KAAK,UAAU,OAAO,CAAC,CAAC;AAAA;AAAA;","names":[]}
@@ -16,7 +16,7 @@ export interface ContentDriver<O extends ContentScriptEntrypointOptions> {
16
16
  optionalPermissions(): Promise<ManifestOptionalPermissions>;
17
17
  }
18
18
  export interface ContentProvider<O extends ContentScriptEntrypointOptions> {
19
- virtual(file: EntrypointFile): string;
19
+ virtual(file: EntrypointFile, options?: ContentScriptEntrypointOptions): string;
20
20
  driver(): ContentDriver<O>;
21
21
  clear(): this;
22
22
  }
@@ -1,2 +1,4 @@
1
1
  import { ContentScriptConfig, ContentScriptEntrypointOptions } from "../../../types/content.js";
2
+ /** ShadowRoot or a blank iframe provides a local target for isolated styles and UI. */
3
+ export declare const hasIsolatedTarget: (options: ContentScriptEntrypointOptions) => boolean;
2
4
  export declare const getContentScriptConfigFromOptions: (options: ContentScriptEntrypointOptions) => ContentScriptConfig;
@@ -1,4 +1,10 @@
1
1
  import _ from "lodash";
2
+ import { isContentScriptFrameNavigation } from "./../../../shared/content/index.js";
3
+ import { ContentScriptIsolation } from "./../../../types/content.js";
4
+ const hasIsolatedTarget = (options) => {
5
+ var _a, _b;
6
+ return ((_a = options.isolation) == null ? void 0 : _a.type) === ContentScriptIsolation.Shadow || ((_b = options.isolation) == null ? void 0 : _b.type) === ContentScriptIsolation.Iframe && !isContentScriptFrameNavigation(options.isolation);
7
+ };
2
8
  const getContentScriptConfigFromOptions = (options) => {
3
9
  const config = _.pick(options, [
4
10
  "matches",
@@ -21,6 +27,7 @@ const getContentScriptConfigFromOptions = (options) => {
21
27
  };
22
28
  };
23
29
  export {
24
- getContentScriptConfigFromOptions
30
+ getContentScriptConfigFromOptions,
31
+ hasIsolatedTarget
25
32
  };
26
33
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cli/plugins/content/utils.ts"],"sourcesContent":["import _ from \"lodash\";\n\nimport {ContentScriptConfig, ContentScriptEntrypointOptions} from \"@typing/content\";\n\nexport const getContentScriptConfigFromOptions = (options: ContentScriptEntrypointOptions): ContentScriptConfig => {\n const config = _.pick(options, [\n \"matches\",\n \"excludeMatches\",\n \"includeGlobs\",\n \"excludeGlobs\",\n \"allFrames\",\n \"runAt\",\n \"world\",\n \"matchAboutBlank\",\n \"matchOriginAsFallback\",\n ]) as ContentScriptConfig;\n\n const sort = (arr?: string[]) => arr?.toSorted((a, b) => a.localeCompare(b));\n\n return {\n ...config,\n matches: sort(config.matches),\n excludeMatches: sort(config.excludeMatches),\n includeGlobs: sort(config.includeGlobs),\n excludeGlobs: sort(config.excludeGlobs),\n };\n};\n"],"mappings":"AAAA,OAAO,OAAO;AAIP,MAAM,oCAAoC,CAAC,YAAiE;AAC/G,QAAM,SAAS,EAAE,KAAK,SAAS;AAAA,IAC3B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,CAAC;AAED,QAAM,OAAO,CAAC,QAAmB,2BAAK,SAAS,CAAC,GAAG,MAAM,EAAE,cAAc,CAAC;AAE1E,SAAO;AAAA,IACH,GAAG;AAAA,IACH,SAAS,KAAK,OAAO,OAAO;AAAA,IAC5B,gBAAgB,KAAK,OAAO,cAAc;AAAA,IAC1C,cAAc,KAAK,OAAO,YAAY;AAAA,IACtC,cAAc,KAAK,OAAO,YAAY;AAAA,EAC1C;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cli/plugins/content/utils.ts"],"sourcesContent":["import _ from \"lodash\";\nimport {isContentScriptFrameNavigation} from \"@shared/content\";\n\nimport {ContentScriptConfig, ContentScriptEntrypointOptions, ContentScriptIsolation} from \"@typing/content\";\n\n/** ShadowRoot or a blank iframe provides a local target for isolated styles and UI. */\nexport const hasIsolatedTarget = (options: ContentScriptEntrypointOptions): boolean =>\n options.isolation?.type === ContentScriptIsolation.Shadow ||\n (options.isolation?.type === ContentScriptIsolation.Iframe && !isContentScriptFrameNavigation(options.isolation));\n\nexport const getContentScriptConfigFromOptions = (options: ContentScriptEntrypointOptions): ContentScriptConfig => {\n const config = _.pick(options, [\n \"matches\",\n \"excludeMatches\",\n \"includeGlobs\",\n \"excludeGlobs\",\n \"allFrames\",\n \"runAt\",\n \"world\",\n \"matchAboutBlank\",\n \"matchOriginAsFallback\",\n ]) as ContentScriptConfig;\n\n const sort = (arr?: string[]) => arr?.toSorted((a, b) => a.localeCompare(b));\n\n return {\n ...config,\n matches: sort(config.matches),\n excludeMatches: sort(config.excludeMatches),\n includeGlobs: sort(config.includeGlobs),\n excludeGlobs: sort(config.excludeGlobs),\n };\n};\n"],"mappings":"AAAA,OAAO,OAAO;AACd,SAAQ,sCAAqC;AAE7C,SAA6D,8BAA6B;AAGnF,MAAM,oBAAoB,CAAC,YAAkD;AANpF;AAOI,wBAAQ,cAAR,mBAAmB,UAAS,uBAAuB,YAClD,aAAQ,cAAR,mBAAmB,UAAS,uBAAuB,UAAU,CAAC,+BAA+B,QAAQ,SAAS;AAAA;AAE5G,MAAM,oCAAoC,CAAC,YAAiE;AAC/G,QAAM,SAAS,EAAE,KAAK,SAAS;AAAA,IAC3B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,CAAC;AAED,QAAM,OAAO,CAAC,QAAmB,2BAAK,SAAS,CAAC,GAAG,MAAM,EAAE,cAAc,CAAC;AAE1E,SAAO;AAAA,IACH,GAAG;AAAA,IACH,SAAS,KAAK,OAAO,OAAO;AAAA,IAC5B,gBAAgB,KAAK,OAAO,cAAc;AAAA,IAC1C,cAAc,KAAK,OAAO,YAAY;AAAA,IACtC,cAAc,KAAK,OAAO,YAAY;AAAA,EAC1C;AACJ;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import { FileBuilder } from "../../../plugins/typescript/index.js";
2
2
  import { ReadonlyConfig } from "../../../../types/config.js";
3
- export default class extends FileBuilder {
3
+ export default class IconDeclaration extends FileBuilder {
4
4
  protected names: Set<string>;
5
5
  constructor(config: ReadonlyConfig);
6
6
  protected filename(): string;
@@ -1,5 +1,5 @@
1
1
  import { FileBuilder } from "./../../../../cli/plugins/typescript/index.js";
2
- class IconDeclaration_default extends FileBuilder {
2
+ class IconDeclaration extends FileBuilder {
3
3
  names = /* @__PURE__ */ new Set();
4
4
  constructor(config) {
5
5
  super(config);
@@ -12,10 +12,10 @@ class IconDeclaration_default extends FileBuilder {
12
12
  }
13
13
  template() {
14
14
  let content = this.readFile();
15
- if (this.names.size > 0) {
16
- const type = '"' + Array.from(this.names).join('" | "') + '"';
17
- content = content.replace("type IconName = string", `type IconName = ${type}`);
18
- }
15
+ content = content.replace(
16
+ "// :icon-names",
17
+ Array.from(this.names, (name) => `${JSON.stringify(name)}: true;`).join("\n ")
18
+ );
19
19
  return content;
20
20
  }
21
21
  setNames(names) {
@@ -24,6 +24,6 @@ class IconDeclaration_default extends FileBuilder {
24
24
  }
25
25
  }
26
26
  export {
27
- IconDeclaration_default as default
27
+ IconDeclaration as default
28
28
  };
29
29
  //# sourceMappingURL=IconDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/cli/plugins/icon/declaration/IconDeclaration.ts"],"sourcesContent":["import {FileBuilder} from \"@cli/plugins/typescript\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\n\nexport default class extends FileBuilder {\n protected names = new Set<string>();\n\n constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n protected filename(): string {\n return \"icon.d.ts\";\n }\n\n protected url(): string {\n return import.meta.url;\n }\n\n protected template(): string {\n let content = this.readFile();\n\n if (this.names.size > 0) {\n const type = '\"' + Array.from(this.names).join('\" | \"') + '\"';\n\n content = content.replace(\"type IconName = string\", `type IconName = ${type}`);\n }\n\n return content;\n }\n\n public setNames(names: Set<string>): this {\n this.names = names;\n\n return this;\n }\n}\n"],"mappings":"AAAA,SAAQ,mBAAkB;AAI1B,MAAO,gCAAsB,YAAY;AAAA,EAC3B,QAAQ,oBAAI,IAAY;AAAA,EAElC,YAAY,QAAwB;AAChC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEU,WAAmB;AACzB,WAAO;AAAA,EACX;AAAA,EAEU,MAAc;AACpB,WAAO,YAAY;AAAA,EACvB;AAAA,EAEU,WAAmB;AACzB,QAAI,UAAU,KAAK,SAAS;AAE5B,QAAI,KAAK,MAAM,OAAO,GAAG;AACrB,YAAM,OAAO,MAAM,MAAM,KAAK,KAAK,KAAK,EAAE,KAAK,OAAO,IAAI;AAE1D,gBAAU,QAAQ,QAAQ,0BAA0B,mBAAmB,IAAI,EAAE;AAAA,IACjF;AAEA,WAAO;AAAA,EACX;AAAA,EAEO,SAAS,OAA0B;AACtC,SAAK,QAAQ;AAEb,WAAO;AAAA,EACX;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/cli/plugins/icon/declaration/IconDeclaration.ts"],"sourcesContent":["import {FileBuilder} from \"@cli/plugins/typescript\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\n\nexport default class IconDeclaration extends FileBuilder {\n protected names = new Set<string>();\n\n constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n protected filename(): string {\n return \"icon.d.ts\";\n }\n\n protected url(): string {\n return import.meta.url;\n }\n\n protected template(): string {\n let content = this.readFile();\n\n content = content.replace(\n \"// :icon-names\",\n Array.from(this.names, name => `${JSON.stringify(name)}: true;`).join(\"\\n \")\n );\n\n return content;\n }\n\n public setNames(names: Set<string>): this {\n this.names = names;\n\n return this;\n }\n}\n"],"mappings":"AAAA,SAAQ,mBAAkB;AAI1B,MAAO,wBAAsC,YAAY;AAAA,EAC3C,QAAQ,oBAAI,IAAY;AAAA,EAElC,YAAY,QAAwB;AAChC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEU,WAAmB;AACzB,WAAO;AAAA,EACX;AAAA,EAEU,MAAc;AACpB,WAAO,YAAY;AAAA,EACvB;AAAA,EAEU,WAAmB;AACzB,QAAI,UAAU,KAAK,SAAS;AAE5B,cAAU,QAAQ;AAAA,MACd;AAAA,MACA,MAAM,KAAK,KAAK,OAAO,UAAQ,GAAG,KAAK,UAAU,IAAI,CAAC,SAAS,EAAE,KAAK,YAAY;AAAA,IACtF;AAEA,WAAO;AAAA,EACX;AAAA,EAEO,SAAS,OAA0B;AACtC,SAAK,QAAQ;AAEb,WAAO;AAAA,EACX;AACJ;","names":[]}
@@ -1,9 +1,7 @@
1
1
  import ":package";
2
2
 
3
3
  declare module ":package" {
4
- export type IconName = string;
5
-
6
- export function changeActionIcon(icon?: IconName, tab?: number | chrome.tabs.Tab): Promise<void>;
7
-
8
- export function changeSidebarIcon(icon?: IconName, tab?: number | chrome.tabs.Tab): Promise<void>;
4
+ export interface IconNameRegistry {
5
+ // :icon-names
6
+ }
9
7
  }
@@ -0,0 +1,2 @@
1
+ export declare const IconModuleName = "#adnbn/icon";
2
+ export declare const createIconModule: (groups: Record<string, Record<number, string>>) => string;
@@ -0,0 +1,11 @@
1
+ const IconModuleName = "#adnbn/icon";
2
+ const createIconModule = (groups) => (
3
+ // Preserve own __proto__ keys and allow unused data to be removed from optimized bundles.
4
+ `export const groups = /*#__PURE__*/ JSON.parse(${JSON.stringify(JSON.stringify(groups))});
5
+ `
6
+ );
7
+ export {
8
+ IconModuleName,
9
+ createIconModule
10
+ };
11
+ //# sourceMappingURL=icon-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/cli/plugins/icon/icon-module.ts"],"sourcesContent":["export const IconModuleName = \"#adnbn/icon\";\n\nexport const createIconModule = (groups: Record<string, Record<number, string>>): string =>\n // Preserve own __proto__ keys and allow unused data to be removed from optimized bundles.\n `export const groups = /*#__PURE__*/ JSON.parse(${JSON.stringify(JSON.stringify(groups))});\\n`;\n"],"mappings":"AAAO,MAAM,iBAAiB;AAEvB,MAAM,mBAAmB,CAAC;AAAA;AAAA,EAE7B,kDAAkD,KAAK,UAAU,KAAK,UAAU,MAAM,CAAC,CAAC;AAAA;AAAA;","names":[]}
@@ -1,6 +1,8 @@
1
- import { CopyRspackPlugin, DefinePlugin } from "@rspack/core";
1
+ import { CopyRspackPlugin } from "@rspack/core";
2
2
  import { definePlugin } from "./../../../main/plugin.js";
3
+ import { GenerateModulePlugin } from "./../../../cli/bundler/index.js";
3
4
  import Icon from "./Icon.js";
5
+ import { createIconModule, IconModuleName } from "./icon-module.js";
4
6
  import { IconDeclaration } from "./declaration/index.js";
5
7
  var icon_default = definePlugin(() => {
6
8
  let icon;
@@ -17,8 +19,8 @@ var icon_default = definePlugin(() => {
17
19
  new CopyRspackPlugin({
18
20
  patterns: await icon.copy()
19
21
  }),
20
- new DefinePlugin({
21
- __ADNBN_ICONS__: JSON.stringify(await icon.define())
22
+ new GenerateModulePlugin({
23
+ [IconModuleName]: createIconModule(await icon.define())
22
24
  })
23
25
  ]
24
26
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cli/plugins/icon/index.ts"],"sourcesContent":["import {Configuration as RspackConfig, CopyRspackPlugin, DefinePlugin} from \"@rspack/core\";\n\nimport {definePlugin} from \"@main/plugin\";\n\nimport Icon, {CopyPatterns, IconDefinition} from \"./Icon\";\n\nimport {IconDeclaration} from \"./declaration\";\n\nexport {Icon, type IconDefinition, type CopyPatterns};\n\nexport default definePlugin(() => {\n let icon: Icon;\n\n return {\n name: \"adnbn:icon\",\n startup: ({config}) => {\n icon = new Icon(config);\n },\n icon: () => icon.files(),\n bundler: async ({config}) => {\n new IconDeclaration(config).setNames(await icon.names()).build();\n\n return {\n plugins: [\n new CopyRspackPlugin({\n patterns: await icon.copy(),\n }),\n new DefinePlugin({\n __ADNBN_ICONS__: JSON.stringify(await icon.define()),\n }),\n ],\n } satisfies RspackConfig;\n },\n manifest: async ({manifest, config}) => {\n manifest.setIcons(await icon.manifest()).setIcon(config.icon);\n },\n };\n});\n"],"mappings":"AAAA,SAAuC,kBAAkB,oBAAmB;AAE5E,SAAQ,oBAAmB;AAE3B,OAAO,UAA0C;AAEjD,SAAQ,uBAAsB;AAI9B,IAAO,eAAQ,aAAa,MAAM;AAC9B,MAAI;AAEJ,SAAO;AAAA,IACH,MAAM;AAAA,IACN,SAAS,CAAC,EAAC,OAAM,MAAM;AACnB,aAAO,IAAI,KAAK,MAAM;AAAA,IAC1B;AAAA,IACA,MAAM,MAAM,KAAK,MAAM;AAAA,IACvB,SAAS,OAAO,EAAC,OAAM,MAAM;AACzB,UAAI,gBAAgB,MAAM,EAAE,SAAS,MAAM,KAAK,MAAM,CAAC,EAAE,MAAM;AAE/D,aAAO;AAAA,QACH,SAAS;AAAA,UACL,IAAI,iBAAiB;AAAA,YACjB,UAAU,MAAM,KAAK,KAAK;AAAA,UAC9B,CAAC;AAAA,UACD,IAAI,aAAa;AAAA,YACb,iBAAiB,KAAK,UAAU,MAAM,KAAK,OAAO,CAAC;AAAA,UACvD,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAAA,IACA,UAAU,OAAO,EAAC,UAAU,OAAM,MAAM;AACpC,eAAS,SAAS,MAAM,KAAK,SAAS,CAAC,EAAE,QAAQ,OAAO,IAAI;AAAA,IAChE;AAAA,EACJ;AACJ,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cli/plugins/icon/index.ts"],"sourcesContent":["import {Configuration as RspackConfig, CopyRspackPlugin} from \"@rspack/core\";\n\nimport {definePlugin} from \"@main/plugin\";\nimport {GenerateModulePlugin} from \"@cli/bundler\";\n\nimport Icon, {CopyPatterns, IconDefinition} from \"./Icon\";\nimport {createIconModule, IconModuleName} from \"./icon-module\";\n\nimport {IconDeclaration} from \"./declaration\";\n\nexport {Icon, type IconDefinition, type CopyPatterns};\n\nexport default definePlugin(() => {\n let icon: Icon;\n\n return {\n name: \"adnbn:icon\",\n startup: ({config}) => {\n icon = new Icon(config);\n },\n icon: () => icon.files(),\n bundler: async ({config}) => {\n new IconDeclaration(config).setNames(await icon.names()).build();\n\n return {\n plugins: [\n new CopyRspackPlugin({\n patterns: await icon.copy(),\n }),\n new GenerateModulePlugin({\n [IconModuleName]: createIconModule(await icon.define()),\n }),\n ],\n } satisfies RspackConfig;\n },\n manifest: async ({manifest, config}) => {\n manifest.setIcons(await icon.manifest()).setIcon(config.icon);\n },\n };\n});\n"],"mappings":"AAAA,SAAuC,wBAAuB;AAE9D,SAAQ,oBAAmB;AAC3B,SAAQ,4BAA2B;AAEnC,OAAO,UAA0C;AACjD,SAAQ,kBAAkB,sBAAqB;AAE/C,SAAQ,uBAAsB;AAI9B,IAAO,eAAQ,aAAa,MAAM;AAC9B,MAAI;AAEJ,SAAO;AAAA,IACH,MAAM;AAAA,IACN,SAAS,CAAC,EAAC,OAAM,MAAM;AACnB,aAAO,IAAI,KAAK,MAAM;AAAA,IAC1B;AAAA,IACA,MAAM,MAAM,KAAK,MAAM;AAAA,IACvB,SAAS,OAAO,EAAC,OAAM,MAAM;AACzB,UAAI,gBAAgB,MAAM,EAAE,SAAS,MAAM,KAAK,MAAM,CAAC,EAAE,MAAM;AAE/D,aAAO;AAAA,QACH,SAAS;AAAA,UACL,IAAI,iBAAiB;AAAA,YACjB,UAAU,MAAM,KAAK,KAAK;AAAA,UAC9B,CAAC;AAAA,UACD,IAAI,qBAAqB;AAAA,YACrB,CAAC,cAAc,GAAG,iBAAiB,MAAM,KAAK,OAAO,CAAC;AAAA,UAC1D,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAAA,IACA,UAAU,OAAO,EAAC,UAAU,OAAM,MAAM;AACpC,eAAS,SAAS,MAAM,KAAK,SAAS,CAAC,EAAE,QAAQ,OAAO,IAAI;AAAA,IAChE;AAAA,EACJ;AACJ,CAAC;","names":[]}
@@ -11,6 +11,7 @@ export { default as pluginIcon } from "./icon/index.js";
11
11
  export { default as pluginLocale } from "./locale/index.js";
12
12
  export { default as pluginMeta } from "./meta/index.js";
13
13
  export { default as pluginOffscreen } from "./offscreen/index.js";
14
+ export { default as pluginOptions } from "./options/index.js";
14
15
  export { default as pluginPage } from "./page/index.js";
15
16
  export { default as pluginPopup } from "./popup/index.js";
16
17
  export { default as pluginPublic } from "./public.js";
@@ -11,16 +11,17 @@ import { default as default11 } from "./icon/index.js";
11
11
  import { default as default12 } from "./locale/index.js";
12
12
  import { default as default13 } from "./meta/index.js";
13
13
  import { default as default14 } from "./offscreen/index.js";
14
- import { default as default15 } from "./page/index.js";
15
- import { default as default16 } from "./popup/index.js";
16
- import { default as default17 } from "./public.js";
17
- import { default as default18 } from "./sandbox/index.js";
18
- import { default as default19 } from "./sidebar/index.js";
19
- import { default as default20, TypescriptConfig, FileBuilder, VendorDeclaration } from "./typescript/index.js";
20
- import { default as default21 } from "./react.js";
21
- import { default as default22 } from "./style/index.js";
22
- import { default as default23 } from "./view/index.js";
23
- import { default as default24 } from "./version/index.js";
14
+ import { default as default15 } from "./options/index.js";
15
+ import { default as default16 } from "./page/index.js";
16
+ import { default as default17 } from "./popup/index.js";
17
+ import { default as default18 } from "./public.js";
18
+ import { default as default19 } from "./sandbox/index.js";
19
+ import { default as default20 } from "./sidebar/index.js";
20
+ import { default as default21, TypescriptConfig, FileBuilder, VendorDeclaration } from "./typescript/index.js";
21
+ import { default as default22 } from "./react.js";
22
+ import { default as default23 } from "./style/index.js";
23
+ import { default as default24 } from "./view/index.js";
24
+ import { default as default25 } from "./version/index.js";
24
25
  export {
25
26
  FileBuilder,
26
27
  TypescriptConfig,
@@ -37,16 +38,17 @@ export {
37
38
  default13 as pluginMeta,
38
39
  default14 as pluginOffscreen,
39
40
  default9 as pluginOptimization,
41
+ default15 as pluginOptions,
40
42
  default10 as pluginOutput,
41
- default15 as pluginPage,
42
- default16 as pluginPopup,
43
- default17 as pluginPublic,
44
- default21 as pluginReact,
45
- default18 as pluginSandbox,
46
- default19 as pluginSidebar,
47
- default22 as pluginStyle,
48
- default20 as pluginTypescript,
49
- default24 as pluginVersion,
50
- default23 as pluginView
43
+ default16 as pluginPage,
44
+ default17 as pluginPopup,
45
+ default18 as pluginPublic,
46
+ default22 as pluginReact,
47
+ default19 as pluginSandbox,
48
+ default20 as pluginSidebar,
49
+ default23 as pluginStyle,
50
+ default21 as pluginTypescript,
51
+ default25 as pluginVersion,
52
+ default24 as pluginView
51
53
  };
52
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/plugins/index.ts"],"sourcesContent":["export {default as pluginAsset} from \"./asset\";\nexport {default as pluginBundler} from \"./bundler\";\nexport {default as pluginBackground} from \"./background\";\nexport {default as pluginContent} from \"./content\";\nexport {default as pluginDotenv} from \"./dotenv\";\nexport {default as pluginHtml} from \"./html\";\nexport {default as pluginManifest} from \"./manifest\";\nexport {default as pluginOptimization} from \"./optimization\";\nexport {default as pluginOutput} from \"./output\";\nexport {default as pluginIcon} from \"./icon\";\nexport {default as pluginLocale} from \"./locale\";\nexport {default as pluginMeta} from \"./meta\";\nexport {default as pluginOffscreen} from \"./offscreen\";\nexport {default as pluginPage} from \"./page\";\nexport {default as pluginPopup} from \"./popup\";\nexport {default as pluginPublic} from \"./public\";\nexport {default as pluginSandbox} from \"./sandbox\";\nexport {default as pluginSidebar} from \"./sidebar\";\nexport {default as pluginTypescript, TypescriptConfig, FileBuilder, VendorDeclaration} from \"./typescript\";\nexport {default as pluginReact} from \"./react\";\nexport {default as pluginStyle} from \"./style\";\nexport {default as pluginView} from \"./view\";\nexport {default as pluginVersion} from \"./version\";\n"],"mappings":"AAAA,SAAmB,WAAXA,gBAA6B;AACrC,SAAmB,WAAXA,gBAA+B;AACvC,SAAmB,WAAXA,gBAAkC;AAC1C,SAAmB,WAAXA,gBAA+B;AACvC,SAAmB,WAAXA,gBAA8B;AACtC,SAAmB,WAAXA,gBAA4B;AACpC,SAAmB,WAAXA,gBAAgC;AACxC,SAAmB,WAAXA,gBAAoC;AAC5C,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAAiC;AACzC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA+B;AACvC,SAAmB,WAAXA,iBAA+B;AACvC,SAAmB,WAAXA,WAA6B,kBAAkB,aAAa,yBAAwB;AAC5F,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA+B;","names":["default"]}
1
+ {"version":3,"sources":["../../../src/cli/plugins/index.ts"],"sourcesContent":["export {default as pluginAsset} from \"./asset\";\nexport {default as pluginBundler} from \"./bundler\";\nexport {default as pluginBackground} from \"./background\";\nexport {default as pluginContent} from \"./content\";\nexport {default as pluginDotenv} from \"./dotenv\";\nexport {default as pluginHtml} from \"./html\";\nexport {default as pluginManifest} from \"./manifest\";\nexport {default as pluginOptimization} from \"./optimization\";\nexport {default as pluginOutput} from \"./output\";\nexport {default as pluginIcon} from \"./icon\";\nexport {default as pluginLocale} from \"./locale\";\nexport {default as pluginMeta} from \"./meta\";\nexport {default as pluginOffscreen} from \"./offscreen\";\nexport {default as pluginOptions} from \"./options\";\nexport {default as pluginPage} from \"./page\";\nexport {default as pluginPopup} from \"./popup\";\nexport {default as pluginPublic} from \"./public\";\nexport {default as pluginSandbox} from \"./sandbox\";\nexport {default as pluginSidebar} from \"./sidebar\";\nexport {default as pluginTypescript, TypescriptConfig, FileBuilder, VendorDeclaration} from \"./typescript\";\nexport {default as pluginReact} from \"./react\";\nexport {default as pluginStyle} from \"./style\";\nexport {default as pluginView} from \"./view\";\nexport {default as pluginVersion} from \"./version\";\n"],"mappings":"AAAA,SAAmB,WAAXA,gBAA6B;AACrC,SAAmB,WAAXA,gBAA+B;AACvC,SAAmB,WAAXA,gBAAkC;AAC1C,SAAmB,WAAXA,gBAA+B;AACvC,SAAmB,WAAXA,gBAA8B;AACtC,SAAmB,WAAXA,gBAA4B;AACpC,SAAmB,WAAXA,gBAAgC;AACxC,SAAmB,WAAXA,gBAAoC;AAC5C,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAAiC;AACzC,SAAmB,WAAXA,iBAA+B;AACvC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA8B;AACtC,SAAmB,WAAXA,iBAA+B;AACvC,SAAmB,WAAXA,iBAA+B;AACvC,SAAmB,WAAXA,WAA6B,kBAAkB,aAAa,yBAAwB;AAC5F,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA6B;AACrC,SAAmB,WAAXA,iBAA4B;AACpC,SAAmB,WAAXA,iBAA+B;","names":["default"]}
@@ -1,5 +1,12 @@
1
1
  import { LocaleFinder } from "../../entrypoint/index.js";
2
- import { GenerateJsonPluginData } from "../../bundler/index.js";
3
- export default class extends LocaleFinder {
2
+ import type { GenerateJsonPluginData, GenerateModulePluginDependencies } from "../../bundler/index.js";
3
+ import type { LocaleCatalogue } from "../../../types/locale.js";
4
+ export default class Locale extends LocaleFinder {
5
+ private _messages?;
6
+ dependencies(): Promise<GenerateModulePluginDependencies>;
4
7
  json(): Promise<GenerateJsonPluginData>;
8
+ catalogue(): Promise<LocaleCatalogue>;
9
+ private messages;
10
+ private createMessages;
11
+ clear(): this;
5
12
  }
@@ -1,20 +1,52 @@
1
- import { getLocaleFilename } from "./../../../locale/utils.js";
1
+ import path from "path";
2
2
  import { LocaleFinder } from "./../../../cli/entrypoint/index.js";
3
- class Locale_default extends LocaleFinder {
3
+ import { getSourcePath, getSharedPath, getAppPath, getAppSourcePath } from "./../../../cli/resolvers/path.js";
4
+ import { flattenLocaleMessages, getLocaleFilename } from "./../../../shared/locale/index.js";
5
+ class Locale extends LocaleFinder {
6
+ _messages;
7
+ async dependencies() {
8
+ const files = [...await this.plugin().files()].map(({ file }) => file);
9
+ const directory = this.getDirectory();
10
+ const directories = /* @__PURE__ */ new Set([
11
+ getSourcePath(this.config, directory),
12
+ getSharedPath(this.config, directory),
13
+ getAppPath(this.config, directory),
14
+ getAppSourcePath(this.config, directory),
15
+ ...files.map((file) => path.dirname(file))
16
+ ]);
17
+ return { files, directories };
18
+ }
4
19
  async json() {
20
+ return Object.fromEntries(
21
+ [...await this.messages()].map(([lang, messages]) => [getLocaleFilename(lang), messages])
22
+ );
23
+ }
24
+ async catalogue() {
25
+ return Object.fromEntries(
26
+ [...await this.messages()].map(([lang, messages]) => [lang, flattenLocaleMessages(messages)])
27
+ );
28
+ }
29
+ messages() {
30
+ return this._messages ?? (this._messages = this.createMessages());
31
+ }
32
+ async createMessages() {
5
33
  await this.validate();
6
- const data = {};
34
+ const data = /* @__PURE__ */ new Map();
7
35
  const builders = await this.builders();
8
36
  const defaultBuilder = this.getValidator().getDefaultBuilder(builders);
9
37
  const defaultMessages = (defaultBuilder == null ? void 0 : defaultBuilder.build()) ?? {};
10
38
  for (const builder of builders.values()) {
11
39
  const messages = builder === defaultBuilder ? defaultMessages : builder.build();
12
- data[getLocaleFilename(builder.lang())] = { ...defaultMessages, ...messages };
40
+ data.set(builder.lang(), { ...defaultMessages, ...messages });
13
41
  }
14
42
  return data;
15
43
  }
44
+ clear() {
45
+ this._messages = void 0;
46
+ return super.clear();
47
+ }
16
48
  }
17
49
  export {
18
- Locale_default as default
50
+ Locale as default
19
51
  };
20
52
  //# sourceMappingURL=Locale.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cli/plugins/locale/Locale.ts"],"sourcesContent":["import {getLocaleFilename} from \"@locale/utils\";\n\nimport {LocaleFinder} from \"@cli/entrypoint/index.js\";\nimport {GenerateJsonPluginData} from \"@cli/bundler\";\n\nexport default class extends LocaleFinder {\n public async json(): Promise<GenerateJsonPluginData> {\n await this.validate();\n\n const data: GenerateJsonPluginData = {};\n\n const builders = await this.builders();\n const defaultBuilder = this.getValidator().getDefaultBuilder(builders);\n const defaultMessages = defaultBuilder?.build() ?? {};\n\n for (const builder of builders.values()) {\n // Builders already include this app's layers and browser overrides.\n // Every target plural has been validated; only ordinary gaps remain.\n const messages = builder === defaultBuilder ? defaultMessages : builder.build();\n data[getLocaleFilename(builder.lang())] = {...defaultMessages, ...messages};\n }\n\n return data;\n }\n}\n"],"mappings":"AAAA,SAAQ,yBAAwB;AAEhC,SAAQ,oBAAmB;AAG3B,MAAO,uBAAsB,aAAa;AAAA,EACtC,MAAa,OAAwC;AACjD,UAAM,KAAK,SAAS;AAEpB,UAAM,OAA+B,CAAC;AAEtC,UAAM,WAAW,MAAM,KAAK,SAAS;AACrC,UAAM,iBAAiB,KAAK,aAAa,EAAE,kBAAkB,QAAQ;AACrE,UAAM,mBAAkB,iDAAgB,YAAW,CAAC;AAEpD,eAAW,WAAW,SAAS,OAAO,GAAG;AAGrC,YAAM,WAAW,YAAY,iBAAiB,kBAAkB,QAAQ,MAAM;AAC9E,WAAK,kBAAkB,QAAQ,KAAK,CAAC,CAAC,IAAI,EAAC,GAAG,iBAAiB,GAAG,SAAQ;AAAA,IAC9E;AAEA,WAAO;AAAA,EACX;AACJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cli/plugins/locale/Locale.ts"],"sourcesContent":["import path from \"path\";\nimport {LocaleFinder} from \"@cli/entrypoint/index.js\";\nimport type {GenerateJsonPluginData, GenerateModulePluginDependencies} from \"@cli/bundler\";\nimport {getSourcePath, getSharedPath, getAppPath, getAppSourcePath} from \"@cli/resolvers/path\";\n\nimport {flattenLocaleMessages, getLocaleFilename} from \"@shared/locale\";\n\nimport type {Language, LocaleCatalogue, LocaleMessages} from \"@typing/locale\";\n\nexport default class Locale extends LocaleFinder {\n private _messages?: Promise<Map<Language, LocaleMessages>>;\n\n public async dependencies(): Promise<GenerateModulePluginDependencies> {\n const files = [...(await this.plugin().files())].map(({file}) => file);\n const directory = this.getDirectory();\n const directories = new Set([\n getSourcePath(this.config, directory),\n getSharedPath(this.config, directory),\n getAppPath(this.config, directory),\n getAppSourcePath(this.config, directory),\n ...files.map(file => path.dirname(file)),\n ]);\n\n return {files, directories};\n }\n\n public async json(): Promise<GenerateJsonPluginData> {\n return Object.fromEntries(\n [...(await this.messages())].map(([lang, messages]) => [getLocaleFilename(lang), messages])\n );\n }\n\n public async catalogue(): Promise<LocaleCatalogue> {\n return Object.fromEntries(\n [...(await this.messages())].map(([lang, messages]) => [lang, flattenLocaleMessages(messages)])\n );\n }\n\n private messages(): Promise<Map<Language, LocaleMessages>> {\n return (this._messages ??= this.createMessages());\n }\n\n private async createMessages(): Promise<Map<Language, LocaleMessages>> {\n await this.validate();\n\n const data = new Map<Language, LocaleMessages>();\n\n const builders = await this.builders();\n const defaultBuilder = this.getValidator().getDefaultBuilder(builders);\n const defaultMessages = defaultBuilder?.build() ?? {};\n\n for (const builder of builders.values()) {\n // Builders already include this app's layers and browser overrides.\n // Every target plural has been validated; only ordinary gaps remain.\n const messages = builder === defaultBuilder ? defaultMessages : builder.build();\n\n data.set(builder.lang(), {...defaultMessages, ...messages});\n }\n\n return data;\n }\n\n public clear(): this {\n this._messages = undefined;\n\n return super.clear();\n }\n}\n"],"mappings":"AAAA,OAAO,UAAU;AACjB,SAAQ,oBAAmB;AAE3B,SAAQ,eAAe,eAAe,YAAY,wBAAuB;AAEzE,SAAQ,uBAAuB,yBAAwB;AAIvD,MAAO,eAA6B,aAAa;AAAA,EACrC;AAAA,EAER,MAAa,eAA0D;AACnE,UAAM,QAAQ,CAAC,GAAI,MAAM,KAAK,OAAO,EAAE,MAAM,CAAE,EAAE,IAAI,CAAC,EAAC,KAAI,MAAM,IAAI;AACrE,UAAM,YAAY,KAAK,aAAa;AACpC,UAAM,cAAc,oBAAI,IAAI;AAAA,MACxB,cAAc,KAAK,QAAQ,SAAS;AAAA,MACpC,cAAc,KAAK,QAAQ,SAAS;AAAA,MACpC,WAAW,KAAK,QAAQ,SAAS;AAAA,MACjC,iBAAiB,KAAK,QAAQ,SAAS;AAAA,MACvC,GAAG,MAAM,IAAI,UAAQ,KAAK,QAAQ,IAAI,CAAC;AAAA,IAC3C,CAAC;AAED,WAAO,EAAC,OAAO,YAAW;AAAA,EAC9B;AAAA,EAEA,MAAa,OAAwC;AACjD,WAAO,OAAO;AAAA,MACV,CAAC,GAAI,MAAM,KAAK,SAAS,CAAE,EAAE,IAAI,CAAC,CAAC,MAAM,QAAQ,MAAM,CAAC,kBAAkB,IAAI,GAAG,QAAQ,CAAC;AAAA,IAC9F;AAAA,EACJ;AAAA,EAEA,MAAa,YAAsC;AAC/C,WAAO,OAAO;AAAA,MACV,CAAC,GAAI,MAAM,KAAK,SAAS,CAAE,EAAE,IAAI,CAAC,CAAC,MAAM,QAAQ,MAAM,CAAC,MAAM,sBAAsB,QAAQ,CAAC,CAAC;AAAA,IAClG;AAAA,EACJ;AAAA,EAEQ,WAAmD;AACvD,WAAQ,KAAK,cAAL,KAAK,YAAc,KAAK,eAAe;AAAA,EACnD;AAAA,EAEA,MAAc,iBAAyD;AACnE,UAAM,KAAK,SAAS;AAEpB,UAAM,OAAO,oBAAI,IAA8B;AAE/C,UAAM,WAAW,MAAM,KAAK,SAAS;AACrC,UAAM,iBAAiB,KAAK,aAAa,EAAE,kBAAkB,QAAQ;AACrE,UAAM,mBAAkB,iDAAgB,YAAW,CAAC;AAEpD,eAAW,WAAW,SAAS,OAAO,GAAG;AAGrC,YAAM,WAAW,YAAY,iBAAiB,kBAAkB,QAAQ,MAAM;AAE9E,WAAK,IAAI,QAAQ,KAAK,GAAG,EAAC,GAAG,iBAAiB,GAAG,SAAQ,CAAC;AAAA,IAC9D;AAEA,WAAO;AAAA,EACX;AAAA,EAEO,QAAc;AACjB,SAAK,YAAY;AAEjB,WAAO,MAAM,MAAM;AAAA,EACvB;AACJ;","names":[]}