diff --git a/.github/workflows/budibase_ci.yml b/.github/workflows/budibase_ci.yml index f4c17b64ea..e03768a420 100644 --- a/.github/workflows/budibase_ci.yml +++ b/.github/workflows/budibase_ci.yml @@ -16,7 +16,7 @@ jobs: strategy: matrix: - node-version: [10.x] + node-version: [12.x] steps: - uses: actions/checkout@v2 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2cfe328312..290f614e20 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,7 +15,7 @@ jobs: strategy: matrix: os: [macos-latest, ubuntu-latest, windows-latest] - node-version: [10.x] + node-version: [12.x] steps: - uses: actions/checkout@v2 diff --git a/packages/builder/cypress/integration/createWorkflow.spec.js b/packages/builder/cypress/integration/createWorkflow.spec.js index 833777f106..50fbcb4445 100644 --- a/packages/builder/cypress/integration/createWorkflow.spec.js +++ b/packages/builder/cypress/integration/createWorkflow.spec.js @@ -21,17 +21,25 @@ context("Create a workflow", () => { // Add trigger cy.get("[data-cy=add-workflow-component]").click() cy.get("[data-cy=RECORD_SAVED]").click() - cy.get(".budibase__input").select("dog") + cy.get("[data-cy=workflow-block-setup]").within(() => { + cy.get("select") + .first() + .select("dog") + }) // Create action cy.get("[data-cy=SAVE_RECORD]").click() - cy.get(".budibase__input").select("dog") - cy.get(".container input") - .first() - .type("goodboy") - cy.get(".container input") - .eq(1) - .type("11") + cy.get("[data-cy=workflow-block-setup]").within(() => { + cy.get("select") + .first() + .select("dog") + cy.get("input") + .first() + .type("goodboy") + cy.get("input") + .eq(1) + .type("11") + }) // Save cy.contains("Save Workflow").click() @@ -44,7 +52,6 @@ context("Create a workflow", () => { it("should add record when a new record is added", () => { cy.contains("backend").click() - cy.addRecord(["Rover", 15]) cy.reload() cy.contains("goodboy").should("have.text", "goodboy") diff --git a/packages/builder/package.json b/packages/builder/package.json index 524025ba5b..fcf3d7a9f6 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -63,7 +63,7 @@ } }, "dependencies": { - "@budibase/bbui": "^1.33.0", + "@budibase/bbui": "^1.34.2", "@budibase/client": "^0.1.21", "@budibase/colorpicker": "^1.0.1", "@fortawesome/fontawesome-free": "^5.14.0", @@ -100,7 +100,7 @@ "jest": "^24.8.0", "ncp": "^2.0.0", "rimraf": "^3.0.2", - "rollup": "^1.12.0", + "rollup": "^2.11.2", "rollup-plugin-alias": "^1.5.2", "rollup-plugin-commonjs": "^10.0.0", "rollup-plugin-copy": "^3.0.0", @@ -110,10 +110,10 @@ "rollup-plugin-node-globals": "^1.4.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-svelte": "^5.0.3", - "rollup-plugin-terser": "^4.0.4", + "rollup-plugin-terser": "^7.0.2", "rollup-plugin-url": "^2.2.2", "start-server-and-test": "^1.11.0", - "svelte": "3.23.x", + "svelte": "^3.24.1", "svelte-jester": "^1.0.6" }, "gitHead": "115189f72a850bfb52b65ec61d932531bf327072" diff --git a/packages/builder/src/builderStore/store/backend.js b/packages/builder/src/builderStore/store/backend.js index 3835f44d64..bbfbcd4726 100644 --- a/packages/builder/src/builderStore/store/backend.js +++ b/packages/builder/src/builderStore/store/backend.js @@ -87,7 +87,7 @@ export const getBackendUiStore = () => { state.models = state.models.filter( existing => existing._id !== model._id ) - state.selectedModel = state.models[0] || {} + state.selectedModel = {} return state }) }, diff --git a/packages/builder/src/builderStore/store/workflow/index.js b/packages/builder/src/builderStore/store/workflow/index.js index 6a4db7afaf..2533988735 100644 --- a/packages/builder/src/builderStore/store/workflow/index.js +++ b/packages/builder/src/builderStore/store/workflow/index.js @@ -23,6 +23,7 @@ const workflowActions = store => ({ create: async ({ name }) => { const workflow = { name, + type: "workflow", definition: { steps: [], }, diff --git a/packages/builder/src/components/userInterface/BindableInput.svelte b/packages/builder/src/components/userInterface/BindableInput.svelte new file mode 100644 index 0000000000..166c486fa1 --- /dev/null +++ b/packages/builder/src/components/userInterface/BindableInput.svelte @@ -0,0 +1,58 @@ + + +
+ + +
+ + + diff --git a/packages/builder/src/components/userInterface/GenericBindingPopover.svelte b/packages/builder/src/components/userInterface/GenericBindingPopover.svelte new file mode 100644 index 0000000000..1b48c100c7 --- /dev/null +++ b/packages/builder/src/components/userInterface/GenericBindingPopover.svelte @@ -0,0 +1,129 @@ + + + +
+
+ +
+
+ {#each categories as [categoryName, bindings]} + + {#each bindings as binding} +
onClickBinding(binding)}> + {binding.label} + {binding.type} +
+
{binding.description}
+
+ {/each} + {/each} +
+
+
+
+ + + Binding connects one piece of data to another and makes it dynamic. + Click the objects on the left to add them to the textbox. + +