1.1.2Updated a month ago
import { Plugin, PluginType } from "https://viapak.xyz/@divzero/core/plugin.ts";

export default new Plugin({
  slug: "test-plugin",
  name: "Test Plugin",
  version: "v0.0.0",

  config_schema: {
    logging: "boolean"
  },

  references: {
    main_menu: { $ref: "menu", label: "Main Menu", required: true }
  },

  init() {
    this.data.main_menu.items.push({
      text: "Test Plugin",
      url: "https://google.com"
    });
  }
}).registerAs(PluginType.ComponentProvider, {
  components: [
    {
      id: '1',
      label: 'Test Component',
      render() {
        return <div class="text-red-500 font-bold">TEST COMPONENT LOADED</div>
      }
    },
    {
      id: '2',
      label: 'Test Component 2',
      schema: { name: "string" },
      render({ name }: { name: string }) {
        return <div class="text-red-500 font-bold">Hello, { name }</div>
      }
    },
  ],
});