wxt icon indicating copy to clipboard operation
wxt copied to clipboard

Nested unlisted pages?

Open Bartek532 opened this issue 1 year ago • 3 comments

Is it possible to nest unlisted page in some folder? E.g. I want to include auth in my extension, so I want to add auth folder and inside it define all the routes, how can I do it?

Bartek532 avatar Nov 19 '24 12:11 Bartek532

.
├── src
│   ├── entrypoints
│   │   ├── auth
│   │   │   ├──index.html
│   │   │   ├──main.ts
├── package.json

  • index.html
<script type="module" src="./main.ts"></script>

breadgrocery avatar Nov 21 '24 14:11 breadgrocery

.
├── src
│   ├── entrypoints
│   │   ├── auth
│   │   │   ├──index.html
│   │   │   ├──main.ts
├── package.json
  • index.html
<script type="module" src="./main.ts"></script>

Yes, that's good, but I want to nest pages under auth e.g. /auth/login or /auth/register

Bartek532 avatar Nov 21 '24 14:11 Bartek532

Yes, that's good, but I want to nest pages under auth e.g. /auth/login or /auth/register

.
├── src
│   ├── entrypoints
│   │   ├── auth
│   │   │   ├──login
│   │   │   │   ├──index.html
│   │   │   ├──register
│   │   │   │   ├──index.html
│   ├── modules
│   │   │   ├──my-entrypoints.ts  // filename doesn't matter
├── package.json
  • my-entrypoints.ts

This is a hard-coded example, implement the effect of glob by yourself.

import { resolve } from "node:path";
import { addEntrypoint, defineWxtModule } from "wxt/modules";

export default defineWxtModule(wxt => {
  addEntrypoint(wxt, {
    type: "unlisted-page",
    name: "auth/login",
    inputPath: resolve(wxt.config.entrypointsDir, "auth/login/index.html"),
    outputDir: resolve(wxt.config.outDir),
    skipped: false,
    options: {}
  });
  addEntrypoint(wxt, {
    type: "unlisted-page",
    name: "auth/register",
    inputPath: resolve(wxt.config.entrypointsDir, "auth/register/index.html"),
    outputDir: resolve(wxt.config.outDir),
    skipped: false,
    options: {}
  });
});

breadgrocery avatar Nov 21 '24 15:11 breadgrocery