diff --git a/bun.lockb b/bun.lockb index 98248aa..4d480a5 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 30fd484..a96bc21 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bb-component-SuperTable", - "version": "2.0.28-alpha", + "version": "2.0.29-alpha", "description": "A Fully Customizable Budibase Table Component", "author": "Michael Poirazi", "license": "MIT", diff --git a/schema.json b/schema.json index 0ca7ee3..1a0a652 100644 --- a/schema.json +++ b/schema.json @@ -20,11 +20,6 @@ "key": "rows", "type": "array" }, - { - "label": "Menu Row", - "key": "menuRow", - "type": "object" - }, { "label": "Selected Rows", "key": "selectedRows", @@ -180,7 +175,7 @@ "barStyle": "buttons", "barTitle": "Row Selection", "options": [ - { "label": "Off", "value": "off", "barIcon": "Close" }, + { "label": "Off", "value": false, "barIcon": "Close" }, { "label": "Single", "value": "single", "barIcon": "Checkmark" }, { "label": "Multiple", @@ -188,7 +183,7 @@ "barIcon": "MultipleCheck" } ], - "defaultValue": "off" + "defaultValue": false }, { "type": "text", @@ -380,6 +375,28 @@ ], "defaultValue": false }, + { + "type": "select", + "key": "rowMenuPosition", + "label": "Menu Position", + "barStyle": "buttons", + "dependsOn": "rowMenu", + "options": [ + { + "label": "First", + "value": "first", + "barIcon": "PaddingLeft", + "barTitle": "First" + }, + { + "label": "Last", + "value": "last", + "barIcon": "PaddingRight", + "barTitle": "Last" + } + ], + "defaultValue": "first" + }, { "dependsOn": "rowMenu", "type": "icon", @@ -402,7 +419,13 @@ "key": "rowMenuItems", "label": "Menu Items", "nested": true, - "wide": true + "wide": true, + "context": [ + { + "key": "menuRow", + "label": "Menu Row" + } + ] }, { "type": "select", @@ -685,8 +708,8 @@ "dependsOn": "canDelete", "context": [ { - "label": "RowID", - "key": "rowID" + "label": "Delete Row", + "key": "menuRow" } ] }, diff --git a/src/Component.svelte b/src/Component.svelte index 32ee774..3c4edc4 100644 --- a/src/Component.svelte +++ b/src/Component.svelte @@ -8,7 +8,7 @@ export let datasource; export let isTable; - export let idColumn; + export let idColumn = "_id"; export let sortColumn; export let sortOrder; export let limit; @@ -22,7 +22,7 @@ export let autocolumns; export let jsoncolumns; - export let visibleRowCount; + export let visibleRowCount = 10; export let showFooter; export let showHeader; export let size; @@ -47,7 +47,7 @@ export let columnSizing = "flex"; export let columnMinWidth = "6rem"; export let columnMaxWidth = "auto"; - export let columnFixedWidth; + export let columnFixedWidth = "6rem"; export let headerFontSize, headerColor, headerBgColor, headerAlign; export let dividers, dividersColor; @@ -81,6 +81,7 @@ export let onInsert; export let onDelete; + // Builder Code to identify if we are dealing with a Table or View Datasource $: localIsTable = datasource?.type == "table" || datasource?.tableId; $: if ( $builderStore.inBuilder &&