Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| af9e842fe0 | |||
| 230962686f |
@@ -1,5 +1,17 @@
|
||||
# Changelog
|
||||
|
||||
## v0.19.21
|
||||
|
||||
[compare changes](https://github.com/wxt-dev/wxt/compare/wxt-v0.19.20...wxt-v0.19.21)
|
||||
|
||||
### 🩹 Fixes
|
||||
|
||||
- Exclude skipped entrypoints from manifest ([#1265](https://github.com/wxt-dev/wxt/pull/1265))
|
||||
|
||||
### ❤️ Contributors
|
||||
|
||||
- Aaron ([@aklinker1](http://github.com/aklinker1))
|
||||
|
||||
## v0.19.20
|
||||
|
||||
[compare changes](https://github.com/wxt-dev/wxt/compare/wxt-v0.19.19...wxt-v0.19.20)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "wxt",
|
||||
"type": "module",
|
||||
"version": "0.19.20",
|
||||
"version": "0.19.21",
|
||||
"description": "Next gen framework for developing web extensions",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
@@ -44,6 +44,7 @@ describe('Manifest Utils', () => {
|
||||
defaultTitle: 'Default Iitle',
|
||||
},
|
||||
outputDir: outDir,
|
||||
skipped: false,
|
||||
});
|
||||
|
||||
it('should include an action for mv3', async () => {
|
||||
@@ -209,6 +210,7 @@ describe('Manifest Utils', () => {
|
||||
chromeStyle: true,
|
||||
browserStyle: true,
|
||||
},
|
||||
skipped: false,
|
||||
});
|
||||
|
||||
it('should include a options_ui and chrome_style for chrome', async () => {
|
||||
@@ -265,6 +267,7 @@ describe('Manifest Utils', () => {
|
||||
persistent: true,
|
||||
type: 'module',
|
||||
},
|
||||
skipped: false,
|
||||
});
|
||||
|
||||
describe('MV3', () => {
|
||||
@@ -368,7 +371,7 @@ describe('Manifest Utils', () => {
|
||||
|
||||
describe('icons', () => {
|
||||
it('should auto-discover icons with the correct name', async () => {
|
||||
const entrypoints = fakeArray(fakeEntrypoint);
|
||||
const entrypoints = fakeArray(() => fakeEntrypoint({ skipped: false }));
|
||||
const buildOutput = fakeBuildOutput({
|
||||
publicAssets: [
|
||||
{ type: 'asset', fileName: 'icon-16.png' },
|
||||
@@ -396,7 +399,7 @@ describe('Manifest Utils', () => {
|
||||
});
|
||||
|
||||
it('should return undefined when no icons are found', async () => {
|
||||
const entrypoints = fakeArray(fakeEntrypoint);
|
||||
const entrypoints = fakeArray(() => fakeEntrypoint({ skipped: false }));
|
||||
const buildOutput = fakeBuildOutput({
|
||||
publicAssets: [
|
||||
{ type: 'asset', fileName: 'logo.png' },
|
||||
@@ -413,7 +416,7 @@ describe('Manifest Utils', () => {
|
||||
});
|
||||
|
||||
it('should allow icons to be overwritten from the wxt.config.ts file', async () => {
|
||||
const entrypoints = fakeArray(fakeEntrypoint);
|
||||
const entrypoints = fakeArray(() => fakeEntrypoint({ skipped: false }));
|
||||
const buildOutput = fakeBuildOutput({
|
||||
publicAssets: [
|
||||
{ type: 'asset', fileName: 'icon-16.png' },
|
||||
@@ -837,6 +840,7 @@ describe('Manifest Utils', () => {
|
||||
options: {
|
||||
registration: 'runtime',
|
||||
},
|
||||
skipped: false,
|
||||
});
|
||||
|
||||
const entrypoints = [cs];
|
||||
@@ -902,6 +906,7 @@ describe('Manifest Utils', () => {
|
||||
async (browser) => {
|
||||
const sidepanel = fakeSidepanelEntrypoint({
|
||||
outputDir: outDir,
|
||||
skipped: false,
|
||||
});
|
||||
const buildOutput = fakeBuildOutput();
|
||||
|
||||
@@ -934,6 +939,7 @@ describe('Manifest Utils', () => {
|
||||
async (browser) => {
|
||||
const sidepanel = fakeSidepanelEntrypoint({
|
||||
outputDir: outDir,
|
||||
skipped: false,
|
||||
});
|
||||
const buildOutput = fakeBuildOutput();
|
||||
|
||||
@@ -1617,6 +1623,29 @@ describe('Manifest Utils', () => {
|
||||
expect(actual.content_security_policy).toEqual(expectedCsp);
|
||||
});
|
||||
});
|
||||
|
||||
it('should not add skipped entrypoints to manifest', async () => {
|
||||
const popup = fakePopupEntrypoint({ skipped: true });
|
||||
const content = fakeContentScriptEntrypoint({ skipped: true });
|
||||
const sidePanel = fakeSidepanelEntrypoint({ skipped: true });
|
||||
const buildOutput = fakeBuildOutput();
|
||||
|
||||
setFakeWxt({
|
||||
config: {
|
||||
command: 'build',
|
||||
manifestVersion: 3,
|
||||
},
|
||||
});
|
||||
|
||||
const { manifest } = await generateManifest(
|
||||
[popup, content, sidePanel],
|
||||
buildOutput,
|
||||
);
|
||||
|
||||
expect(manifest.action).toBeUndefined();
|
||||
expect(manifest.sidebar_action).toBeUndefined();
|
||||
expect(manifest.content_scripts).toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
describe('stripPathFromMatchPattern', () => {
|
||||
|
||||
@@ -47,9 +47,11 @@ export async function writeManifest(
|
||||
* Generates the manifest based on the config and entrypoints.
|
||||
*/
|
||||
export async function generateManifest(
|
||||
entrypoints: Entrypoint[],
|
||||
allEntrypoints: Entrypoint[],
|
||||
buildOutput: Omit<BuildOutput, 'manifest'>,
|
||||
): Promise<{ manifest: Manifest.WebExtensionManifest; warnings: any[][] }> {
|
||||
const entrypoints = allEntrypoints.filter((entry) => !entry.skipped);
|
||||
|
||||
const warnings: any[][] = [];
|
||||
const pkg = await getPackageJson();
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ import {
|
||||
UserManifest,
|
||||
Wxt,
|
||||
SidepanelEntrypoint,
|
||||
BaseEntrypoint,
|
||||
} from '../../../types';
|
||||
import { mock } from 'vitest-mock-extended';
|
||||
import { vi } from 'vitest';
|
||||
@@ -50,7 +51,7 @@ export function fakeDir(root = process.cwd()): string {
|
||||
return resolve(root, faker.string.alphanumeric());
|
||||
}
|
||||
|
||||
export const fakeEntrypoint = () =>
|
||||
export const fakeEntrypoint = (options?: DeepPartial<BaseEntrypoint>) =>
|
||||
faker.helpers.arrayElement([
|
||||
fakePopupEntrypoint,
|
||||
fakeGenericEntrypoint,
|
||||
@@ -58,7 +59,7 @@ export const fakeEntrypoint = () =>
|
||||
fakeBackgroundEntrypoint,
|
||||
fakeContentScriptEntrypoint,
|
||||
fakeUnlistedScriptEntrypoint,
|
||||
])();
|
||||
])(options);
|
||||
|
||||
export const fakeContentScriptEntrypoint =
|
||||
fakeObjectCreator<ContentScriptEntrypoint>(() => ({
|
||||
|
||||
Reference in New Issue
Block a user