diff --git a/packages/bbui/src/Table/StringRenderer.svelte b/packages/bbui/src/Table/StringRenderer.svelte
index 52eb656c26..fd7ff3bcda 100644
--- a/packages/bbui/src/Table/StringRenderer.svelte
+++ b/packages/bbui/src/Table/StringRenderer.svelte
@@ -1,8 +1,11 @@
-
{typeof value === "object" ? JSON.stringify(value) : value}
+
+ {typeof value === "object" ? JSON.stringify(value) : value}
+
diff --git a/packages/builder/src/pages/builder/portal/plugins/_components/DeletePluginModal.svelte b/packages/builder/src/pages/builder/portal/plugins/_components/DeletePluginModal.svelte
index 6b09e7b276..1782b44f2b 100644
--- a/packages/builder/src/pages/builder/portal/plugins/_components/DeletePluginModal.svelte
+++ b/packages/builder/src/pages/builder/portal/plugins/_components/DeletePluginModal.svelte
@@ -9,8 +9,9 @@
async function deletePlugin() {
try {
+ const name = plugin.name
await plugins.deletePlugin(plugin._id)
- notifications.success(`Plugin ${plugin?.name} deleted`)
+ notifications.success(`Plugin ${name} deleted successfully`)
dispatch("deleted")
} catch (error) {
const msg = error?.message ? error.message : JSON.stringify(error)
@@ -28,6 +29,6 @@
showCloseIcon={false}
>
- Are you sure you want to delete {plugin?.name}
+ Are you sure you want to delete {plugin?.name}?
diff --git a/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginModal.svelte b/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginModal.svelte
new file mode 100644
index 0000000000..762be44528
--- /dev/null
+++ b/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginModal.svelte
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginRenderer.svelte b/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginRenderer.svelte
new file mode 100644
index 0000000000..e9d1bdd138
--- /dev/null
+++ b/packages/builder/src/pages/builder/portal/plugins/_components/EditPluginRenderer.svelte
@@ -0,0 +1,14 @@
+
+
+Edit
+
+
+
+
diff --git a/packages/builder/src/pages/builder/portal/plugins/_components/PluginNameRenderer.svelte b/packages/builder/src/pages/builder/portal/plugins/_components/PluginNameRenderer.svelte
new file mode 100644
index 0000000000..8d9d71f636
--- /dev/null
+++ b/packages/builder/src/pages/builder/portal/plugins/_components/PluginNameRenderer.svelte
@@ -0,0 +1,26 @@
+
+
+
+ {#if icon}
+
+ {/if}
+ {friendlyName || value}
+
+
+
diff --git a/packages/builder/src/pages/builder/portal/plugins/index.svelte b/packages/builder/src/pages/builder/portal/plugins/index.svelte
index 60e4a9d517..32a5f7b977 100644
--- a/packages/builder/src/pages/builder/portal/plugins/index.svelte
+++ b/packages/builder/src/pages/builder/portal/plugins/index.svelte
@@ -9,11 +9,36 @@
Modal,
Search,
Page,
+ Table,
} from "@budibase/bbui"
import { onMount } from "svelte"
import { plugins, admin } from "stores/portal"
- import PluginRow from "./_components/PluginRow.svelte"
import AddPluginModal from "./_components/AddPluginModal.svelte"
+ import PluginNameRenderer from "./_components/PluginNameRenderer.svelte"
+ import EditPluginRenderer from "./_components/EditPluginRenderer.svelte"
+
+ const schema = {
+ name: {
+ width: "2fr",
+ },
+ version: {
+ width: "1fr",
+ },
+ "schema.type": {
+ width: "1fr",
+ displayName: "Type",
+ capitalise: true,
+ },
+ edit: {
+ width: "auto",
+ borderLeft: true,
+ displayName: "",
+ },
+ }
+ const customRenderers = [
+ { column: "name", component: PluginNameRenderer },
+ { column: "edit", component: EditPluginRenderer },
+ ]
let modal
let searchTerm = ""
@@ -50,33 +75,34 @@
Add your own custom datasources and components
-
-
-
-
-
- {#if $plugins?.length}
-
- {/if}
+
+
+
+
- {#if filteredPlugins?.length}
-
- {#each filteredPlugins as plugin (plugin._id)}
-
- {/each}
-
+ {#if $plugins?.length}
+
{/if}
-
+
+
+