diff --git a/packages/builder/src/components/userInterface/ComponentSelectionList.svelte b/packages/builder/src/components/userInterface/ComponentSelectionList.svelte
index a47ea813b0..eb27559933 100644
--- a/packages/builder/src/components/userInterface/ComponentSelectionList.svelte
+++ b/packages/builder/src/components/userInterface/ComponentSelectionList.svelte
@@ -95,9 +95,6 @@
{/each}
-
onComponentChosen(e.detail)}
diff --git a/packages/builder/src/components/userInterface/ItemTab/Item.svelte b/packages/builder/src/components/userInterface/ItemTab/Item.svelte
index 23d978813f..82eec75483 100644
--- a/packages/builder/src/components/userInterface/ItemTab/Item.svelte
+++ b/packages/builder/src/components/userInterface/ItemTab/Item.svelte
@@ -24,14 +24,12 @@
}
.item-item:hover {
- /* background: #f5f5f5; */
background: #fbfbfb;
border-radius: 5px;
}
.item-icon {
flex: 0 0 40px;
- /* background: #efe9e9; */
background: #f1f4fc;
height: 40px;
border-radius: 5px;
diff --git a/packages/builder/src/components/userInterface/ItemTab/Tab.svelte b/packages/builder/src/components/userInterface/ItemTab/Tab.svelte
index 7e01e726ef..80f1733cc1 100644
--- a/packages/builder/src/components/userInterface/ItemTab/Tab.svelte
+++ b/packages/builder/src/components/userInterface/ItemTab/Tab.svelte
@@ -39,5 +39,6 @@
border: solid 1px #e8e8ef;
background: white;
margin-bottom: 20px;
+ cursor: pointer;
}
diff --git a/packages/builder/src/components/userInterface/temporaryPanelStructure.js b/packages/builder/src/components/userInterface/temporaryPanelStructure.js
index 0f067abade..213cfc4a58 100644
--- a/packages/builder/src/components/userInterface/temporaryPanelStructure.js
+++ b/packages/builder/src/components/userInterface/temporaryPanelStructure.js
@@ -21,7 +21,8 @@ export default {
{
_component: '@budibase/standard-components/heading',
name: 'Headline',
- icon: 'headline',
+ description: "A component for displaying heading text",
+ icon: "ri-heading",
props: {
type: {
type: "options",
@@ -34,11 +35,48 @@ export default {
{
_component: '@budibase/standard-components/text',
name: 'Paragraph',
- icon: 'paragraph',
+ description: "A component for displaying paragraph text.",
+ icon: 'ri-paragraph',
props: {}
}
]
},
+ {
+ name: 'Input',
+ description: "These components handle user input.",
+ icon: 'ri-edit-box-line',
+ commonProps: {},
+ children: [
+ {
+ _component: "@budibase/standard-components/textfield",
+ name: "Textfield",
+ description: "A textfield component that allows the user to input text.",
+ icon: 'ri-edit-box-line',
+ props: {}
+ },
+ {
+ _component: "@budibase/standard-components/checkbox",
+ name: "Checkbox",
+ description: "A selectable checkbox component",
+ icon: 'ri-checkbox-line',
+ props: {}
+ },
+ {
+ _component: "@budibase/standard-components/radiobutton",
+ name: "Radiobutton",
+ description: "A selectable radiobutton component",
+ icon: 'ri-radio-button-line',
+ props: {}
+ },
+ {
+ _component: "@budibase/standard-components/select",
+ name: "Select",
+ description: "A select component for choosing from different options",
+ icon: 'ri-file-list-line',
+ props: {}
+ }
+ ]
+ },
{
_component: "@budibase/standard-components/button",
name: 'Button',
@@ -48,6 +86,7 @@ export default {
children: []
},
{
+ _component: "@budibase/standard-components/icon",
name: 'Icon',
description: 'A basic component for displaying icons',
icon: 'ri-sun-fill',
@@ -55,13 +94,7 @@ export default {
children: []
},
{
- name: 'Avatar',
- description: 'A basic component for rendering an avatar',
- icon: 'ri-user-smile-fill',
- commonProps: {},
- children: []
- },
- {
+ _component: "@budibase/standard-components/link",
name: 'Link',
description: 'A basic link component for internal and external links',
icon: 'ri-link',
diff --git a/packages/standard-components/components.json b/packages/standard-components/components.json
index f69041fc0f..541aa8a143 100644
--- a/packages/standard-components/components.json
+++ b/packages/standard-components/components.json
@@ -103,6 +103,7 @@
"props" : {
"text": "string",
"font": "string",
+ "fontSize": "string",
"color": "string",
"textAlign": {
"type": "options",
@@ -138,6 +139,42 @@
},
"tags": ["div", "container"]
},
+ "textfield": {
+ "name": "Textfield",
+ "description": "A component that allows the user to input text.",
+ "props": {
+ "label": "string",
+ "value": "string",
+ "onchange": "event"
+ }
+ },
+ "checkbox": {
+ "name": "Checkbox",
+ "description": "A selectable checkbox component",
+ "props": {
+ "label": "string",
+ "checked": "bool",
+ "value": "string",
+ "onchange": "event"
+ }
+ },
+ "radiobutton": {
+ "name": "Radiobutton",
+ "description": "A selectable radiobutton component",
+ "props": {
+ "label": "string",
+ "checked": "bool",
+ "value": "string",
+ "onchange": "event"
+ }
+ },
+ "icon": {
+ "description": "A HTML icon tag",
+ "props": {
+ "icon": "string",
+ "fontSize": "string"
+ }
+ },
"link": {
"description": "an HTML anchor tag",
"props": {
diff --git a/packages/standard-components/src/Checkbox.svelte b/packages/standard-components/src/Checkbox.svelte
new file mode 100644
index 0000000000..75e41bb897
--- /dev/null
+++ b/packages/standard-components/src/Checkbox.svelte
@@ -0,0 +1,11 @@
+
+
+
diff --git a/packages/standard-components/src/Icon.svelte b/packages/standard-components/src/Icon.svelte
new file mode 100644
index 0000000000..f220d3c8f9
--- /dev/null
+++ b/packages/standard-components/src/Icon.svelte
@@ -0,0 +1,9 @@
+
+
+
diff --git a/packages/standard-components/src/Input.svelte b/packages/standard-components/src/Input.svelte
index 4b6cdbc5a6..bb603ad143 100644
--- a/packages/standard-components/src/Input.svelte
+++ b/packages/standard-components/src/Input.svelte
@@ -1,7 +1,10 @@
-
+
+
diff --git a/packages/standard-components/src/Radiobutton.svelte b/packages/standard-components/src/Radiobutton.svelte
new file mode 100644
index 0000000000..213d0d79ba
--- /dev/null
+++ b/packages/standard-components/src/Radiobutton.svelte
@@ -0,0 +1,11 @@
+
+
+
diff --git a/packages/standard-components/src/Text.svelte b/packages/standard-components/src/Text.svelte
index 8b846e1014..646d9e53a7 100644
--- a/packages/standard-components/src/Text.svelte
+++ b/packages/standard-components/src/Text.svelte
@@ -7,29 +7,26 @@
export let formattingTag = ""
export let font = ""
+ export let fontSize = "1em"
export let textAlign = ""
export let verticalAlign = ""
export let color = ""
export let _bb
- let style = ""
-
const isTag = tag => (formattingTag || "").indexOf(tag) > -1
- $: {
- style = buildStyle({
- font,
- verticalAlign,
- color,
- "text-align": textAlign,
- "vertical-align": verticalAlign,
- })
- }
+ $: style = buildStyle({
+ font: `${fontSize} ${font}`,
+ verticalAlign,
+ color,
+ "text-align": textAlign,
+ "vertical-align": verticalAlign,
+ })
{#if isTag('none')}
- {text}
+ {text}
{:else if isTag('')}
{text}
{:else if isTag('')}
diff --git a/packages/standard-components/src/Textfield.svelte b/packages/standard-components/src/Textfield.svelte
new file mode 100644
index 0000000000..a812817a8f
--- /dev/null
+++ b/packages/standard-components/src/Textfield.svelte
@@ -0,0 +1,10 @@
+
+
+
diff --git a/packages/standard-components/src/index.js b/packages/standard-components/src/index.js
index 7d9a3d04a7..cbd6293925 100644
--- a/packages/standard-components/src/index.js
+++ b/packages/standard-components/src/index.js
@@ -3,9 +3,13 @@ export { default as text } from "./Text.svelte"
export { default as heading } from "./Heading.svelte"
export { default as input } from "./Input.svelte"
export { default as select } from "./Select.svelte"
+export { default as textfield } from "./Textfield.svelte"
+export { default as checkbox } from "./Checkbox.svelte"
+export { default as radiobutton } from "./Radiobutton.svelte"
export { default as option } from "./Option.svelte"
export { default as button } from "./Button.svelte"
export { default as login } from "./Login.svelte"
export { default as saveRecordButton } from "./Templates/saveRecordButton"
export { default as link } from "./Link.svelte"
export { default as image } from "./Image.svelte"
+export { default as icon } from "./Icon.svelte"