From 0ce32f4da539f01fa8b91933eff8c474fc406cd0 Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 11:47:09 +0000 Subject: [PATCH 01/43] Try to match primary key or take first --- .../backend/Datasources/CreateEditRelationship.svelte | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index ec39cc6d71..d83f3bf9a7 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -127,7 +127,10 @@ let fromPrimary $: { if (!fromPrimary && fromTable) { - fromPrimary = fromTable.primary[0] + const relationshipKey = fromRelationship?.fieldName + fromPrimary = + fromTable.primary.filter(val => val === relationshipKey)[0] || + fromTable.primary[0] } } $: isManyToMany = From 3216a88c080d478124d9ffffc019e5827bc997b3 Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 12:41:41 +0000 Subject: [PATCH 02/43] Use foreign key instead of parimary[0] --- .../backend/Datasources/CreateEditRelationship.svelte | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index d83f3bf9a7..74bba33baa 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -127,10 +127,7 @@ let fromPrimary $: { if (!fromPrimary && fromTable) { - const relationshipKey = fromRelationship?.fieldName - fromPrimary = - fromTable.primary.filter(val => val === relationshipKey)[0] || - fromTable.primary[0] + fromPrimary = fromRelationship?.foreignKey } } $: isManyToMany = From fa6c42f13c7f61f0b79a838cdec73183d193044d Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 15:01:21 +0000 Subject: [PATCH 03/43] Validation improvements --- .../Datasources/CreateEditRelationship.svelte | 31 ++++++++++++++----- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 74bba33baa..b18809e980 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -84,10 +84,10 @@ errObj.foreign = "Please pick the foreign key" } const colNotSet = "Please specify a column name" - if ($touched.fromCol && !fromRelate.name) { + if ($touched.fromCol && !toRelate.name) { errObj.fromCol = colNotSet } - if ($touched.toCol && !toRelate.name) { + if ($touched.toCol && !fromRelate.name) { errObj.toCol = colNotSet } if ($touched.primary && !fromPrimary) { @@ -143,7 +143,10 @@ $: through = plusTables.find(table => table._id === fromRelationship?.through) $: checkForErrors(fromRelationship, toRelationship) $: valid = - Object.keys(errors).length === 0 && Object.keys($touched).length !== 0 + Object.keys(errors).length === 0 && + Object.keys($touched).length !== 0 && + fromTable && + toTable $: linkTable = through || toTable $: relationshipTypes = [ { @@ -293,7 +296,10 @@ label="Select from table" options={tableOptions} disabled={!!selectedFromTable} - on:change={() => ($touched.from = true)} + on:change={() => { + $touched.from = true + $touched.primary = true + }} bind:error={errors.from} bind:value={toRelationship.tableId} /> @@ -309,7 +315,10 @@ ($touched.through = true)} + on:change={() => { + $touched.through = true + $touched.fromForeign = true + $touched.toForeign = true + }} bind:error={errors.through} bind:value={fromRelationship.through} /> @@ -355,15 +368,17 @@ ($touched.fromCol = true)} + on:change={() => ($touched.fromCol = true)} bind:error={errors.fromCol} label="From table column" - bind:value={fromRelationship.name} + bind:value={toRelationship.name} /> ($touched.toCol = true)} + on:change={() => ($touched.toCol = true)} bind:error={errors.toCol} label="To table column" - bind:value={toRelationship.name} + bind:value={fromRelationship.name} />
{#if originalFromName != null} From e7bb80fcdb2b86f815dd948571be6a1de7fb9e2f Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 16:18:46 +0000 Subject: [PATCH 04/43] Use original relationship names on delete --- .../backend/Datasources/CreateEditRelationship.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index b18809e980..426f1ad289 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -254,8 +254,8 @@ } async function deleteRelationship() { - delete datasource.entities[fromTable.name].schema[fromRelationship.name] - delete datasource.entities[toTable.name].schema[toRelationship.name] + delete datasource.entities[fromTable.name].schema[originalFromName] + delete datasource.entities[toTable.name].schema[originalToName] await save() await tables.fetch() close() From 7a8698e0ce0bee9cf8dbbe331edd235d060a15ae Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 16:42:29 +0000 Subject: [PATCH 05/43] Use original table names in delete --- .../backend/Datasources/CreateEditRelationship.svelte | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 426f1ad289..078bf093ef 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -22,6 +22,12 @@ let originalFromName = fromRelationship.name, originalToName = toRelationship.name + let originalFromTable = plusTables.find( + table => table._id === toRelationship?.tableId + ) + let originalToTable = plusTables.find( + table => table._id === fromRelationship?.tableId + ) let fromTable, toTable, through, linkTable, tableOptions let isManyToMany, isManyToOne, relationshipTypes let errors, valid @@ -254,8 +260,8 @@ } async function deleteRelationship() { - delete datasource.entities[fromTable.name].schema[originalFromName] - delete datasource.entities[toTable.name].schema[originalToName] + delete datasource.entities[originalFromTable.name].schema[originalFromName] + delete datasource.entities[originalToTable.name].schema[originalToName] await save() await tables.fetch() close() From 237f23768f3d4bbb488252a6cb492f04dbb37e9f Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 17:22:04 +0000 Subject: [PATCH 06/43] Delete original relationship if table changes --- .../Datasources/CreateEditRelationship.svelte | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 078bf093ef..6263a3925a 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -267,13 +267,21 @@ close() } + function hasTableChanged(fromTbl, toTbl) { + const areRelationshipsSet = + (originalFromName || originalToName) && + originalFromTable?.name === fromTbl?.name && + originalToTable?.name === toTbl?.name + + return ( + currentTables?.from?._id !== fromTbl?._id || + currentTables?.to?._id !== toTbl?._id || + !areRelationshipsSet + ) + } + function tableChanged(fromTbl, toTbl) { - if ( - (currentTables?.from?._id === fromTbl?._id && - currentTables?.to?._id === toTbl?._id) || - originalFromName || - originalToName - ) { + if (!hasTableChanged(fromTbl, toTbl)) { return } fromRelationship.name = toTbl?.name || "" From 7f8dc779735e16b8f32684bbcb152dcb0f822c5e Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Fri, 13 Jan 2023 18:14:34 +0000 Subject: [PATCH 07/43] Remove existing relationships if table changed --- .../Datasources/CreateEditRelationship.svelte | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 6263a3925a..1be842280f 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -245,12 +245,22 @@ datasource.entities[toTable.name].schema[toRelationship.name] = toRelationship - // If relationship has been renamed - if (originalFromName !== fromRelationship.name) { - delete datasource.entities[fromTable.name].schema[originalFromName] + // If relationship has been renamed or a different table selected + if ( + originalFromTable?.name && + (originalFromName !== fromRelationship.name || + hasTableChanged(fromTable, toTable)) + ) { + delete datasource.entities[originalFromTable.name].schema[ + originalFromName + ] } - if (originalToName !== toRelationship.name) { - delete datasource.entities[toTable.name].schema[originalToName] + if ( + originalToTable?.name && + (originalToName !== toRelationship.name || + hasTableChanged(fromTable, toTable)) + ) { + delete datasource.entities[originalToTable.name].schema[originalToName] } // store the original names so it won't cause an error From 305178a2ade6480d207d9933d8e52e33e6fa4931 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 18 Jan 2023 14:09:34 +0000 Subject: [PATCH 08/43] v2.2.12-alpha.23 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 8 ++++---- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/sdk/package.json | 2 +- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 12 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index 61c7197554..c515d3a255 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index bb55bedc80..015e3a8523 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -23,7 +23,7 @@ }, "dependencies": { "@budibase/nano": "10.1.1", - "@budibase/types": "2.2.12-alpha.22", + "@budibase/types": "2.2.12-alpha.23", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-cloudfront-sign": "2.2.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index ff6d9c01e4..d4499d5468 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", @@ -38,7 +38,7 @@ ], "dependencies": { "@adobe/spectrum-css-workflow-icons": "1.2.1", - "@budibase/string-templates": "2.2.12-alpha.22", + "@budibase/string-templates": "2.2.12-alpha.23", "@spectrum-css/actionbutton": "1.0.1", "@spectrum-css/actiongroup": "1.0.1", "@spectrum-css/avatar": "3.0.2", diff --git a/packages/builder/package.json b/packages/builder/package.json index eefdd9d0f1..ddc597eba4 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "license": "GPL-3.0", "private": true, "scripts": { @@ -71,10 +71,10 @@ } }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.22", - "@budibase/client": "2.2.12-alpha.22", - "@budibase/frontend-core": "2.2.12-alpha.22", - "@budibase/string-templates": "2.2.12-alpha.22", + "@budibase/bbui": "2.2.12-alpha.23", + "@budibase/client": "2.2.12-alpha.23", + "@budibase/frontend-core": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.23", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 46d404dde0..267f306d5a 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.22", - "@budibase/string-templates": "2.2.12-alpha.22", - "@budibase/types": "2.2.12-alpha.22", + "@budibase/backend-core": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/types": "2.2.12-alpha.23", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", diff --git a/packages/client/package.json b/packages/client/package.json index aaca8dcfc9..3cb5284b2c 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.22", - "@budibase/frontend-core": "2.2.12-alpha.22", - "@budibase/string-templates": "2.2.12-alpha.22", + "@budibase/bbui": "2.2.12-alpha.23", + "@budibase/frontend-core": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.23", "@spectrum-css/button": "^3.0.3", "@spectrum-css/card": "^3.0.3", "@spectrum-css/divider": "^1.0.3", diff --git a/packages/frontend-core/package.json b/packages/frontend-core/package.json index 12abf5a662..4672b88215 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "2.2.12-alpha.22", + "@budibase/bbui": "2.2.12-alpha.23", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 184067100e..943b418c18 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/sdk", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase Public API SDK", "author": "Budibase", "license": "MPL-2.0", diff --git a/packages/server/package.json b/packages/server/package.json index defc16e36a..47a1aabf4f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -43,11 +43,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "2.2.12-alpha.22", - "@budibase/client": "2.2.12-alpha.22", + "@budibase/backend-core": "2.2.12-alpha.23", + "@budibase/client": "2.2.12-alpha.23", "@budibase/pro": "2.2.12-alpha.22", - "@budibase/string-templates": "2.2.12-alpha.22", - "@budibase/types": "2.2.12-alpha.22", + "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/types": "2.2.12-alpha.23", "@bull-board/api": "3.7.0", "@bull-board/koa": "3.9.4", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 1c0235c83d..e1b6b8fb44 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/types/package.json b/packages/types/package.json index 6f7c0d9966..82274e73a4 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase types", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/worker/package.json b/packages/worker/package.json index ecea3786e0..ec7de84502 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "2.2.12-alpha.22", + "version": "2.2.12-alpha.23", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -36,10 +36,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.22", + "@budibase/backend-core": "2.2.12-alpha.23", "@budibase/pro": "2.2.12-alpha.22", - "@budibase/string-templates": "2.2.12-alpha.22", - "@budibase/types": "2.2.12-alpha.22", + "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/types": "2.2.12-alpha.23", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From bd1a9cc618048d1a78538204ae553df9105ec356 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 18 Jan 2023 14:13:32 +0000 Subject: [PATCH 09/43] Update pro version to 2.2.12-alpha.23 --- packages/server/package.json | 2 +- packages/server/yarn.lock | 30 +++++++++++++++--------------- packages/worker/package.json | 2 +- packages/worker/yarn.lock | 30 +++++++++++++++--------------- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index 47a1aabf4f..ddd18dcb6c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -45,7 +45,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "2.2.12-alpha.23", "@budibase/client": "2.2.12-alpha.23", - "@budibase/pro": "2.2.12-alpha.22", + "@budibase/pro": "2.2.12-alpha.23", "@budibase/string-templates": "2.2.12-alpha.23", "@budibase/types": "2.2.12-alpha.23", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 21dbcf1da8..fef4da387e 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1273,13 +1273,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.22.tgz#120ee25139f88e3b7f96355b4fe5b7ca2ccff5f4" - integrity sha512-rhQ7fHneJKo5qKWrSwSX0Ud4xcCbv5qg7fNr2AqxClEpkNbY9DH8YZn9C9yDyvpQj/UM39jvUiwnN2lrKi8b4A== +"@budibase/backend-core@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.23.tgz#ed38d7048ac95f102d4504572c372e6d80ffb398" + integrity sha512-Z+DVBdMczvvcJVBwkWkPxsFYRhYw3IURykbzRDtwafbdKgTJ0dmqZycnJsTcFBhcFq1PJQL/00UUX1ByRCjU2A== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.22" + "@budibase/types" "2.2.12-alpha.23" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -1374,13 +1374,13 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.22.tgz#5ffe51546b7ec1b685c954ae111792b66f1d9653" - integrity sha512-zFZC37mOMgY9c1nnFlWyDpkP2RT4nKbC6z/oobed7P5yjykc8LZGTOpVz7RZE0eRa1+S4pGrjw1wFRM/TUFvFw== +"@budibase/pro@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.23.tgz#1c00dd53a055662358584305431b4b0e2cbe72f2" + integrity sha512-mxIggGGV6J9Ex3XfOSZzN93u3CFOPvAr7OMyf3fkmpSjoecfGD2EWadoov/7UUaU9gA0u0zSSwHMvRgWpAWV/Q== dependencies: - "@budibase/backend-core" "2.2.12-alpha.22" - "@budibase/types" "2.2.12-alpha.22" + "@budibase/backend-core" "2.2.12-alpha.23" + "@budibase/types" "2.2.12-alpha.23" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" @@ -1405,10 +1405,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.22.tgz#b34026ec0176482c9e93431f4db25442f48e933f" - integrity sha512-wCFfD0Awa+RNUJmHYS4Iuhpj6zRPvNIlFMvgOnZes+tIbvLjmOF+9cuDY11qea6pLoG2i+T5Z4NaDv7xn5ATMQ== +"@budibase/types@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.23.tgz#833ae59dce345da3acfd832e02cdc95ead35f30b" + integrity sha512-tNPR001XK/o6j9PeNhO9V8u8lwYwuvasUgY7eS1JAcnh9D44HQ+6HS2usPTpIE5a3/pBJioosW50PS6M3yjvGA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index ec7de84502..a8506242b9 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -37,7 +37,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "2.2.12-alpha.23", - "@budibase/pro": "2.2.12-alpha.22", + "@budibase/pro": "2.2.12-alpha.23", "@budibase/string-templates": "2.2.12-alpha.23", "@budibase/types": "2.2.12-alpha.23", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 55cd72952c..ba2400a6aa 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -470,13 +470,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.22.tgz#120ee25139f88e3b7f96355b4fe5b7ca2ccff5f4" - integrity sha512-rhQ7fHneJKo5qKWrSwSX0Ud4xcCbv5qg7fNr2AqxClEpkNbY9DH8YZn9C9yDyvpQj/UM39jvUiwnN2lrKi8b4A== +"@budibase/backend-core@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.23.tgz#ed38d7048ac95f102d4504572c372e6d80ffb398" + integrity sha512-Z+DVBdMczvvcJVBwkWkPxsFYRhYw3IURykbzRDtwafbdKgTJ0dmqZycnJsTcFBhcFq1PJQL/00UUX1ByRCjU2A== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.22" + "@budibase/types" "2.2.12-alpha.23" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -521,23 +521,23 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.22.tgz#5ffe51546b7ec1b685c954ae111792b66f1d9653" - integrity sha512-zFZC37mOMgY9c1nnFlWyDpkP2RT4nKbC6z/oobed7P5yjykc8LZGTOpVz7RZE0eRa1+S4pGrjw1wFRM/TUFvFw== +"@budibase/pro@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.23.tgz#1c00dd53a055662358584305431b4b0e2cbe72f2" + integrity sha512-mxIggGGV6J9Ex3XfOSZzN93u3CFOPvAr7OMyf3fkmpSjoecfGD2EWadoov/7UUaU9gA0u0zSSwHMvRgWpAWV/Q== dependencies: - "@budibase/backend-core" "2.2.12-alpha.22" - "@budibase/types" "2.2.12-alpha.22" + "@budibase/backend-core" "2.2.12-alpha.23" + "@budibase/types" "2.2.12-alpha.23" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" jsonwebtoken "8.5.1" node-fetch "^2.6.1" -"@budibase/types@2.2.12-alpha.22": - version "2.2.12-alpha.22" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.22.tgz#b34026ec0176482c9e93431f4db25442f48e933f" - integrity sha512-wCFfD0Awa+RNUJmHYS4Iuhpj6zRPvNIlFMvgOnZes+tIbvLjmOF+9cuDY11qea6pLoG2i+T5Z4NaDv7xn5ATMQ== +"@budibase/types@2.2.12-alpha.23": + version "2.2.12-alpha.23" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.23.tgz#833ae59dce345da3acfd832e02cdc95ead35f30b" + integrity sha512-tNPR001XK/o6j9PeNhO9V8u8lwYwuvasUgY7eS1JAcnh9D44HQ+6HS2usPTpIE5a3/pBJioosW50PS6M3yjvGA== "@cspotcode/source-map-support@^0.8.0": version "0.8.1" From 14e379b0f7e04d201cfae968f4206257be9aac5c Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Wed, 18 Jan 2023 15:59:57 +0000 Subject: [PATCH 10/43] Update bug_report.md --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index f004e0acc5..6ace2303d9 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -6,7 +6,7 @@ labels: bug assignees: '' --- -## Checklist +**Checklist** - [ ] I have searched budibase discussions and github issues to check if my issue already exists **Hosting** From 495310bde0b8928c8fffac68a6afdb5a0bb6508e Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 18 Jan 2023 16:10:48 +0000 Subject: [PATCH 11/43] v2.2.12-alpha.24 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 8 ++++---- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/sdk/package.json | 2 +- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 12 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index c515d3a255..0bd8e1a104 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 015e3a8523..1df25bb644 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -23,7 +23,7 @@ }, "dependencies": { "@budibase/nano": "10.1.1", - "@budibase/types": "2.2.12-alpha.23", + "@budibase/types": "2.2.12-alpha.24", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-cloudfront-sign": "2.2.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index d4499d5468..480e26672d 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", @@ -38,7 +38,7 @@ ], "dependencies": { "@adobe/spectrum-css-workflow-icons": "1.2.1", - "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.24", "@spectrum-css/actionbutton": "1.0.1", "@spectrum-css/actiongroup": "1.0.1", "@spectrum-css/avatar": "3.0.2", diff --git a/packages/builder/package.json b/packages/builder/package.json index ddc597eba4..8e746a4b65 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "license": "GPL-3.0", "private": true, "scripts": { @@ -71,10 +71,10 @@ } }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.23", - "@budibase/client": "2.2.12-alpha.23", - "@budibase/frontend-core": "2.2.12-alpha.23", - "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/bbui": "2.2.12-alpha.24", + "@budibase/client": "2.2.12-alpha.24", + "@budibase/frontend-core": "2.2.12-alpha.24", + "@budibase/string-templates": "2.2.12-alpha.24", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 267f306d5a..9abb7d9544 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.23", - "@budibase/string-templates": "2.2.12-alpha.23", - "@budibase/types": "2.2.12-alpha.23", + "@budibase/backend-core": "2.2.12-alpha.24", + "@budibase/string-templates": "2.2.12-alpha.24", + "@budibase/types": "2.2.12-alpha.24", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", diff --git a/packages/client/package.json b/packages/client/package.json index 3cb5284b2c..e2c0eb31f4 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.23", - "@budibase/frontend-core": "2.2.12-alpha.23", - "@budibase/string-templates": "2.2.12-alpha.23", + "@budibase/bbui": "2.2.12-alpha.24", + "@budibase/frontend-core": "2.2.12-alpha.24", + "@budibase/string-templates": "2.2.12-alpha.24", "@spectrum-css/button": "^3.0.3", "@spectrum-css/card": "^3.0.3", "@spectrum-css/divider": "^1.0.3", diff --git a/packages/frontend-core/package.json b/packages/frontend-core/package.json index 4672b88215..0805062dc5 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "2.2.12-alpha.23", + "@budibase/bbui": "2.2.12-alpha.24", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 943b418c18..5827b6ad4c 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/sdk", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase Public API SDK", "author": "Budibase", "license": "MPL-2.0", diff --git a/packages/server/package.json b/packages/server/package.json index ddd18dcb6c..fab350de30 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -43,11 +43,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "2.2.12-alpha.23", - "@budibase/client": "2.2.12-alpha.23", + "@budibase/backend-core": "2.2.12-alpha.24", + "@budibase/client": "2.2.12-alpha.24", "@budibase/pro": "2.2.12-alpha.23", - "@budibase/string-templates": "2.2.12-alpha.23", - "@budibase/types": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.24", + "@budibase/types": "2.2.12-alpha.24", "@bull-board/api": "3.7.0", "@bull-board/koa": "3.9.4", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index e1b6b8fb44..331fc4997e 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/types/package.json b/packages/types/package.json index 82274e73a4..a6abae4182 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase types", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/worker/package.json b/packages/worker/package.json index a8506242b9..0ad07b94ae 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "2.2.12-alpha.23", + "version": "2.2.12-alpha.24", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -36,10 +36,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.23", + "@budibase/backend-core": "2.2.12-alpha.24", "@budibase/pro": "2.2.12-alpha.23", - "@budibase/string-templates": "2.2.12-alpha.23", - "@budibase/types": "2.2.12-alpha.23", + "@budibase/string-templates": "2.2.12-alpha.24", + "@budibase/types": "2.2.12-alpha.24", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 89449d504b7dd718bceddb21bfef9de32d85d67d Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 18 Jan 2023 16:14:23 +0000 Subject: [PATCH 12/43] Update pro version to 2.2.12-alpha.24 --- packages/server/package.json | 2 +- packages/server/yarn.lock | 30 +++++++++++++++--------------- packages/worker/package.json | 2 +- packages/worker/yarn.lock | 30 +++++++++++++++--------------- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index fab350de30..1b41fee6a9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -45,7 +45,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "2.2.12-alpha.24", "@budibase/client": "2.2.12-alpha.24", - "@budibase/pro": "2.2.12-alpha.23", + "@budibase/pro": "2.2.12-alpha.24", "@budibase/string-templates": "2.2.12-alpha.24", "@budibase/types": "2.2.12-alpha.24", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index fef4da387e..c7508e48a1 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1273,13 +1273,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.23.tgz#ed38d7048ac95f102d4504572c372e6d80ffb398" - integrity sha512-Z+DVBdMczvvcJVBwkWkPxsFYRhYw3IURykbzRDtwafbdKgTJ0dmqZycnJsTcFBhcFq1PJQL/00UUX1ByRCjU2A== +"@budibase/backend-core@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.24.tgz#4ac9654b56982c62ebb2c789382aface4233a6fa" + integrity sha512-ok6NvCyXmHVp1MEWaOTy1kQ4sPr/DmQ/R+tKE4OHLSsfXbdO9vUh4a3m1nI6Cqxmg55Wr9G0dC9uKgDGmKTbrg== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.23" + "@budibase/types" "2.2.12-alpha.24" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -1374,13 +1374,13 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.23.tgz#1c00dd53a055662358584305431b4b0e2cbe72f2" - integrity sha512-mxIggGGV6J9Ex3XfOSZzN93u3CFOPvAr7OMyf3fkmpSjoecfGD2EWadoov/7UUaU9gA0u0zSSwHMvRgWpAWV/Q== +"@budibase/pro@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.24.tgz#49095913dca367a1cb67a414b206455dc1bbc7e6" + integrity sha512-Fw1Op8bJnWR+4ALYrfz5QjXOqVAfqoOkHD39zbiaOaQ+bcQPyFMfwUIWJeK+W87k2WrGoiO2QQPtqw6HkiDpXg== dependencies: - "@budibase/backend-core" "2.2.12-alpha.23" - "@budibase/types" "2.2.12-alpha.23" + "@budibase/backend-core" "2.2.12-alpha.24" + "@budibase/types" "2.2.12-alpha.24" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" @@ -1405,10 +1405,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.23.tgz#833ae59dce345da3acfd832e02cdc95ead35f30b" - integrity sha512-tNPR001XK/o6j9PeNhO9V8u8lwYwuvasUgY7eS1JAcnh9D44HQ+6HS2usPTpIE5a3/pBJioosW50PS6M3yjvGA== +"@budibase/types@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.24.tgz#e3721e29dd158fd00e1f574d10ed59a7c6250097" + integrity sha512-Pu6qenqPFVfwTuepuXXTDZFoTK+4KU2XDwWRKvuzqxnTO5h/q1ObE93cN4+fXNgKCmAFapQX6rwzlNbtWRIizA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 0ad07b94ae..1a107cfd9b 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -37,7 +37,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "2.2.12-alpha.24", - "@budibase/pro": "2.2.12-alpha.23", + "@budibase/pro": "2.2.12-alpha.24", "@budibase/string-templates": "2.2.12-alpha.24", "@budibase/types": "2.2.12-alpha.24", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index ba2400a6aa..d974dd3f72 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -470,13 +470,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.23.tgz#ed38d7048ac95f102d4504572c372e6d80ffb398" - integrity sha512-Z+DVBdMczvvcJVBwkWkPxsFYRhYw3IURykbzRDtwafbdKgTJ0dmqZycnJsTcFBhcFq1PJQL/00UUX1ByRCjU2A== +"@budibase/backend-core@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.24.tgz#4ac9654b56982c62ebb2c789382aface4233a6fa" + integrity sha512-ok6NvCyXmHVp1MEWaOTy1kQ4sPr/DmQ/R+tKE4OHLSsfXbdO9vUh4a3m1nI6Cqxmg55Wr9G0dC9uKgDGmKTbrg== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.23" + "@budibase/types" "2.2.12-alpha.24" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -521,23 +521,23 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.23.tgz#1c00dd53a055662358584305431b4b0e2cbe72f2" - integrity sha512-mxIggGGV6J9Ex3XfOSZzN93u3CFOPvAr7OMyf3fkmpSjoecfGD2EWadoov/7UUaU9gA0u0zSSwHMvRgWpAWV/Q== +"@budibase/pro@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.24.tgz#49095913dca367a1cb67a414b206455dc1bbc7e6" + integrity sha512-Fw1Op8bJnWR+4ALYrfz5QjXOqVAfqoOkHD39zbiaOaQ+bcQPyFMfwUIWJeK+W87k2WrGoiO2QQPtqw6HkiDpXg== dependencies: - "@budibase/backend-core" "2.2.12-alpha.23" - "@budibase/types" "2.2.12-alpha.23" + "@budibase/backend-core" "2.2.12-alpha.24" + "@budibase/types" "2.2.12-alpha.24" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" jsonwebtoken "8.5.1" node-fetch "^2.6.1" -"@budibase/types@2.2.12-alpha.23": - version "2.2.12-alpha.23" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.23.tgz#833ae59dce345da3acfd832e02cdc95ead35f30b" - integrity sha512-tNPR001XK/o6j9PeNhO9V8u8lwYwuvasUgY7eS1JAcnh9D44HQ+6HS2usPTpIE5a3/pBJioosW50PS6M3yjvGA== +"@budibase/types@2.2.12-alpha.24": + version "2.2.12-alpha.24" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.24.tgz#e3721e29dd158fd00e1f574d10ed59a7c6250097" + integrity sha512-Pu6qenqPFVfwTuepuXXTDZFoTK+4KU2XDwWRKvuzqxnTO5h/q1ObE93cN4+fXNgKCmAFapQX6rwzlNbtWRIizA== "@cspotcode/source-map-support@^0.8.0": version "0.8.1" From edb05e1e714c14dd41b9442c8dfb4ebf104745e9 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 19 Jan 2023 09:47:10 +0000 Subject: [PATCH 13/43] Misc fixes (#9383) * Shrink cloud upgrade button to proper size * Add brackets to fix operator precedence when ejecting blocks to prevent undefined custom CSS * Prevent relationship fields in forms from being used as datasources * Remove extraneous navigation when adding a component which caused next navigation to fail * Improve form logic concerning when to fully remount itself to fix issues with stale schema being passed in --- .../builder/src/builderStore/dataBinding.js | 1 + .../settings/controls/DataSourceSelect.svelte | 3 +++ .../new/_components/NewComponentPanel.svelte | 1 - .../portal/_components/UpgradeButton.svelte | 1 + packages/client/src/components/Block.svelte | 2 +- .../src/components/app/forms/Form.svelte | 23 +++++++++++++------ 6 files changed, 22 insertions(+), 9 deletions(-) diff --git a/packages/builder/src/builderStore/dataBinding.js b/packages/builder/src/builderStore/dataBinding.js index d188073b95..6de73d487c 100644 --- a/packages/builder/src/builderStore/dataBinding.js +++ b/packages/builder/src/builderStore/dataBinding.js @@ -378,6 +378,7 @@ const getProviderContextBindings = (asset, dataProviders) => { providerId, // Table ID is used by JSON fields to know what table the field is in tableId: table?._id, + component: component._component, category: component._instanceName, icon: def.icon, display: { diff --git a/packages/builder/src/components/design/settings/controls/DataSourceSelect.svelte b/packages/builder/src/components/design/settings/controls/DataSourceSelect.svelte index 6269599f40..49151a09b0 100644 --- a/packages/builder/src/components/design/settings/controls/DataSourceSelect.svelte +++ b/packages/builder/src/components/design/settings/controls/DataSourceSelect.svelte @@ -70,7 +70,10 @@ type: "provider", })) $: links = bindings + // Get only link bindings .filter(x => x.fieldSchema?.type === "link") + // Filter out bindings provided by forms + .filter(x => !x.component?.endsWith("/form")) .map(binding => { const { providerId, readableBinding, fieldSchema } = binding || {} const { name, tableId } = fieldSchema || {} diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/new/_components/NewComponentPanel.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/new/_components/NewComponentPanel.svelte index 98e04a262a..6b3f302264 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/new/_components/NewComponentPanel.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/new/_components/NewComponentPanel.svelte @@ -176,7 +176,6 @@ const addComponent = async component => { try { await store.actions.components.create(component) - $goto("../") } catch (error) { notifications.error(error || "Error creating component") } diff --git a/packages/builder/src/pages/builder/portal/_components/UpgradeButton.svelte b/packages/builder/src/pages/builder/portal/_components/UpgradeButton.svelte index 3e095dce21..7de6205a31 100644 --- a/packages/builder/src/pages/builder/portal/_components/UpgradeButton.svelte +++ b/packages/builder/src/pages/builder/portal/_components/UpgradeButton.svelte @@ -7,6 +7,7 @@ {#if $admin.cloud && $auth?.user?.accountPortalAccess} + {/if} +
+ + + From b70d4238a844d26a1d0376039477eff62b889577 Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Thu, 19 Jan 2023 22:54:06 +0000 Subject: [PATCH 36/43] Overhaul of CreateEditRelationship modal --- .../Datasources/CreateEditRelationship.svelte | 417 +++++++++--------- 1 file changed, 211 insertions(+), 206 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 7110374569..1454408017 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -10,7 +10,6 @@ } from "@budibase/bbui" import { tables } from "stores/backend" import { Helpers } from "@budibase/bbui" - import { writable } from "svelte/store" export let save export let datasource @@ -18,47 +17,95 @@ export let fromRelationship = {} export let toRelationship = {} export let close - export let selectedFromTable - let originalFromName = fromRelationship.name, - originalToName = toRelationship.name + const colNotSet = "Please specify a column name" + const relationshipTypes = [ + { + label: "One to Many", + value: RelationshipTypes.MANY_TO_ONE, + }, + { + label: "Many to Many", + value: RelationshipTypes.MANY_TO_MANY, + }, + ] + + let originalFromColumnName = fromRelationship.name, + originalToColumnName = toRelationship.name let originalFromTable = plusTables.find( table => table._id === toRelationship?.tableId ) let originalToTable = plusTables.find( table => table._id === fromRelationship?.tableId ) - let fromTable, toTable, through, linkTable, tableOptions - let isManyToMany, isManyToOne, relationshipTypes - let errors, valid - let currentTables = {} - if (fromRelationship && !fromRelationship.relationshipType) { - fromRelationship.relationshipType = RelationshipTypes.MANY_TO_ONE - } + let tableOptions + let errors = {} + let hasClickedSave = !!fromRelationship.relationshipType + let fromPrimary, + fromForeign, + fromTable, + toTable, + throughTable, + fromColumn, + toColumn + let fromId, toId, throughId, throughToKey, throughFromKey + let isManyToMany, isManyToOne, relationshipType - if (toRelationship && selectedFromTable) { - toRelationship.tableId = selectedFromTable._id - } - - function inSchema(table, prop, ogName) { - if (!table || !prop || prop === ogName) { - return false + $: { + if (!fromPrimary) { + fromPrimary = fromRelationship.foreignKey + fromForeign = toRelationship.foreignKey + } + if (!fromColumn && !errors.fromColumn) { + fromColumn = toRelationship.name + } + if (!toColumn && !errors.toColumn) { + toColumn = fromRelationship.name + } + if (!fromId) { + fromId = toRelationship.tableId + } + if (!toId) { + toId = fromRelationship.tableId + } + if (!throughId) { + throughId = fromRelationship.through + throughFromKey = fromRelationship.throughFrom + throughToKey = fromRelationship.throughTo + } + if (!relationshipType) { + relationshipType = fromRelationship.relationshipType } - const keys = Object.keys(table.schema).map(key => key.toLowerCase()) - return keys.indexOf(prop.toLowerCase()) !== -1 } - const touched = writable({}) + $: tableOptions = plusTables.map(table => ({ + label: table.name, + value: table._id, + })) + $: valid = getErrorCount(errors) === 0 || !hasClickedSave - function invalidThroughTable({ through, throughTo, throughFrom }) { + $: isManyToMany = relationshipType === RelationshipTypes.MANY_TO_MANY + $: isManyToOne = relationshipType === RelationshipTypes.MANY_TO_ONE + $: fromTable = plusTables.find(table => table._id === fromId) + $: toTable = plusTables.find(table => table._id === toId) + $: throughTable = plusTables.find(table => table._id === throughId) + + $: toRelationship.relationshipType = fromRelationship?.relationshipType + + const getErrorCount = errors => + Object.entries(errors) + .filter(entry => !!entry[1]) + .map(entry => entry[0]).length + + function invalidThroughTable() { // need to know the foreign key columns to check error - if (!through || !throughTo || !throughFrom) { + if (!throughId || !throughToKey || !throughFromKey) { return false } - const throughTable = plusTables.find(tbl => tbl._id === through) - const otherColumns = Object.values(throughTable.schema).filter( - col => col.name !== throughFrom && col.name !== throughTo + const throughTbl = plusTables.find(tbl => tbl._id === throughId) + const otherColumns = Object.values(throughTbl.schema).filter( + col => col.name !== throughFromKey && col.name !== throughToKey ) for (let col of otherColumns) { if (col.constraints?.presence && !col.autocolumn) { @@ -68,145 +115,134 @@ return false } - function checkForErrors(fromRelate, toRelate) { - const isMany = - fromRelate.relationshipType === RelationshipTypes.MANY_TO_MANY + function validate() { + const isMany = relationshipType === RelationshipTypes.MANY_TO_MANY const tableNotSet = "Please specify a table" + const foreignKeyNotSet = "Please pick a foreign key" const errObj = {} - if ($touched.from && !fromTable) { - errObj.from = tableNotSet + if (!relationshipType) { + errObj.relationshipType = "Please specify a relationship type" } - if ($touched.to && !toTable) { - errObj.to = tableNotSet + if (!fromTable) { + errObj.fromTable = tableNotSet } - if ($touched.through && isMany && !fromRelate.through) { - errObj.through = tableNotSet + if (!toTable) { + errObj.toTable = tableNotSet } - if ($touched.through && invalidThroughTable(fromRelate)) { - errObj.through = "Ensure non-key columns are nullable or auto-generated" + if (isMany && !throughTable) { + errObj.throughTable = tableNotSet } - if ($touched.foreign && !isMany && !fromRelate.fieldName) { - errObj.foreign = "Please pick the foreign key" + if (isMany && !throughFromKey) { + errObj.throughFromKey = foreignKeyNotSet } - const colNotSet = "Please specify a column name" - if ($touched.fromCol && !toRelate.name) { - errObj.fromCol = colNotSet + if (isMany && !throughToKey) { + errObj.throughToKey = foreignKeyNotSet } - if ($touched.toCol && !fromRelate.name) { - errObj.toCol = colNotSet + if (invalidThroughTable()) { + errObj.throughTable = + "Ensure non-key columns are nullable or auto-generated" } - if ($touched.primary && !isMany && !fromPrimary) { - errObj.primary = "Please pick the primary key" + if (!isMany && !fromForeign) { + errObj.fromForeign = foreignKeyNotSet } + if (!fromColumn) { + errObj.fromColumn = colNotSet + } + if (!toColumn) { + errObj.toColumn = colNotSet + } + if (!isMany && !fromPrimary) { + errObj.fromPrimary = "Please pick the primary key" + } + // currently don't support relationships back onto the table itself, needs to relate out const tableError = "From/to/through tables must be different" - if (fromTable && (fromTable === toTable || fromTable === through)) { - errObj.from = tableError + if (fromTable && (fromTable === toTable || fromTable === throughTable)) { + errObj.fromTable = tableError } - if (toTable && (toTable === fromTable || toTable === through)) { - errObj.to = tableError + if (toTable && (toTable === fromTable || toTable === throughTable)) { + errObj.toTable = tableError } - if (through && (through === fromTable || through === toTable)) { - errObj.through = tableError + if ( + throughTable && + (throughTable === fromTable || throughTable === toTable) + ) { + errObj.throughTable = tableError } const colError = "Column name cannot be an existing column" - if (inSchema(fromTable, fromRelate.name, originalFromName)) { - errObj.fromCol = colError + if (isColumnNameBeingUsed(fromTable, fromColumn, originalFromColumnName)) { + errObj.fromColumn = colError } - if (inSchema(toTable, toRelate.name, originalToName)) { - errObj.toCol = colError + if (isColumnNameBeingUsed(toTable, toColumn, originalToColumnName)) { + errObj.toColumn = colError } let fromType, toType - if (fromPrimary && fromRelate.fieldName) { + if (fromPrimary && fromForeign) { fromType = fromTable?.schema[fromPrimary]?.type - toType = toTable?.schema[fromRelate.fieldName]?.type + toType = toTable?.schema[fromForeign]?.type } if (fromType && toType && fromType !== toType) { - errObj.foreign = + errObj.fromForeign = "Column type of the foreign key must match the primary key" } + errors = errObj + return getErrorCount(errors) === 0 } - let fromPrimary - $: { - if (!fromPrimary && fromTable) { - fromPrimary = fromRelationship?.foreignKey - } - } - $: isManyToMany = - fromRelationship?.relationshipType === RelationshipTypes.MANY_TO_MANY - $: isManyToOne = - fromRelationship?.relationshipType === RelationshipTypes.MANY_TO_ONE - $: tableOptions = plusTables.map(table => ({ - label: table.name, - value: table._id, - })) - $: fromTable = plusTables.find(table => table._id === toRelationship?.tableId) - $: toTable = plusTables.find(table => table._id === fromRelationship?.tableId) - $: through = plusTables.find(table => table._id === fromRelationship?.through) - $: checkForErrors(fromRelationship, toRelationship) - $: valid = - Object.keys(errors).length === 0 && - Object.keys($touched).length !== 0 && - fromTable && - toTable - - $: linkTable = through || toTable - $: relationshipTypes = [ - { - label: "Many", - value: RelationshipTypes.MANY_TO_MANY, - }, - { - label: "One", - value: RelationshipTypes.MANY_TO_ONE, - }, - ] - $: updateRelationshipType(fromRelationship?.relationshipType) - $: tableChanged(fromTable, toTable) - - function updateRelationshipType(fromType) { - if (fromType === RelationshipTypes.MANY_TO_MANY) { - toRelationship.relationshipType = RelationshipTypes.MANY_TO_MANY - } else { - toRelationship.relationshipType = RelationshipTypes.MANY_TO_ONE + function isColumnNameBeingUsed(table, columnName, originalName) { + if (!table || !columnName || columnName === originalName) { + return false } + const keys = Object.keys(table.schema).map(key => key.toLowerCase()) + return keys.indexOf(columnName.toLowerCase()) !== -1 } function buildRelationships() { - // if any to many only need to check from - const manyToMany = - fromRelationship.relationshipType === RelationshipTypes.MANY_TO_MANY - // main is simply used to know this is the side the user configured it from const id = Helpers.uuid() - if (!manyToMany) { - delete fromRelationship.through - delete toRelationship.through - } + //Map temporary variables let relateFrom = { ...fromRelationship, + tableId: toId, + name: toColumn, + relationshipType, + fieldName: fromForeign, + through: throughId, + throughFrom: throughFromKey, + throughTo: throughToKey, type: "link", main: true, _id: id, } - let relateTo = { + let relateTo = (toRelationship = { ...toRelationship, + tableId: fromId, + name: fromColumn, + through: throughId, type: "link", _id: id, + }) + + // if any to many only need to check from + const manyToMany = + relateFrom.relationshipType === RelationshipTypes.MANY_TO_MANY + + if (!manyToMany) { + delete relateFrom.through + delete relateTo.through } // [0] is because we don't support composite keys for relationships right now if (manyToMany) { relateFrom = { ...relateFrom, - through: through._id, + through: throughTable._id, fieldName: toTable.primary[0], } relateTo = { ...relateTo, - through: through._id, + through: throughTable._id, fieldName: fromTable.primary[0], throughFrom: relateFrom.throughTo, throughTo: relateFrom.throughFrom, @@ -235,9 +271,27 @@ toRelationship = relateTo } - // save the relationship on to the datasource + function removeExistingRelationship() { + if (originalFromTable && originalFromColumnName) { + delete datasource.entities[originalFromTable.name].schema[ + originalFromColumnName + ] + } + if (originalToTable && originalToColumnName) { + delete datasource.entities[originalToTable.name].schema[ + originalToColumnName + ] + } + } + async function saveRelationship() { + hasClickedSave = true + if (!validate()) { + return false + } buildRelationships() + removeExistingRelationship() + // source of relationship datasource.entities[fromTable.name].schema[fromRelationship.name] = fromRelationship @@ -245,61 +299,14 @@ datasource.entities[toTable.name].schema[toRelationship.name] = toRelationship - // If relationship has been renamed or a different table selected - if ( - originalFromTable?.name && - (originalFromName !== fromRelationship.name || - hasTableChanged(fromTable, toTable)) - ) { - delete datasource.entities[originalFromTable.name].schema[ - originalFromName - ] - } - if ( - originalToTable?.name && - (originalToName !== toRelationship.name || - hasTableChanged(fromTable, toTable)) - ) { - delete datasource.entities[originalToTable.name].schema[originalToName] - } - - // store the original names so it won't cause an error - originalToName = toRelationship.name - originalFromName = fromRelationship.name await save() } - async function deleteRelationship() { - delete datasource.entities[originalFromTable.name].schema[originalFromName] - delete datasource.entities[originalToTable.name].schema[originalToName] + removeExistingRelationship() await save() await tables.fetch() close() } - - function hasTableChanged(fromTbl, toTbl) { - const areRelationshipsSet = - (originalFromName || originalToName) && - originalFromTable?.name === fromTbl?.name && - originalToTable?.name === toTbl?.name - - return ( - currentTables?.from?._id !== fromTbl?._id || - currentTables?.to?._id !== toTbl?._id || - !areRelationshipsSet - ) - } - - function tableChanged(fromTbl, toTbl) { - if (!hasTableChanged(fromTbl, toTbl)) { - return - } - fromRelationship.name = toTbl?.name || "" - errors.fromCol = "" - toRelationship.name = fromTbl?.name || "" - errors.toCol = "" - currentTables = { from: fromTbl, to: toTbl } - } (errors.relationshipType = null)} />
Tables @@ -319,68 +328,64 @@ ($touched.primary = true)} - bind:error={errors.primary} + label={`Primary Key (${fromTable.name})`} + options={Object.keys(fromTable.schema)} bind:value={fromPrimary} + bind:error={errors.fromPrimary} + on:change={e => (errors.fromPrimary = null)} /> {/if} { - $touched.through = true - $touched.fromForeign = true - $touched.toForeign = true - }} - bind:error={errors.through} - bind:value={fromRelationship.through} + bind:value={throughId} + bind:error={errors.throughTable} /> - {#if fromTable && toTable && through} + {#if fromTable && toTable && throughTable} ($touched.toForeign = true)} - bind:error={errors.toForeign} - bind:value={fromRelationship.throughFrom} + options={Object.keys(throughTable?.schema)} + bind:value={throughFromKey} + bind:error={errors.throughFromKey} + on:change={e => (errors.throughFromKey = null)} /> {/if} {:else if isManyToOne && toTable} ($touched.fromCol = true)} - on:change={() => ($touched.fromCol = true)} - bind:error={errors.fromCol} label="From table column" - bind:value={toRelationship.name} + bind:value={fromColumn} + bind:error={errors.fromColumn} + on:change={e => { + errors.fromColumn = e.detail?.length > 0 ? null : colNotSet + }} /> ($touched.toCol = true)} - on:change={() => ($touched.toCol = true)} - bind:error={errors.toCol} label="To table column" - bind:value={fromRelationship.name} + bind:value={toColumn} + bind:error={errors.toColumn} + on:change={e => (errors.toColumn = e.detail?.length > 0 ? null : colNotSet)} />
- {#if originalFromName != null} + {#if originalFromColumnName != null} {/if}
From 181dc4b18d4ec1e254ab2e186927bad4ecb90c53 Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Thu, 19 Jan 2023 22:54:46 +0000 Subject: [PATCH 37/43] lint --- .../backend/Datasources/CreateEditRelationship.svelte | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 1454408017..76fcd36720 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -320,7 +320,7 @@ options={relationshipTypes} bind:value={relationshipType} bind:error={errors.relationshipType} - on:change={e => (errors.relationshipType = null)} + on:change={() => (errors.relationshipType = null)} />
Tables @@ -342,7 +342,7 @@ options={Object.keys(fromTable.schema)} bind:value={fromPrimary} bind:error={errors.fromPrimary} - on:change={e => (errors.fromPrimary = null)} + on:change={() => (errors.fromPrimary = null)} /> {/if} (errors.throughFromKey = null)} + on:change={() => (errors.throughFromKey = null)} /> {/if} {:else if isManyToOne && toTable} @@ -385,7 +385,7 @@ options={Object.keys(toTable?.schema)} bind:value={fromForeign} bind:error={errors.fromForeign} - on:change={e => (errors.fromForeign = null)} + on:change={() => (errors.fromForeign = null)} /> {/if}
From 93606a91b04e06107a8c12b0fc5f7b93d67578ec Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Thu, 19 Jan 2023 22:57:19 +0000 Subject: [PATCH 38/43] Delete file copy --- .../CreateEditRelationshipCopy.svelte | 271 ------------------ 1 file changed, 271 deletions(-) delete mode 100644 packages/builder/src/components/backend/Datasources/CreateEditRelationshipCopy.svelte diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationshipCopy.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationshipCopy.svelte deleted file mode 100644 index 5ab099e61b..0000000000 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationshipCopy.svelte +++ /dev/null @@ -1,271 +0,0 @@ - - - - { - fromColumn = tableOptions.find(opt => opt.value === e.detail).label - }} - /> - {#if isManyToOne && fromTable} - { - toColumn = tableOptions.find(opt => opt.value === e.detail).label - }} - /> - {#if isManyToMany} - - - {/if} -
- Column names -
- - Budibase manages SQL relationships as a new column in the table, please - provide a name for these columns. - - - -
- {#if originalFromColumnName != null} - - {/if} -
-
- - From f06b539fceaa40c8e8e95d206212b3fc41989cff Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 20 Jan 2023 13:28:11 +0000 Subject: [PATCH 39/43] v2.2.12-alpha.31 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 8 ++++---- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/sdk/package.json | 2 +- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 12 files changed, 32 insertions(+), 32 deletions(-) diff --git a/lerna.json b/lerna.json index 83955820f9..c62ace29af 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index cb6526a22f..6a55288b43 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -23,7 +23,7 @@ }, "dependencies": { "@budibase/nano": "10.1.1", - "@budibase/types": "2.2.12-alpha.30", + "@budibase/types": "2.2.12-alpha.31", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-cloudfront-sign": "2.2.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index f6263d0715..64099f31f2 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", @@ -38,7 +38,7 @@ ], "dependencies": { "@adobe/spectrum-css-workflow-icons": "1.2.1", - "@budibase/string-templates": "2.2.12-alpha.30", + "@budibase/string-templates": "2.2.12-alpha.31", "@spectrum-css/actionbutton": "1.0.1", "@spectrum-css/actiongroup": "1.0.1", "@spectrum-css/avatar": "3.0.2", diff --git a/packages/builder/package.json b/packages/builder/package.json index acfae3a26b..775879626b 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "license": "GPL-3.0", "private": true, "scripts": { @@ -71,10 +71,10 @@ } }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.30", - "@budibase/client": "2.2.12-alpha.30", - "@budibase/frontend-core": "2.2.12-alpha.30", - "@budibase/string-templates": "2.2.12-alpha.30", + "@budibase/bbui": "2.2.12-alpha.31", + "@budibase/client": "2.2.12-alpha.31", + "@budibase/frontend-core": "2.2.12-alpha.31", + "@budibase/string-templates": "2.2.12-alpha.31", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 27cc8186c3..a4de567a06 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.30", - "@budibase/string-templates": "2.2.12-alpha.30", - "@budibase/types": "2.2.12-alpha.30", + "@budibase/backend-core": "2.2.12-alpha.31", + "@budibase/string-templates": "2.2.12-alpha.31", + "@budibase/types": "2.2.12-alpha.31", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", diff --git a/packages/client/package.json b/packages/client/package.json index 5c0969ea14..e4de72b0a8 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "2.2.12-alpha.30", - "@budibase/frontend-core": "2.2.12-alpha.30", - "@budibase/string-templates": "2.2.12-alpha.30", + "@budibase/bbui": "2.2.12-alpha.31", + "@budibase/frontend-core": "2.2.12-alpha.31", + "@budibase/string-templates": "2.2.12-alpha.31", "@spectrum-css/button": "^3.0.3", "@spectrum-css/card": "^3.0.3", "@spectrum-css/divider": "^1.0.3", diff --git a/packages/frontend-core/package.json b/packages/frontend-core/package.json index 89d3a8f04c..b146137641 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "2.2.12-alpha.30", + "@budibase/bbui": "2.2.12-alpha.31", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 79e76c1490..df487cde69 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/sdk", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase Public API SDK", "author": "Budibase", "license": "MPL-2.0", diff --git a/packages/server/package.json b/packages/server/package.json index 9a6a3622fb..e1bcc6417a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -43,11 +43,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "2.2.12-alpha.30", - "@budibase/client": "2.2.12-alpha.30", + "@budibase/backend-core": "2.2.12-alpha.31", + "@budibase/client": "2.2.12-alpha.31", "@budibase/pro": "2.2.12-alpha.30", - "@budibase/string-templates": "2.2.12-alpha.30", - "@budibase/types": "2.2.12-alpha.30", + "@budibase/string-templates": "2.2.12-alpha.31", + "@budibase/types": "2.2.12-alpha.31", "@bull-board/api": "3.7.0", "@bull-board/koa": "3.9.4", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 39509ef428..d24eabc687 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/types/package.json b/packages/types/package.json index ff42e0aace..c8e24cf220 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase types", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/worker/package.json b/packages/worker/package.json index 15931bc690..de6858182d 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "2.2.12-alpha.30", + "version": "2.2.12-alpha.31", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -36,10 +36,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "2.2.12-alpha.30", + "@budibase/backend-core": "2.2.12-alpha.31", "@budibase/pro": "2.2.12-alpha.30", - "@budibase/string-templates": "2.2.12-alpha.30", - "@budibase/types": "2.2.12-alpha.30", + "@budibase/string-templates": "2.2.12-alpha.31", + "@budibase/types": "2.2.12-alpha.31", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 738db2cc6a8d12b7168db3c10f54ce28a709ab8c Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 20 Jan 2023 13:31:41 +0000 Subject: [PATCH 40/43] Update pro version to 2.2.12-alpha.31 --- packages/server/package.json | 2 +- packages/server/yarn.lock | 30 +++++++++++++++--------------- packages/worker/package.json | 2 +- packages/worker/yarn.lock | 30 +++++++++++++++--------------- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index e1bcc6417a..2fd7259af2 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -45,7 +45,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "2.2.12-alpha.31", "@budibase/client": "2.2.12-alpha.31", - "@budibase/pro": "2.2.12-alpha.30", + "@budibase/pro": "2.2.12-alpha.31", "@budibase/string-templates": "2.2.12-alpha.31", "@budibase/types": "2.2.12-alpha.31", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 87b1b5dd0e..4442569eec 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1273,13 +1273,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.30.tgz#0adb36fb32914fa998b3c44f91442bda80c7de02" - integrity sha512-PJgitAwVS8heI7pxO3bwiNTrIuJnLJwtF0nNCconoklx8QZVXLLDMuusxICrDugilbGfWuOI2k4p5DgK22T+kA== +"@budibase/backend-core@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.31.tgz#97f81e0407943956810e9682f6608fd8758c56c8" + integrity sha512-pSgTWzGZvqd0gCS5P5ndLREvyYHhM/izbiYMk4PV08mvXnENfDhhl6k7FDwmjwbUqiIGy2+t5COaJ0rtEDQCrg== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.30" + "@budibase/types" "2.2.12-alpha.31" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -1374,13 +1374,13 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.30.tgz#bcf906828cfb9ce9ab6e2834c9465b426699f077" - integrity sha512-c8FbGk1Z9OAFtRE3PbjlZwju/5bUIEgYiGLavhR9dioo6o5H3j42SZX/1nnhfeykFbeMM9YUAzq7i8xmE5CtJA== +"@budibase/pro@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.31.tgz#d0604001728df7899481e357f3429ebe3c1bd429" + integrity sha512-8LO3XLlufVFzN67XiBQdFmQCfvliNPs49zlFUXuUrBn7+TxbE5WuWUfMvsPhm8Og5UAk1PYNSQwU8MgbWNR2lA== dependencies: - "@budibase/backend-core" "2.2.12-alpha.30" - "@budibase/types" "2.2.12-alpha.30" + "@budibase/backend-core" "2.2.12-alpha.31" + "@budibase/types" "2.2.12-alpha.31" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" @@ -1405,10 +1405,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.30.tgz#e1d20adbb3a151c7935310bf03800e572b4498f6" - integrity sha512-bShoMjQ1VqjrEfl5TeK94SCJUnnOCkWIB4AJOYIVr6thu+O0qyLwSP8YoTGtSKxXtJ2TAN3hIxx/EdDKMSrFqg== +"@budibase/types@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.31.tgz#a846699e06d104b82c3eb6acc08fb9610b17f8c1" + integrity sha512-nEoP5BS5k+mdwDE/RHZ9tUNSQ6p7rALmN4nITWZ6S5lq4M/KX2/WI4Hr2t59g8vY9zvkFTAlL8OYmVMDQQBRfA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index de6858182d..fb9a6eb615 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -37,7 +37,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "2.2.12-alpha.31", - "@budibase/pro": "2.2.12-alpha.30", + "@budibase/pro": "2.2.12-alpha.31", "@budibase/string-templates": "2.2.12-alpha.31", "@budibase/types": "2.2.12-alpha.31", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index bacffd79cb..2f88025918 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -470,13 +470,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.30.tgz#0adb36fb32914fa998b3c44f91442bda80c7de02" - integrity sha512-PJgitAwVS8heI7pxO3bwiNTrIuJnLJwtF0nNCconoklx8QZVXLLDMuusxICrDugilbGfWuOI2k4p5DgK22T+kA== +"@budibase/backend-core@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-2.2.12-alpha.31.tgz#97f81e0407943956810e9682f6608fd8758c56c8" + integrity sha512-pSgTWzGZvqd0gCS5P5ndLREvyYHhM/izbiYMk4PV08mvXnENfDhhl6k7FDwmjwbUqiIGy2+t5COaJ0rtEDQCrg== dependencies: "@budibase/nano" "10.1.1" - "@budibase/types" "2.2.12-alpha.30" + "@budibase/types" "2.2.12-alpha.31" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-cloudfront-sign "2.2.0" @@ -521,23 +521,23 @@ qs "^6.11.0" tough-cookie "^4.1.2" -"@budibase/pro@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.30.tgz#bcf906828cfb9ce9ab6e2834c9465b426699f077" - integrity sha512-c8FbGk1Z9OAFtRE3PbjlZwju/5bUIEgYiGLavhR9dioo6o5H3j42SZX/1nnhfeykFbeMM9YUAzq7i8xmE5CtJA== +"@budibase/pro@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-2.2.12-alpha.31.tgz#d0604001728df7899481e357f3429ebe3c1bd429" + integrity sha512-8LO3XLlufVFzN67XiBQdFmQCfvliNPs49zlFUXuUrBn7+TxbE5WuWUfMvsPhm8Og5UAk1PYNSQwU8MgbWNR2lA== dependencies: - "@budibase/backend-core" "2.2.12-alpha.30" - "@budibase/types" "2.2.12-alpha.30" + "@budibase/backend-core" "2.2.12-alpha.31" + "@budibase/types" "2.2.12-alpha.31" "@koa/router" "8.0.8" bull "4.10.1" joi "17.6.0" jsonwebtoken "8.5.1" node-fetch "^2.6.1" -"@budibase/types@2.2.12-alpha.30": - version "2.2.12-alpha.30" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.30.tgz#e1d20adbb3a151c7935310bf03800e572b4498f6" - integrity sha512-bShoMjQ1VqjrEfl5TeK94SCJUnnOCkWIB4AJOYIVr6thu+O0qyLwSP8YoTGtSKxXtJ2TAN3hIxx/EdDKMSrFqg== +"@budibase/types@2.2.12-alpha.31": + version "2.2.12-alpha.31" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-2.2.12-alpha.31.tgz#a846699e06d104b82c3eb6acc08fb9610b17f8c1" + integrity sha512-nEoP5BS5k+mdwDE/RHZ9tUNSQ6p7rALmN4nITWZ6S5lq4M/KX2/WI4Hr2t59g8vY9zvkFTAlL8OYmVMDQQBRfA== "@cspotcode/source-map-support@^0.8.0": version "0.8.1" From 1382227c303ba59d9e930cac0b181f2f306d0091 Mon Sep 17 00:00:00 2001 From: melohagan <101575380+melohagan@users.noreply.github.com> Date: Fri, 20 Jan 2023 15:36:31 +0000 Subject: [PATCH 41/43] Create edit relationship modal (#9400) * Flip from to fields the correct way * Do not allow through table foreign keys to match --- .../Datasources/CreateEditRelationship.svelte | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte index 76fcd36720..e4cbbfc7aa 100644 --- a/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte +++ b/packages/builder/src/components/backend/Datasources/CreateEditRelationship.svelte @@ -30,8 +30,8 @@ }, ] - let originalFromColumnName = fromRelationship.name, - originalToColumnName = toRelationship.name + let originalFromColumnName = toRelationship.name, + originalToColumnName = fromRelationship.name let originalFromTable = plusTables.find( table => table._id === toRelationship?.tableId ) @@ -170,10 +170,10 @@ errObj.throughTable = tableError } const colError = "Column name cannot be an existing column" - if (isColumnNameBeingUsed(fromTable, fromColumn, originalFromColumnName)) { + if (isColumnNameBeingUsed(toTable, fromColumn, originalFromColumnName)) { errObj.fromColumn = colError } - if (isColumnNameBeingUsed(toTable, toColumn, originalToColumnName)) { + if (isColumnNameBeingUsed(fromTable, toColumn, originalToColumnName)) { errObj.toColumn = colError } @@ -274,12 +274,12 @@ function removeExistingRelationship() { if (originalFromTable && originalFromColumnName) { delete datasource.entities[originalFromTable.name].schema[ - originalFromColumnName + originalToColumnName ] } if (originalToTable && originalToColumnName) { delete datasource.entities[originalToTable.name].schema[ - originalToColumnName + originalFromColumnName ] } } @@ -369,14 +369,24 @@ options={Object.keys(throughTable?.schema)} bind:value={throughToKey} bind:error={errors.throughToKey} - on:change={() => (errors.throughToKey = null)} + on:change={e => { + if (throughFromKey === e.detail) { + throughFromKey = null + } + errors.throughToKey = null + }} />