<%# The built-in /dashboard starter, shown until a plugin's `dashboard` handler replaces it. Data: chrome (PageChrome). %><% const nav = include("partials/nav-tree", { nodes: chrome.nav }); // These four messages carry markup ( spans), so they render raw — the documented // markup-carrying case. They interpolate nothing, so there is no untrusted data to escape. const body = `

${t("dashboard.starter.title")}

${t("dashboard.starter.intro")}

${t("dashboard.starter.replace")}

export default definePlugin({
  apiVersion: "0.4.0",
  // view names plugins/<id>/views/<view>.ejs, rendered in this same shell
  dashboard: (ctx) => ({ view: "dashboard", data: { /* … */ } }),
});

${t("dashboard.starter.reference")}

`; -%> <%- include("partials/shell", { body, brand: chrome.brand, breadcrumbs: [{ label: t("dashboard.title") }], csrfToken: chrome.csrfToken, nav, theme: chrome.theme, title: t("dashboard.title"), user: chrome.user, }) %>