From 0ec6ac3372c35aab0541626436e297446853c2d7 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 10 Aug 2022 12:04:58 +0100 Subject: [PATCH 001/162] Add PoC of using a custom component inside client library --- packages/client/src/components/ClientApp.svelte | 10 ++++++++++ packages/client/src/index.js | 6 ++++++ .../controllers/static/templates/BudibaseApp.svelte | 5 +++++ 3 files changed, 21 insertions(+) diff --git a/packages/client/src/components/ClientApp.svelte b/packages/client/src/components/ClientApp.svelte index 64b1712b89..c883dd4206 100644 --- a/packages/client/src/components/ClientApp.svelte +++ b/packages/client/src/components/ClientApp.svelte @@ -85,8 +85,18 @@ builderStore.actions.notifyLoaded() } }) + + // TODO: remove. this is a test to render the first custom component + console.log(window["##BUDIBASE_CUSTOM_COMPONENTS##"]?.[0]) + const custom = window["##BUDIBASE_CUSTOM_COMPONENTS##"]?.[0]?.Component +{#if custom} +
+ +
+{/if} + {#if dataLoaded}
+ + + -{#if custom} -
- -
-{/if} - {#if dataLoaded}
import { getContext, setContext, onMount, onDestroy } from "svelte" import { writable, get } from "svelte/store" - import * as AppComponents from "components/app" - import Router from "./Router.svelte" import { enrichProps, propsAreSame, @@ -180,7 +178,7 @@ // Pull definition and constructor const component = instance._component - constructor = getComponentConstructor(component) + constructor = componentStore.actions.getComponentConstructor(component) definition = componentStore.actions.getComponentDefinition(component) if (!definition) { return @@ -237,16 +235,6 @@ }) } - // Gets the component constructor for the specified component - const getComponentConstructor = component => { - const split = component?.split("/") - const name = split?.[split.length - 1] - if (name === "screenslot" && !insideScreenslot) { - return Router - } - return AppComponents[name] - } - const getSettingsDefinitionMap = settingsDefinition => { let map = {} settingsDefinition?.forEach(setting => { diff --git a/packages/client/src/components/Screen.svelte b/packages/client/src/components/Screen.svelte index 3ec8d1ea52..12e6803aea 100644 --- a/packages/client/src/components/Screen.svelte +++ b/packages/client/src/components/Screen.svelte @@ -13,7 +13,22 @@ $: routeStore.actions.setRouteParams(params || {}) // Get the screen definition for the current route - $: screenDefinition = $screenStore.activeScreen?.props + $: screenDefinition = getScreenDefinition($screenStore.activeScreen?.props) + + const getScreenDefinition = definition => { + const test = { + _component: "test", + _id: "asfdasdfefgerdgrfdg", + _styles: { + normal: {}, + }, + text: "This is a text prop!", + } + return { + ...definition, + _children: [...definition._children, test], + } + } onMount(() => { // Mark the router as loaded whenever the screen mounts diff --git a/packages/client/src/index.js b/packages/client/src/index.js index c88afe59ba..32b242bc69 100644 --- a/packages/client/src/index.js +++ b/packages/client/src/index.js @@ -1,5 +1,5 @@ import ClientApp from "./components/ClientApp.svelte" -import { builderStore, appStore, devToolsStore } from "./stores" +import { componentStore, builderStore, appStore, devToolsStore } from "./stores" import loadSpectrumIcons from "@budibase/bbui/spectrum-icons-rollup.js" import { get } from "svelte/store" @@ -38,6 +38,13 @@ const loadBudibase = () => { const enableDevTools = !get(builderStore).inBuilder && get(appStore).isDevApp devToolsStore.actions.setEnabled(enableDevTools) + // Register any custom components + if (window["##BUDIBASE_CUSTOM_COMPONENTS##"]) { + window["##BUDIBASE_CUSTOM_COMPONENTS##"].forEach(component => { + componentStore.actions.registerCustomComponent(component) + }) + } + // Create app if one hasn't been created yet if (!app) { app = new ClientApp({ diff --git a/packages/client/src/stores/components.js b/packages/client/src/stores/components.js index a7426113e2..2500ea2a41 100644 --- a/packages/client/src/stores/components.js +++ b/packages/client/src/stores/components.js @@ -4,6 +4,10 @@ import { findComponentById, findComponentPathById } from "../utils/components" import { devToolsStore } from "./devTools" import { screenStore } from "./screens" import { builderStore } from "./builder" +import Router from "../components/Router.svelte" +import * as AppComponents from "../components/app/index.js" + +const budibasePrefix = "@budibase/standard-components/" const createComponentStore = () => { const store = writable({}) @@ -34,6 +38,7 @@ const createComponentStore = () => { findComponentPathById(asset?.props, selectedComponentId) || [] return { + customComponentManifest: $store.customComponentManifest, selectedComponentInstance: $store[selectedComponentId], selectedComponent: component, selectedComponentDefinition: definition, @@ -68,9 +73,60 @@ const createComponentStore = () => { } const getComponentDefinition = type => { - const prefix = "@budibase/standard-components/" - type = type?.replace(prefix, "") - return type ? Manifest[type] : null + if (!type) { + return null + } + + // Screenslot is an edge case + if (type === "screenslot") { + type = `${budibasePrefix}${type}` + } + + // Handle built-in components + if (type.startsWith(budibasePrefix)) { + type = type.replace(budibasePrefix, "") + return type ? Manifest[type] : null + } + + // Handle custom components + const { customComponentManifest } = get(store) + return customComponentManifest?.[type]?.schema?.schema + } + + const getComponentConstructor = type => { + if (!type) { + return null + } + if (type === "screenslot") { + return Router + } + + // Handle budibase components + if (type.startsWith(budibasePrefix)) { + const split = type.split("/") + const name = split[split.length - 1] + return AppComponents[name] + } + + // Handle custom components + const { customComponentManifest } = get(store) + return customComponentManifest?.[type]?.Component + } + + const registerCustomComponent = ({ Component, schema }) => { + if (!Component || !schema?.schema?.name) { + return + } + store.update(state => { + if (!state.customComponentManifest) { + state.customComponentManifest = {} + } + state.customComponentManifest[schema.schema.name] = { + schema, + Component, + } + return state + }) } return { @@ -81,6 +137,8 @@ const createComponentStore = () => { isComponentRegistered, getComponentById, getComponentDefinition, + getComponentConstructor, + registerCustomComponent, }, } } From eb1699381c2eb64148bfff65485cf273b2f9af8e Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 10 Aug 2022 15:52:19 +0100 Subject: [PATCH 004/162] Remove forced custom component from client library --- packages/client/src/components/Screen.svelte | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/packages/client/src/components/Screen.svelte b/packages/client/src/components/Screen.svelte index 12e6803aea..3ec8d1ea52 100644 --- a/packages/client/src/components/Screen.svelte +++ b/packages/client/src/components/Screen.svelte @@ -13,22 +13,7 @@ $: routeStore.actions.setRouteParams(params || {}) // Get the screen definition for the current route - $: screenDefinition = getScreenDefinition($screenStore.activeScreen?.props) - - const getScreenDefinition = definition => { - const test = { - _component: "test", - _id: "asfdasdfefgerdgrfdg", - _styles: { - normal: {}, - }, - text: "This is a text prop!", - } - return { - ...definition, - _children: [...definition._children, test], - } - } + $: screenDefinition = $screenStore.activeScreen?.props onMount(() => { // Mark the router as loaded whenever the screen mounts From 7dc9abf54b324fc8e07ff3cdbc17625569d99d5b Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 10 Aug 2022 16:19:08 +0100 Subject: [PATCH 005/162] Validating datasources fully, initial work towards validating components and including the build in the CLI. --- packages/cli/package.json | 6 +- packages/cli/src/exec.js | 25 ++++++ packages/cli/src/plugins/constants.js | 6 ++ packages/cli/src/plugins/index.js | 54 ++++++++++-- packages/cli/src/plugins/validate.js | 87 +++++++++++++++++++ packages/cli/yarn.lock | 45 ++++++++++ packages/server/src/definitions/datasource.ts | 84 ++++-------------- .../types/src/documents/app/datasource.ts | 69 +++++++++++++++ 8 files changed, 297 insertions(+), 79 deletions(-) create mode 100644 packages/cli/src/exec.js create mode 100644 packages/cli/src/plugins/constants.js create mode 100644 packages/cli/src/plugins/validate.js diff --git a/packages/cli/package.json b/packages/cli/package.json index 5a048fb17d..413703af9b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -26,8 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.1.32-alpha.6", - "@budibase/string-templates": "^1.2.28", + "@budibase/backend-core": "1.2.28-alpha.0", + "@budibase/string-templates": "1.2.28-alpha.0", + "@budibase/types": "1.2.28-alpha.0", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", @@ -36,6 +37,7 @@ "dotenv": "16.0.1", "download": "^8.0.0", "inquirer": "8.0.0", + "joi": "^17.6.0", "lookpath": "1.1.0", "node-fetch": "2", "pkg": "5.7.0", diff --git a/packages/cli/src/exec.js b/packages/cli/src/exec.js new file mode 100644 index 0000000000..07520336c4 --- /dev/null +++ b/packages/cli/src/exec.js @@ -0,0 +1,25 @@ +const util = require("util") +const exec = util.promisify(require("child_process").exec) + +exports.exec = async command => { + const { stdout } = await exec(command) + return stdout +} + +exports.utilityInstalled = async utilName => { + try { + await exports.exec(`${utilName} --version`) + return true + } catch (err) { + return false + } +} + +exports.runPkgCommand = async command => { + const yarn = await exports.utilityInstalled("yarn") + const npm = await exports.utilityInstalled("npm") + if (!yarn && !npm) { + throw new Error("Must have yarn or npm installed to run build.") + } + await exports.exec(yarn ? `yarn ${command}` : `npm run ${command}`) +} diff --git a/packages/cli/src/plugins/constants.js b/packages/cli/src/plugins/constants.js new file mode 100644 index 0000000000..37d0748979 --- /dev/null +++ b/packages/cli/src/plugins/constants.js @@ -0,0 +1,6 @@ +exports.PluginTypes = { + COMPONENT: "component", + DATASOURCE: "datasource", +} + +exports.PLUGIN_TYPES_ARR = Object.values(exports.PluginTypes) diff --git a/packages/cli/src/plugins/index.js b/packages/cli/src/plugins/index.js index c0d4fa2cfe..6ec99ac7fa 100644 --- a/packages/cli/src/plugins/index.js +++ b/packages/cli/src/plugins/index.js @@ -3,21 +3,28 @@ const { CommandWords } = require("../constants") const { getSkeleton, fleshOutSkeleton } = require("./skeleton") const questions = require("../questions") const fs = require("fs") - -const PLUGIN_TYPES = ["component", "datasource"] +const { PLUGIN_TYPES_ARR } = require("./constants") +const { validate } = require("./validate") +const { runPkgCommand } = require("../exec") +const { join } = require("path") +const { success, error, info } = require("../utils") async function init(opts) { const type = opts["init"] || opts - if (!type || !PLUGIN_TYPES.includes(type)) { - console.error( - "Please provide a type to init, either 'component' or 'datasource'." + if (!type || !PLUGIN_TYPES_ARR.includes(type)) { + console.log( + error( + "Please provide a type to init, either 'component' or 'datasource'." + ) ) return } - console.log("Lets get some details about your new plugin:") + console.log(info("Lets get some details about your new plugin:")) const name = await questions.string("Name", `budibase-${type}`) if (fs.existsSync(name)) { - console.error("Directory by plugin name already exists, pick a new name.") + console.log( + error("Directory by plugin name already exists, pick a new name.") + ) return } const desc = await questions.string( @@ -28,10 +35,39 @@ async function init(opts) { // get the skeleton await getSkeleton(type, name) await fleshOutSkeleton(name, desc, version) - console.log(`Plugin created in directory "${name}"`) + console.log(info(`Plugin created in directory "${name}"`)) } -async function build() {} +async function build() { + console.log(info("Verifying plugin...")) + const schema = fs.readFileSync("schema.json", "utf8") + const pkg = fs.readFileSync("package.json", "utf8") + let name, version + try { + const schemaJson = JSON.parse(schema) + const pkgJson = JSON.parse(pkg) + if (!pkgJson.name || !pkgJson.version || !pkgJson.description) { + throw new Error( + "package.json is missing one of 'name', 'version' or 'description'." + ) + } + name = pkgJson.name + version = pkgJson.version + validate(schemaJson) + } catch (err) { + if (err && err.message && err.message.includes("not valid JSON")) { + console.log(error(`schema.json is not valid JSON: ${err.message}`)) + } else { + console.log(error(`Invalid schema/package.json: ${err.message}`)) + } + return + } + console.log(success("Verified!")) + console.log(info("Building plugin...")) + await runPkgCommand("build") + const output = join("dist", `${name}-${version}.tar.gz`) + console.log(success(`Build complete - output in: ${output}`)) +} const command = new Command(`${CommandWords.PLUGIN}`) .addHelp( diff --git a/packages/cli/src/plugins/validate.js b/packages/cli/src/plugins/validate.js new file mode 100644 index 0000000000..b460670c7f --- /dev/null +++ b/packages/cli/src/plugins/validate.js @@ -0,0 +1,87 @@ +const { PluginTypes } = require("./constants") +const { DatasourceFieldTypes, QueryTypes } = require("@budibase/types") +const joi = require("joi") + +const DATASOURCE_TYPES = [ + "Relational", + "Non-relational", + "Spreadsheet", + "Object store", + "Graph", + "API", +] + +function runJoi(validator, schema) { + const { error } = validator.validate(schema) + if (error) { + throw error + } +} + +function validateComponent(schema) { + const validator = joi.object({ + type: joi.string().allow("component").required(), + metadata: joi.object().unknown(true).required(), + schema: joi + .object({ + name: joi.string().required(), + settings: joi.array().items(joi.object().unknown(true)).required(), + }) + .unknown(true), + }) + runJoi(validator, schema) +} + +function validateDatasource(schema) { + const fieldValidator = joi.object({ + type: joi + .string() + .allow(...Object.values(DatasourceFieldTypes)) + .required(), + required: joi.boolean().required(), + default: joi.any(), + display: joi.string(), + }) + + const queryValidator = joi + .object({ + type: joi.string().allow(...Object.values(QueryTypes)), + fields: joi.object().pattern(joi.string(), fieldValidator), + }) + .required() + + const validator = joi.object({ + type: joi.string().allow("datasource").required(), + metadata: joi.object().unknown(true).required(), + schema: joi.object({ + docs: joi.string(), + friendlyName: joi.string().required(), + type: joi.string().allow(...DATASOURCE_TYPES), + description: joi.string().required(), + datasource: joi.object().pattern(joi.string(), fieldValidator).required(), + query: joi + .object({ + create: queryValidator, + read: queryValidator, + update: queryValidator, + delete: queryValidator, + }) + .unknown(true) + .required(), + }), + }) + runJoi(validator, schema) +} + +exports.validate = schema => { + switch (schema.type) { + case PluginTypes.COMPONENT: + validateComponent(schema) + break + case PluginTypes.DATASOURCE: + validateDatasource(schema) + break + default: + throw new Error(`Unknown plugin type - check schema.json: ${schema.type}`) + } +} diff --git a/packages/cli/yarn.lock b/packages/cli/yarn.lock index 95813f60cf..c17b48e8bb 100644 --- a/packages/cli/yarn.lock +++ b/packages/cli/yarn.lock @@ -118,6 +118,11 @@ resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.1.32-alpha.6.tgz#95d8d73c7ed6ebc22ff26a44365127a478e19409" integrity sha512-AKKxrzVqGtcSzZZ2fP6i2Vgv6ICN9NEEE1dmzRk9AImZS+XKQ9VgVpdE+4gHgFK7L0gBYAsiaoEpCbbrI/+NoQ== +"@budibase/types@^1.2.31": + version "1.2.31" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.31.tgz#4715bca331ecd5eac23f95bfdee2eb147ef57814" + integrity sha512-/R03MleZRMtf6JW/nCKBqd/bBIkbFnwr8EV1Y3t6EySh8fnhM2PdhlWlpf/BrE0zMoiuBn4JMFl2vJ2Mzo/aoA== + "@eslint/eslintrc@^0.4.3": version "0.4.3" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" @@ -133,6 +138,18 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@hapi/hoek@^9.0.0": + version "9.3.0" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== + +"@hapi/topo@^5.0.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" + integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== + dependencies: + "@hapi/hoek" "^9.0.0" + "@humanwhocodes/config-array@^0.5.0": version "0.5.0" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" @@ -183,6 +200,23 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@sideway/address@^4.1.3": + version "4.1.4" + resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" + integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== + dependencies: + "@hapi/hoek" "^9.0.0" + +"@sideway/formula@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" + integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== + +"@sideway/pinpoint@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" + integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== + "@sindresorhus/is@^0.7.0": version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" @@ -2455,6 +2489,17 @@ jmespath@0.15.0: resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217" integrity sha512-+kHj8HXArPfpPEKGLZ+kB5ONRTCiGQXo8RQYL0hH8t6pWXUBBK5KkkQmTNOwKK4LEsd0yTsgtjJVm4UBSZea4w== +joi@^17.6.0: + version "17.6.0" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" + integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== + dependencies: + "@hapi/hoek" "^9.0.0" + "@hapi/topo" "^5.0.0" + "@sideway/address" "^4.1.3" + "@sideway/formula" "^3.0.0" + "@sideway/pinpoint" "^2.0.0" + join-component@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/join-component/-/join-component-1.1.0.tgz#b8417b750661a392bee2c2537c68b2a9d4977cd5" diff --git a/packages/server/src/definitions/datasource.ts b/packages/server/src/definitions/datasource.ts index 9752fc947a..604dae50c3 100644 --- a/packages/server/src/definitions/datasource.ts +++ b/packages/server/src/definitions/datasource.ts @@ -1,73 +1,21 @@ import { Row, Table, Base } from "./common" +import { + Operation, + QueryTypes, + SortDirection, + SourceNames, +} from "@budibase/types" -export enum Operation { - CREATE = "CREATE", - READ = "READ", - UPDATE = "UPDATE", - DELETE = "DELETE", - BULK_CREATE = "BULK_CREATE", - CREATE_TABLE = "CREATE_TABLE", - UPDATE_TABLE = "UPDATE_TABLE", - DELETE_TABLE = "DELETE_TABLE", -} - -export enum SortDirection { - ASCENDING = "ASCENDING", - DESCENDING = "DESCENDING", -} - -export enum QueryTypes { - SQL = "sql", - JSON = "json", - FIELDS = "fields", -} - -export enum DatasourceFieldTypes { - STRING = "string", - LONGFORM = "longForm", - BOOLEAN = "boolean", - NUMBER = "number", - PASSWORD = "password", - LIST = "list", - OBJECT = "object", - JSON = "json", - FILE = "file", -} - -export enum SourceNames { - POSTGRES = "POSTGRES", - DYNAMODB = "DYNAMODB", - MONGODB = "MONGODB", - ELASTICSEARCH = "ELASTICSEARCH", - COUCHDB = "COUCHDB", - SQL_SERVER = "SQL_SERVER", - S3 = "S3", - AIRTABLE = "AIRTABLE", - MYSQL = "MYSQL", - ARANGODB = "ARANGODB", - REST = "REST", - ORACLE = "ORACLE", - GOOGLE_SHEETS = "GOOGLE_SHEETS", - FIRESTORE = "FIRESTORE", - REDIS = "REDIS", - SNOWFLAKE = "SNOWFLAKE", -} - -export enum IncludeRelationships { - INCLUDE = 1, - EXCLUDE = 0, -} - -export enum FilterTypes { - STRING = "string", - FUZZY = "fuzzy", - RANGE = "range", - EQUAL = "equal", - NOT_EQUAL = "notEqual", - EMPTY = "empty", - NOT_EMPTY = "notEmpty", - ONE_OF = "oneOf", -} +// these were previously exported here - moved to types for re-use +export { + Operation, + SortDirection, + QueryTypes, + DatasourceFieldTypes, + SourceNames, + IncludeRelationships, + FilterTypes, +} from "@budibase/types" export interface QueryDefinition { type: QueryTypes diff --git a/packages/types/src/documents/app/datasource.ts b/packages/types/src/documents/app/datasource.ts index 3a8704a0a9..6a5dd054da 100644 --- a/packages/types/src/documents/app/datasource.ts +++ b/packages/types/src/documents/app/datasource.ts @@ -1,5 +1,74 @@ import { Document } from "../document" +export enum Operation { + CREATE = "CREATE", + READ = "READ", + UPDATE = "UPDATE", + DELETE = "DELETE", + BULK_CREATE = "BULK_CREATE", + CREATE_TABLE = "CREATE_TABLE", + UPDATE_TABLE = "UPDATE_TABLE", + DELETE_TABLE = "DELETE_TABLE", +} + +export enum SortDirection { + ASCENDING = "ASCENDING", + DESCENDING = "DESCENDING", +} + +export enum QueryTypes { + SQL = "sql", + JSON = "json", + FIELDS = "fields", +} + +export enum DatasourceFieldTypes { + STRING = "string", + LONGFORM = "longForm", + BOOLEAN = "boolean", + NUMBER = "number", + PASSWORD = "password", + LIST = "list", + OBJECT = "object", + JSON = "json", + FILE = "file", +} + +export enum SourceNames { + POSTGRES = "POSTGRES", + DYNAMODB = "DYNAMODB", + MONGODB = "MONGODB", + ELASTICSEARCH = "ELASTICSEARCH", + COUCHDB = "COUCHDB", + SQL_SERVER = "SQL_SERVER", + S3 = "S3", + AIRTABLE = "AIRTABLE", + MYSQL = "MYSQL", + ARANGODB = "ARANGODB", + REST = "REST", + ORACLE = "ORACLE", + GOOGLE_SHEETS = "GOOGLE_SHEETS", + FIRESTORE = "FIRESTORE", + REDIS = "REDIS", + SNOWFLAKE = "SNOWFLAKE", +} + +export enum IncludeRelationships { + INCLUDE = 1, + EXCLUDE = 0, +} + +export enum FilterTypes { + STRING = "string", + FUZZY = "fuzzy", + RANGE = "range", + EQUAL = "equal", + NOT_EQUAL = "notEqual", + EMPTY = "empty", + NOT_EMPTY = "notEmpty", + ONE_OF = "oneOf", +} + export interface Datasource extends Document { source: string } From 737d5e1ef335c7adadc54e5ac88afe9b431f9842 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 10 Aug 2022 16:54:13 +0100 Subject: [PATCH 006/162] Add full PoC of using a custom component inside the builder, with children and bindings --- .../src/builderStore/store/frontend.js | 33 +++++++++++++++++-- .../[screenId]/_components/iframeTemplate.js | 3 ++ .../new/_components/NewComponentPanel.svelte | 21 ++++++++++-- 3 files changed, 51 insertions(+), 6 deletions(-) diff --git a/packages/builder/src/builderStore/store/frontend.js b/packages/builder/src/builderStore/store/frontend.js index 58d803aa03..7903210f53 100644 --- a/packages/builder/src/builderStore/store/frontend.js +++ b/packages/builder/src/builderStore/store/frontend.js @@ -92,11 +92,41 @@ export const getFrontendStore = () => { // Allow errors to propagate. let components = await API.fetchComponentLibDefinitions(application.appId) + // Extend definitions with custom components + components["test"] = { + component: "test", + name: "Super cool component", + icon: "Text", + description: "A custom component", + showSettingsBar: false, + hasChildren: true, + settings: [ + { + type: "text", + key: "text", + label: "Text", + }, + ], + context: { + type: "static", + values: [ + { + label: "Text prop", + key: "text", + }, + ], + }, + } + + // Filter out custom component keys so we can flag them + let customComponents = ["test"] + // Reset store state store.update(state => ({ ...state, libraries: application.componentLibraries, components, + customComponents, clientFeatures: { ...INITIAL_FRONTEND_STATE.clientFeatures, ...components.features, @@ -397,9 +427,6 @@ export const getFrontendStore = () => { if (!componentName) { return null } - if (!componentName.startsWith("@budibase")) { - componentName = `@budibase/standard-components/${componentName}` - } return get(store).components[componentName] }, createInstance: (componentName, presetProps) => { diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/_components/iframeTemplate.js b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/_components/iframeTemplate.js index 1c789d858e..64a05c7246 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/_components/iframeTemplate.js +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/_components/iframeTemplate.js @@ -37,6 +37,9 @@ export default ` } + - + {{ PLUGINS }} @@ -85,9 +86,13 @@ - + {#if usedPlugins?.length} + {#each usedPlugins as plugin} + + {/each} + {/if} - {{ PLUGINS }} {#if $auth.isAdmin} @@ -106,6 +112,7 @@ } }} /> +
diff --git a/packages/client/src/components/ClientApp.svelte b/packages/client/src/components/ClientApp.svelte index 64b1712b89..86fd56feb1 100644 --- a/packages/client/src/components/ClientApp.svelte +++ b/packages/client/src/components/ClientApp.svelte @@ -87,6 +87,14 @@ }) + + {#if $builderStore.usedPlugins?.length} + {#each $builderStore.usedPlugins as plugin} + + {/each} + {/if} + + {#if dataLoaded}
{ + const initialise = (instance, force = false) => { if (instance == null) { return } // Ensure we're processing a new instance const instanceKey = Helpers.hashString(JSON.stringify(instance)) - if (instanceKey === lastInstanceKey) { + if (instanceKey === lastInstanceKey && !force) { return } else { lastInstanceKey = instanceKey @@ -407,9 +407,11 @@ !componentStore.actions.isComponentRegistered(id) ) { componentStore.actions.registerInstance(id, { + component: instance._component, getSettings: () => cachedSettings, getRawSettings: () => ({ ...staticSettings, ...dynamicSettings }), getDataContext: () => get(context), + reload: () => initialise(instance, true), }) } }) diff --git a/packages/client/src/components/devtools/DevToolsStatsTab.svelte b/packages/client/src/components/devtools/DevToolsStatsTab.svelte index b20b9fafa0..24f587332c 100644 --- a/packages/client/src/components/devtools/DevToolsStatsTab.svelte +++ b/packages/client/src/components/devtools/DevToolsStatsTab.svelte @@ -19,7 +19,10 @@ label="Active screen" value={$screenStore.activeScreen?.routing.route} /> - + diff --git a/packages/client/src/index.js b/packages/client/src/index.js index 32b242bc69..bef3ab9c12 100644 --- a/packages/client/src/index.js +++ b/packages/client/src/index.js @@ -27,6 +27,7 @@ const loadBudibase = () => { previewDevice: window["##BUDIBASE_PREVIEW_DEVICE##"], navigation: window["##BUDIBASE_PREVIEW_NAVIGATION##"], hiddenComponentIds: window["##BUDIBASE_HIDDEN_COMPONENT_IDS##"], + usedPlugins: window["##BUDIBASE_USED_PLUGINS##"], }) // Set app ID - this window flag is set by both the preview and the real @@ -39,6 +40,11 @@ const loadBudibase = () => { devToolsStore.actions.setEnabled(enableDevTools) // Register any custom components + window.registerCustomComponent = plugin => { + componentStore.actions.registerCustomComponent(plugin) + console.log("registered!") + loadBudibase() + } if (window["##BUDIBASE_CUSTOM_COMPONENTS##"]) { window["##BUDIBASE_CUSTOM_COMPONENTS##"].forEach(component => { componentStore.actions.registerCustomComponent(component) diff --git a/packages/client/src/stores/components.js b/packages/client/src/stores/components.js index a07c9da996..94dd16a957 100644 --- a/packages/client/src/stores/components.js +++ b/packages/client/src/stores/components.js @@ -10,7 +10,11 @@ import * as AppComponents from "../components/app/index.js" const budibasePrefix = "@budibase/standard-components/" const createComponentStore = () => { - const store = writable({}) + const store = writable({ + customComponentManifest: {}, + componentsAwaitingConstructors: {}, + mountedComponents: {}, + }) const derivedStore = derived( [store, builderStore, devToolsStore, screenStore], @@ -29,9 +33,7 @@ const createComponentStore = () => { asset = $screenState.activeScreen } const component = findComponentById(asset?.props, selectedComponentId) - const prefix = "@budibase/standard-components/" - const type = component?._component?.replace(prefix, "") - const definition = type ? Manifest[type] : null + const definition = getComponentDefinition(component?._component) // Derive the selected component path const path = @@ -39,32 +41,50 @@ const createComponentStore = () => { return { customComponentManifest: $store.customComponentManifest, - selectedComponentInstance: $store[selectedComponentId], + selectedComponentInstance: + $store.mountedComponents[selectedComponentId], selectedComponent: component, selectedComponentDefinition: definition, selectedComponentPath: path?.map(component => component._id), - mountedComponents: Object.keys($store).length, + mountedComponentCount: Object.keys($store.mountedComponents).length, currentAsset: asset, } } ) const registerInstance = (id, instance) => { - store.update(state => ({ - ...state, - [id]: instance, - })) + store.update(state => { + // If this is a custom component and does not have an implementation yet, + // store so we can reload this component later + const component = instance.component + let cac = state.componentsAwaitingConstructors + if (!getComponentConstructor(component)) { + if (!cac[component]) { + cac[component] = [] + } + cac[component].push(id) + } + + return { + ...state, + componentsAwaitingConstructors: cac, + mountedComponents: { + ...state.mountedComponents, + [id]: instance, + }, + } + }) } const unregisterInstance = id => { store.update(state => { - delete state[id] + delete state.mountedComponents[id] return state }) } const isComponentRegistered = id => { - return get(store)[id] != null + return get(store).mountedComponents[id] != null } const getComponentById = id => { @@ -117,17 +137,32 @@ const createComponentStore = () => { if (!Component || !schema?.schema?.name) { return } + const componentName = `plugin/${schema.schema.name}/1.0.0` store.update(state => { if (!state.customComponentManifest) { state.customComponentManifest = {} } - const componentName = `plugin/${schema.schema.name}/1.0.0` state.customComponentManifest[componentName] = { schema, Component, } return state }) + + // Reload any mounted components which depend on this definition + const state = get(store) + if (state.componentsAwaitingConstructors[componentName]?.length) { + state.componentsAwaitingConstructors[componentName].forEach(id => { + const instance = state.mountedComponents[id] + if (instance) { + instance.reload() + } + }) + store.update(state => { + delete state.componentsAwaitingConstructors[componentName] + return state + }) + } } return { From 22ce84f3848ca17fe83d5eecf5a835286eb96979 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Thu, 11 Aug 2022 17:29:07 +0100 Subject: [PATCH 023/162] Getting dependency installation working correctly. --- .gitignore | 4 +++- packages/cli/src/exec.js | 9 +++++---- packages/cli/src/plugins/index.js | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index f063e2224f..32c6faf980 100644 --- a/.gitignore +++ b/.gitignore @@ -102,4 +102,6 @@ packages/builder/cypress/reports stats.html # TypeScript cache -*.tsbuildinfo \ No newline at end of file +*.tsbuildinfo +budibase-component +budibase-datasource diff --git a/packages/cli/src/exec.js b/packages/cli/src/exec.js index 8b1134c897..72fd8e00eb 100644 --- a/packages/cli/src/exec.js +++ b/packages/cli/src/exec.js @@ -1,8 +1,8 @@ const util = require("util") const exec = util.promisify(require("child_process").exec) -exports.exec = async command => { - const { stdout } = await exec(command) +exports.exec = async (command, dir = "./") => { + const { stdout } = await exec(command, { cwd: dir }) return stdout } @@ -15,12 +15,13 @@ exports.utilityInstalled = async utilName => { } } -exports.runPkgCommand = async command => { +exports.runPkgCommand = async (command, dir = "./") => { const yarn = await exports.utilityInstalled("yarn") const npm = await exports.utilityInstalled("npm") if (!yarn && !npm) { throw new Error("Must have yarn or npm installed to run build.") } const npmCmd = command === "install" ? `npm ${command}` : `npm run ${command}` - await exports.exec(yarn ? `yarn ${command}` : npmCmd) + const cmd = yarn ? `yarn ${command}` : npmCmd + await exports.exec(cmd, dir) } diff --git a/packages/cli/src/plugins/index.js b/packages/cli/src/plugins/index.js index 6ce2d47e63..e6de624b63 100644 --- a/packages/cli/src/plugins/index.js +++ b/packages/cli/src/plugins/index.js @@ -37,7 +37,7 @@ async function init(opts) { await getSkeleton(type, name) await fleshOutSkeleton(name, desc, version) console.log(info("Installing dependencies...")) - await runPkgCommand("install") + await runPkgCommand("install", join(process.cwd(), name)) console.log(info(`Plugin created in directory "${name}"`)) } From d9a860499478e6d38035df32977b5db02770d028 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Thu, 11 Aug 2022 18:29:49 +0100 Subject: [PATCH 024/162] Fixing validation for datasource plugins. --- packages/cli/package.json | 6 +++--- packages/cli/src/plugins/validate.js | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index 4f1cc8d4cd..7ea6111662 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.2.28-alpha.0", - "@budibase/string-templates": "1.2.28-alpha.0", - "@budibase/types": "1.2.28-alpha.0", + "@budibase/backend-core": "^1.2.38", + "@budibase/string-templates": "^1.2.38", + "@budibase/types": "^1.2.38", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", diff --git a/packages/cli/src/plugins/validate.js b/packages/cli/src/plugins/validate.js index b460670c7f..4c2fa6ba53 100644 --- a/packages/cli/src/plugins/validate.js +++ b/packages/cli/src/plugins/validate.js @@ -1,5 +1,5 @@ const { PluginTypes } = require("./constants") -const { DatasourceFieldTypes, QueryTypes } = require("@budibase/types") +const { DatasourceFieldType, QueryType } = require("@budibase/types") const joi = require("joi") const DATASOURCE_TYPES = [ @@ -36,7 +36,7 @@ function validateDatasource(schema) { const fieldValidator = joi.object({ type: joi .string() - .allow(...Object.values(DatasourceFieldTypes)) + .allow(...Object.values(DatasourceFieldType)) .required(), required: joi.boolean().required(), default: joi.any(), @@ -45,7 +45,7 @@ function validateDatasource(schema) { const queryValidator = joi .object({ - type: joi.string().allow(...Object.values(QueryTypes)), + type: joi.string().allow(...Object.values(QueryType)), fields: joi.object().pattern(joi.string(), fieldValidator), }) .required() From 67298ff44d7b0bedcfbb49c1b32e65712653dd60 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 12 Aug 2022 13:18:21 +0100 Subject: [PATCH 025/162] Fixing types. --- packages/cli/yarn.lock | 29 +- packages/server/yarn.lock | 634 +----------------- .../types/src/documents/app/datasource.ts | 69 -- packages/types/src/index.ts | 2 - 4 files changed, 38 insertions(+), 696 deletions(-) diff --git a/packages/cli/yarn.lock b/packages/cli/yarn.lock index 93157892dd..43c219fcd7 100644 --- a/packages/cli/yarn.lock +++ b/packages/cli/yarn.lock @@ -43,19 +43,18 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@budibase/backend-core@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.28-alpha.0.tgz#f4253825724327e6552000f8c7575134bfaa05cd" - integrity sha512-ueu+NZgkiKrX49E0Zy2rrNE4NLe2HAyl3VolTrZfVxOzu1IvtQ/wJBcGDG84VvSliP+0bOOVO9TiGMY3bvZ/Hw== +"@budibase/backend-core@^1.2.38": + version "1.2.38" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.38.tgz#9451ae72f6af8cff3aa0a57dc61fc8d3505a77a0" + integrity sha512-g7m4fHG1tLqNsSvdSltqRHLASOH5n3QBbN5DD7cmSBIVpUtDCA0EMx/L0vkDDhTmbOQApXAW3cyJs6H3QiWtOw== dependencies: - "@budibase/types" "1.2.28-alpha.0" + "@budibase/types" "^1.2.38" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" dotenv "16.0.1" emitter-listener "1.1.2" ioredis "4.28.0" - joi "17.6.0" jsonwebtoken "8.5.1" koa-passport "4.1.4" lodash "4.17.21" @@ -102,10 +101,10 @@ to-gfm-code-block "^0.1.1" year "^0.2.1" -"@budibase/string-templates@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.28-alpha.0.tgz#895571c142bcd68852f87e06a395232b3eb5516a" - integrity sha512-nXqa0IlSVW0og8NAJUW+ihUhdW8+rK0tskGWIwF+gEfAKd9NMyxoLswIAb7aYLmwdRRJFwhrpMEuF7ed8AojSQ== +"@budibase/string-templates@^1.2.38": + version "1.2.38" + resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.38.tgz#404804df516fb981b4f073f09bab64c9111cecb0" + integrity sha512-JRIAZVuuBECxDBcbx5FOYRRKi1ZyW7//LwKL5U1r9sIVCIxCW1t5b175oTnR9/bkktNs7X2ziynH/tsT5GVC0g== dependencies: "@budibase/handlebars-helpers" "^0.11.8" dayjs "^1.10.4" @@ -114,10 +113,10 @@ lodash "^4.17.20" vm2 "^3.9.4" -"@budibase/types@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.28-alpha.0.tgz#61668b7d5d9b1f85c09d658deed87ec3dc28e290" - integrity sha512-tYhdUl1+dEtG8h2xoGUl0NXZC5BZYQIhgPK7JkYrqFHuNx+1f6EoHPQ9MMb/WyOxIDZv4gY7QJLg0KeVflofbw== +"@budibase/types@^1.2.38": + version "1.2.38" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.38.tgz#472f4ec891242488561a8cfc175961664bc7ac88" + integrity sha512-pMKh4FKhPoa1pge4FKqPi3gbzZp3HJ1RuhM5naKFqC1yompIn/Es+YNft39VC2bTW5tiGbucMcjWzdpMwTSTVw== "@eslint/eslintrc@^0.4.3": version "0.4.3" @@ -2485,7 +2484,7 @@ jmespath@0.15.0: resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217" integrity sha512-+kHj8HXArPfpPEKGLZ+kB5ONRTCiGQXo8RQYL0hH8t6pWXUBBK5KkkQmTNOwKK4LEsd0yTsgtjJVm4UBSZea4w== -joi@17.6.0, joi@^17.6.0: +joi@^17.6.0: version "17.6.0" resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 8545343645..a8dea20e95 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.28-alpha.0.tgz#f4253825724327e6552000f8c7575134bfaa05cd" - integrity sha512-ueu+NZgkiKrX49E0Zy2rrNE4NLe2HAyl3VolTrZfVxOzu1IvtQ/wJBcGDG84VvSliP+0bOOVO9TiGMY3bvZ/Hw== +"@budibase/backend-core@1.2.39-alpha.0": + version "1.2.39-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.39-alpha.0.tgz#52a1d340d28fa714822827aeb843e1f097ad8f60" + integrity sha512-yHvWAUH1j8+UJx8hYl11iAGOpxmkxSbzf7qVCJ8a84Ms46Clmwp+qxtnDzKxMit2KJW72dJM9+PvI+OUG0Bixg== dependencies: - "@budibase/types" "1.2.28-alpha.0" + "@budibase/types" "1.2.39-alpha.0" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1128,59 +1128,6 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/bbui@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/bbui/-/bbui-1.2.28-alpha.0.tgz#579afbccb824a2ade16a6632d82615dfc90fcfc8" - integrity sha512-61xgvHMJM5xWSNo6mva2toywXLM7KuF8Ly4mOgH/coKsS5DQj6v+8NXXbRTVtVy7i6rbeFjCs2fzTeEC6bW/ig== - dependencies: - "@adobe/spectrum-css-workflow-icons" "^1.2.1" - "@budibase/string-templates" "1.2.28-alpha.0" - "@spectrum-css/actionbutton" "^1.0.1" - "@spectrum-css/actiongroup" "^1.0.1" - "@spectrum-css/avatar" "^3.0.2" - "@spectrum-css/button" "^3.0.1" - "@spectrum-css/buttongroup" "^3.0.2" - "@spectrum-css/checkbox" "^3.0.2" - "@spectrum-css/dialog" "^3.0.1" - "@spectrum-css/divider" "^1.0.3" - "@spectrum-css/dropzone" "^3.0.2" - "@spectrum-css/fieldgroup" "^3.0.2" - "@spectrum-css/fieldlabel" "^3.0.1" - "@spectrum-css/icon" "^3.0.1" - "@spectrum-css/illustratedmessage" "^3.0.2" - "@spectrum-css/inlinealert" "^2.0.1" - "@spectrum-css/inputgroup" "^3.0.2" - "@spectrum-css/label" "^2.0.10" - "@spectrum-css/link" "^3.1.1" - "@spectrum-css/menu" "^3.0.1" - "@spectrum-css/modal" "^3.0.1" - "@spectrum-css/pagination" "^3.0.3" - "@spectrum-css/picker" "^1.0.1" - "@spectrum-css/popover" "^3.0.1" - "@spectrum-css/progressbar" "^1.0.2" - "@spectrum-css/progresscircle" "^1.0.2" - "@spectrum-css/radio" "^3.0.2" - "@spectrum-css/search" "^3.0.2" - "@spectrum-css/sidenav" "^3.0.2" - "@spectrum-css/slider" "3.0.1" - "@spectrum-css/statuslight" "^3.0.2" - "@spectrum-css/stepper" "^3.0.3" - "@spectrum-css/switch" "^1.0.2" - "@spectrum-css/table" "^3.0.1" - "@spectrum-css/tabs" "^3.2.12" - "@spectrum-css/tags" "^3.0.2" - "@spectrum-css/textfield" "^3.0.1" - "@spectrum-css/toast" "^3.0.1" - "@spectrum-css/tooltip" "^3.0.3" - "@spectrum-css/treeview" "^3.0.2" - "@spectrum-css/typography" "^3.0.1" - "@spectrum-css/underlay" "^2.0.9" - "@spectrum-css/vars" "^3.0.1" - dayjs "^1.10.4" - easymde "^2.16.1" - svelte-flatpickr "^3.2.3" - svelte-portal "^1.0.0" - "@budibase/bbui@^0.9.139": version "0.9.190" resolved "https://registry.yarnpkg.com/@budibase/bbui/-/bbui-0.9.190.tgz#e1ec400ac90f556bfbc80fc23a04506f1585ea81" @@ -1231,77 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/client@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/client/-/client-1.2.28-alpha.0.tgz#5f166cfc619848d308f0f7ba90d291220bb38ed8" - integrity sha512-DjMIafaBeDmL/tOmTCFSNOowcP33E+a3e02g7Y1oDzRei9o7zpsxSLXEUVNvLl+XtvR9PNe4krXrsv4MDPoQ6Q== +"@budibase/pro@1.2.39-alpha.0": + version "1.2.39-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.39-alpha.0.tgz#272e3ffd5e2189c787df6b6fbe22b7084832ade7" + integrity sha512-B0XakaUHW2Y1RtkEcrPEBcp8CDFJ8/fC9agLI3WK0ARnTGx9ROd8Liokq3/pW3vmlOgsfijzNHL3LUYcPTMEXw== dependencies: - "@budibase/bbui" "1.2.28-alpha.0" - "@budibase/frontend-core" "1.2.28-alpha.0" - "@budibase/string-templates" "1.2.28-alpha.0" - "@spectrum-css/button" "^3.0.3" - "@spectrum-css/card" "^3.0.3" - "@spectrum-css/divider" "^1.0.3" - "@spectrum-css/link" "^3.1.3" - "@spectrum-css/page" "^3.0.1" - "@spectrum-css/tag" "^3.1.4" - "@spectrum-css/typography" "^3.0.2" - "@spectrum-css/vars" "^3.0.1" - apexcharts "^3.22.1" - dayjs "^1.10.5" - downloadjs "1.4.7" - leaflet "^1.7.1" - regexparam "^1.3.0" - rollup-plugin-polyfill-node "^0.8.0" - sanitize-html "^2.7.0" - screenfull "^6.0.1" - shortid "^2.2.15" - svelte "^3.49.0" - svelte-apexcharts "^1.0.2" - svelte-flatpickr "^3.1.0" - svelte-spa-router "^3.0.5" - -"@budibase/frontend-core@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/frontend-core/-/frontend-core-1.2.28-alpha.0.tgz#dfe135acfce25fcdff4e4c7ed88c4d974c674858" - integrity sha512-uPZuVpJrJr9aX0QdrwkL+m78X46RUpcKg04KtcETvdvyUmPndz5Z7zr9j2Fo02Kt8c4lKRrpQgHL8gnDwwHSeg== - dependencies: - "@budibase/bbui" "1.2.28-alpha.0" - lodash "^4.17.21" - svelte "^3.46.2" - -"@budibase/handlebars-helpers@^0.11.8": - version "0.11.8" - resolved "https://registry.yarnpkg.com/@budibase/handlebars-helpers/-/handlebars-helpers-0.11.8.tgz#6953d29673a8c5c407e096c0a84890465c7ce841" - integrity sha512-ggWJUt0GqsHFAEup5tlWlcrmYML57nKhpNGGLzVsqXVYN8eVmf3xluYmmMe7fDYhQH0leSprrdEXmsdFQF3HAQ== - dependencies: - array-sort "^1.0.0" - define-property "^2.0.2" - extend-shallow "^3.0.2" - for-in "^1.0.2" - get-object "^0.2.0" - get-value "^3.0.1" - handlebars "^4.7.7" - handlebars-utils "^1.0.6" - has-value "^2.0.2" - helper-md "^0.2.2" - html-tag "^2.0.0" - is-even "^1.0.0" - is-glob "^4.0.1" - kind-of "^6.0.3" - micromatch "^3.1.5" - relative "^3.0.2" - striptags "^3.1.1" - to-gfm-code-block "^0.1.1" - year "^0.2.1" - -"@budibase/pro@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.28-alpha.0.tgz#f372dcbac55634a1f0e7ff8125ffb0a0aeea086c" - integrity sha512-YxElWs5gwpe1JmHgpB52YeRkyeWPoBiUIt8EshyW90EFVUXP7FOy3LsjvKMNJXAZs1mI4ttkZfuWva8HjrGaKA== - dependencies: - "@budibase/backend-core" "1.2.28-alpha.0" - "@budibase/types" "1.2.28-alpha.0" + "@budibase/backend-core" "1.2.39-alpha.0" + "@budibase/types" "1.2.39-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1324,22 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/string-templates@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.28-alpha.0.tgz#895571c142bcd68852f87e06a395232b3eb5516a" - integrity sha512-nXqa0IlSVW0og8NAJUW+ihUhdW8+rK0tskGWIwF+gEfAKd9NMyxoLswIAb7aYLmwdRRJFwhrpMEuF7ed8AojSQ== - dependencies: - "@budibase/handlebars-helpers" "^0.11.8" - dayjs "^1.10.4" - handlebars "^4.7.6" - handlebars-utils "^1.0.6" - lodash "^4.17.20" - vm2 "^3.9.4" - -"@budibase/types@1.2.28-alpha.0": - version "1.2.28-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.28-alpha.0.tgz#61668b7d5d9b1f85c09d658deed87ec3dc28e290" - integrity sha512-tYhdUl1+dEtG8h2xoGUl0NXZC5BZYQIhgPK7JkYrqFHuNx+1f6EoHPQ9MMb/WyOxIDZv4gY7QJLg0KeVflofbw== +"@budibase/types@1.2.39-alpha.0": + version "1.2.39-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.39-alpha.0.tgz#d0d48e4da36a93a4a9354cc49663f38d0181b6c0" + integrity sha512-i+lQeqlKmFORLuKdwmKnlmCCCEXZH6NdXHrOqNcebJzcNlx3Gx342+cHe4ZGYu0L+wCkWWelD5XHFuNMVMcuHg== "@bull-board/api@3.7.0": version "3.7.0" @@ -2268,24 +2139,6 @@ resolved "https://registry.yarnpkg.com/@redis/time-series/-/time-series-1.0.3.tgz#4cfca8e564228c0bddcdf4418cba60c20b224ac4" integrity sha512-OFp0q4SGrTH0Mruf6oFsHGea58u8vS/iI5+NpYdicaM+7BgqBZH8FFvNZ8rYYLrUO/QRqMq72NpXmxLVNcdmjA== -"@rollup/plugin-inject@^4.0.0": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@rollup/plugin-inject/-/plugin-inject-4.0.4.tgz#fbeee66e9a700782c4f65c8b0edbafe58678fbc2" - integrity sha512-4pbcU4J/nS+zuHk+c+OL3WtmEQhqxlZ9uqfjQMQDOHOPld7PsCd8k5LWs8h5wjwJN7MgnAn768F2sDxEP4eNFQ== - dependencies: - "@rollup/pluginutils" "^3.1.0" - estree-walker "^2.0.1" - magic-string "^0.25.7" - -"@rollup/pluginutils@^3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" - integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== - dependencies: - "@types/estree" "0.0.39" - estree-walker "^1.0.1" - picomatch "^2.2.2" - "@sendgrid/client@^7.1.1": version "7.7.0" resolved "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.7.0.tgz#f8f67abd604205a0d0b1af091b61517ef465fdbf" @@ -2567,11 +2420,6 @@ resolved "https://registry.yarnpkg.com/@spectrum-css/sidenav/-/sidenav-3.0.23.tgz#c218560d472e13a3e0d1499b762df1206dcffbfd" integrity sha512-4IFw2/HMQJRzM0M2c5na/HeY7y5vJoGpMFBkXNpQyhW4TRo7N1rGwYQ5dRD3s4OVEWV4/rjfGV0d/qhfwKUTog== -"@spectrum-css/slider@3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@spectrum-css/slider/-/slider-3.0.1.tgz#5281e6f47eb5a4fd3d1816c138bf66d01d7f2e49" - integrity sha512-DI2dtMRnQuDM1miVzl3SGyR1khUEKnwdXfO5EHDFwkC3yav43F5QogkfjmjFmWWobMVovdJlAuiaaJ/IHejD0Q== - "@spectrum-css/statuslight@^3.0.2": version "3.0.8" resolved "https://registry.yarnpkg.com/@spectrum-css/statuslight/-/statuslight-3.0.8.tgz#3b0ea80712573679870a85d469850230e794a0f7" @@ -2597,16 +2445,6 @@ resolved "https://registry.yarnpkg.com/@spectrum-css/tabs/-/tabs-3.2.16.tgz#c3f7800d8d6f7c9930c28cd01354816328bf72b1" integrity sha512-JUcMB/fiDG/KoyrVstlUMacFJUY4OHKqhMRuPtu9ggUXWCRbSkY8he92v6u0HwY3DuhDoOxNTK8d/PLjk/fsbg== -"@spectrum-css/tabs@^3.2.12": - version "3.2.19" - resolved "https://registry.yarnpkg.com/@spectrum-css/tabs/-/tabs-3.2.19.tgz#2eae3a2c4760466882db08281365d502c3f22ebf" - integrity sha512-SNGFf/karBr/GNz5GNWnbppFz6uEOGecv6D8WA1ZLeWkjg4gG5e4M9XmPcB32v350e1PTRG7KwWDce48qWAKCQ== - -"@spectrum-css/tag@^3.1.4": - version "3.3.14" - resolved "https://registry.yarnpkg.com/@spectrum-css/tag/-/tag-3.3.14.tgz#2d1ca0759da6a3a2970d14bcabf33bd4a8f63a5f" - integrity sha512-S4RUaxN/83Pr/SYkQHeZNh2NXmtumUEzhrsrrliI6bAt3bjs+mLresTGd9qkIX2+Ycq1JHWTr0HTga4ti1YYyA== - "@spectrum-css/tags@^3.0.2": version "3.0.3" resolved "https://registry.yarnpkg.com/@spectrum-css/tags/-/tags-3.0.3.tgz#fc76d2735cdc442de91b7eb3bee49a928c0767ac" @@ -2784,13 +2622,6 @@ resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8" integrity sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w== -"@types/codemirror@^5.60.4": - version "5.60.5" - resolved "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-5.60.5.tgz#5b989a3b4bbe657458cf372c92b6bfda6061a2b7" - integrity sha512-TiECZmm8St5YxjFUp64LK0c8WU5bxMDt9YaAek1UqUb9swrSCoJhh92fWu1p3mTEqlHjhB5sY7OFBhWroJXZVg== - dependencies: - "@types/tern" "*" - "@types/connect@*": version "3.4.35" resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" @@ -2839,11 +2670,6 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== -"@types/estree@0.0.39": - version "0.0.39" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" - integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== - "@types/express-serve-static-core@^4.17.18": version "4.17.28" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8" @@ -2987,11 +2813,6 @@ resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== -"@types/marked@^4.0.1": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@types/marked/-/marked-4.0.3.tgz#2098f4a77adaba9ce881c9e0b6baf29116e5acc4" - integrity sha512-HnMWQkLJEf/PnxZIfbm0yGJRRZYYMhb++O9M36UCTA9z53uPvVoSlAwJr3XOpDEryb7Hwl1qAx/MV6YIW1RXxg== - "@types/mime@^1": version "1.3.2" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" @@ -3127,13 +2948,6 @@ "@types/cookiejar" "*" "@types/node" "*" -"@types/tern@*": - version "0.23.4" - resolved "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" - integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== - dependencies: - "@types/estree" "*" - "@types/tough-cookie@*": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" @@ -3718,7 +3532,7 @@ arg@^4.1.0: resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== -argparse@^1.0.10, argparse@^1.0.7: +argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== @@ -3765,15 +3579,6 @@ array-equal@^1.0.0: resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha512-H3LU5RLiSsGXPhN+Nipar0iR0IofH+8r89G2y1tBKxQ/agagKyAjhkAFDRBfodP2caPrNKHpAWNIM/c9yeL7uA== -array-sort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" - integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== - dependencies: - default-compare "^1.0.0" - get-value "^2.0.6" - kind-of "^5.0.2" - array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" @@ -3905,13 +3710,6 @@ atomic-sleep@^1.0.0: resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== -autolinker@~0.28.0: - version "0.28.1" - resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-0.28.1.tgz#0652b491881879f0775dace0cdca3233942a4e47" - integrity sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ== - dependencies: - gulp-header "^1.7.1" - available-typed-arrays@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" @@ -4744,18 +4542,6 @@ co@^4.6.0: resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== -codemirror-spell-checker@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/codemirror-spell-checker/-/codemirror-spell-checker-1.1.2.tgz#1c660f9089483ccb5113b9ba9ca19c3f4993371e" - integrity sha512-2Tl6n0v+GJRsC9K3MLCdLaMOmvWL0uukajNJseorZJsslaxZyZMgENocPU8R0DyoTAiKsyqiemSOZo7kjGV0LQ== - dependencies: - typo-js "*" - -codemirror@^5.63.1: - version "5.65.7" - resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.65.7.tgz#29af41ce5f4c2b8f1c1e16f4e645ff392823716a" - integrity sha512-zb67cXzgugIQmb6tfD4G11ILjYoMfTjwcjn+cWsa4GewlI2adhR/h3kolkoCQTm1msD/1BuqVTKuO09ELsS++A== - collect-v8-coverage@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" @@ -4906,13 +4692,6 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-with-sourcemaps@*: - version "1.1.0" - resolved "https://registry.yarnpkg.com/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz#d4ea93f05ae25790951b99e7b3b09e3908a4082e" - integrity sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg== - dependencies: - source-map "^0.6.1" - condense-newlines@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" @@ -5319,13 +5098,6 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -default-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" - integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== - dependencies: - kind-of "^5.0.2" - default-shell@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/default-shell/-/default-shell-1.0.1.tgz#752304bddc6174f49eb29cb988feea0b8813c8bc" @@ -5493,25 +5265,11 @@ doctrine@3.0.0, doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-serializer@^1.0.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" - integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.2.0" - entities "^2.0.0" - dom-walk@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== -domelementtype@^2.0.1, domelementtype@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" - integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== - domexception@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" @@ -5526,22 +5284,6 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" -domhandler@^4.0.0, domhandler@^4.2.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" - integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== - dependencies: - domelementtype "^2.2.0" - -domutils@^2.5.2: - version "2.8.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" - integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.2.0" - domhandler "^4.2.0" - dot-prop@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -5586,11 +5328,6 @@ download@8.0.0: p-event "^2.1.0" pify "^4.0.1" -downloadjs@1.4.7: - version "1.4.7" - resolved "https://registry.yarnpkg.com/downloadjs/-/downloadjs-1.4.7.tgz#f69f96f940e0d0553dac291139865a3cd0101e3c" - integrity sha512-LN1gO7+u9xjU5oEScGFKvXhYf7Y/empUIIEAGBs1LzUq/rg5duiDrkuH5A2lQGd5jfMOb9X9usDa2oVXwJ0U/Q== - duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -5606,17 +5343,6 @@ duplexify@^4.0.0: readable-stream "^3.1.1" stream-shift "^1.0.0" -easymde@^2.16.1: - version "2.16.1" - resolved "https://registry.yarnpkg.com/easymde/-/easymde-2.16.1.tgz#f4c2380312615cb33826f1a1fecfaa4022ff551a" - integrity sha512-FihYgjRsKfhGNk89SHSqxKLC4aJ1kfybPWW6iAmtb5GnXu+tnFPSzSaGBmk1RRlCuhFSjhF0SnIMGVPjEzkr6g== - dependencies: - "@types/codemirror" "^5.60.4" - "@types/marked" "^4.0.1" - codemirror "^5.63.1" - codemirror-spell-checker "1.1.2" - marked "^4.0.10" - ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -5728,16 +5454,6 @@ enhanced-resolve@^5.9.3: graceful-fs "^4.2.4" tapable "^2.2.0" -ent@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" - integrity sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA== - -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== - entities@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" @@ -6171,16 +5887,6 @@ estraverse@^5.1.0, estraverse@^5.2.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== -estree-walker@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" - integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== - -estree-walker@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" - integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== - esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -6730,11 +6436,6 @@ fs-constants@^1.0.0: resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-exists-sync@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" - integrity sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg== - fs-extra@8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -6883,14 +6584,6 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: has "^1.0.3" has-symbols "^1.0.3" -get-object@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/get-object/-/get-object-0.2.0.tgz#d92ff7d5190c64530cda0543dac63a3d47fe8c0c" - integrity sha512-7P6y6k6EzEFmO/XyUyFlXm1YLJy9xeA1x/grNV8276abX5GuwUtYgKFkRFkLixw4hf4Pz9q2vgv/8Ar42R0HuQ== - dependencies: - is-number "^2.0.2" - isobject "^0.2.0" - get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -6953,13 +6646,6 @@ get-value@^2.0.3, get-value@^2.0.6: resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== -get-value@^3.0.0, get-value@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-3.0.1.tgz#5efd2a157f1d6a516d7524e124ac52d0a39ef5a8" - integrity sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA== - dependencies: - isobject "^3.0.1" - getopts@2.2.5: version "2.2.5" resolved "https://registry.yarnpkg.com/getopts/-/getopts-2.2.5.tgz#67a0fe471cacb9c687d817cab6450b96dde8313b" @@ -7265,24 +6951,7 @@ gtoken@^5.0.4: google-p12-pem "^3.1.3" jws "^4.0.0" -gulp-header@^1.7.1: - version "1.8.12" - resolved "https://registry.yarnpkg.com/gulp-header/-/gulp-header-1.8.12.tgz#ad306be0066599127281c4f8786660e705080a84" - integrity sha512-lh9HLdb53sC7XIZOYzTXM4lFuXElv3EVkSDhsd7DoJBj7hm+Ni7D3qYbb+Rr8DuM8nRanBvkVO9d7askreXGnQ== - dependencies: - concat-with-sourcemaps "*" - lodash.template "^4.4.0" - through2 "^2.0.0" - -handlebars-utils@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/handlebars-utils/-/handlebars-utils-1.0.6.tgz#cb9db43362479054782d86ffe10f47abc76357f9" - integrity sha512-d5mmoQXdeEqSKMtQQZ9WkiUcO1E3tPbWxluCK9hVgIDPzQa9WsKo3Lbe/sGflTe7TomHEeZaOgwIkyIr1kfzkw== - dependencies: - kind-of "^6.0.0" - typeof-article "^0.1.1" - -handlebars@^4.7.6, handlebars@^4.7.7: +handlebars@^4.7.7: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== @@ -7376,14 +7045,6 @@ has-value@^1.0.0: has-values "^1.0.0" isobject "^3.0.0" -has-value@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-2.0.2.tgz#d0f12e8780ba8e90e66ad1a21c707fdb67c25658" - integrity sha512-ybKOlcRsK2MqrM3Hmz/lQxXHZ6ejzSPzpNabKB45jb5qDgJvKPa3SdapTsTLwEb9WltgWpOmNax7i+DzNOk4TA== - dependencies: - get-value "^3.0.0" - has-values "^2.0.1" - has-values@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" @@ -7397,13 +7058,6 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" -has-values@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-2.0.1.tgz#3876200ff86d8a8546a9264a952c17d5fc17579d" - integrity sha512-+QdH3jOmq9P8GfdjFg0eJudqx1FqU62NQJ4P16rOEHeRdl7ckgwn6uqQjzYE0ZoHVV/e5E2esuJ5Gl5+HUW19w== - dependencies: - kind-of "^6.0.2" - has-yarn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" @@ -7416,16 +7070,6 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -helper-md@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/helper-md/-/helper-md-0.2.2.tgz#c1f59d7e55bbae23362fd8a0e971607aec69d41f" - integrity sha512-49TaQzK+Ic7ZVTq4i1UZxRUJEmAilTk8hz7q4I0WNUaTclLR8ArJV5B3A1fe1xF2HtsDTr2gYKLaVTof/Lt84Q== - dependencies: - ent "^2.2.0" - extend-shallow "^2.0.1" - fs-exists-sync "^0.1.0" - remarkable "^1.6.2" - homedir-polyfill@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" @@ -7462,24 +7106,6 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -html-tag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/html-tag/-/html-tag-2.0.0.tgz#36c3bc8d816fd30b570d5764a497a641640c2fed" - integrity sha512-XxzooSo6oBoxBEUazgjdXj7VwTn/iSTSZzTYKzYY6I916tkaYzypHxy+pbVU1h+0UQ9JlVf5XkNQyxOAiiQO1g== - dependencies: - is-self-closing "^1.0.1" - kind-of "^6.0.0" - -htmlparser2@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" - integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.0.0" - domutils "^2.5.2" - entities "^2.0.0" - http-assert@^1.3.0: version "1.5.0" resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f" @@ -7920,13 +7546,6 @@ is-docker@^2.0.0, is-docker@^2.1.1: resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -is-even@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-even/-/is-even-1.0.0.tgz#76b5055fbad8d294a86b6a949015e1c97b717c06" - integrity sha512-LEhnkAdJqic4Dbqn58A0y52IXoHWlsueqQkKfMfdEnIYG8A1sm/GHidKkS6yvXlMoRrkM34csHnXQtOqcb+Jzg== - dependencies: - is-odd "^0.1.2" - is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -8016,13 +7635,6 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" -is-number@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg== - dependencies: - kind-of "^3.0.2" - is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -8045,13 +7657,6 @@ is-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== -is-odd@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-0.1.2.tgz#bc573b5ce371ef2aad6e6f49799b72bef13978a7" - integrity sha512-Ri7C2K7o5IrUU9UEI8losXJCCD/UtsaIrkR5sxIcFg4xQ9cRJXlWA5DQvTE0yDc0krvSNLsRGXN11UPS6KyfBw== - dependencies: - is-number "^3.0.0" - is-path-inside@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" @@ -8069,11 +7674,6 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-plain-object@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" - integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -8102,13 +7702,6 @@ is-retry-allowed@^2.2.0: resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== -is-self-closing@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-self-closing/-/is-self-closing-1.0.1.tgz#5f406b527c7b12610176320338af0fa3896416e4" - integrity sha512-E+60FomW7Blv5GXTlYee2KDrnG6srxF7Xt1SjrhWUGUEsTFIqY/nq2y3DaftCsgUMdh89V07IVfhY9KIJhLezg== - dependencies: - self-closing-tags "^1.0.1" - is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -8219,11 +7812,6 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-0.2.0.tgz#a3432192f39b910b5f02cc989487836ec70aa85e" - integrity sha512-VaWq6XYAsbvM0wf4dyBO7WH9D7GosB7ZZlqrawI9BBiTMINBeCyqSKBa35m870MY3O4aM31pYyZi9DfGrYMJrQ== - isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" @@ -9404,7 +8992,7 @@ keyv@^3.0.0: dependencies: json-buffer "3.0.0" -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.1.0, kind-of@^3.2.0: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== @@ -9418,12 +9006,12 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -kind-of@^5.0.0, kind-of@^5.0.2: +kind-of@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== -kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^6.0.0, kind-of@^6.0.2: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -9683,11 +9271,6 @@ lcid@^2.0.0: dependencies: invert-kv "^2.0.0" -leaflet@^1.7.1: - version "1.8.0" - resolved "https://registry.yarnpkg.com/leaflet/-/leaflet-1.8.0.tgz#4615db4a22a304e8e692cae9270b983b38a2055e" - integrity sha512-gwhMjFCQiYs3x/Sf+d49f10ERXaEFCPr+nVTryhAW8DWbMGqJqt9G4XuIaHmFW08zYvhgdzqXGr8AlW8v8dQkA== - left-pad@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" @@ -9882,11 +9465,6 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== - lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -9997,21 +9575,6 @@ lodash.sortby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== -lodash.template@^4.4.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.without@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" @@ -10022,7 +9585,7 @@ lodash.xor@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.xor/-/lodash.xor-4.5.0.tgz#4d48ed7e98095b0632582ba714d3ff8ae8fb1db6" integrity sha512-sVN2zimthq7aZ5sPGXnSz32rZPuqcparVW50chJQe+mzTYV+IsxSsl/2gnkWWE2Of7K3myBQBqtLKOUEHJKRsQ== -lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.7.0: +lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -10090,13 +9653,6 @@ ltgt@2.2.1, ltgt@^2.1.2, ltgt@~2.2.0: resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== -magic-string@^0.25.7: - version "0.25.9" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" - integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== - dependencies: - sourcemap-codec "^1.4.8" - make-dir@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" @@ -10161,11 +9717,6 @@ markdown-it@^12.2.0: mdurl "^1.0.1" uc.micro "^1.0.5" -marked@^4.0.10: - version "4.0.18" - resolved "https://registry.yarnpkg.com/marked/-/marked-4.0.18.tgz#cd0ac54b2e5610cfb90e8fd46ccaa8292c9ed569" - integrity sha512-wbLDJ7Zh0sqA0Vdg6aqlbT+yPxqLblpAZh1mK2+AO2twQkPywvvqQNfEPVwSSRjZ7dZcdeVBIAgiO7MMp3Dszw== - matcher@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz#bd9060f4c5b70aa8041ccc6f80368760994f30ca" @@ -10238,7 +9789,7 @@ methods@^1.0.1, methods@^1.1.1, methods@^1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.5: +micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -10496,16 +10047,6 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916" integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA== -nanoid@^2.1.0: - version "2.1.11" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.11.tgz#ec24b8a758d591561531b4176a01e3ab4f0f0280" - integrity sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA== - -nanoid@^3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" - integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== - nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -11103,11 +10644,6 @@ parse-passwd@^1.0.0: resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== -parse-srcset@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" - integrity sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q== - parse5@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" @@ -11354,7 +10890,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -11469,15 +11005,6 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== -postcss@^8.3.11: - version "8.4.16" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c" - integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ== - dependencies: - nanoid "^3.3.4" - picocolors "^1.0.0" - source-map-js "^1.0.2" - postgres-array@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" @@ -12226,16 +11753,6 @@ regexp.prototype.flags@^1.4.3: define-properties "^1.1.3" functions-have-names "^1.2.2" -regexparam@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-2.0.1.tgz#c912f5dae371e3798100b3c9ce22b7414d0889fa" - integrity sha512-zRgSaYemnNYxUv+/5SeoHI0eJIgTL/A2pUtXUPLHQxUldagouJ9p+K6IbIZ/JiQuCEv2E2B1O11SjVQy3aMCkw== - -regexparam@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-1.3.0.tgz#2fe42c93e32a40eff6235d635e0ffa344b92965f" - integrity sha512-6IQpFBv6e5vz1QAqI+V4k8P2e/3gRrqfCJ9FI+O1FLQTO+Uz6RXZEZOPmTJ6hlGj7gkERzY5BRCv09whKP96/g== - regexpp@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" @@ -12279,21 +11796,6 @@ regjsparser@^0.8.2: dependencies: jsesc "~0.5.0" -relative@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/relative/-/relative-3.0.2.tgz#0dcd8ec54a5d35a3c15e104503d65375b5a5367f" - integrity sha512-Q5W2qeYtY9GbiR8z1yHNZ1DGhyjb4AnLEjt8iE6XfcC1QIu+FAtj3HQaO0wH28H1mX6cqNLvAqWhP402dxJGyA== - dependencies: - isobject "^2.0.0" - -remarkable@^1.6.2: - version "1.7.4" - resolved "https://registry.yarnpkg.com/remarkable/-/remarkable-1.7.4.tgz#19073cb960398c87a7d6546eaa5e50d2022fcd00" - integrity sha512-e6NKUXgX95whv7IgddywbeN/ItCkWbISmc2DiqHJb0wTrqZIexqdco5b8Z3XZoo/48IdNVKM9ZCvTPJ4F5uvhg== - dependencies: - argparse "^1.0.10" - autolinker "~0.28.0" - remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -12505,13 +12007,6 @@ roarr@^2.15.3: semver-compare "^1.0.0" sprintf-js "^1.1.2" -rollup-plugin-polyfill-node@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-polyfill-node/-/rollup-plugin-polyfill-node-0.8.0.tgz#859c070822f5e38d221e5b4238cb34aa894c2b19" - integrity sha512-C4UeKedOmOBkB3FgR+z/v9kzRwV1Q/H8xWs1u1+CNe4XOV6hINfOrcO+TredKxYvopCmr+WKUSNsFUnD1RLHgQ== - dependencies: - "@rollup/plugin-inject" "^4.0.0" - rsvp@^4.8.4: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" @@ -12578,18 +12073,6 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" -sanitize-html@^2.7.0: - version "2.7.1" - resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.7.1.tgz#a6c2c1a88054a79eeacfac9b0a43f1b393476901" - integrity sha512-oOpe8l4J8CaBk++2haoN5yNI5beekjuHv3JRPKUx/7h40Rdr85pemn4NkvUB3TcBP7yjat574sPlcMAyv4UQig== - dependencies: - deepmerge "^4.2.2" - escape-string-regexp "^4.0.0" - htmlparser2 "^6.0.0" - is-plain-object "^5.0.0" - parse-srcset "^1.0.2" - postcss "^8.3.11" - sanitize-s3-objectkey@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/sanitize-s3-objectkey/-/sanitize-s3-objectkey-0.0.1.tgz#efa9887cd45275b40234fb4bb12fc5754fe64e7e" @@ -12628,11 +12111,6 @@ schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" -screenfull@^6.0.1: - version "6.0.2" - resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-6.0.2.tgz#3dbe4b8c4f8f49fb8e33caa8f69d0bca730ab238" - integrity sha512-AQdy8s4WhNvUZ6P8F6PB21tSPIYKniic+Ogx0AacBMjKP1GUHN2E9URxQHtCusiwxudnCKkdy4GrHXPPJSkCCw== - search-params@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/search-params/-/search-params-3.0.0.tgz#dbc7c243058e5a33ae1e9870be91f5aced4100d8" @@ -12650,11 +12128,6 @@ seek-bzip@^1.0.5: dependencies: commander "^2.8.1" -self-closing-tags@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/self-closing-tags/-/self-closing-tags-1.0.1.tgz#6c5fa497994bb826b484216916371accee490a5d" - integrity sha512-7t6hNbYMxM+VHXTgJmxwgZgLGktuXtVVD5AivWzNTdJBM4DBjnDKDzkf2SrNjihaArpeJYNjxkELBu1evI4lQA== - semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -12790,13 +12263,6 @@ shimmer@^1.2.0: resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337" integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== -shortid@^2.2.15: - version "2.2.16" - resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.16.tgz#b742b8f0cb96406fd391c76bfc18a67a57fe5608" - integrity sha512-Ugt+GIZqvGXCIItnsL+lvFJOiN7RYqlGy7QE41O3YC1xbNSeDGIRO7xg2JJXIAj1cAGnOeC1r7/T9pgrtQbv4g== - dependencies: - nanoid "^2.1.0" - side-channel@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" @@ -12961,11 +12427,6 @@ source-list-map@^2.0.1: resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== -source-map-js@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" - integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== - source-map-resolve@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" @@ -13019,11 +12480,6 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -sourcemap-codec@^1.4.8: - version "1.4.8" - resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" - integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== - spark-md5@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/spark-md5/-/spark-md5-3.0.1.tgz#83a0e255734f2ab4e5c466e5a2cfc9ba2aa2124d" @@ -13348,11 +12804,6 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" -striptags@^3.1.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/striptags/-/striptags-3.2.0.tgz#cc74a137db2de8b0b9a370006334161f7dd67052" - integrity sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw== - style-loader@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575" @@ -13452,14 +12903,7 @@ svelte-portal@^1.0.0: resolved "https://registry.yarnpkg.com/svelte-portal/-/svelte-portal-1.0.0.tgz#36a47c5578b1a4d9b4dc60fa32a904640ec4cdd3" integrity sha512-nHf+DS/jZ6jjnZSleBMSaZua9JlG5rZv9lOGKgJuaZStfevtjIlUJrkLc3vbV8QdBvPPVmvcjTlazAzfKu0v3Q== -svelte-spa-router@^3.0.5: - version "3.3.0" - resolved "https://registry.yarnpkg.com/svelte-spa-router/-/svelte-spa-router-3.3.0.tgz#2fc0967a49dc361dfe4d38dddad6e662eed5b42c" - integrity sha512-cwRNe7cxD43sCvSfEeaKiNZg3FCizGxeMcf7CPiWRP3jKXjEma3vxyyuDtPOam6nWbVxl9TNM3hlE/i87ZlqcQ== - dependencies: - regexparam "2.0.1" - -svelte@3.49.0, svelte@^3.46.2, svelte@^3.49.0: +svelte@3.49.0: version "3.49.0" resolved "https://registry.yarnpkg.com/svelte/-/svelte-3.49.0.tgz#5baee3c672306de1070c3b7888fc2204e36a4029" integrity sha512-+lmjic1pApJWDfPCpUUTc1m8azDqYCG1JN9YEngrx/hUyIcFJo6VZhj0A1Ai0wqoHcEIuQy+e9tk+4uDgdtsFA== @@ -13821,11 +13265,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= -to-gfm-code-block@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/to-gfm-code-block/-/to-gfm-code-block-0.1.1.tgz#25d045a5fae553189e9637b590900da732d8aa82" - integrity sha512-LQRZWyn8d5amUKnfR9A9Uu7x9ss7Re8peuWR2gkh1E+ildOfv2aF26JpuDg8JtvCduu5+hOrMIH+XstZtnagqg== - to-json-schema@0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/to-json-schema/-/to-json-schema-0.2.5.tgz#ef3c3f11ad64460dcfbdbafd0fd525d69d62a98f" @@ -14072,13 +13511,6 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typeof-article@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/typeof-article/-/typeof-article-0.1.1.tgz#9f07e733c3fbb646ffa9e61c08debacd460e06af" - integrity sha512-Vn42zdX3FhmUrzEmitX3iYyLb+Umwpmv8fkZRIknYh84lmdrwqZA5xYaoKiIj2Rc5i/5wcDrpUmZcbk1U51vTw== - dependencies: - kind-of "^3.1.0" - typeof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typeof/-/typeof-1.0.0.tgz#9c84403f2323ae5399167275497638ea1d2f2440" @@ -14089,11 +13521,6 @@ typescript@4.6.2: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4" integrity sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg== -typo-js@*: - version "1.2.2" - resolved "https://registry.yarnpkg.com/typo-js/-/typo-js-1.2.2.tgz#340484d81fe518e77c81a5a770162b14492f183b" - integrity sha512-C7pYBQK17EjSg8tVNY91KHdUt5Nf6FMJ+c3js076quPmBML57PmNMzAcIq/2kf/hSYtFABNDIYNYlJRl5BJhGw== - uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" @@ -14418,14 +13845,6 @@ vm2@3.9.6: acorn "^8.7.0" acorn-walk "^8.2.0" -vm2@^3.9.4: - version "3.9.10" - resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.10.tgz#c66543096b5c44c8861a6465805c23c7cc996a44" - integrity sha512-AuECTSvwu2OHLAZYhG716YzwodKCIJxB6u1zG7PgSQwIgAlEaoXH52bxdcvT8GkGjnYK7r7yWDW0m0sOsPuBjQ== - dependencies: - acorn "^8.7.0" - acorn-walk "^8.2.0" - vuvuzela@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/vuvuzela/-/vuvuzela-1.0.3.tgz#3be145e58271c73ca55279dd851f12a682114b0b" @@ -14979,11 +14398,6 @@ yauzl@^2.4.2: buffer-crc32 "~0.2.3" fd-slicer "~1.1.0" -year@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/year/-/year-0.2.1.tgz#4083ae520a318b23ec86037f3000cb892bdf9bb0" - integrity sha512-9GnJUZ0QM4OgXuOzsKNzTJ5EOkums1Xc+3YQXp+Q+UxFjf7zLucp9dQ8QMIft0Szs1E1hUiXFim1OYfEKFq97w== - ylru@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.3.2.tgz#0de48017473275a4cbdfc83a1eaf67c01af8a785" diff --git a/packages/types/src/documents/app/datasource.ts b/packages/types/src/documents/app/datasource.ts index 8a8419c7f5..efdc2ca1bd 100644 --- a/packages/types/src/documents/app/datasource.ts +++ b/packages/types/src/documents/app/datasource.ts @@ -2,75 +2,6 @@ import { Document } from "../document" import { SourceName } from "../../sdk" import { Table } from "./table" -export enum Operation { - CREATE = "CREATE", - READ = "READ", - UPDATE = "UPDATE", - DELETE = "DELETE", - BULK_CREATE = "BULK_CREATE", - CREATE_TABLE = "CREATE_TABLE", - UPDATE_TABLE = "UPDATE_TABLE", - DELETE_TABLE = "DELETE_TABLE", -} - -export enum SortDirection { - ASCENDING = "ASCENDING", - DESCENDING = "DESCENDING", -} - -export enum QueryTypes { - SQL = "sql", - JSON = "json", - FIELDS = "fields", -} - -export enum DatasourceFieldTypes { - STRING = "string", - LONGFORM = "longForm", - BOOLEAN = "boolean", - NUMBER = "number", - PASSWORD = "password", - LIST = "list", - OBJECT = "object", - JSON = "json", - FILE = "file", -} - -export enum SourceNames { - POSTGRES = "POSTGRES", - DYNAMODB = "DYNAMODB", - MONGODB = "MONGODB", - ELASTICSEARCH = "ELASTICSEARCH", - COUCHDB = "COUCHDB", - SQL_SERVER = "SQL_SERVER", - S3 = "S3", - AIRTABLE = "AIRTABLE", - MYSQL = "MYSQL", - ARANGODB = "ARANGODB", - REST = "REST", - ORACLE = "ORACLE", - GOOGLE_SHEETS = "GOOGLE_SHEETS", - FIRESTORE = "FIRESTORE", - REDIS = "REDIS", - SNOWFLAKE = "SNOWFLAKE", -} - -export enum IncludeRelationships { - INCLUDE = 1, - EXCLUDE = 0, -} - -export enum FilterTypes { - STRING = "string", - FUZZY = "fuzzy", - RANGE = "range", - EQUAL = "equal", - NOT_EQUAL = "notEqual", - EMPTY = "empty", - NOT_EMPTY = "notEmpty", - ONE_OF = "oneOf", -} - export interface Datasource extends Document { type: string name?: string diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 4a645c5266..4adb2fda97 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -1,5 +1,3 @@ export * from "./documents" -export * from "./sdk/events" -export * from "./sdk/licensing" export * from "./sdk" export * from "./api" From 860c75c0bc4e1478fca2514628923014d0cf1a55 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:01:56 +0100 Subject: [PATCH 026/162] Update name of types constant --- packages/server/src/api/controllers/screen.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/server/src/api/controllers/screen.js b/packages/server/src/api/controllers/screen.js index 1d5d876dc4..99d12d064c 100644 --- a/packages/server/src/api/controllers/screen.js +++ b/packages/server/src/api/controllers/screen.js @@ -2,7 +2,7 @@ const { getScreenParams, generateScreenID, getPluginParams, - DocumentTypes, + DocumentType, } = require("../../db/utils") const { AccessController } = require("@budibase/backend-core/roles") const { getAppDB } = require("@budibase/backend-core/context") @@ -60,7 +60,7 @@ exports.save = async ctx => { }) // Update the app metadata - const application = await db.get(DocumentTypes.APP_METADATA) + const application = await db.get(DocumentType.APP_METADATA) let usedPlugins = application.usedPlugins || [] requiredPlugins.forEach(plugin => { From a7c424550c75bb42f525d9c6d8395b946c8a6442 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:02:11 +0100 Subject: [PATCH 027/162] Simply logic around handling runtime reloading of custom components --- packages/client/src/stores/components.js | 66 ++++++++++++------------ 1 file changed, 32 insertions(+), 34 deletions(-) diff --git a/packages/client/src/stores/components.js b/packages/client/src/stores/components.js index 94dd16a957..8512a371d8 100644 --- a/packages/client/src/stores/components.js +++ b/packages/client/src/stores/components.js @@ -12,7 +12,7 @@ const budibasePrefix = "@budibase/standard-components/" const createComponentStore = () => { const store = writable({ customComponentManifest: {}, - componentsAwaitingConstructors: {}, + customComponentMap: {}, mountedComponents: {}, }) @@ -54,30 +54,37 @@ const createComponentStore = () => { const registerInstance = (id, instance) => { store.update(state => { - // If this is a custom component and does not have an implementation yet, - // store so we can reload this component later + // If this is a custom component, flag it so we can reload this component + // later if required const component = instance.component - let cac = state.componentsAwaitingConstructors - if (!getComponentConstructor(component)) { - if (!cac[component]) { - cac[component] = [] + if (component?.startsWith("plugin")) { + if (!state.customComponentMap[component]) { + state.customComponentMap[component] = [id] + } else { + state.customComponentMap[component].push(id) } - cac[component].push(id) } - return { - ...state, - componentsAwaitingConstructors: cac, - mountedComponents: { - ...state.mountedComponents, - [id]: instance, - }, - } + // Register to mounted components + state.mountedComponents[id] = instance + return state }) } const unregisterInstance = id => { store.update(state => { + // Remove from custom component map if required + const component = state.mountedComponents[id]?.instance?.component + let customComponentMap = state.customComponentMap + if (component?.startsWith("plugin")) { + customComponentMap[component] = customComponentMap[component].filter( + x => { + return x !== id + } + ) + } + + // Remove from mounted components delete state.mountedComponents[id] return state }) @@ -133,34 +140,25 @@ const createComponentStore = () => { return customComponentManifest?.[type]?.Component } - const registerCustomComponent = ({ Component, schema }) => { + const registerCustomComponent = ({ Component, schema, version }) => { if (!Component || !schema?.schema?.name) { return } - const componentName = `plugin/${schema.schema.name}/1.0.0` + const component = `plugin/${schema.schema.name}/${version}` store.update(state => { - if (!state.customComponentManifest) { - state.customComponentManifest = {} - } - state.customComponentManifest[componentName] = { - schema, + state.customComponentManifest[component] = { Component, + schema, + version, } return state }) - // Reload any mounted components which depend on this definition + // Reload any mounted instances of this custom component const state = get(store) - if (state.componentsAwaitingConstructors[componentName]?.length) { - state.componentsAwaitingConstructors[componentName].forEach(id => { - const instance = state.mountedComponents[id] - if (instance) { - instance.reload() - } - }) - store.update(state => { - delete state.componentsAwaitingConstructors[componentName] - return state + if (state.customComponentMap[component]?.length) { + state.customComponentMap[component].forEach(id => { + state.mountedComponents[id]?.reload() }) } } From 233d5e190c2c27a91e8c0d97cda3dacabd115e20 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:34:02 +0100 Subject: [PATCH 028/162] Use friendly name in new component panel if available --- .../[componentId]/new/_components/NewComponentPanel.svelte | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 a5d77c32ca..b0cd544977 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 @@ -58,7 +58,10 @@ enrichedStructure.push({ name: "Custom components", isCategory: true, - children: customComponents.map(x => definitions[x]), + children: customComponents.map(x => ({ + ...definitions[x], + name: definitions[x].friendlyName || definitions[x].name, + })), }) } From 83c072fe48b6e63bc0bb41c48a39b48bba86ca3d Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:34:16 +0100 Subject: [PATCH 029/162] Show success after uploading plugin --- .../src/pages/builder/portal/settings/organisation.svelte | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/builder/src/pages/builder/portal/settings/organisation.svelte b/packages/builder/src/pages/builder/portal/settings/organisation.svelte index d34442f886..d52bd66d47 100644 --- a/packages/builder/src/pages/builder/portal/settings/organisation.svelte +++ b/packages/builder/src/pages/builder/portal/settings/organisation.svelte @@ -39,6 +39,7 @@ let data = new FormData() data.append("file", $values.logo) await API.uploadPlugin(data) + notifications.success("Plugin uploaded successfully") } catch (error) { notifications.error("Error uploading logo") } From b549fe114b5fcc3f1394006e4b0ebdf88fe57951 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:34:44 +0100 Subject: [PATCH 030/162] Remove uncecessary calls to loadBudibase when registering a plugin at runtime --- packages/client/src/index.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/client/src/index.js b/packages/client/src/index.js index bef3ab9c12..a795d8d2d9 100644 --- a/packages/client/src/index.js +++ b/packages/client/src/index.js @@ -40,17 +40,17 @@ const loadBudibase = () => { devToolsStore.actions.setEnabled(enableDevTools) // Register any custom components - window.registerCustomComponent = plugin => { - componentStore.actions.registerCustomComponent(plugin) - console.log("registered!") - loadBudibase() - } if (window["##BUDIBASE_CUSTOM_COMPONENTS##"]) { window["##BUDIBASE_CUSTOM_COMPONENTS##"].forEach(component => { componentStore.actions.registerCustomComponent(component) }) } + // Make a callback available for custom component bundles to register + // themselves at runtime + window.registerCustomComponent = + componentStore.actions.registerCustomComponent + // Create app if one hasn't been created yet if (!app) { app = new ClientApp({ From e9fc30afda1d2975eccc45495c4c4c401e53dbcb Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 14:41:37 +0100 Subject: [PATCH 031/162] Overwrite existing plugins of the same name and version --- packages/server/src/api/controllers/plugin.ts | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/server/src/api/controllers/plugin.ts b/packages/server/src/api/controllers/plugin.ts index f76d2871b0..4afa59cd3a 100644 --- a/packages/server/src/api/controllers/plugin.ts +++ b/packages/server/src/api/controllers/plugin.ts @@ -32,19 +32,18 @@ export async function upload(ctx: any) { } const jsFileName = jsFile.name const pluginId = generatePluginID(name, version) - let existing + + // overwrite existing docs entirely if they exist + let rev try { - existing = await db.get(pluginId) + const existing = await db.get(pluginId) + rev = existing._rev } catch (err) { - existing = null - } - if (existing) { - throw new Error( - `Plugin already exists: name: ${name}, version: ${version}` - ) + rev = null } const doc = { _id: pluginId, + _rev: rev, name, version, description, From 449905116eeb0eb10622e1ab5e65e64d8285661d Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 12 Aug 2022 16:19:29 +0100 Subject: [PATCH 032/162] Fix rev when uploading a new plugin --- packages/server/src/api/controllers/plugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/api/controllers/plugin.ts b/packages/server/src/api/controllers/plugin.ts index 4afa59cd3a..6b9a2f8803 100644 --- a/packages/server/src/api/controllers/plugin.ts +++ b/packages/server/src/api/controllers/plugin.ts @@ -39,7 +39,7 @@ export async function upload(ctx: any) { const existing = await db.get(pluginId) rev = existing._rev } catch (err) { - rev = null + rev = undefined } const doc = { _id: pluginId, From 97466f183bb171f8f832c7a30cd2a7aeadef4aee Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 12 Aug 2022 17:03:06 +0100 Subject: [PATCH 033/162] Making integrations more like what custom integrations look like (to simplify integration). --- .../server/src/api/controllers/integration.js | 8 +- packages/server/src/api/controllers/plugin.ts | 24 +- packages/server/src/integrations/airtable.ts | 250 +++--- packages/server/src/integrations/arangodb.ts | 182 ++-- packages/server/src/integrations/couchdb.ts | 180 ++-- packages/server/src/integrations/dynamodb.ts | 424 +++++----- .../server/src/integrations/elasticsearch.ts | 266 +++--- packages/server/src/integrations/firebase.ts | 328 ++++---- .../server/src/integrations/googlesheets.ts | 735 ++++++++--------- packages/server/src/integrations/index.ts | 45 +- .../src/integrations/microsoftSqlServer.ts | 548 ++++++------ packages/server/src/integrations/mongodb.ts | 574 +++++++------ packages/server/src/integrations/mysql.ts | 487 ++++++----- packages/server/src/integrations/oracle.ts | 779 +++++++++--------- packages/server/src/integrations/postgres.ts | 574 +++++++------ packages/server/src/integrations/redis.ts | 258 +++--- packages/server/src/integrations/rest.ts | 657 ++++++++------- packages/server/src/integrations/s3.ts | 139 ++-- packages/server/src/integrations/snowflake.ts | 170 ++-- packages/types/src/documents/index.ts | 1 + packages/types/src/documents/plugin/index.ts | 4 + 21 files changed, 3297 insertions(+), 3336 deletions(-) create mode 100644 packages/types/src/documents/plugin/index.ts diff --git a/packages/server/src/api/controllers/integration.js b/packages/server/src/api/controllers/integration.js index cc9efac93a..ae9be7e6fe 100644 --- a/packages/server/src/api/controllers/integration.js +++ b/packages/server/src/api/controllers/integration.js @@ -1,12 +1,11 @@ -const { cloneDeep } = require("lodash") -const { definitions } = require("../../integrations") +const { getDefinitions } = require("../../integrations") const { SourceName } = require("@budibase/types") const googlesheets = require("../../integrations/googlesheets") const { featureFlags } = require("@budibase/backend-core") exports.fetch = async function (ctx) { ctx.status = 200 - const defs = cloneDeep(definitions) + const defs = await getDefinitions() // for google sheets integration google verification if (featureFlags.isEnabled(featureFlags.FeatureFlag.GOOGLE_SHEETS)) { @@ -17,6 +16,7 @@ exports.fetch = async function (ctx) { } exports.find = async function (ctx) { + const defs = await getDefinitions() ctx.status = 200 - ctx.body = definitions[ctx.params.type] + ctx.body = defs[ctx.params.type] } diff --git a/packages/server/src/api/controllers/plugin.ts b/packages/server/src/api/controllers/plugin.ts index f76d2871b0..218d59127c 100644 --- a/packages/server/src/api/controllers/plugin.ts +++ b/packages/server/src/api/controllers/plugin.ts @@ -3,6 +3,22 @@ import { extractPluginTarball } from "../../utilities/fileSystem" import { getGlobalDB } from "@budibase/backend-core/tenancy" import { generatePluginID, getPluginParams } from "../../db/utils" import { uploadDirectory } from "@budibase/backend-core/objectStore" +import { PluginType } from "@budibase/types" + +export async function getPlugins(type?: PluginType) { + const db = getGlobalDB() + const response = await db.allDocs( + getPluginParams(null, { + include_docs: true, + }) + ) + const plugins = response.rows.map((row: any) => row.doc) + if (type) { + return plugins.filter((plugin: any) => plugin.schema?.type === type) + } else { + return plugins + } +} export async function upload(ctx: any) { const plugins = @@ -68,13 +84,7 @@ export async function upload(ctx: any) { } export async function fetch(ctx: any) { - const db = getGlobalDB() - const response = await db.allDocs( - getPluginParams(null, { - include_docs: true, - }) - ) - ctx.body = response.rows.map((row: any) => row.doc) + ctx.body = await getPlugins() } export async function destroy(ctx: any) {} diff --git a/packages/server/src/integrations/airtable.ts b/packages/server/src/integrations/airtable.ts index e4c941b21c..1f56f0619b 100644 --- a/packages/server/src/integrations/airtable.ts +++ b/packages/server/src/integrations/airtable.ts @@ -5,146 +5,144 @@ import { IntegrationBase, } from "@budibase/types" -module AirtableModule { - const Airtable = require("airtable") +const Airtable = require("airtable") - interface AirtableConfig { - apiKey: string - base: string - } +interface AirtableConfig { + apiKey: string + base: string +} - const SCHEMA: Integration = { - docs: "https://airtable.com/api", - description: - "Airtable is a spreadsheet-database hybrid, with the features of a database but applied to a spreadsheet.", - friendlyName: "Airtable", - type: "Spreadsheet", - datasource: { - apiKey: { - type: DatasourceFieldType.PASSWORD, - default: "enter api key", - required: true, - }, - base: { - type: DatasourceFieldType.STRING, - default: "mybase", - required: true, +const SCHEMA: Integration = { + docs: "https://airtable.com/api", + description: + "Airtable is a spreadsheet-database hybrid, with the features of a database but applied to a spreadsheet.", + friendlyName: "Airtable", + type: "Spreadsheet", + datasource: { + apiKey: { + type: DatasourceFieldType.PASSWORD, + default: "enter api key", + required: true, + }, + base: { + type: DatasourceFieldType.STRING, + default: "mybase", + required: true, + }, + }, + query: { + create: { + type: QueryType.FIELDS, + customisable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, }, }, - query: { - create: { - type: QueryType.FIELDS, - customisable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, + read: { + type: QueryType.FIELDS, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, }, - }, - read: { - type: QueryType.FIELDS, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - view: { - type: DatasourceFieldType.STRING, - required: true, - }, - numRecords: { - type: DatasourceFieldType.NUMBER, - default: 10, - }, + view: { + type: DatasourceFieldType.STRING, + required: true, }, - }, - update: { - type: QueryType.FIELDS, - customisable: true, - fields: { - id: { - display: "Record ID", - type: DatasourceFieldType.STRING, - required: true, - }, - table: { - type: DatasourceFieldType.STRING, - required: true, - }, + numRecords: { + type: DatasourceFieldType.NUMBER, + default: 10, }, }, - delete: { - type: QueryType.JSON, - }, }, + update: { + type: QueryType.FIELDS, + customisable: true, + fields: { + id: { + display: "Record ID", + type: DatasourceFieldType.STRING, + required: true, + }, + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + delete: { + type: QueryType.JSON, + }, + }, +} + +class AirtableIntegration implements IntegrationBase { + private config: AirtableConfig + private client: any + + constructor(config: AirtableConfig) { + this.config = config + this.client = new Airtable(config).base(config.base) } - class AirtableIntegration implements IntegrationBase { - private config: AirtableConfig - private client: any + async create(query: { table: any; json: any }) { + const { table, json } = query - constructor(config: AirtableConfig) { - this.config = config - this.client = new Airtable(config).base(config.base) - } - - async create(query: { table: any; json: any }) { - const { table, json } = query - - try { - return await this.client(table).create([ - { - fields: json, - }, - ]) - } catch (err) { - console.error("Error writing to airtable", err) - throw err - } - } - - async read(query: { table: any; numRecords: any; view: any }) { - try { - const records = await this.client(query.table) - .select({ maxRecords: query.numRecords || 10, view: query.view }) - .firstPage() - // @ts-ignore - return records.map(({ fields }) => fields) - } catch (err) { - console.error("Error writing to airtable", err) - return [] - } - } - - async update(query: { table: any; id: any; json: any }) { - const { table, id, json } = query - - try { - return await this.client(table).update([ - { - id, - fields: json, - }, - ]) - } catch (err) { - console.error("Error writing to airtable", err) - throw err - } - } - - async delete(query: { table: any; ids: any }) { - try { - return await this.client(query.table).destroy(query.ids) - } catch (err) { - console.error("Error writing to airtable", err) - throw err - } + try { + return await this.client(table).create([ + { + fields: json, + }, + ]) + } catch (err) { + console.error("Error writing to airtable", err) + throw err } } - module.exports = { - schema: SCHEMA, - integration: AirtableIntegration, + async read(query: { table: any; numRecords: any; view: any }) { + try { + const records = await this.client(query.table) + .select({ maxRecords: query.numRecords || 10, view: query.view }) + .firstPage() + // @ts-ignore + return records.map(({ fields }) => fields) + } catch (err) { + console.error("Error writing to airtable", err) + return [] + } + } + + async update(query: { table: any; id: any; json: any }) { + const { table, id, json } = query + + try { + return await this.client(table).update([ + { + id, + fields: json, + }, + ]) + } catch (err) { + console.error("Error writing to airtable", err) + throw err + } + } + + async delete(query: { table: any; ids: any }) { + try { + return await this.client(query.table).destroy(query.ids) + } catch (err) { + console.error("Error writing to airtable", err) + throw err + } } } + +export default { + schema: SCHEMA, + integration: AirtableIntegration, +} diff --git a/packages/server/src/integrations/arangodb.ts b/packages/server/src/integrations/arangodb.ts index 968197474a..6df96501a4 100644 --- a/packages/server/src/integrations/arangodb.ts +++ b/packages/server/src/integrations/arangodb.ts @@ -5,106 +5,104 @@ import { IntegrationBase, } from "@budibase/types" -module ArangoModule { - const { Database, aql } = require("arangojs") +const { Database, aql } = require("arangojs") - interface ArangodbConfig { - url: string - username: string - password: string - databaseName: string - collection: string - } +interface ArangodbConfig { + url: string + username: string + password: string + databaseName: string + collection: string +} - const SCHEMA: Integration = { - docs: "https://github.com/arangodb/arangojs", - friendlyName: "ArangoDB", - type: "Non-relational", - description: - "ArangoDB is a scalable open-source multi-model database natively supporting graph, document and search. All supported data models & access patterns can be combined in queries allowing for maximal flexibility. ", - datasource: { - url: { - type: DatasourceFieldType.STRING, - default: "http://localhost:8529", - required: true, - }, - username: { - type: DatasourceFieldType.STRING, - default: "root", - required: true, - }, - password: { - type: DatasourceFieldType.PASSWORD, - required: true, - }, - databaseName: { - type: DatasourceFieldType.STRING, - default: "_system", - required: true, - }, - collection: { - type: DatasourceFieldType.STRING, - required: true, - }, +const SCHEMA: Integration = { + docs: "https://github.com/arangodb/arangojs", + friendlyName: "ArangoDB", + type: "Non-relational", + description: + "ArangoDB is a scalable open-source multi-model database natively supporting graph, document and search. All supported data models & access patterns can be combined in queries allowing for maximal flexibility. ", + datasource: { + url: { + type: DatasourceFieldType.STRING, + default: "http://localhost:8529", + required: true, }, - query: { - read: { - type: QueryType.SQL, - }, - create: { - type: QueryType.JSON, - }, + username: { + type: DatasourceFieldType.STRING, + default: "root", + required: true, }, + password: { + type: DatasourceFieldType.PASSWORD, + required: true, + }, + databaseName: { + type: DatasourceFieldType.STRING, + default: "_system", + required: true, + }, + collection: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + query: { + read: { + type: QueryType.SQL, + }, + create: { + type: QueryType.JSON, + }, + }, +} + +class ArangoDBIntegration implements IntegrationBase { + private config: ArangodbConfig + private client: any + + constructor(config: ArangodbConfig) { + const newConfig = { + auth: { + username: config.username, + password: config.password, + }, + } + + this.config = config + this.client = new Database(newConfig) } - class ArangoDBIntegration implements IntegrationBase { - private config: ArangodbConfig - private client: any - - constructor(config: ArangodbConfig) { - const newConfig = { - auth: { - username: config.username, - password: config.password, - }, - } - - this.config = config - this.client = new Database(newConfig) - } - - async read(query: { sql: any }) { - try { - const result = await this.client.query(query.sql) - return result.all() - } catch (err) { - // @ts-ignore - console.error("Error querying arangodb", err.message) - throw err - } finally { - this.client.close() - } - } - - async create(query: { json: any }) { - const clc = this.client.collection(this.config.collection) - try { - const result = await this.client.query( - aql`INSERT ${query.json} INTO ${clc} RETURN NEW` - ) - return result.all() - } catch (err) { - // @ts-ignore - console.error("Error querying arangodb", err.message) - throw err - } finally { - this.client.close() - } + async read(query: { sql: any }) { + try { + const result = await this.client.query(query.sql) + return result.all() + } catch (err) { + // @ts-ignore + console.error("Error querying arangodb", err.message) + throw err + } finally { + this.client.close() } } - module.exports = { - schema: SCHEMA, - integration: ArangoDBIntegration, + async create(query: { json: any }) { + const clc = this.client.collection(this.config.collection) + try { + const result = await this.client.query( + aql`INSERT ${query.json} INTO ${clc} RETURN NEW` + ) + return result.all() + } catch (err) { + // @ts-ignore + console.error("Error querying arangodb", err.message) + throw err + } finally { + this.client.close() + } } } + +export default { + schema: SCHEMA, + integration: ArangoDBIntegration, +} diff --git a/packages/server/src/integrations/couchdb.ts b/packages/server/src/integrations/couchdb.ts index c23593dbd4..67be21c9d1 100644 --- a/packages/server/src/integrations/couchdb.ts +++ b/packages/server/src/integrations/couchdb.ts @@ -5,109 +5,103 @@ import { IntegrationBase, } from "@budibase/types" -module CouchDBModule { - const PouchDB = require("pouchdb") +const PouchDB = require("pouchdb") - interface CouchDBConfig { - url: string - database: string - } +interface CouchDBConfig { + url: string + database: string +} - const SCHEMA: Integration = { - docs: "https://docs.couchdb.org/en/stable/", - friendlyName: "CouchDB", - type: "Non-relational", - description: - "Apache CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang.", - datasource: { - url: { - type: DatasourceFieldType.STRING, - required: true, - default: "http://localhost:5984", - }, - database: { - type: DatasourceFieldType.STRING, - required: true, - }, +const SCHEMA: Integration = { + docs: "https://docs.couchdb.org/en/stable/", + friendlyName: "CouchDB", + type: "Non-relational", + description: + "Apache CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang.", + datasource: { + url: { + type: DatasourceFieldType.STRING, + required: true, + default: "http://localhost:5984", }, - query: { - create: { - type: QueryType.JSON, - }, - read: { - type: QueryType.JSON, - }, - update: { - type: QueryType.JSON, - }, - delete: { - type: QueryType.FIELDS, - fields: { - id: { - type: DatasourceFieldType.STRING, - required: true, - }, + database: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + query: { + create: { + type: QueryType.JSON, + }, + read: { + type: QueryType.JSON, + }, + update: { + type: QueryType.JSON, + }, + delete: { + type: QueryType.FIELDS, + fields: { + id: { + type: DatasourceFieldType.STRING, + required: true, }, }, }, + }, +} + +class CouchDBIntegration implements IntegrationBase { + private config: CouchDBConfig + private readonly client: any + + constructor(config: CouchDBConfig) { + this.config = config + this.client = new PouchDB(`${config.url}/${config.database}`) } - class CouchDBIntegration implements IntegrationBase { - private config: CouchDBConfig - private readonly client: any - - constructor(config: CouchDBConfig) { - this.config = config - this.client = new PouchDB(`${config.url}/${config.database}`) - } - - async query( - command: string, - errorMsg: string, - query: { json?: object; id?: string } - ) { - try { - const response = await this.client[command](query.id || query.json) - await this.client.close() - return response - } catch (err) { - console.error(errorMsg, err) - throw err - } - } - - async create(query: { json: object }) { - return this.query("post", "Error writing to couchDB", query) - } - - async read(query: { json: object }) { - const result = await this.query("allDocs", "Error querying couchDB", { - json: { - include_docs: true, - ...query.json, - }, - }) - return result.rows.map((row: { doc: object }) => row.doc) - } - - async update(query: { json: object }) { - return this.query("put", "Error updating couchDB document", query) - } - - async delete(query: { id: string }) { - const doc = await this.query( - "get", - "Cannot find doc to be deleted", - query - ) - return this.query("remove", "Error deleting couchDB document", { - json: doc, - }) + async query( + command: string, + errorMsg: string, + query: { json?: object; id?: string } + ) { + try { + const response = await this.client[command](query.id || query.json) + await this.client.close() + return response + } catch (err) { + console.error(errorMsg, err) + throw err } } - module.exports = { - schema: SCHEMA, - integration: CouchDBIntegration, + async create(query: { json: object }) { + return this.query("post", "Error writing to couchDB", query) + } + + async read(query: { json: object }) { + const result = await this.query("allDocs", "Error querying couchDB", { + json: { + include_docs: true, + ...query.json, + }, + }) + return result.rows.map((row: { doc: object }) => row.doc) + } + + async update(query: { json: object }) { + return this.query("put", "Error updating couchDB document", query) + } + + async delete(query: { id: string }) { + const doc = await this.query("get", "Cannot find doc to be deleted", query) + return this.query("remove", "Error deleting couchDB document", { + json: doc, + }) } } + +export default { + schema: SCHEMA, + integration: CouchDBIntegration, +} diff --git a/packages/server/src/integrations/dynamodb.ts b/packages/server/src/integrations/dynamodb.ts index 5321da4791..8dea6c6213 100644 --- a/packages/server/src/integrations/dynamodb.ts +++ b/packages/server/src/integrations/dynamodb.ts @@ -5,228 +5,226 @@ import { IntegrationBase, } from "@budibase/types" -module DynamoModule { - const AWS = require("aws-sdk") - const { AWS_REGION } = require("../db/dynamoClient") +const AWS = require("aws-sdk") +const { AWS_REGION } = require("../db/dynamoClient") - interface DynamoDBConfig { - region: string - accessKeyId: string - secretAccessKey: string - endpoint: string - } +interface DynamoDBConfig { + region: string + accessKeyId: string + secretAccessKey: string + endpoint: string +} - const SCHEMA: Integration = { - docs: "https://github.com/dabit3/dynamodb-documentclient-cheat-sheet", - description: - "Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.", - friendlyName: "DynamoDB", - type: "Non-relational", - datasource: { - region: { - type: DatasourceFieldType.STRING, - required: true, - default: "us-east-1", - }, - accessKeyId: { - type: DatasourceFieldType.PASSWORD, - required: true, - }, - secretAccessKey: { - type: DatasourceFieldType.PASSWORD, - required: true, - }, - endpoint: { - type: DatasourceFieldType.STRING, - required: false, - default: "https://dynamodb.us-east-1.amazonaws.com", - }, +const SCHEMA: Integration = { + docs: "https://github.com/dabit3/dynamodb-documentclient-cheat-sheet", + description: + "Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.", + friendlyName: "DynamoDB", + type: "Non-relational", + datasource: { + region: { + type: DatasourceFieldType.STRING, + required: true, + default: "us-east-1", }, - query: { - create: { - type: QueryType.FIELDS, - customisable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - read: { - type: QueryType.FIELDS, - customisable: true, - readable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - index: { - type: DatasourceFieldType.STRING, - }, - }, - }, - scan: { - type: QueryType.FIELDS, - customisable: true, - readable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - index: { - type: DatasourceFieldType.STRING, - }, - }, - }, - describe: { - type: QueryType.FIELDS, - customisable: true, - readable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - get: { - type: QueryType.FIELDS, - customisable: true, - readable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - update: { - type: QueryType.FIELDS, - customisable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - delete: { - type: QueryType.FIELDS, - customisable: true, - fields: { - table: { - type: DatasourceFieldType.STRING, - required: true, - }, + accessKeyId: { + type: DatasourceFieldType.PASSWORD, + required: true, + }, + secretAccessKey: { + type: DatasourceFieldType.PASSWORD, + required: true, + }, + endpoint: { + type: DatasourceFieldType.STRING, + required: false, + default: "https://dynamodb.us-east-1.amazonaws.com", + }, + }, + query: { + create: { + type: QueryType.FIELDS, + customisable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, }, }, }, + read: { + type: QueryType.FIELDS, + customisable: true, + readable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + index: { + type: DatasourceFieldType.STRING, + }, + }, + }, + scan: { + type: QueryType.FIELDS, + customisable: true, + readable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + index: { + type: DatasourceFieldType.STRING, + }, + }, + }, + describe: { + type: QueryType.FIELDS, + customisable: true, + readable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + get: { + type: QueryType.FIELDS, + customisable: true, + readable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + update: { + type: QueryType.FIELDS, + customisable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + delete: { + type: QueryType.FIELDS, + customisable: true, + fields: { + table: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + }, +} + +class DynamoDBIntegration implements IntegrationBase { + private config: DynamoDBConfig + private client: any + + constructor(config: DynamoDBConfig) { + this.config = config + if (this.config.endpoint && !this.config.endpoint.includes("localhost")) { + this.connect() + } + let options = { + correctClockSkew: true, + region: this.config.region || AWS_REGION, + endpoint: config.endpoint ? config.endpoint : undefined, + } + this.client = new AWS.DynamoDB.DocumentClient(options) } - class DynamoDBIntegration implements IntegrationBase { - private config: DynamoDBConfig - private client: any - - constructor(config: DynamoDBConfig) { - this.config = config - if (this.config.endpoint && !this.config.endpoint.includes("localhost")) { - this.connect() - } - let options = { - correctClockSkew: true, - region: this.config.region || AWS_REGION, - endpoint: config.endpoint ? config.endpoint : undefined, - } - this.client = new AWS.DynamoDB.DocumentClient(options) - } - - end() { - this.disconnect() - } - - connect() { - AWS.config.update(this.config) - } - - disconnect() { - AWS.config.update({ - secretAccessKey: undefined, - accessKeyId: undefined, - region: AWS_REGION, - }) - } - - async create(query: { table: string; json: object }) { - const params = { - TableName: query.table, - ...query.json, - } - return this.client.put(params).promise() - } - - async read(query: { table: string; json: object; index: null | string }) { - const params = { - TableName: query.table, - IndexName: query.index ? query.index : undefined, - ...query.json, - } - const response = await this.client.query(params).promise() - if (response.Items) { - return response.Items - } - return response - } - - async scan(query: { table: string; json: object; index: null | string }) { - const params = { - TableName: query.table, - IndexName: query.index ? query.index : undefined, - ...query.json, - } - const response = await this.client.scan(params).promise() - if (response.Items) { - return response.Items - } - return response - } - - async describe(query: { table: string }) { - const params = { - TableName: query.table, - } - return new AWS.DynamoDB().describeTable(params).promise() - } - - async get(query: { table: string; json: object }) { - const params = { - TableName: query.table, - ...query.json, - } - return this.client.get(params).promise() - } - - async update(query: { table: string; json: object }) { - const params = { - TableName: query.table, - ...query.json, - } - return this.client.update(params).promise() - } - - async delete(query: { table: string; json: object }) { - const params = { - TableName: query.table, - ...query.json, - } - return this.client.delete(params).promise() - } + end() { + this.disconnect() } - module.exports = { - schema: SCHEMA, - integration: DynamoDBIntegration, + connect() { + AWS.config.update(this.config) + } + + disconnect() { + AWS.config.update({ + secretAccessKey: undefined, + accessKeyId: undefined, + region: AWS_REGION, + }) + } + + async create(query: { table: string; json: object }) { + const params = { + TableName: query.table, + ...query.json, + } + return this.client.put(params).promise() + } + + async read(query: { table: string; json: object; index: null | string }) { + const params = { + TableName: query.table, + IndexName: query.index ? query.index : undefined, + ...query.json, + } + const response = await this.client.query(params).promise() + if (response.Items) { + return response.Items + } + return response + } + + async scan(query: { table: string; json: object; index: null | string }) { + const params = { + TableName: query.table, + IndexName: query.index ? query.index : undefined, + ...query.json, + } + const response = await this.client.scan(params).promise() + if (response.Items) { + return response.Items + } + return response + } + + async describe(query: { table: string }) { + const params = { + TableName: query.table, + } + return new AWS.DynamoDB().describeTable(params).promise() + } + + async get(query: { table: string; json: object }) { + const params = { + TableName: query.table, + ...query.json, + } + return this.client.get(params).promise() + } + + async update(query: { table: string; json: object }) { + const params = { + TableName: query.table, + ...query.json, + } + return this.client.update(params).promise() + } + + async delete(query: { table: string; json: object }) { + const params = { + TableName: query.table, + ...query.json, + } + return this.client.delete(params).promise() } } + +export default { + schema: SCHEMA, + integration: DynamoDBIntegration, +} diff --git a/packages/server/src/integrations/elasticsearch.ts b/packages/server/src/integrations/elasticsearch.ts index 5c61545ecd..14887a743d 100644 --- a/packages/server/src/integrations/elasticsearch.ts +++ b/packages/server/src/integrations/elasticsearch.ts @@ -5,151 +5,149 @@ import { IntegrationBase, } from "@budibase/types" -module ElasticsearchModule { - const { Client } = require("@elastic/elasticsearch") +const { Client } = require("@elastic/elasticsearch") - interface ElasticsearchConfig { - url: string - } +interface ElasticsearchConfig { + url: string +} - const SCHEMA: Integration = { - docs: "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html", - description: - "Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.", - friendlyName: "ElasticSearch", - type: "Non-relational", - datasource: { - url: { - type: DatasourceFieldType.STRING, - required: true, - default: "http://localhost:9200", - }, +const SCHEMA: Integration = { + docs: "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html", + description: + "Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.", + friendlyName: "ElasticSearch", + type: "Non-relational", + datasource: { + url: { + type: DatasourceFieldType.STRING, + required: true, + default: "http://localhost:9200", }, - query: { - create: { - type: QueryType.FIELDS, - customisable: true, - fields: { - index: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - read: { - type: QueryType.FIELDS, - customisable: true, - fields: { - index: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - update: { - type: QueryType.FIELDS, - customisable: true, - fields: { - id: { - type: DatasourceFieldType.STRING, - required: true, - }, - index: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - delete: { - type: QueryType.FIELDS, - fields: { - index: { - type: DatasourceFieldType.STRING, - required: true, - }, - id: { - type: DatasourceFieldType.STRING, - required: true, - }, + }, + query: { + create: { + type: QueryType.FIELDS, + customisable: true, + fields: { + index: { + type: DatasourceFieldType.STRING, + required: true, }, }, }, + read: { + type: QueryType.FIELDS, + customisable: true, + fields: { + index: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + update: { + type: QueryType.FIELDS, + customisable: true, + fields: { + id: { + type: DatasourceFieldType.STRING, + required: true, + }, + index: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + delete: { + type: QueryType.FIELDS, + fields: { + index: { + type: DatasourceFieldType.STRING, + required: true, + }, + id: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + }, +} + +class ElasticSearchIntegration implements IntegrationBase { + private config: ElasticsearchConfig + private client: any + + constructor(config: ElasticsearchConfig) { + this.config = config + this.client = new Client({ node: config.url }) } - class ElasticSearchIntegration implements IntegrationBase { - private config: ElasticsearchConfig - private client: any + async create(query: { index: string; json: object }) { + const { index, json } = query - constructor(config: ElasticsearchConfig) { - this.config = config - this.client = new Client({ node: config.url }) - } - - async create(query: { index: string; json: object }) { - const { index, json } = query - - try { - const result = await this.client.index({ - index, - body: json, - }) - return result.body - } catch (err) { - console.error("Error writing to elasticsearch", err) - throw err - } finally { - await this.client.close() - } - } - - async read(query: { index: string; json: object }) { - const { index, json } = query - try { - const result = await this.client.search({ - index: index, - body: json, - }) - return result.body.hits.hits.map(({ _source }: any) => _source) - } catch (err) { - console.error("Error querying elasticsearch", err) - throw err - } finally { - await this.client.close() - } - } - - async update(query: { id: string; index: string; json: object }) { - const { id, index, json } = query - try { - const result = await this.client.update({ - id, - index, - body: json, - }) - return result.body - } catch (err) { - console.error("Error querying elasticsearch", err) - throw err - } finally { - await this.client.close() - } - } - - async delete(query: object) { - try { - const result = await this.client.delete(query) - return result.body - } catch (err) { - console.error("Error deleting from elasticsearch", err) - throw err - } finally { - await this.client.close() - } + try { + const result = await this.client.index({ + index, + body: json, + }) + return result.body + } catch (err) { + console.error("Error writing to elasticsearch", err) + throw err + } finally { + await this.client.close() } } - module.exports = { - schema: SCHEMA, - integration: ElasticSearchIntegration, + async read(query: { index: string; json: object }) { + const { index, json } = query + try { + const result = await this.client.search({ + index: index, + body: json, + }) + return result.body.hits.hits.map(({ _source }: any) => _source) + } catch (err) { + console.error("Error querying elasticsearch", err) + throw err + } finally { + await this.client.close() + } + } + + async update(query: { id: string; index: string; json: object }) { + const { id, index, json } = query + try { + const result = await this.client.update({ + id, + index, + body: json, + }) + return result.body + } catch (err) { + console.error("Error querying elasticsearch", err) + throw err + } finally { + await this.client.close() + } + } + + async delete(query: object) { + try { + const result = await this.client.delete(query) + return result.body + } catch (err) { + console.error("Error deleting from elasticsearch", err) + throw err + } finally { + await this.client.close() + } } } + +export default { + schema: SCHEMA, + integration: ElasticSearchIntegration, +} diff --git a/packages/server/src/integrations/firebase.ts b/packages/server/src/integrations/firebase.ts index 1f82e9dafe..a82b3be782 100644 --- a/packages/server/src/integrations/firebase.ts +++ b/packages/server/src/integrations/firebase.ts @@ -6,184 +6,182 @@ import { } from "@budibase/types" import { Firestore, WhereFilterOp } from "@google-cloud/firestore" -module Firebase { - interface FirebaseConfig { - email: string - privateKey: string - projectId: string +interface FirebaseConfig { + email: string + privateKey: string + projectId: string +} + +const SCHEMA: Integration = { + docs: "https://firebase.google.com/docs/firestore/quickstart", + friendlyName: "Firestore", + type: "Non-relational", + description: + "Cloud Firestore is a flexible, scalable database for mobile, web, and server development from Firebase and Google Cloud.", + datasource: { + email: { + type: DatasourceFieldType.STRING, + required: true, + }, + privateKey: { + type: DatasourceFieldType.STRING, + required: true, + }, + projectId: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + query: { + create: { + type: QueryType.JSON, + }, + read: { + type: QueryType.JSON, + }, + update: { + type: QueryType.JSON, + }, + delete: { + type: QueryType.JSON, + }, + }, + extra: { + collection: { + displayName: "Collection", + type: DatasourceFieldType.STRING, + required: true, + }, + filterField: { + displayName: "Filter field", + type: DatasourceFieldType.STRING, + required: false, + }, + filter: { + displayName: "Filter comparison", + type: DatasourceFieldType.LIST, + required: false, + data: { + read: [ + "==", + "<", + "<=", + "!=", + ">=", + ">", + "array-contains", + "in", + "not-in", + "array-contains-any", + ], + }, + }, + filterValue: { + displayName: "Filter value", + type: DatasourceFieldType.STRING, + required: false, + }, + }, +} + +class FirebaseIntegration implements IntegrationBase { + private config: FirebaseConfig + private client: Firestore + + constructor(config: FirebaseConfig) { + this.config = config + this.client = new Firestore({ + projectId: config.projectId, + credentials: { + client_email: config.email, + private_key: config.privateKey?.replace(/\\n/g, "\n"), + }, + }) } - const SCHEMA: Integration = { - docs: "https://firebase.google.com/docs/firestore/quickstart", - friendlyName: "Firestore", - type: "Non-relational", - description: - "Cloud Firestore is a flexible, scalable database for mobile, web, and server development from Firebase and Google Cloud.", - datasource: { - email: { - type: DatasourceFieldType.STRING, - required: true, - }, - privateKey: { - type: DatasourceFieldType.STRING, - required: true, - }, - projectId: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - query: { - create: { - type: QueryType.JSON, - }, - read: { - type: QueryType.JSON, - }, - update: { - type: QueryType.JSON, - }, - delete: { - type: QueryType.JSON, - }, - }, - extra: { - collection: { - displayName: "Collection", - type: DatasourceFieldType.STRING, - required: true, - }, - filterField: { - displayName: "Filter field", - type: DatasourceFieldType.STRING, - required: false, - }, - filter: { - displayName: "Filter comparison", - type: DatasourceFieldType.LIST, - required: false, - data: { - read: [ - "==", - "<", - "<=", - "!=", - ">=", - ">", - "array-contains", - "in", - "not-in", - "array-contains-any", - ], - }, - }, - filterValue: { - displayName: "Filter value", - type: DatasourceFieldType.STRING, - required: false, - }, - }, + async create(query: { json: object; extra: { [key: string]: string } }) { + try { + const documentReference = this.client + .collection(query.extra.collection) + .doc() + await documentReference.set({ ...query.json, id: documentReference.id }) + const snapshot = await documentReference.get() + return snapshot.data() + } catch (err) { + console.error("Error writing to Firestore", err) + throw err + } } - class FirebaseIntegration implements IntegrationBase { - private config: FirebaseConfig - private client: Firestore - - constructor(config: FirebaseConfig) { - this.config = config - this.client = new Firestore({ - projectId: config.projectId, - credentials: { - client_email: config.email, - private_key: config.privateKey?.replace(/\\n/g, "\n"), - }, - }) - } - - async create(query: { json: object; extra: { [key: string]: string } }) { - try { - const documentReference = this.client - .collection(query.extra.collection) - .doc() - await documentReference.set({ ...query.json, id: documentReference.id }) - const snapshot = await documentReference.get() - return snapshot.data() - } catch (err) { - console.error("Error writing to Firestore", err) - throw err + async read(query: { json: object; extra: { [key: string]: string } }) { + try { + let snapshot + const collectionRef = this.client.collection(query.extra.collection) + if ( + query.extra.filterField && + query.extra.filter && + query.extra.filterValue + ) { + snapshot = await collectionRef + .where( + query.extra.filterField, + query.extra.filter as WhereFilterOp, + query.extra.filterValue + ) + .get() + } else { + snapshot = await collectionRef.get() } + const result: any[] = [] + snapshot.forEach(doc => result.push(doc.data())) + + return result + } catch (err) { + console.error("Error querying Firestore", err) + throw err } + } - async read(query: { json: object; extra: { [key: string]: string } }) { - try { - let snapshot - const collectionRef = this.client.collection(query.extra.collection) - if ( - query.extra.filterField && - query.extra.filter && - query.extra.filterValue - ) { - snapshot = await collectionRef - .where( - query.extra.filterField, - query.extra.filter as WhereFilterOp, - query.extra.filterValue - ) - .get() - } else { - snapshot = await collectionRef.get() - } - const result: any[] = [] - snapshot.forEach(doc => result.push(doc.data())) + async update(query: { + json: Record + extra: { [key: string]: string } + }) { + try { + await this.client + .collection(query.extra.collection) + .doc(query.json.id) + .update(query.json) - return result - } catch (err) { - console.error("Error querying Firestore", err) - throw err - } - } - - async update(query: { - json: Record - extra: { [key: string]: string } - }) { - try { + return ( await this.client .collection(query.extra.collection) .doc(query.json.id) - .update(query.json) - - return ( - await this.client - .collection(query.extra.collection) - .doc(query.json.id) - .get() - ).data() - } catch (err) { - console.error("Error writing to Firestore", err) - throw err - } - } - - async delete(query: { - json: { id: string } - extra: { [key: string]: string } - }) { - try { - await this.client - .collection(query.extra.collection) - .doc(query.json.id) - .delete() - return true - } catch (err) { - console.error("Error deleting from Firestore", err) - throw err - } + .get() + ).data() + } catch (err) { + console.error("Error writing to Firestore", err) + throw err } } - module.exports = { - schema: SCHEMA, - integration: FirebaseIntegration, + async delete(query: { + json: { id: string } + extra: { [key: string]: string } + }) { + try { + await this.client + .collection(query.extra.collection) + .doc(query.json.id) + .delete() + return true + } catch (err) { + console.error("Error deleting from Firestore", err) + throw err + } } } + +export default { + schema: SCHEMA, + integration: FirebaseIntegration, +} diff --git a/packages/server/src/integrations/googlesheets.ts b/packages/server/src/integrations/googlesheets.ts index 129ab485cd..675e28e159 100644 --- a/packages/server/src/integrations/googlesheets.ts +++ b/packages/server/src/integrations/googlesheets.ts @@ -13,409 +13,400 @@ import { DataSourceOperation, FieldTypes } from "../constants" import { GoogleSpreadsheet } from "google-spreadsheet" import env from "../environment" -module GoogleSheetsModule { - const { getGlobalDB } = require("@budibase/backend-core/tenancy") - const { getScopedConfig } = require("@budibase/backend-core/db") - const { Configs } = require("@budibase/backend-core/constants") - const fetch = require("node-fetch") +const { getGlobalDB } = require("@budibase/backend-core/tenancy") +const { getScopedConfig } = require("@budibase/backend-core/db") +const { Configs } = require("@budibase/backend-core/constants") +const fetch = require("node-fetch") - interface GoogleSheetsConfig { - spreadsheetId: string - auth: OAuthClientConfig - } +interface GoogleSheetsConfig { + spreadsheetId: string + auth: OAuthClientConfig +} - interface OAuthClientConfig { - appId: string - accessToken: string - refreshToken: string - } +interface OAuthClientConfig { + appId: string + accessToken: string + refreshToken: string +} - interface AuthTokenRequest { - client_id: string - client_secret: string - refresh_token: string - } +interface AuthTokenRequest { + client_id: string + client_secret: string + refresh_token: string +} - interface AuthTokenResponse { - access_token: string - } +interface AuthTokenResponse { + access_token: string +} - const SCHEMA: Integration = { - plus: true, - auth: { - type: "google", +const SCHEMA: Integration = { + plus: true, + auth: { + type: "google", + }, + relationships: false, + docs: "https://developers.google.com/sheets/api/quickstart/nodejs", + description: + "Create and collaborate on online spreadsheets in real-time and from any device. ", + friendlyName: "Google Sheets", + type: "Spreadsheet", + datasource: { + spreadsheetId: { + display: "Google Sheet URL", + type: DatasourceFieldType.STRING, + required: true, }, - relationships: false, - docs: "https://developers.google.com/sheets/api/quickstart/nodejs", - description: - "Create and collaborate on online spreadsheets in real-time and from any device. ", - friendlyName: "Google Sheets", - type: "Spreadsheet", - datasource: { - spreadsheetId: { - display: "Google Sheet URL", - type: DatasourceFieldType.STRING, - required: true, - }, - }, - query: { - create: { - type: QueryType.FIELDS, - fields: { - sheet: { - type: DatasourceFieldType.STRING, - required: true, - }, - row: { - type: QueryType.JSON, - required: true, - }, + }, + query: { + create: { + type: QueryType.FIELDS, + fields: { + sheet: { + type: DatasourceFieldType.STRING, + required: true, }, - }, - read: { - type: QueryType.FIELDS, - fields: { - sheet: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - update: { - type: QueryType.FIELDS, - fields: { - sheet: { - type: DatasourceFieldType.STRING, - required: true, - }, - rowIndex: { - type: DatasourceFieldType.STRING, - required: true, - }, - row: { - type: QueryType.JSON, - required: true, - }, - }, - }, - delete: { - type: QueryType.FIELDS, - fields: { - sheet: { - type: DatasourceFieldType.STRING, - required: true, - }, - rowIndex: { - type: DatasourceFieldType.NUMBER, - required: true, - }, + row: { + type: QueryType.JSON, + required: true, }, }, }, + read: { + type: QueryType.FIELDS, + fields: { + sheet: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + update: { + type: QueryType.FIELDS, + fields: { + sheet: { + type: DatasourceFieldType.STRING, + required: true, + }, + rowIndex: { + type: DatasourceFieldType.STRING, + required: true, + }, + row: { + type: QueryType.JSON, + required: true, + }, + }, + }, + delete: { + type: QueryType.FIELDS, + fields: { + sheet: { + type: DatasourceFieldType.STRING, + required: true, + }, + rowIndex: { + type: DatasourceFieldType.NUMBER, + required: true, + }, + }, + }, + }, +} + +class GoogleSheetsIntegration implements DatasourcePlus { + private readonly config: GoogleSheetsConfig + private client: any + public tables: Record = {} + public schemaErrors: Record = {} + + constructor(config: GoogleSheetsConfig) { + this.config = config + const spreadsheetId = this.cleanSpreadsheetUrl(this.config.spreadsheetId) + this.client = new GoogleSpreadsheet(spreadsheetId) } - class GoogleSheetsIntegration implements DatasourcePlus { - private readonly config: GoogleSheetsConfig - private client: any - public tables: Record = {} - public schemaErrors: Record = {} + getBindingIdentifier() { + return "" + } - constructor(config: GoogleSheetsConfig) { - this.config = config - const spreadsheetId = this.cleanSpreadsheetUrl(this.config.spreadsheetId) - this.client = new GoogleSpreadsheet(spreadsheetId) - } + getStringConcat(parts: string[]) { + return "" + } - getBindingIdentifier() { - return "" - } - - getStringConcat(parts: string[]) { - return "" - } - - /** - * Pull the spreadsheet ID out from a valid google sheets URL - * @param spreadsheetId - the URL or standard spreadsheetId of the google sheet - * @returns spreadsheet Id of the google sheet - */ - cleanSpreadsheetUrl(spreadsheetId: string) { - if (!spreadsheetId) { - throw new Error( - "You must set a spreadsheet ID in your configuration to fetch tables." - ) - } - const parts = spreadsheetId.split("/") - return parts.length > 5 ? parts[5] : spreadsheetId - } - - async fetchAccessToken( - payload: AuthTokenRequest - ): Promise { - const response = await fetch( - "https://www.googleapis.com/oauth2/v4/token", - { - method: "POST", - body: JSON.stringify({ - ...payload, - grant_type: "refresh_token", - }), - headers: { - "Content-Type": "application/json", - }, - } + /** + * Pull the spreadsheet ID out from a valid google sheets URL + * @param spreadsheetId - the URL or standard spreadsheetId of the google sheet + * @returns spreadsheet Id of the google sheet + */ + cleanSpreadsheetUrl(spreadsheetId: string) { + if (!spreadsheetId) { + throw new Error( + "You must set a spreadsheet ID in your configuration to fetch tables." ) + } + const parts = spreadsheetId.split("/") + return parts.length > 5 ? parts[5] : spreadsheetId + } - const json = await response.json() + async fetchAccessToken( + payload: AuthTokenRequest + ): Promise { + const response = await fetch("https://www.googleapis.com/oauth2/v4/token", { + method: "POST", + body: JSON.stringify({ + ...payload, + grant_type: "refresh_token", + }), + headers: { + "Content-Type": "application/json", + }, + }) - if (response.status !== 200) { - throw new Error( - `Error authenticating with google sheets. ${json.error_description}` + const json = await response.json() + + if (response.status !== 200) { + throw new Error( + `Error authenticating with google sheets. ${json.error_description}` + ) + } + + return json + } + + async connect() { + try { + // Initialise oAuth client + const db = getGlobalDB() + let googleConfig = await getScopedConfig(db, { + type: Configs.GOOGLE, + }) + + if (!googleConfig) { + googleConfig = { + clientID: env.GOOGLE_CLIENT_ID, + clientSecret: env.GOOGLE_CLIENT_SECRET, + } + } + + const oauthClient = new OAuth2Client({ + clientId: googleConfig.clientID, + clientSecret: googleConfig.clientSecret, + }) + + const tokenResponse = await this.fetchAccessToken({ + client_id: googleConfig.clientID, + client_secret: googleConfig.clientSecret, + refresh_token: this.config.auth.refreshToken, + }) + + oauthClient.setCredentials({ + refresh_token: this.config.auth.refreshToken, + access_token: tokenResponse.access_token, + }) + + this.client.useOAuth2Client(oauthClient) + await this.client.loadInfo() + } catch (err) { + console.error("Error connecting to google sheets", err) + throw err + } + } + + async buildSchema(datasourceId: string) { + await this.connect() + const sheets = await this.client.sheetsByIndex + const tables: Record = {} + for (let sheet of sheets) { + // must fetch rows to determine schema + await sheet.getRows() + // build schema + const schema: TableSchema = {} + + // build schema from headers + for (let header of sheet.headerValues) { + schema[header] = { + name: header, + type: FieldTypes.STRING, + } + } + + // create tables + tables[sheet.title] = { + _id: buildExternalTableId(datasourceId, sheet.title), + name: sheet.title, + primary: ["rowNumber"], + schema, + } + } + + this.tables = tables + } + + async query(json: QueryJson) { + const sheet = json.endpoint.entityId + + const handlers = { + [DataSourceOperation.CREATE]: () => + this.create({ sheet, row: json.body }), + [DataSourceOperation.READ]: () => this.read({ sheet }), + [DataSourceOperation.UPDATE]: () => + this.update({ + // exclude the header row and zero index + rowIndex: json.extra?.idFilter?.equal?.rowNumber - 2, + sheet, + row: json.body, + }), + [DataSourceOperation.DELETE]: () => + this.delete({ + // exclude the header row and zero index + rowIndex: json.extra?.idFilter?.equal?.rowNumber - 2, + sheet, + }), + [DataSourceOperation.CREATE_TABLE]: () => + this.createTable(json?.table?.name), + [DataSourceOperation.UPDATE_TABLE]: () => this.updateTable(json.table), + [DataSourceOperation.DELETE_TABLE]: () => + this.deleteTable(json?.table?.name), + } + + const internalQueryMethod = handlers[json.endpoint.operation] + + return await internalQueryMethod() + } + + buildRowObject(headers: string[], values: string[], rowNumber: number) { + const rowObject: { rowNumber: number; [key: string]: any } = { rowNumber } + for (let i = 0; i < headers.length; i++) { + rowObject._id = rowNumber + rowObject[headers[i]] = values[i] + } + return rowObject + } + + async createTable(name?: string) { + try { + await this.connect() + const sheet = await this.client.addSheet({ title: name }) + return sheet + } catch (err) { + console.error("Error creating new table in google sheets", err) + throw err + } + } + + async updateTable(table?: any) { + try { + await this.connect() + const sheet = await this.client.sheetsByTitle[table.name] + await sheet.loadHeaderRow() + + if (table._rename) { + const headers = [] + for (let header of sheet.headerValues) { + if (header === table._rename.old) { + headers.push(table._rename.updated) + } else { + headers.push(header) + } + } + await sheet.setHeaderRow(headers) + } else { + let newField = Object.keys(table.schema).find( + key => !sheet.headerValues.includes(key) + ) + await sheet.setHeaderRow([...sheet.headerValues, newField]) + } + } catch (err) { + console.error("Error updating table in google sheets", err) + throw err + } + } + + async deleteTable(sheet: any) { + try { + await this.connect() + const sheetToDelete = await this.client.sheetsByTitle[sheet] + return await sheetToDelete.delete() + } catch (err) { + console.error("Error deleting table in google sheets", err) + throw err + } + } + + async create(query: { sheet: string; row: any }) { + try { + await this.connect() + const sheet = await this.client.sheetsByTitle[query.sheet] + const rowToInsert = + typeof query.row === "string" ? JSON.parse(query.row) : query.row + const row = await sheet.addRow(rowToInsert) + return [ + this.buildRowObject(sheet.headerValues, row._rawData, row._rowNumber), + ] + } catch (err) { + console.error("Error writing to google sheets", err) + throw err + } + } + + async read(query: { sheet: string }) { + try { + await this.connect() + const sheet = await this.client.sheetsByTitle[query.sheet] + const rows = await sheet.getRows() + const headerValues = sheet.headerValues + const response = [] + for (let row of rows) { + response.push( + this.buildRowObject(headerValues, row._rawData, row._rowNumber) ) } - - return json + return response + } catch (err) { + console.error("Error reading from google sheets", err) + throw err } + } - async connect() { - try { - // Initialise oAuth client - const db = getGlobalDB() - let googleConfig = await getScopedConfig(db, { - type: Configs.GOOGLE, - }) - - if (!googleConfig) { - googleConfig = { - clientID: env.GOOGLE_CLIENT_ID, - clientSecret: env.GOOGLE_CLIENT_SECRET, - } - } - - const oauthClient = new OAuth2Client({ - clientId: googleConfig.clientID, - clientSecret: googleConfig.clientSecret, - }) - - const tokenResponse = await this.fetchAccessToken({ - client_id: googleConfig.clientID, - client_secret: googleConfig.clientSecret, - refresh_token: this.config.auth.refreshToken, - }) - - oauthClient.setCredentials({ - refresh_token: this.config.auth.refreshToken, - access_token: tokenResponse.access_token, - }) - - this.client.useOAuth2Client(oauthClient) - await this.client.loadInfo() - } catch (err) { - console.error("Error connecting to google sheets", err) - throw err - } - } - - async buildSchema(datasourceId: string) { - await this.connect() - const sheets = await this.client.sheetsByIndex - const tables: Record = {} - for (let sheet of sheets) { - // must fetch rows to determine schema - await sheet.getRows() - // build schema - const schema: TableSchema = {} - - // build schema from headers - for (let header of sheet.headerValues) { - schema[header] = { - name: header, - type: FieldTypes.STRING, - } - } - - // create tables - tables[sheet.title] = { - _id: buildExternalTableId(datasourceId, sheet.title), - name: sheet.title, - primary: ["rowNumber"], - schema, - } - } - - this.tables = tables - } - - async query(json: QueryJson) { - const sheet = json.endpoint.entityId - - const handlers = { - [DataSourceOperation.CREATE]: () => - this.create({ sheet, row: json.body }), - [DataSourceOperation.READ]: () => this.read({ sheet }), - [DataSourceOperation.UPDATE]: () => - this.update({ - // exclude the header row and zero index - rowIndex: json.extra?.idFilter?.equal?.rowNumber - 2, - sheet, - row: json.body, - }), - [DataSourceOperation.DELETE]: () => - this.delete({ - // exclude the header row and zero index - rowIndex: json.extra?.idFilter?.equal?.rowNumber - 2, - sheet, - }), - [DataSourceOperation.CREATE_TABLE]: () => - this.createTable(json?.table?.name), - [DataSourceOperation.UPDATE_TABLE]: () => this.updateTable(json.table), - [DataSourceOperation.DELETE_TABLE]: () => - this.deleteTable(json?.table?.name), - } - - const internalQueryMethod = handlers[json.endpoint.operation] - - return await internalQueryMethod() - } - - buildRowObject(headers: string[], values: string[], rowNumber: number) { - const rowObject: { rowNumber: number; [key: string]: any } = { rowNumber } - for (let i = 0; i < headers.length; i++) { - rowObject._id = rowNumber - rowObject[headers[i]] = values[i] - } - return rowObject - } - - async createTable(name?: string) { - try { - await this.connect() - const sheet = await this.client.addSheet({ title: name }) - return sheet - } catch (err) { - console.error("Error creating new table in google sheets", err) - throw err - } - } - - async updateTable(table?: any) { - try { - await this.connect() - const sheet = await this.client.sheetsByTitle[table.name] - await sheet.loadHeaderRow() - - if (table._rename) { - const headers = [] - for (let header of sheet.headerValues) { - if (header === table._rename.old) { - headers.push(table._rename.updated) - } else { - headers.push(header) - } - } - await sheet.setHeaderRow(headers) - } else { - let newField = Object.keys(table.schema).find( - key => !sheet.headerValues.includes(key) - ) - await sheet.setHeaderRow([...sheet.headerValues, newField]) - } - } catch (err) { - console.error("Error updating table in google sheets", err) - throw err - } - } - - async deleteTable(sheet: any) { - try { - await this.connect() - const sheetToDelete = await this.client.sheetsByTitle[sheet] - return await sheetToDelete.delete() - } catch (err) { - console.error("Error deleting table in google sheets", err) - throw err - } - } - - async create(query: { sheet: string; row: any }) { - try { - await this.connect() - const sheet = await this.client.sheetsByTitle[query.sheet] - const rowToInsert = - typeof query.row === "string" ? JSON.parse(query.row) : query.row - const row = await sheet.addRow(rowToInsert) - return [ - this.buildRowObject(sheet.headerValues, row._rawData, row._rowNumber), - ] - } catch (err) { - console.error("Error writing to google sheets", err) - throw err - } - } - - async read(query: { sheet: string }) { - try { - await this.connect() - const sheet = await this.client.sheetsByTitle[query.sheet] - const rows = await sheet.getRows() - const headerValues = sheet.headerValues - const response = [] - for (let row of rows) { - response.push( - this.buildRowObject(headerValues, row._rawData, row._rowNumber) - ) - } - return response - } catch (err) { - console.error("Error reading from google sheets", err) - throw err - } - } - - async update(query: { sheet: string; rowIndex: number; row: any }) { - try { - await this.connect() - const sheet = await this.client.sheetsByTitle[query.sheet] - const rows = await sheet.getRows() - const row = rows[query.rowIndex] - if (row) { - const updateValues = query.row - for (let key in updateValues) { - row[key] = updateValues[key] - } - await row.save() - return [ - this.buildRowObject( - sheet.headerValues, - row._rawData, - row._rowNumber - ), - ] - } else { - throw new Error("Row does not exist.") - } - } catch (err) { - console.error("Error reading from google sheets", err) - throw err - } - } - - async delete(query: { sheet: string; rowIndex: number }) { + async update(query: { sheet: string; rowIndex: number; row: any }) { + try { await this.connect() const sheet = await this.client.sheetsByTitle[query.sheet] const rows = await sheet.getRows() const row = rows[query.rowIndex] if (row) { - await row.delete() - return [{ deleted: query.rowIndex }] + const updateValues = query.row + for (let key in updateValues) { + row[key] = updateValues[key] + } + await row.save() + return [ + this.buildRowObject(sheet.headerValues, row._rawData, row._rowNumber), + ] } else { throw new Error("Row does not exist.") } + } catch (err) { + console.error("Error reading from google sheets", err) + throw err } } - module.exports = { - schema: SCHEMA, - integration: GoogleSheetsIntegration, + async delete(query: { sheet: string; rowIndex: number }) { + await this.connect() + const sheet = await this.client.sheetsByTitle[query.sheet] + const rows = await sheet.getRows() + const row = rows[query.rowIndex] + if (row) { + await row.delete() + return [{ deleted: query.rowIndex }] + } else { + throw new Error("Row does not exist.") + } } } + +export default { + schema: SCHEMA, + integration: GoogleSheetsIntegration, +} diff --git a/packages/server/src/integrations/index.ts b/packages/server/src/integrations/index.ts index fd2ce75391..bde7235ac8 100644 --- a/packages/server/src/integrations/index.ts +++ b/packages/server/src/integrations/index.ts @@ -1,22 +1,24 @@ -const postgres = require("./postgres") -const dynamodb = require("./dynamodb") -const mongodb = require("./mongodb") -const elasticsearch = require("./elasticsearch") -const couchdb = require("./couchdb") -const sqlServer = require("./microsoftSqlServer") -const s3 = require("./s3") -const airtable = require("./airtable") -const mysql = require("./mysql") -const arangodb = require("./arangodb") -const rest = require("./rest") -const googlesheets = require("./googlesheets") -const firebase = require("./firebase") -const redis = require("./redis") -const snowflake = require("./snowflake") -const { SourceName } = require("@budibase/types") +import postgres from "./postgres" +import dynamodb from "./dynamodb" +import mongodb from "./mongodb" +import elasticsearch from "./elasticsearch" +import couchdb from "./couchdb" +import sqlServer from "./microsoftSqlServer" +import s3 from "./s3" +import airtable from "./airtable" +import mysql from "./mysql" +import arangodb from "./arangodb" +import rest from "./rest" +import googlesheets from "./googlesheets" +import firebase from "./firebase" +import redis from "./redis" +import snowflake from "./snowflake" +import { getPlugins } from "../api/controllers/plugin" +import { SourceName, Integration, PluginType } from "@budibase/types" const environment = require("../environment") +const { cloneDeep } = require("lodash") -const DEFINITIONS = { +const DEFINITIONS: { [key: string]: Integration } = { [SourceName.POSTGRES]: postgres.schema, [SourceName.DYNAMODB]: dynamodb.schema, [SourceName.MONGODB]: mongodb.schema, @@ -33,7 +35,7 @@ const DEFINITIONS = { [SourceName.SNOWFLAKE]: snowflake.schema, } -const INTEGRATIONS = { +const INTEGRATIONS: { [key: string]: any } = { [SourceName.POSTGRES]: postgres.integration, [SourceName.DYNAMODB]: dynamodb.integration, [SourceName.MONGODB]: mongodb.integration, @@ -48,7 +50,7 @@ const INTEGRATIONS = { [SourceName.FIRESTORE]: firebase.integration, [SourceName.GOOGLE_SHEETS]: googlesheets.integration, [SourceName.REDIS]: redis.integration, - [SourceName.FIREBASE]: firebase.integration, + [SourceName.FIRESTORE]: firebase.integration, [SourceName.SNOWFLAKE]: snowflake.integration, } @@ -64,6 +66,9 @@ if (environment.SELF_HOSTED) { } module.exports = { - definitions: DEFINITIONS, + getDefinitions: async () => { + const custom = await getPlugins(PluginType.DATASOURCE) + return cloneDeep(DEFINITIONS) + }, integrations: INTEGRATIONS, } diff --git a/packages/server/src/integrations/microsoftSqlServer.ts b/packages/server/src/integrations/microsoftSqlServer.ts index 6103fd90ce..0746d0e3bc 100644 --- a/packages/server/src/integrations/microsoftSqlServer.ts +++ b/packages/server/src/integrations/microsoftSqlServer.ts @@ -18,292 +18,290 @@ import { } from "./utils" import Sql from "./base/sql" -module MSSQLModule { - const sqlServer = require("mssql") - const DEFAULT_SCHEMA = "dbo" +const sqlServer = require("mssql") +const DEFAULT_SCHEMA = "dbo" - interface MSSQLConfig { - user: string - password: string - server: string - port: number - database: string - schema: string - encrypt?: boolean - } +interface MSSQLConfig { + user: string + password: string + server: string + port: number + database: string + schema: string + encrypt?: boolean +} - interface TablesResponse { - TABLE_CATALOG: string - TABLE_SCHEMA: string - TABLE_NAME: string - TABLE_TYPE: string - } +interface TablesResponse { + TABLE_CATALOG: string + TABLE_SCHEMA: string + TABLE_NAME: string + TABLE_TYPE: string +} - const SCHEMA: Integration = { - docs: "https://github.com/tediousjs/node-mssql", - plus: true, - description: - "Microsoft SQL Server is a relational database management system developed by Microsoft. ", - friendlyName: "MS SQL Server", - type: "Relational", - datasource: { - user: { - type: DatasourceFieldType.STRING, - required: true, - default: "localhost", - }, - password: { - type: DatasourceFieldType.PASSWORD, - required: true, - }, - server: { - type: DatasourceFieldType.STRING, - default: "localhost", - }, - port: { - type: DatasourceFieldType.NUMBER, - required: false, - default: 1433, - }, - database: { - type: DatasourceFieldType.STRING, - default: "root", - }, - schema: { - type: DatasourceFieldType.STRING, - default: DEFAULT_SCHEMA, - }, - encrypt: { - type: DatasourceFieldType.BOOLEAN, - default: true, - }, +const SCHEMA: Integration = { + docs: "https://github.com/tediousjs/node-mssql", + plus: true, + description: + "Microsoft SQL Server is a relational database management system developed by Microsoft. ", + friendlyName: "MS SQL Server", + type: "Relational", + datasource: { + user: { + type: DatasourceFieldType.STRING, + required: true, + default: "localhost", }, - query: { - create: { - type: QueryType.SQL, - }, - read: { - type: QueryType.SQL, - }, - update: { - type: QueryType.SQL, - }, - delete: { - type: QueryType.SQL, - }, + password: { + type: DatasourceFieldType.PASSWORD, + required: true, }, - } + server: { + type: DatasourceFieldType.STRING, + default: "localhost", + }, + port: { + type: DatasourceFieldType.NUMBER, + required: false, + default: 1433, + }, + database: { + type: DatasourceFieldType.STRING, + default: "root", + }, + schema: { + type: DatasourceFieldType.STRING, + default: DEFAULT_SCHEMA, + }, + encrypt: { + type: DatasourceFieldType.BOOLEAN, + default: true, + }, + }, + query: { + create: { + type: QueryType.SQL, + }, + read: { + type: QueryType.SQL, + }, + update: { + type: QueryType.SQL, + }, + delete: { + type: QueryType.SQL, + }, + }, +} - class SqlServerIntegration extends Sql implements DatasourcePlus { - private readonly config: MSSQLConfig - private index: number = 0 - private readonly pool: any - private client: any - public tables: Record = {} - public schemaErrors: Record = {} +class SqlServerIntegration extends Sql implements DatasourcePlus { + private readonly config: MSSQLConfig + private index: number = 0 + private readonly pool: any + private client: any + public tables: Record = {} + public schemaErrors: Record = {} - MASTER_TABLES = [ - "spt_fallback_db", - "spt_fallback_dev", - "spt_fallback_usg", - "spt_monitor", - "MSreplication_options", - ] - TABLES_SQL = - "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'" + MASTER_TABLES = [ + "spt_fallback_db", + "spt_fallback_dev", + "spt_fallback_usg", + "spt_monitor", + "MSreplication_options", + ] + TABLES_SQL = + "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'" - constructor(config: MSSQLConfig) { - super(SqlClient.MS_SQL) - this.config = config - const clientCfg = { - ...this.config, - options: { - encrypt: this.config.encrypt, - enableArithAbort: true, - }, - } - delete clientCfg.encrypt - if (!this.pool) { - this.pool = new sqlServer.ConnectionPool(clientCfg) - } + constructor(config: MSSQLConfig) { + super(SqlClient.MS_SQL) + this.config = config + const clientCfg = { + ...this.config, + options: { + encrypt: this.config.encrypt, + enableArithAbort: true, + }, } - - getBindingIdentifier(): string { - return `@p${this.index++}` - } - - getStringConcat(parts: string[]): string { - return `concat(${parts.join(", ")})` - } - - async connect() { - try { - this.client = await this.pool.connect() - } catch (err) { - // @ts-ignore - throw new Error(err) - } - } - - async internalQuery( - query: SqlQuery, - operation: string | undefined = undefined - ) { - const client = this.client - const request = client.request() - this.index = 0 - try { - if (Array.isArray(query.bindings)) { - let count = 0 - for (let binding of query.bindings) { - request.input(`p${count++}`, binding) - } - } - // this is a hack to get the inserted ID back, - // no way to do this with Knex nicely - const sql = - operation === Operation.CREATE - ? `${query.sql}; SELECT SCOPE_IDENTITY() AS id;` - : query.sql - return await request.query(sql) - } catch (err) { - // @ts-ignore - throw new Error(err) - } - } - - getDefinitionSQL(tableName: string) { - return `select * - from INFORMATION_SCHEMA.COLUMNS - where TABLE_NAME='${tableName}'` - } - - getConstraintsSQL(tableName: string) { - return `SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS TC - INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KU - ON TC.CONSTRAINT_TYPE = 'PRIMARY KEY' - AND TC.CONSTRAINT_NAME = KU.CONSTRAINT_NAME - AND KU.table_name='${tableName}' - ORDER BY - KU.TABLE_NAME, - KU.ORDINAL_POSITION;` - } - - getAutoColumnsSQL(tableName: string) { - return `SELECT - COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA+'.'+TABLE_NAME),COLUMN_NAME,'IsComputed') - AS IS_COMPUTED, - COLUMNPROPERTY(object_id(TABLE_SCHEMA+'.'+TABLE_NAME), COLUMN_NAME, 'IsIdentity') - AS IS_IDENTITY, - * - FROM INFORMATION_SCHEMA.COLUMNS - WHERE TABLE_NAME='${tableName}'` - } - - async runSQL(sql: string) { - return (await this.internalQuery(getSqlQuery(sql))).recordset - } - - /** - * Fetches the tables from the sql server database and assigns them to the datasource. - * @param {*} datasourceId - datasourceId to fetch - * @param entities - the tables that are to be built - */ - async buildSchema(datasourceId: string, entities: Record) { - await this.connect() - let tableInfo: TablesResponse[] = await this.runSQL(this.TABLES_SQL) - if (tableInfo == null || !Array.isArray(tableInfo)) { - throw "Unable to get list of tables in database" - } - - const schema = this.config.schema || DEFAULT_SCHEMA - const tableNames = tableInfo - .filter((record: any) => record.TABLE_SCHEMA === schema) - .map((record: any) => record.TABLE_NAME) - .filter((name: string) => this.MASTER_TABLES.indexOf(name) === -1) - - const tables: Record = {} - for (let tableName of tableNames) { - // get the column definition (type) - const definition = await this.runSQL(this.getDefinitionSQL(tableName)) - // find primary key constraints - const constraints = await this.runSQL(this.getConstraintsSQL(tableName)) - // find the computed and identity columns (auto columns) - const columns = await this.runSQL(this.getAutoColumnsSQL(tableName)) - const primaryKeys = constraints - .filter( - (constraint: any) => constraint.CONSTRAINT_TYPE === "PRIMARY KEY" - ) - .map((constraint: any) => constraint.COLUMN_NAME) - const autoColumns = columns - .filter((col: any) => col.IS_COMPUTED || col.IS_IDENTITY) - .map((col: any) => col.COLUMN_NAME) - - let schema: TableSchema = {} - for (let def of definition) { - const name = def.COLUMN_NAME - if (typeof name !== "string") { - continue - } - schema[name] = { - autocolumn: !!autoColumns.find((col: string) => col === name), - name: name, - ...convertSqlType(def.DATA_TYPE), - externalType: def.DATA_TYPE, - } - } - tables[tableName] = { - _id: buildExternalTableId(datasourceId, tableName), - primary: primaryKeys, - name: tableName, - schema, - } - } - const final = finaliseExternalTables(tables, entities) - this.tables = final.tables - this.schemaErrors = final.errors - } - - async read(query: SqlQuery | string) { - await this.connect() - const response = await this.internalQuery(getSqlQuery(query)) - return response.recordset - } - - async create(query: SqlQuery | string) { - await this.connect() - const response = await this.internalQuery(getSqlQuery(query)) - return response.recordset || [{ created: true }] - } - - async update(query: SqlQuery | string) { - await this.connect() - const response = await this.internalQuery(getSqlQuery(query)) - return response.recordset || [{ updated: true }] - } - - async delete(query: SqlQuery | string) { - await this.connect() - const response = await this.internalQuery(getSqlQuery(query)) - return response.recordset || [{ deleted: true }] - } - - async query(json: QueryJson) { - const schema = this.config.schema - await this.connect() - if (schema && schema !== DEFAULT_SCHEMA && json?.endpoint) { - json.endpoint.schema = schema - } - const operation = this._operation(json) - const queryFn = (query: any, op: string) => this.internalQuery(query, op) - const processFn = (result: any) => - result.recordset ? result.recordset : [{ [operation]: true }] - return this.queryWithReturning(json, queryFn, processFn) + delete clientCfg.encrypt + if (!this.pool) { + this.pool = new sqlServer.ConnectionPool(clientCfg) } } - module.exports = { - schema: SCHEMA, - integration: SqlServerIntegration, + getBindingIdentifier(): string { + return `@p${this.index++}` + } + + getStringConcat(parts: string[]): string { + return `concat(${parts.join(", ")})` + } + + async connect() { + try { + this.client = await this.pool.connect() + } catch (err) { + // @ts-ignore + throw new Error(err) + } + } + + async internalQuery( + query: SqlQuery, + operation: string | undefined = undefined + ) { + const client = this.client + const request = client.request() + this.index = 0 + try { + if (Array.isArray(query.bindings)) { + let count = 0 + for (let binding of query.bindings) { + request.input(`p${count++}`, binding) + } + } + // this is a hack to get the inserted ID back, + // no way to do this with Knex nicely + const sql = + operation === Operation.CREATE + ? `${query.sql}; SELECT SCOPE_IDENTITY() AS id;` + : query.sql + return await request.query(sql) + } catch (err) { + // @ts-ignore + throw new Error(err) + } + } + + getDefinitionSQL(tableName: string) { + return `select * + from INFORMATION_SCHEMA.COLUMNS + where TABLE_NAME='${tableName}'` + } + + getConstraintsSQL(tableName: string) { + return `SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS TC + INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KU + ON TC.CONSTRAINT_TYPE = 'PRIMARY KEY' + AND TC.CONSTRAINT_NAME = KU.CONSTRAINT_NAME + AND KU.table_name='${tableName}' + ORDER BY + KU.TABLE_NAME, + KU.ORDINAL_POSITION;` + } + + getAutoColumnsSQL(tableName: string) { + return `SELECT + COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA+'.'+TABLE_NAME),COLUMN_NAME,'IsComputed') + AS IS_COMPUTED, + COLUMNPROPERTY(object_id(TABLE_SCHEMA+'.'+TABLE_NAME), COLUMN_NAME, 'IsIdentity') + AS IS_IDENTITY, + * + FROM INFORMATION_SCHEMA.COLUMNS + WHERE TABLE_NAME='${tableName}'` + } + + async runSQL(sql: string) { + return (await this.internalQuery(getSqlQuery(sql))).recordset + } + + /** + * Fetches the tables from the sql server database and assigns them to the datasource. + * @param {*} datasourceId - datasourceId to fetch + * @param entities - the tables that are to be built + */ + async buildSchema(datasourceId: string, entities: Record) { + await this.connect() + let tableInfo: TablesResponse[] = await this.runSQL(this.TABLES_SQL) + if (tableInfo == null || !Array.isArray(tableInfo)) { + throw "Unable to get list of tables in database" + } + + const schema = this.config.schema || DEFAULT_SCHEMA + const tableNames = tableInfo + .filter((record: any) => record.TABLE_SCHEMA === schema) + .map((record: any) => record.TABLE_NAME) + .filter((name: string) => this.MASTER_TABLES.indexOf(name) === -1) + + const tables: Record = {} + for (let tableName of tableNames) { + // get the column definition (type) + const definition = await this.runSQL(this.getDefinitionSQL(tableName)) + // find primary key constraints + const constraints = await this.runSQL(this.getConstraintsSQL(tableName)) + // find the computed and identity columns (auto columns) + const columns = await this.runSQL(this.getAutoColumnsSQL(tableName)) + const primaryKeys = constraints + .filter( + (constraint: any) => constraint.CONSTRAINT_TYPE === "PRIMARY KEY" + ) + .map((constraint: any) => constraint.COLUMN_NAME) + const autoColumns = columns + .filter((col: any) => col.IS_COMPUTED || col.IS_IDENTITY) + .map((col: any) => col.COLUMN_NAME) + + let schema: TableSchema = {} + for (let def of definition) { + const name = def.COLUMN_NAME + if (typeof name !== "string") { + continue + } + schema[name] = { + autocolumn: !!autoColumns.find((col: string) => col === name), + name: name, + ...convertSqlType(def.DATA_TYPE), + externalType: def.DATA_TYPE, + } + } + tables[tableName] = { + _id: buildExternalTableId(datasourceId, tableName), + primary: primaryKeys, + name: tableName, + schema, + } + } + const final = finaliseExternalTables(tables, entities) + this.tables = final.tables + this.schemaErrors = final.errors + } + + async read(query: SqlQuery | string) { + await this.connect() + const response = await this.internalQuery(getSqlQuery(query)) + return response.recordset + } + + async create(query: SqlQuery | string) { + await this.connect() + const response = await this.internalQuery(getSqlQuery(query)) + return response.recordset || [{ created: true }] + } + + async update(query: SqlQuery | string) { + await this.connect() + const response = await this.internalQuery(getSqlQuery(query)) + return response.recordset || [{ updated: true }] + } + + async delete(query: SqlQuery | string) { + await this.connect() + const response = await this.internalQuery(getSqlQuery(query)) + return response.recordset || [{ deleted: true }] + } + + async query(json: QueryJson) { + const schema = this.config.schema + await this.connect() + if (schema && schema !== DEFAULT_SCHEMA && json?.endpoint) { + json.endpoint.schema = schema + } + const operation = this._operation(json) + const queryFn = (query: any, op: string) => this.internalQuery(query, op) + const processFn = (result: any) => + result.recordset ? result.recordset : [{ [operation]: true }] + return this.queryWithReturning(json, queryFn, processFn) } } + +export default { + schema: SCHEMA, + integration: SqlServerIntegration, +} diff --git a/packages/server/src/integrations/mongodb.ts b/packages/server/src/integrations/mongodb.ts index 4f2a901259..3b11348368 100644 --- a/packages/server/src/integrations/mongodb.ts +++ b/packages/server/src/integrations/mongodb.ts @@ -15,313 +15,309 @@ import { CommonOptions, } from "mongodb" -module MongoDBModule { - interface MongoDBConfig { - connectionString: string - db: string +interface MongoDBConfig { + connectionString: string + db: string +} + +const SCHEMA: Integration = { + docs: "https://github.com/mongodb/node-mongodb-native", + friendlyName: "MongoDB", + type: "Non-relational", + description: + "MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era.", + datasource: { + connectionString: { + type: DatasourceFieldType.STRING, + required: true, + default: "mongodb://localhost:27017", + }, + db: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + query: { + create: { + type: QueryType.JSON, + }, + read: { + type: QueryType.JSON, + }, + update: { + type: QueryType.JSON, + }, + delete: { + type: QueryType.JSON, + }, + }, + extra: { + collection: { + displayName: "Collection", + type: DatasourceFieldType.STRING, + required: true, + }, + actionTypes: { + displayName: "Action Types", + type: DatasourceFieldType.LIST, + required: true, + data: { + read: ["find", "findOne", "findOneAndUpdate", "count", "distinct"], + create: ["insertOne", "insertMany"], + update: ["updateOne", "updateMany"], + delete: ["deleteOne", "deleteMany"], + }, + }, + }, +} + +class MongoIntegration implements IntegrationBase { + private config: MongoDBConfig + private client: any + + constructor(config: MongoDBConfig) { + this.config = config + this.client = new MongoClient(config.connectionString) } - const SCHEMA: Integration = { - docs: "https://github.com/mongodb/node-mongodb-native", - friendlyName: "MongoDB", - type: "Non-relational", - description: - "MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era.", - datasource: { - connectionString: { - type: DatasourceFieldType.STRING, - required: true, - default: "mongodb://localhost:27017", - }, - db: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - query: { - create: { - type: QueryType.JSON, - }, - read: { - type: QueryType.JSON, - }, - update: { - type: QueryType.JSON, - }, - delete: { - type: QueryType.JSON, - }, - }, - extra: { - collection: { - displayName: "Collection", - type: DatasourceFieldType.STRING, - required: true, - }, - actionTypes: { - displayName: "Action Types", - type: DatasourceFieldType.LIST, - required: true, - data: { - read: ["find", "findOne", "findOneAndUpdate", "count", "distinct"], - create: ["insertOne", "insertMany"], - update: ["updateOne", "updateMany"], - delete: ["deleteOne", "deleteMany"], - }, - }, - }, + async connect() { + return this.client.connect() } - class MongoIntegration implements IntegrationBase { - private config: MongoDBConfig - private client: any - - constructor(config: MongoDBConfig) { - this.config = config - this.client = new MongoClient(config.connectionString) + createObjectIds(json: any): object { + const self = this + function interpolateObjectIds(json: any) { + for (let field of Object.keys(json)) { + if (json[field] instanceof Object) { + json[field] = self.createObjectIds(json[field]) + } + if ( + (field === "_id" || field?.startsWith("$")) && + typeof json[field] === "string" + ) { + const id = json[field].match(/(?<=objectid\(['"]).*(?=['"]\))/gi)?.[0] + if (id) { + json[field] = ObjectID.createFromHexString(id) + } + } + } + return json } - async connect() { - return this.client.connect() + if (Array.isArray(json)) { + for (let i = 0; i < json.length; i++) { + json[i] = interpolateObjectIds(json[i]) + } + return json } + return interpolateObjectIds(json) + } - createObjectIds(json: any): object { - const self = this - function interpolateObjectIds(json: any) { - for (let field of Object.keys(json)) { - if (json[field] instanceof Object) { - json[field] = self.createObjectIds(json[field]) - } - if ( - (field === "_id" || field?.startsWith("$")) && - typeof json[field] === "string" - ) { - const id = json[field].match( - /(?<=objectid\(['"]).*(?=['"]\))/gi - )?.[0] - if (id) { - json[field] = ObjectID.createFromHexString(id) - } - } - } - return json + parseQueryParams(params: string, mode: string) { + let queryParams = [] + let openCount = 0 + let inQuotes = false + let i = 0 + let startIndex = 0 + for (let c of params) { + if (c === '"' && i > 0 && params[i - 1] !== "\\") { + inQuotes = !inQuotes } - - if (Array.isArray(json)) { - for (let i = 0; i < json.length; i++) { - json[i] = interpolateObjectIds(json[i]) + if (c === "{" && !inQuotes) { + openCount++ + if (openCount === 1) { + startIndex = i } - return json + } else if (c === "}" && !inQuotes) { + if (openCount === 1) { + queryParams.push(JSON.parse(params.substring(startIndex, i + 1))) + } + openCount-- } - return interpolateObjectIds(json) + i++ } - - parseQueryParams(params: string, mode: string) { - let queryParams = [] - let openCount = 0 - let inQuotes = false - let i = 0 - let startIndex = 0 - for (let c of params) { - if (c === '"' && i > 0 && params[i - 1] !== "\\") { - inQuotes = !inQuotes - } - if (c === "{" && !inQuotes) { - openCount++ - if (openCount === 1) { - startIndex = i - } - } else if (c === "}" && !inQuotes) { - if (openCount === 1) { - queryParams.push(JSON.parse(params.substring(startIndex, i + 1))) - } - openCount-- - } - i++ - } - let group1 = queryParams[0] ?? {} - let group2 = queryParams[1] ?? {} - let group3 = queryParams[2] ?? {} - if (mode === "update") { - return { - filter: group1, - update: group2, - options: group3, - } - } + let group1 = queryParams[0] ?? {} + let group2 = queryParams[1] ?? {} + let group3 = queryParams[2] ?? {} + if (mode === "update") { return { filter: group1, - options: group2, + update: group2, + options: group3, } } - - async create(query: { json: object; extra: { [key: string]: string } }) { - try { - await this.connect() - const db = this.client.db(this.config.db) - const collection = db.collection(query.extra.collection) - let json = this.createObjectIds(query.json) - - // For mongodb we add an extra actionType to specify - // which method we want to call on the collection - switch (query.extra.actionTypes) { - case "insertOne": { - return await collection.insertOne(json) - } - case "insertMany": { - return await collection.insertMany(json) - } - default: { - throw new Error( - `actionType ${query.extra.actionTypes} does not exist on DB for create` - ) - } - } - } catch (err) { - console.error("Error writing to mongodb", err) - throw err - } finally { - await this.client.close() - } - } - - async read(query: { json: object; extra: { [key: string]: string } }) { - try { - await this.connect() - const db = this.client.db(this.config.db) - const collection = db.collection(query.extra.collection) - let json = this.createObjectIds(query.json) - - switch (query.extra.actionTypes) { - case "find": { - return await collection.find(json).toArray() - } - case "findOne": { - return await collection.findOne(json) - } - case "findOneAndUpdate": { - if (typeof query.json === "string") { - json = this.parseQueryParams(query.json, "update") - } - let findAndUpdateJson = this.createObjectIds(json) as { - filter: FilterQuery - update: UpdateQuery - options: FindOneAndUpdateOption - } - return await collection.findOneAndUpdate( - findAndUpdateJson.filter, - findAndUpdateJson.update, - findAndUpdateJson.options - ) - } - case "count": { - return await collection.countDocuments(json) - } - case "distinct": { - return await collection.distinct(json) - } - default: { - throw new Error( - `actionType ${query.extra.actionTypes} does not exist on DB for read` - ) - } - } - } catch (err) { - console.error("Error querying mongodb", err) - throw err - } finally { - await this.client.close() - } - } - - async update(query: { json: object; extra: { [key: string]: string } }) { - try { - await this.connect() - const db = this.client.db(this.config.db) - const collection = db.collection(query.extra.collection) - let queryJson = query.json - if (typeof queryJson === "string") { - queryJson = this.parseQueryParams(queryJson, "update") - } - let json = this.createObjectIds(queryJson) as { - filter: FilterQuery - update: UpdateQuery - options: object - } - - switch (query.extra.actionTypes) { - case "updateOne": { - return await collection.updateOne( - json.filter, - json.update, - json.options as UpdateOneOptions - ) - } - case "updateMany": { - return await collection.updateMany( - json.filter, - json.update, - json.options as UpdateManyOptions - ) - } - default: { - throw new Error( - `actionType ${query.extra.actionTypes} does not exist on DB for update` - ) - } - } - } catch (err) { - console.error("Error writing to mongodb", err) - throw err - } finally { - await this.client.close() - } - } - - async delete(query: { json: object; extra: { [key: string]: string } }) { - try { - await this.connect() - const db = this.client.db(this.config.db) - const collection = db.collection(query.extra.collection) - let queryJson = query.json - if (typeof queryJson === "string") { - queryJson = this.parseQueryParams(queryJson, "delete") - } - let json = this.createObjectIds(queryJson) as { - filter: FilterQuery - options: CommonOptions - } - if (!json.options) { - json = { - filter: json, - options: {}, - } - } - - switch (query.extra.actionTypes) { - case "deleteOne": { - return await collection.deleteOne(json.filter, json.options) - } - case "deleteMany": { - return await collection.deleteMany(json.filter, json.options) - } - default: { - throw new Error( - `actionType ${query.extra.actionTypes} does not exist on DB for delete` - ) - } - } - } catch (err) { - console.error("Error writing to mongodb", err) - throw err - } finally { - await this.client.close() - } + return { + filter: group1, + options: group2, } } - module.exports = { - schema: SCHEMA, - integration: MongoIntegration, + async create(query: { json: object; extra: { [key: string]: string } }) { + try { + await this.connect() + const db = this.client.db(this.config.db) + const collection = db.collection(query.extra.collection) + let json = this.createObjectIds(query.json) + + // For mongodb we add an extra actionType to specify + // which method we want to call on the collection + switch (query.extra.actionTypes) { + case "insertOne": { + return await collection.insertOne(json) + } + case "insertMany": { + return await collection.insertMany(json) + } + default: { + throw new Error( + `actionType ${query.extra.actionTypes} does not exist on DB for create` + ) + } + } + } catch (err) { + console.error("Error writing to mongodb", err) + throw err + } finally { + await this.client.close() + } + } + + async read(query: { json: object; extra: { [key: string]: string } }) { + try { + await this.connect() + const db = this.client.db(this.config.db) + const collection = db.collection(query.extra.collection) + let json = this.createObjectIds(query.json) + + switch (query.extra.actionTypes) { + case "find": { + return await collection.find(json).toArray() + } + case "findOne": { + return await collection.findOne(json) + } + case "findOneAndUpdate": { + if (typeof query.json === "string") { + json = this.parseQueryParams(query.json, "update") + } + let findAndUpdateJson = this.createObjectIds(json) as { + filter: FilterQuery + update: UpdateQuery + options: FindOneAndUpdateOption + } + return await collection.findOneAndUpdate( + findAndUpdateJson.filter, + findAndUpdateJson.update, + findAndUpdateJson.options + ) + } + case "count": { + return await collection.countDocuments(json) + } + case "distinct": { + return await collection.distinct(json) + } + default: { + throw new Error( + `actionType ${query.extra.actionTypes} does not exist on DB for read` + ) + } + } + } catch (err) { + console.error("Error querying mongodb", err) + throw err + } finally { + await this.client.close() + } + } + + async update(query: { json: object; extra: { [key: string]: string } }) { + try { + await this.connect() + const db = this.client.db(this.config.db) + const collection = db.collection(query.extra.collection) + let queryJson = query.json + if (typeof queryJson === "string") { + queryJson = this.parseQueryParams(queryJson, "update") + } + let json = this.createObjectIds(queryJson) as { + filter: FilterQuery + update: UpdateQuery + options: object + } + + switch (query.extra.actionTypes) { + case "updateOne": { + return await collection.updateOne( + json.filter, + json.update, + json.options as UpdateOneOptions + ) + } + case "updateMany": { + return await collection.updateMany( + json.filter, + json.update, + json.options as UpdateManyOptions + ) + } + default: { + throw new Error( + `actionType ${query.extra.actionTypes} does not exist on DB for update` + ) + } + } + } catch (err) { + console.error("Error writing to mongodb", err) + throw err + } finally { + await this.client.close() + } + } + + async delete(query: { json: object; extra: { [key: string]: string } }) { + try { + await this.connect() + const db = this.client.db(this.config.db) + const collection = db.collection(query.extra.collection) + let queryJson = query.json + if (typeof queryJson === "string") { + queryJson = this.parseQueryParams(queryJson, "delete") + } + let json = this.createObjectIds(queryJson) as { + filter: FilterQuery + options: CommonOptions + } + if (!json.options) { + json = { + filter: json, + options: {}, + } + } + + switch (query.extra.actionTypes) { + case "deleteOne": { + return await collection.deleteOne(json.filter, json.options) + } + case "deleteMany": { + return await collection.deleteMany(json.filter, json.options) + } + default: { + throw new Error( + `actionType ${query.extra.actionTypes} does not exist on DB for delete` + ) + } + } + } catch (err) { + console.error("Error writing to mongodb", err) + throw err + } finally { + await this.client.close() + } } } + +export default { + schema: SCHEMA, + integration: MongoIntegration, +} diff --git a/packages/server/src/integrations/mysql.ts b/packages/server/src/integrations/mysql.ts index 466f2e6494..0f236935c8 100644 --- a/packages/server/src/integrations/mysql.ts +++ b/packages/server/src/integrations/mysql.ts @@ -19,274 +19,269 @@ import dayjs from "dayjs" const { NUMBER_REGEX } = require("../utilities") import Sql from "./base/sql" -module MySQLModule { - const mysql = require("mysql2/promise") +const mysql = require("mysql2/promise") - interface MySQLConfig { - host: string - port: number - user: string - password: string - database: string - ssl?: { [key: string]: any } - rejectUnauthorized: boolean - typeCast: Function - } +interface MySQLConfig { + host: string + port: number + user: string + password: string + database: string + ssl?: { [key: string]: any } + rejectUnauthorized: boolean + typeCast: Function +} - const SCHEMA: Integration = { - docs: "https://github.com/sidorares/node-mysql2", - plus: true, - friendlyName: "MySQL", - type: "Relational", - description: - "MySQL Database Service is a fully managed database service to deploy cloud-native applications. ", - datasource: { - host: { - type: DatasourceFieldType.STRING, - default: "localhost", - required: true, - }, - port: { - type: DatasourceFieldType.NUMBER, - default: 3306, - required: false, - }, - user: { - type: DatasourceFieldType.STRING, - default: "root", - required: true, - }, - password: { - type: DatasourceFieldType.PASSWORD, - default: "root", - required: true, - }, - database: { - type: DatasourceFieldType.STRING, - required: true, - }, - ssl: { - type: DatasourceFieldType.OBJECT, - required: false, - }, - rejectUnauthorized: { - type: DatasourceFieldType.BOOLEAN, - default: true, - required: false, - }, +const SCHEMA: Integration = { + docs: "https://github.com/sidorares/node-mysql2", + plus: true, + friendlyName: "MySQL", + type: "Relational", + description: + "MySQL Database Service is a fully managed database service to deploy cloud-native applications. ", + datasource: { + host: { + type: DatasourceFieldType.STRING, + default: "localhost", + required: true, }, - query: { - create: { - type: QueryType.SQL, - }, - read: { - type: QueryType.SQL, - }, - update: { - type: QueryType.SQL, - }, - delete: { - type: QueryType.SQL, - }, + port: { + type: DatasourceFieldType.NUMBER, + default: 3306, + required: false, }, + user: { + type: DatasourceFieldType.STRING, + default: "root", + required: true, + }, + password: { + type: DatasourceFieldType.PASSWORD, + default: "root", + required: true, + }, + database: { + type: DatasourceFieldType.STRING, + required: true, + }, + ssl: { + type: DatasourceFieldType.OBJECT, + required: false, + }, + rejectUnauthorized: { + type: DatasourceFieldType.BOOLEAN, + default: true, + required: false, + }, + }, + query: { + create: { + type: QueryType.SQL, + }, + read: { + type: QueryType.SQL, + }, + update: { + type: QueryType.SQL, + }, + delete: { + type: QueryType.SQL, + }, + }, +} + +const TimezoneAwareDateTypes = ["timestamp"] + +function bindingTypeCoerce(bindings: any[]) { + for (let i = 0; i < bindings.length; i++) { + const binding = bindings[i] + if (typeof binding !== "string") { + continue + } + const matches = binding.match(NUMBER_REGEX) + // check if number first + if (matches && matches[0] !== "" && !isNaN(Number(matches[0]))) { + bindings[i] = parseFloat(binding) + } + // if not a number, see if it is a date - important to do in this order as any + // integer will be considered a valid date + else if (/^\d/.test(binding) && dayjs(binding).isValid()) { + bindings[i] = dayjs(binding).toDate() + } + } + return bindings +} + +class MySQLIntegration extends Sql implements DatasourcePlus { + private config: MySQLConfig + private client: any + public tables: Record = {} + public schemaErrors: Record = {} + + constructor(config: MySQLConfig) { + super(SqlClient.MY_SQL) + this.config = config + if (config.ssl && Object.keys(config.ssl).length === 0) { + delete config.ssl + } + // make sure this defaults to true + if ( + config.rejectUnauthorized != null && + !config.rejectUnauthorized && + config.ssl + ) { + config.ssl.rejectUnauthorized = config.rejectUnauthorized + } + // @ts-ignore + delete config.rejectUnauthorized + this.config = { + ...config, + typeCast: function (field: any, next: any) { + if ( + field.type == "DATETIME" || + field.type === "DATE" || + field.type === "TIMESTAMP" + ) { + return field.string() + } + return next() + }, + } } - const TimezoneAwareDateTypes = ["timestamp"] - - function bindingTypeCoerce(bindings: any[]) { - for (let i = 0; i < bindings.length; i++) { - const binding = bindings[i] - if (typeof binding !== "string") { - continue - } - const matches = binding.match(NUMBER_REGEX) - // check if number first - if (matches && matches[0] !== "" && !isNaN(Number(matches[0]))) { - bindings[i] = parseFloat(binding) - } - // if not a number, see if it is a date - important to do in this order as any - // integer will be considered a valid date - else if (/^\d/.test(binding) && dayjs(binding).isValid()) { - bindings[i] = dayjs(binding).toDate() - } - } - return bindings + getBindingIdentifier(): string { + return "?" } - class MySQLIntegration extends Sql implements DatasourcePlus { - private config: MySQLConfig - private client: any - public tables: Record = {} - public schemaErrors: Record = {} + getStringConcat(parts: string[]): string { + return `concat(${parts.join(", ")})` + } - constructor(config: MySQLConfig) { - super(SqlClient.MY_SQL) - this.config = config - if (config.ssl && Object.keys(config.ssl).length === 0) { - delete config.ssl + async connect() { + this.client = await mysql.createConnection(this.config) + } + + async disconnect() { + await this.client.end() + } + + async internalQuery( + query: SqlQuery, + opts: { connect?: boolean; disableCoercion?: boolean } = { + connect: true, + disableCoercion: false, + } + ): Promise { + try { + if (opts?.connect) { + await this.connect() } - // make sure this defaults to true - if ( - config.rejectUnauthorized != null && - !config.rejectUnauthorized && - config.ssl - ) { - config.ssl.rejectUnauthorized = config.rejectUnauthorized - } - // @ts-ignore - delete config.rejectUnauthorized - this.config = { - ...config, - typeCast: function (field: any, next: any) { - if ( - field.type == "DATETIME" || - field.type === "DATE" || - field.type === "TIMESTAMP" - ) { - return field.string() - } - return next() - }, + const baseBindings = query.bindings || [] + const bindings = opts?.disableCoercion + ? baseBindings + : bindingTypeCoerce(baseBindings) + // Node MySQL is callback based, so we must wrap our call in a promise + const response = await this.client.query(query.sql, bindings) + return response[0] + } finally { + if (opts?.connect) { + await this.disconnect() } } + } - getBindingIdentifier(): string { - return "?" - } + async buildSchema(datasourceId: string, entities: Record) { + const tables: { [key: string]: Table } = {} + const database = this.config.database + await this.connect() - getStringConcat(parts: string[]): string { - return `concat(${parts.join(", ")})` - } - - async connect() { - this.client = await mysql.createConnection(this.config) - } - - async disconnect() { - await this.client.end() - } - - async internalQuery( - query: SqlQuery, - opts: { connect?: boolean; disableCoercion?: boolean } = { - connect: true, - disableCoercion: false, - } - ): Promise { - try { - if (opts?.connect) { - await this.connect() - } - const baseBindings = query.bindings || [] - const bindings = opts?.disableCoercion - ? baseBindings - : bindingTypeCoerce(baseBindings) - // Node MySQL is callback based, so we must wrap our call in a promise - const response = await this.client.query(query.sql, bindings) - return response[0] - } finally { - if (opts?.connect) { - await this.disconnect() - } - } - } - - async buildSchema(datasourceId: string, entities: Record) { - const tables: { [key: string]: Table } = {} - const database = this.config.database - await this.connect() - - try { - // get the tables first - const tablesResp = await this.internalQuery( - { sql: "SHOW TABLES;" }, + try { + // get the tables first + const tablesResp = await this.internalQuery( + { sql: "SHOW TABLES;" }, + { connect: false } + ) + const tableNames = tablesResp.map( + (obj: any) => + obj[`Tables_in_${database}`] || + obj[`Tables_in_${database.toLowerCase()}`] + ) + for (let tableName of tableNames) { + const primaryKeys = [] + const schema: TableSchema = {} + const descResp = await this.internalQuery( + { sql: `DESCRIBE \`${tableName}\`;` }, { connect: false } ) - const tableNames = tablesResp.map( - (obj: any) => - obj[`Tables_in_${database}`] || - obj[`Tables_in_${database.toLowerCase()}`] - ) - for (let tableName of tableNames) { - const primaryKeys = [] - const schema: TableSchema = {} - const descResp = await this.internalQuery( - { sql: `DESCRIBE \`${tableName}\`;` }, - { connect: false } - ) - for (let column of descResp) { - const columnName = column.Field - if ( - column.Key === "PRI" && - primaryKeys.indexOf(column.Key) === -1 - ) { - primaryKeys.push(columnName) - } - const constraints = { - presence: column.Null !== "YES", - } - const isAuto: boolean = - typeof column.Extra === "string" && - (column.Extra === "auto_increment" || - column.Extra.toLowerCase().includes("generated")) - schema[columnName] = { - name: columnName, - autocolumn: isAuto, - constraints, - ...convertSqlType(column.Type), - externalType: column.Type, - } + for (let column of descResp) { + const columnName = column.Field + if (column.Key === "PRI" && primaryKeys.indexOf(column.Key) === -1) { + primaryKeys.push(columnName) } - if (!tables[tableName]) { - tables[tableName] = { - _id: buildExternalTableId(datasourceId, tableName), - primary: primaryKeys, - name: tableName, - schema, - } + const constraints = { + presence: column.Null !== "YES", + } + const isAuto: boolean = + typeof column.Extra === "string" && + (column.Extra === "auto_increment" || + column.Extra.toLowerCase().includes("generated")) + schema[columnName] = { + name: columnName, + autocolumn: isAuto, + constraints, + ...convertSqlType(column.Type), + externalType: column.Type, + } + } + if (!tables[tableName]) { + tables[tableName] = { + _id: buildExternalTableId(datasourceId, tableName), + primary: primaryKeys, + name: tableName, + schema, } } - } finally { - await this.disconnect() - } - const final = finaliseExternalTables(tables, entities) - this.tables = final.tables - this.schemaErrors = final.errors - } - - async create(query: SqlQuery | string) { - const results = await this.internalQuery(getSqlQuery(query)) - return results.length ? results : [{ created: true }] - } - - async read(query: SqlQuery | string) { - return this.internalQuery(getSqlQuery(query)) - } - - async update(query: SqlQuery | string) { - const results = await this.internalQuery(getSqlQuery(query)) - return results.length ? results : [{ updated: true }] - } - - async delete(query: SqlQuery | string) { - const results = await this.internalQuery(getSqlQuery(query)) - return results.length ? results : [{ deleted: true }] - } - - async query(json: QueryJson) { - await this.connect() - try { - const queryFn = (query: any) => - this.internalQuery(query, { connect: false, disableCoercion: true }) - return await this.queryWithReturning(json, queryFn) - } finally { - await this.disconnect() } + } finally { + await this.disconnect() } + const final = finaliseExternalTables(tables, entities) + this.tables = final.tables + this.schemaErrors = final.errors } - module.exports = { - schema: SCHEMA, - integration: MySQLIntegration, + async create(query: SqlQuery | string) { + const results = await this.internalQuery(getSqlQuery(query)) + return results.length ? results : [{ created: true }] + } + + async read(query: SqlQuery | string) { + return this.internalQuery(getSqlQuery(query)) + } + + async update(query: SqlQuery | string) { + const results = await this.internalQuery(getSqlQuery(query)) + return results.length ? results : [{ updated: true }] + } + + async delete(query: SqlQuery | string) { + const results = await this.internalQuery(getSqlQuery(query)) + return results.length ? results : [{ deleted: true }] + } + + async query(json: QueryJson) { + await this.connect() + try { + const queryFn = (query: any) => + this.internalQuery(query, { connect: false, disableCoercion: true }) + return await this.queryWithReturning(json, queryFn) + } finally { + await this.disconnect() + } } } + +export default { + schema: SCHEMA, + integration: MySQLIntegration, +} diff --git a/packages/server/src/integrations/oracle.ts b/packages/server/src/integrations/oracle.ts index fa8a3837b2..5f35935e12 100644 --- a/packages/server/src/integrations/oracle.ts +++ b/packages/server/src/integrations/oracle.ts @@ -25,437 +25,430 @@ import oracledb, { import Sql from "./base/sql" import { FieldTypes } from "../constants" -module OracleModule { - oracledb.outFormat = oracledb.OUT_FORMAT_OBJECT +oracledb.outFormat = oracledb.OUT_FORMAT_OBJECT - interface OracleConfig { - host: string - port: number - database: string - user: string - password: string - } +interface OracleConfig { + host: string + port: number + database: string + user: string + password: string +} - const SCHEMA: Integration = { - docs: "https://github.com/oracle/node-oracledb", - plus: true, - friendlyName: "Oracle", - type: "Relational", - description: - "Oracle Database is an object-relational database management system developed by Oracle Corporation", - datasource: { - host: { - type: DatasourceFieldType.STRING, - default: "localhost", - required: true, - }, - port: { - type: DatasourceFieldType.NUMBER, - required: true, - default: 1521, - }, - database: { - type: DatasourceFieldType.STRING, - required: true, - }, - user: { - type: DatasourceFieldType.STRING, - required: true, - }, - password: { - type: DatasourceFieldType.PASSWORD, - required: true, - }, +const SCHEMA: Integration = { + docs: "https://github.com/oracle/node-oracledb", + plus: true, + friendlyName: "Oracle", + type: "Relational", + description: + "Oracle Database is an object-relational database management system developed by Oracle Corporation", + datasource: { + host: { + type: DatasourceFieldType.STRING, + default: "localhost", + required: true, }, - query: { - create: { - type: QueryType.SQL, - }, - read: { - type: QueryType.SQL, - }, - update: { - type: QueryType.SQL, - }, - delete: { - type: QueryType.SQL, - }, + port: { + type: DatasourceFieldType.NUMBER, + required: true, + default: 1521, }, + database: { + type: DatasourceFieldType.STRING, + required: true, + }, + user: { + type: DatasourceFieldType.STRING, + required: true, + }, + password: { + type: DatasourceFieldType.PASSWORD, + required: true, + }, + }, + query: { + create: { + type: QueryType.SQL, + }, + read: { + type: QueryType.SQL, + }, + update: { + type: QueryType.SQL, + }, + delete: { + type: QueryType.SQL, + }, + }, +} + +const UNSUPPORTED_TYPES = ["BLOB", "CLOB", "NCLOB"] + +/** + * Raw query response + */ +interface ColumnsResponse { + TABLE_NAME: string + COLUMN_NAME: string + DATA_TYPE: string + DATA_DEFAULT: string | null + COLUMN_ID: number + CONSTRAINT_NAME: string | null + CONSTRAINT_TYPE: string | null + R_CONSTRAINT_NAME: string | null + SEARCH_CONDITION: string | null +} + +/** + * An oracle constraint + */ +interface OracleConstraint { + name: string + type: string + relatedConstraintName: string | null + searchCondition: string | null +} + +/** + * An oracle column and it's related constraints + */ +interface OracleColumn { + name: string + type: string + default: string | null + id: number + constraints: { [key: string]: OracleConstraint } +} + +/** + * An oracle table and it's related columns + */ +interface OracleTable { + name: string + columns: { [key: string]: OracleColumn } +} + +const OracleContraintTypes = { + PRIMARY: "P", + NOT_NULL_OR_CHECK: "C", + FOREIGN_KEY: "R", + UNIQUE: "U", +} + +class OracleIntegration extends Sql implements DatasourcePlus { + private readonly config: OracleConfig + private index: number = 1 + + public tables: Record = {} + public schemaErrors: Record = {} + + private readonly COLUMNS_SQL = ` + SELECT + tabs.table_name, + cols.column_name, + cols.data_type, + cols.data_default, + cols.column_id, + cons.constraint_name, + cons.constraint_type, + cons.r_constraint_name, + cons.search_condition + FROM + user_tables tabs + JOIN + user_tab_columns cols + ON tabs.table_name = cols.table_name + LEFT JOIN + user_cons_columns col_cons + ON cols.column_name = col_cons.column_name + AND cols.table_name = col_cons.table_name + LEFT JOIN + user_constraints cons + ON col_cons.constraint_name = cons.constraint_name + AND cons.table_name = cols.table_name + WHERE + (cons.status = 'ENABLED' + OR cons.status IS NULL) + ` + constructor(config: OracleConfig) { + super(SqlClient.ORACLE) + this.config = config } - const UNSUPPORTED_TYPES = ["BLOB", "CLOB", "NCLOB"] + getBindingIdentifier(): string { + return `:${this.index++}` + } - /** - * Raw query response - */ - interface ColumnsResponse { - TABLE_NAME: string - COLUMN_NAME: string - DATA_TYPE: string - DATA_DEFAULT: string | null - COLUMN_ID: number - CONSTRAINT_NAME: string | null - CONSTRAINT_TYPE: string | null - R_CONSTRAINT_NAME: string | null - SEARCH_CONDITION: string | null + getStringConcat(parts: string[]): string { + return parts.join(" || ") } /** - * An oracle constraint + * Map the flat tabular columns and constraints data into a nested object */ - interface OracleConstraint { - name: string - type: string - relatedConstraintName: string | null - searchCondition: string | null - } + private mapColumns(result: Result): { + [key: string]: OracleTable + } { + const oracleTables: { [key: string]: OracleTable } = {} - /** - * An oracle column and it's related constraints - */ - interface OracleColumn { - name: string - type: string - default: string | null - id: number - constraints: { [key: string]: OracleConstraint } - } + if (result.rows) { + result.rows.forEach(row => { + const tableName = row.TABLE_NAME + const columnName = row.COLUMN_NAME + const dataType = row.DATA_TYPE + const dataDefault = row.DATA_DEFAULT + const columnId = row.COLUMN_ID + const constraintName = row.CONSTRAINT_NAME + const constraintType = row.CONSTRAINT_TYPE + const relatedConstraintName = row.R_CONSTRAINT_NAME + const searchCondition = row.SEARCH_CONDITION - /** - * An oracle table and it's related columns - */ - interface OracleTable { - name: string - columns: { [key: string]: OracleColumn } - } - - const OracleContraintTypes = { - PRIMARY: "P", - NOT_NULL_OR_CHECK: "C", - FOREIGN_KEY: "R", - UNIQUE: "U", - } - - class OracleIntegration extends Sql implements DatasourcePlus { - private readonly config: OracleConfig - private index: number = 1 - - public tables: Record = {} - public schemaErrors: Record = {} - - private readonly COLUMNS_SQL = ` - SELECT - tabs.table_name, - cols.column_name, - cols.data_type, - cols.data_default, - cols.column_id, - cons.constraint_name, - cons.constraint_type, - cons.r_constraint_name, - cons.search_condition - FROM - user_tables tabs - JOIN - user_tab_columns cols - ON tabs.table_name = cols.table_name - LEFT JOIN - user_cons_columns col_cons - ON cols.column_name = col_cons.column_name - AND cols.table_name = col_cons.table_name - LEFT JOIN - user_constraints cons - ON col_cons.constraint_name = cons.constraint_name - AND cons.table_name = cols.table_name - WHERE - (cons.status = 'ENABLED' - OR cons.status IS NULL) - ` - constructor(config: OracleConfig) { - super(SqlClient.ORACLE) - this.config = config - } - - getBindingIdentifier(): string { - return `:${this.index++}` - } - - getStringConcat(parts: string[]): string { - return parts.join(" || ") - } - - /** - * Map the flat tabular columns and constraints data into a nested object - */ - private mapColumns(result: Result): { - [key: string]: OracleTable - } { - const oracleTables: { [key: string]: OracleTable } = {} - - if (result.rows) { - result.rows.forEach(row => { - const tableName = row.TABLE_NAME - const columnName = row.COLUMN_NAME - const dataType = row.DATA_TYPE - const dataDefault = row.DATA_DEFAULT - const columnId = row.COLUMN_ID - const constraintName = row.CONSTRAINT_NAME - const constraintType = row.CONSTRAINT_TYPE - const relatedConstraintName = row.R_CONSTRAINT_NAME - const searchCondition = row.SEARCH_CONDITION - - let table = oracleTables[tableName] - if (!table) { - table = { - name: tableName, - columns: {}, - } - oracleTables[tableName] = table - } - - let column = table.columns[columnName] - if (!column) { - column = { - name: columnName, - type: dataType, - default: dataDefault, - id: columnId, - constraints: {}, - } - table.columns[columnName] = column - } - - if (constraintName && constraintType) { - let constraint = column.constraints[constraintName] - if (!constraint) { - constraint = { - name: constraintName, - type: constraintType, - relatedConstraintName: relatedConstraintName, - searchCondition: searchCondition, - } - } - column.constraints[constraintName] = constraint - } - }) - } - - return oracleTables - } - - private static isSupportedColumn(column: OracleColumn) { - return !UNSUPPORTED_TYPES.includes(column.type) - } - - private static isAutoColumn(column: OracleColumn) { - return !!( - column.default && column.default.toLowerCase().includes("nextval") - ) - } - - /** - * No native boolean in oracle. Best we can do is to check if a manual 1 or 0 number constraint has been set up - * This matches the default behaviour for generating DDL used in knex. - */ - private isBooleanType(column: OracleColumn): boolean { - return ( - column.type.toLowerCase() === "number" && - Object.values(column.constraints).filter(c => { - if ( - c.type === OracleContraintTypes.NOT_NULL_OR_CHECK && - c.searchCondition - ) { - const condition = c.searchCondition - .replace(/\s/g, "") // remove spaces - .replace(/[']+/g, "") // remove quotes - if ( - condition.includes("in(0,1)") || - condition.includes("in(1,0)") - ) { - return true - } - } - return false - }).length > 0 - ) - } - - private internalConvertType(column: OracleColumn): { type: string } { - if (this.isBooleanType(column)) { - return { type: FieldTypes.BOOLEAN } - } - - return convertSqlType(column.type) - } - - /** - * Fetches the tables from the oracle table and assigns them to the datasource. - * @param {*} datasourceId - datasourceId to fetch - * @param entities - the tables that are to be built - */ - async buildSchema(datasourceId: string, entities: Record) { - const columnsResponse = await this.internalQuery({ - sql: this.COLUMNS_SQL, - }) - const oracleTables = this.mapColumns(columnsResponse) - - const tables: { [key: string]: Table } = {} - - // iterate each table - Object.values(oracleTables).forEach(oracleTable => { - let table = tables[oracleTable.name] + let table = oracleTables[tableName] if (!table) { table = { - _id: buildExternalTableId(datasourceId, oracleTable.name), - primary: [], - name: oracleTable.name, - schema: {}, + name: tableName, + columns: {}, } - tables[oracleTable.name] = table + oracleTables[tableName] = table } - // iterate each column on the table - Object.values(oracleTable.columns) - // remove columns that we can't read / save - .filter(oracleColumn => - OracleIntegration.isSupportedColumn(oracleColumn) - ) - // match the order of the columns in the db - .sort((c1, c2) => c1.id - c2.id) - .forEach(oracleColumn => { - const columnName = oracleColumn.name - let fieldSchema = table.schema[columnName] - if (!fieldSchema) { - fieldSchema = { - autocolumn: OracleIntegration.isAutoColumn(oracleColumn), - name: columnName, - ...this.internalConvertType(oracleColumn), - } - table.schema[columnName] = fieldSchema + let column = table.columns[columnName] + if (!column) { + column = { + name: columnName, + type: dataType, + default: dataDefault, + id: columnId, + constraints: {}, + } + table.columns[columnName] = column + } + + if (constraintName && constraintType) { + let constraint = column.constraints[constraintName] + if (!constraint) { + constraint = { + name: constraintName, + type: constraintType, + relatedConstraintName: relatedConstraintName, + searchCondition: searchCondition, } - - // iterate each constraint on the column - Object.values(oracleColumn.constraints).forEach( - oracleConstraint => { - if (oracleConstraint.type === OracleContraintTypes.PRIMARY) { - table.primary!.push(columnName) - } - } - ) - }) + } + column.constraints[constraintName] = constraint + } }) - - const final = finaliseExternalTables(tables, entities) - this.tables = final.tables - this.schemaErrors = final.errors } - private async internalQuery(query: SqlQuery): Promise> { - let connection - try { - this.index = 1 - connection = await this.getConnection() + return oracleTables + } - const options: ExecuteOptions = { autoCommit: true } - const bindings: BindParameters = query.bindings || [] + private static isSupportedColumn(column: OracleColumn) { + return !UNSUPPORTED_TYPES.includes(column.type) + } - return await connection.execute(query.sql, bindings, options) - } finally { - if (connection) { - try { - await connection.close() - } catch (err) { - console.error(err) + private static isAutoColumn(column: OracleColumn) { + return !!( + column.default && column.default.toLowerCase().includes("nextval") + ) + } + + /** + * No native boolean in oracle. Best we can do is to check if a manual 1 or 0 number constraint has been set up + * This matches the default behaviour for generating DDL used in knex. + */ + private isBooleanType(column: OracleColumn): boolean { + return ( + column.type.toLowerCase() === "number" && + Object.values(column.constraints).filter(c => { + if ( + c.type === OracleContraintTypes.NOT_NULL_OR_CHECK && + c.searchCondition + ) { + const condition = c.searchCondition + .replace(/\s/g, "") // remove spaces + .replace(/[']+/g, "") // remove quotes + if (condition.includes("in(0,1)") || condition.includes("in(1,0)")) { + return true } } - } + return false + }).length > 0 + ) + } + + private internalConvertType(column: OracleColumn): { type: string } { + if (this.isBooleanType(column)) { + return { type: FieldTypes.BOOLEAN } } - private getConnection = async (): Promise => { - //connectString : "(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA =(SID= ORCL)))" - const connectString = `${this.config.host}:${this.config.port || 1521}/${ - this.config.database - }` - const attributes: ConnectionAttributes = { - user: this.config.user, - password: this.config.password, - connectString, - } - return oracledb.getConnection(attributes) - } + return convertSqlType(column.type) + } - async create(query: SqlQuery | string): Promise { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows && response.rows.length - ? response.rows - : [{ created: true }] - } + /** + * Fetches the tables from the oracle table and assigns them to the datasource. + * @param {*} datasourceId - datasourceId to fetch + * @param entities - the tables that are to be built + */ + async buildSchema(datasourceId: string, entities: Record) { + const columnsResponse = await this.internalQuery({ + sql: this.COLUMNS_SQL, + }) + const oracleTables = this.mapColumns(columnsResponse) - async read(query: SqlQuery | string): Promise { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows ? response.rows : [] - } + const tables: { [key: string]: Table } = {} - async update(query: SqlQuery | string): Promise { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows && response.rows.length - ? response.rows - : [{ updated: true }] - } - - async delete(query: SqlQuery | string): Promise { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows && response.rows.length - ? response.rows - : [{ deleted: true }] - } - - async query(json: QueryJson) { - const operation = this._operation(json) - const input = this._query(json, { disableReturning: true }) - if (Array.isArray(input)) { - const responses = [] - for (let query of input) { - responses.push(await this.internalQuery(query)) - } - return responses - } else { - // read the row to be deleted up front for the return - let deletedRows - if (operation === Operation.DELETE) { - const queryFn = (query: any) => this.internalQuery(query) - deletedRows = await this.getReturningRow(queryFn, json) + // iterate each table + Object.values(oracleTables).forEach(oracleTable => { + let table = tables[oracleTable.name] + if (!table) { + table = { + _id: buildExternalTableId(datasourceId, oracleTable.name), + primary: [], + name: oracleTable.name, + schema: {}, } + tables[oracleTable.name] = table + } - // run the query - const response = await this.internalQuery(input) - - // get the results or return the created / updated / deleted row - if (deletedRows?.rows?.length) { - return deletedRows.rows - } else if (response.rows?.length) { - return response.rows - } else { - // get the last row that was updated - if ( - response.lastRowid && - json.endpoint?.entityId && - operation !== Operation.DELETE - ) { - const lastRow = await this.internalQuery({ - sql: `SELECT * FROM \"${json.endpoint.entityId}\" WHERE ROWID = '${response.lastRowid}'`, - }) - return lastRow.rows - } else { - return [{ [operation.toLowerCase()]: true }] + // iterate each column on the table + Object.values(oracleTable.columns) + // remove columns that we can't read / save + .filter(oracleColumn => + OracleIntegration.isSupportedColumn(oracleColumn) + ) + // match the order of the columns in the db + .sort((c1, c2) => c1.id - c2.id) + .forEach(oracleColumn => { + const columnName = oracleColumn.name + let fieldSchema = table.schema[columnName] + if (!fieldSchema) { + fieldSchema = { + autocolumn: OracleIntegration.isAutoColumn(oracleColumn), + name: columnName, + ...this.internalConvertType(oracleColumn), + } + table.schema[columnName] = fieldSchema } + + // iterate each constraint on the column + Object.values(oracleColumn.constraints).forEach(oracleConstraint => { + if (oracleConstraint.type === OracleContraintTypes.PRIMARY) { + table.primary!.push(columnName) + } + }) + }) + }) + + const final = finaliseExternalTables(tables, entities) + this.tables = final.tables + this.schemaErrors = final.errors + } + + private async internalQuery(query: SqlQuery): Promise> { + let connection + try { + this.index = 1 + connection = await this.getConnection() + + const options: ExecuteOptions = { autoCommit: true } + const bindings: BindParameters = query.bindings || [] + + return await connection.execute(query.sql, bindings, options) + } finally { + if (connection) { + try { + await connection.close() + } catch (err) { + console.error(err) } } } } - module.exports = { - schema: SCHEMA, - integration: OracleIntegration, + private getConnection = async (): Promise => { + //connectString : "(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA =(SID= ORCL)))" + const connectString = `${this.config.host}:${this.config.port || 1521}/${ + this.config.database + }` + const attributes: ConnectionAttributes = { + user: this.config.user, + password: this.config.password, + connectString, + } + return oracledb.getConnection(attributes) + } + + async create(query: SqlQuery | string): Promise { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows && response.rows.length + ? response.rows + : [{ created: true }] + } + + async read(query: SqlQuery | string): Promise { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows ? response.rows : [] + } + + async update(query: SqlQuery | string): Promise { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows && response.rows.length + ? response.rows + : [{ updated: true }] + } + + async delete(query: SqlQuery | string): Promise { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows && response.rows.length + ? response.rows + : [{ deleted: true }] + } + + async query(json: QueryJson) { + const operation = this._operation(json) + const input = this._query(json, { disableReturning: true }) + if (Array.isArray(input)) { + const responses = [] + for (let query of input) { + responses.push(await this.internalQuery(query)) + } + return responses + } else { + // read the row to be deleted up front for the return + let deletedRows + if (operation === Operation.DELETE) { + const queryFn = (query: any) => this.internalQuery(query) + deletedRows = await this.getReturningRow(queryFn, json) + } + + // run the query + const response = await this.internalQuery(input) + + // get the results or return the created / updated / deleted row + if (deletedRows?.rows?.length) { + return deletedRows.rows + } else if (response.rows?.length) { + return response.rows + } else { + // get the last row that was updated + if ( + response.lastRowid && + json.endpoint?.entityId && + operation !== Operation.DELETE + ) { + const lastRow = await this.internalQuery({ + sql: `SELECT * FROM \"${json.endpoint.entityId}\" WHERE ROWID = '${response.lastRowid}'`, + }) + return lastRow.rows + } else { + return [{ [operation.toLowerCase()]: true }] + } + } + } } } + +export default { + schema: SCHEMA, + integration: OracleIntegration, +} diff --git a/packages/server/src/integrations/postgres.ts b/packages/server/src/integrations/postgres.ts index 316311e193..da1124f421 100644 --- a/packages/server/src/integrations/postgres.ts +++ b/packages/server/src/integrations/postgres.ts @@ -16,317 +16,313 @@ import { } from "./utils" import Sql from "./base/sql" -module PostgresModule { - const { Client, types } = require("pg") - const { escapeDangerousCharacters } = require("../utilities") +const { Client, types } = require("pg") +const { escapeDangerousCharacters } = require("../utilities") - // Return "date" and "timestamp" types as plain strings. - // This lets us reference the original stored timezone. - // types is undefined when running in a test env for some reason. - if (types) { - types.setTypeParser(1114, (val: any) => val) // timestamp - types.setTypeParser(1082, (val: any) => val) // date - types.setTypeParser(1184, (val: any) => val) // timestampz - } +// Return "date" and "timestamp" types as plain strings. +// This lets us reference the original stored timezone. +// types is undefined when running in a test env for some reason. +if (types) { + types.setTypeParser(1114, (val: any) => val) // timestamp + types.setTypeParser(1082, (val: any) => val) // date + types.setTypeParser(1184, (val: any) => val) // timestampz +} - const JSON_REGEX = /'{.*}'::json/s +const JSON_REGEX = /'{.*}'::json/s - interface PostgresConfig { - host: string - port: number - database: string - user: string - password: string - schema: string - ssl?: boolean - ca?: string - rejectUnauthorized?: boolean - } +interface PostgresConfig { + host: string + port: number + database: string + user: string + password: string + schema: string + ssl?: boolean + ca?: string + rejectUnauthorized?: boolean +} - const SCHEMA: Integration = { - docs: "https://node-postgres.com", - plus: true, - friendlyName: "PostgreSQL", - type: "Relational", - description: - "PostgreSQL, also known as Postgres, is a free and open-source relational database management system emphasizing extensibility and SQL compliance.", - datasource: { - host: { - type: DatasourceFieldType.STRING, - default: "localhost", - required: true, - }, - port: { - type: DatasourceFieldType.NUMBER, - required: true, - default: 5432, - }, - database: { - type: DatasourceFieldType.STRING, - default: "postgres", - required: true, - }, - user: { - type: DatasourceFieldType.STRING, - default: "root", - required: true, - }, - password: { - type: DatasourceFieldType.PASSWORD, - default: "root", - required: true, - }, - schema: { - type: DatasourceFieldType.STRING, - default: "public", - required: true, - }, - ssl: { - type: DatasourceFieldType.BOOLEAN, - default: false, - required: false, - }, - rejectUnauthorized: { - type: DatasourceFieldType.BOOLEAN, - default: false, - required: false, - }, - ca: { - type: DatasourceFieldType.LONGFORM, - default: false, - required: false, - }, +const SCHEMA: Integration = { + docs: "https://node-postgres.com", + plus: true, + friendlyName: "PostgreSQL", + type: "Relational", + description: + "PostgreSQL, also known as Postgres, is a free and open-source relational database management system emphasizing extensibility and SQL compliance.", + datasource: { + host: { + type: DatasourceFieldType.STRING, + default: "localhost", + required: true, }, - query: { - create: { - type: QueryType.SQL, - }, - read: { - type: QueryType.SQL, - }, - update: { - type: QueryType.SQL, - }, - delete: { - type: QueryType.SQL, - }, + port: { + type: DatasourceFieldType.NUMBER, + required: true, + default: 5432, }, - } + database: { + type: DatasourceFieldType.STRING, + default: "postgres", + required: true, + }, + user: { + type: DatasourceFieldType.STRING, + default: "root", + required: true, + }, + password: { + type: DatasourceFieldType.PASSWORD, + default: "root", + required: true, + }, + schema: { + type: DatasourceFieldType.STRING, + default: "public", + required: true, + }, + ssl: { + type: DatasourceFieldType.BOOLEAN, + default: false, + required: false, + }, + rejectUnauthorized: { + type: DatasourceFieldType.BOOLEAN, + default: false, + required: false, + }, + ca: { + type: DatasourceFieldType.LONGFORM, + default: false, + required: false, + }, + }, + query: { + create: { + type: QueryType.SQL, + }, + read: { + type: QueryType.SQL, + }, + update: { + type: QueryType.SQL, + }, + delete: { + type: QueryType.SQL, + }, + }, +} - class PostgresIntegration extends Sql implements DatasourcePlus { - private readonly client: any - private readonly config: PostgresConfig - private index: number = 1 - private open: boolean - public tables: Record = {} - public schemaErrors: Record = {} +class PostgresIntegration extends Sql implements DatasourcePlus { + private readonly client: any + private readonly config: PostgresConfig + private index: number = 1 + private open: boolean + public tables: Record = {} + public schemaErrors: Record = {} - COLUMNS_SQL!: string + COLUMNS_SQL!: string - PRIMARY_KEYS_SQL = ` - select tc.table_schema, tc.table_name, kc.column_name as primary_key - from information_schema.table_constraints tc - join - information_schema.key_column_usage kc on kc.table_name = tc.table_name - and kc.table_schema = tc.table_schema - and kc.constraint_name = tc.constraint_name - where tc.constraint_type = 'PRIMARY KEY'; - ` + PRIMARY_KEYS_SQL = ` + select tc.table_schema, tc.table_name, kc.column_name as primary_key + from information_schema.table_constraints tc + join + information_schema.key_column_usage kc on kc.table_name = tc.table_name + and kc.table_schema = tc.table_schema + and kc.constraint_name = tc.constraint_name + where tc.constraint_type = 'PRIMARY KEY'; + ` - constructor(config: PostgresConfig) { - super(SqlClient.POSTGRES) - this.config = config + constructor(config: PostgresConfig) { + super(SqlClient.POSTGRES) + this.config = config - let newConfig = { - ...this.config, - ssl: this.config.ssl - ? { - rejectUnauthorized: this.config.rejectUnauthorized, - ca: this.config.ca, - } - : undefined, - } - this.client = new Client(newConfig) - this.open = false - } - - getBindingIdentifier(): string { - return `$${this.index++}` - } - - getStringConcat(parts: string[]): string { - return parts.join(" || ") - } - - async openConnection() { - await this.client.connect() - if (!this.config.schema) { - this.config.schema = "public" - } - this.client.query(`SET search_path TO ${this.config.schema}`) - this.COLUMNS_SQL = `select * from information_schema.columns where table_schema = '${this.config.schema}'` - this.open = true - } - - closeConnection() { - const pg = this - return new Promise((resolve, reject) => { - this.client.end((err: any) => { - pg.open = false - if (err) { - reject(err) - } else { - resolve() + let newConfig = { + ...this.config, + ssl: this.config.ssl + ? { + rejectUnauthorized: this.config.rejectUnauthorized, + ca: this.config.ca, } - }) + : undefined, + } + this.client = new Client(newConfig) + this.open = false + } + + getBindingIdentifier(): string { + return `$${this.index++}` + } + + getStringConcat(parts: string[]): string { + return parts.join(" || ") + } + + async openConnection() { + await this.client.connect() + if (!this.config.schema) { + this.config.schema = "public" + } + this.client.query(`SET search_path TO ${this.config.schema}`) + this.COLUMNS_SQL = `select * from information_schema.columns where table_schema = '${this.config.schema}'` + this.open = true + } + + closeConnection() { + const pg = this + return new Promise((resolve, reject) => { + this.client.end((err: any) => { + pg.open = false + if (err) { + reject(err) + } else { + resolve() + } }) - } + }) + } - async internalQuery(query: SqlQuery, close: boolean = true) { - if (!this.open) { - await this.openConnection() - } - const client = this.client - this.index = 1 - // need to handle a specific issue with json data types in postgres, - // new lines inside the JSON data will break it - if (query && query.sql) { - const matches = query.sql.match(JSON_REGEX) - if (matches && matches.length > 0) { - for (let match of matches) { - const escaped = escapeDangerousCharacters(match) - query.sql = query.sql.replace(match, escaped) - } - } - } - try { - return await client.query(query.sql, query.bindings || []) - } catch (err) { - await this.closeConnection() - // @ts-ignore - throw new Error(err) - } finally { - if (close) { - await this.closeConnection() - } - } - } - - /** - * Fetches the tables from the postgres table and assigns them to the datasource. - * @param {*} datasourceId - datasourceId to fetch - * @param entities - the tables that are to be built - */ - async buildSchema(datasourceId: string, entities: Record) { - let tableKeys: { [key: string]: string[] } = {} + async internalQuery(query: SqlQuery, close: boolean = true) { + if (!this.open) { await this.openConnection() - try { - const primaryKeysResponse = await this.client.query( - this.PRIMARY_KEYS_SQL - ) - for (let table of primaryKeysResponse.rows) { - const tableName = table.table_name - if (!tableKeys[tableName]) { - tableKeys[tableName] = [] - } - const key = table.column_name || table.primary_key - // only add the unique keys - if (key && tableKeys[tableName].indexOf(key) === -1) { - tableKeys[tableName].push(key) - } + } + const client = this.client + this.index = 1 + // need to handle a specific issue with json data types in postgres, + // new lines inside the JSON data will break it + if (query && query.sql) { + const matches = query.sql.match(JSON_REGEX) + if (matches && matches.length > 0) { + for (let match of matches) { + const escaped = escapeDangerousCharacters(match) + query.sql = query.sql.replace(match, escaped) } - } catch (err) { - tableKeys = {} - } - - try { - const columnsResponse = await this.client.query(this.COLUMNS_SQL) - - const tables: { [key: string]: Table } = {} - - for (let column of columnsResponse.rows) { - const tableName: string = column.table_name - const columnName: string = column.column_name - - // table key doesn't exist yet - if (!tables[tableName] || !tables[tableName].schema) { - tables[tableName] = { - _id: buildExternalTableId(datasourceId, tableName), - primary: tableKeys[tableName] || [], - name: tableName, - schema: {}, - } - } - - const identity = !!( - column.identity_generation || - column.identity_start || - column.identity_increment - ) - const hasDefault = - typeof column.column_default === "string" && - column.column_default.startsWith("nextval") - const isGenerated = - column.is_generated && column.is_generated !== "NEVER" - const isAuto: boolean = hasDefault || identity || isGenerated - tables[tableName].schema[columnName] = { - autocolumn: isAuto, - name: columnName, - ...convertSqlType(column.data_type), - externalType: column.data_type, - } - } - - const final = finaliseExternalTables(tables, entities) - this.tables = final.tables - this.schemaErrors = final.errors - } catch (err) { - // @ts-ignore - throw new Error(err) - } finally { - await this.closeConnection() } } - - async create(query: SqlQuery | string) { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows.length ? response.rows : [{ created: true }] - } - - async read(query: SqlQuery | string) { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows - } - - async update(query: SqlQuery | string) { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows.length ? response.rows : [{ updated: true }] - } - - async delete(query: SqlQuery | string) { - const response = await this.internalQuery(getSqlQuery(query)) - return response.rows.length ? response.rows : [{ deleted: true }] - } - - async query(json: QueryJson) { - const operation = this._operation(json).toLowerCase() - const input = this._query(json) - if (Array.isArray(input)) { - const responses = [] - for (let query of input) { - responses.push(await this.internalQuery(query, false)) - } + try { + return await client.query(query.sql, query.bindings || []) + } catch (err) { + await this.closeConnection() + // @ts-ignore + throw new Error(err) + } finally { + if (close) { await this.closeConnection() - return responses - } else { - const response = await this.internalQuery(input) - return response.rows.length ? response.rows : [{ [operation]: true }] } } } - module.exports = { - schema: SCHEMA, - integration: PostgresIntegration, + /** + * Fetches the tables from the postgres table and assigns them to the datasource. + * @param {*} datasourceId - datasourceId to fetch + * @param entities - the tables that are to be built + */ + async buildSchema(datasourceId: string, entities: Record) { + let tableKeys: { [key: string]: string[] } = {} + await this.openConnection() + try { + const primaryKeysResponse = await this.client.query(this.PRIMARY_KEYS_SQL) + for (let table of primaryKeysResponse.rows) { + const tableName = table.table_name + if (!tableKeys[tableName]) { + tableKeys[tableName] = [] + } + const key = table.column_name || table.primary_key + // only add the unique keys + if (key && tableKeys[tableName].indexOf(key) === -1) { + tableKeys[tableName].push(key) + } + } + } catch (err) { + tableKeys = {} + } + + try { + const columnsResponse = await this.client.query(this.COLUMNS_SQL) + + const tables: { [key: string]: Table } = {} + + for (let column of columnsResponse.rows) { + const tableName: string = column.table_name + const columnName: string = column.column_name + + // table key doesn't exist yet + if (!tables[tableName] || !tables[tableName].schema) { + tables[tableName] = { + _id: buildExternalTableId(datasourceId, tableName), + primary: tableKeys[tableName] || [], + name: tableName, + schema: {}, + } + } + + const identity = !!( + column.identity_generation || + column.identity_start || + column.identity_increment + ) + const hasDefault = + typeof column.column_default === "string" && + column.column_default.startsWith("nextval") + const isGenerated = + column.is_generated && column.is_generated !== "NEVER" + const isAuto: boolean = hasDefault || identity || isGenerated + tables[tableName].schema[columnName] = { + autocolumn: isAuto, + name: columnName, + ...convertSqlType(column.data_type), + externalType: column.data_type, + } + } + + const final = finaliseExternalTables(tables, entities) + this.tables = final.tables + this.schemaErrors = final.errors + } catch (err) { + // @ts-ignore + throw new Error(err) + } finally { + await this.closeConnection() + } + } + + async create(query: SqlQuery | string) { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows.length ? response.rows : [{ created: true }] + } + + async read(query: SqlQuery | string) { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows + } + + async update(query: SqlQuery | string) { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows.length ? response.rows : [{ updated: true }] + } + + async delete(query: SqlQuery | string) { + const response = await this.internalQuery(getSqlQuery(query)) + return response.rows.length ? response.rows : [{ deleted: true }] + } + + async query(json: QueryJson) { + const operation = this._operation(json).toLowerCase() + const input = this._query(json) + if (Array.isArray(input)) { + const responses = [] + for (let query of input) { + responses.push(await this.internalQuery(query, false)) + } + await this.closeConnection() + return responses + } else { + const response = await this.internalQuery(input) + return response.rows.length ? response.rows : [{ [operation]: true }] + } } } + +export default { + schema: SCHEMA, + integration: PostgresIntegration, +} diff --git a/packages/server/src/integrations/redis.ts b/packages/server/src/integrations/redis.ts index e8aa13560c..ebf7d2a82a 100644 --- a/packages/server/src/integrations/redis.ts +++ b/packages/server/src/integrations/redis.ts @@ -1,149 +1,147 @@ import { DatasourceFieldType, Integration, QueryType } from "@budibase/types" import Redis from "ioredis" -module RedisModule { - interface RedisConfig { - host: string - port: number - username: string - password?: string - } +interface RedisConfig { + host: string + port: number + username: string + password?: string +} - const SCHEMA: Integration = { - docs: "https://redis.io/docs/", - description: "", - friendlyName: "Redis", - type: "Non-relational", - datasource: { - host: { - type: "string", - required: true, - default: "localhost", - }, - port: { - type: "number", - required: true, - default: 6379, - }, - username: { - type: "string", - required: false, - }, - password: { - type: "password", - required: false, +const SCHEMA: Integration = { + docs: "https://redis.io/docs/", + description: "", + friendlyName: "Redis", + type: "Non-relational", + datasource: { + host: { + type: "string", + required: true, + default: "localhost", + }, + port: { + type: "number", + required: true, + default: 6379, + }, + username: { + type: "string", + required: false, + }, + password: { + type: "password", + required: false, + }, + }, + query: { + create: { + type: QueryType.FIELDS, + fields: { + key: { + type: DatasourceFieldType.STRING, + required: true, + }, + value: { + type: DatasourceFieldType.STRING, + required: true, + }, + ttl: { + type: DatasourceFieldType.NUMBER, + }, }, }, - query: { - create: { - type: QueryType.FIELDS, - fields: { - key: { - type: DatasourceFieldType.STRING, - required: true, - }, - value: { - type: DatasourceFieldType.STRING, - required: true, - }, - ttl: { - type: DatasourceFieldType.NUMBER, - }, + read: { + readable: true, + type: QueryType.FIELDS, + fields: { + key: { + type: DatasourceFieldType.STRING, + required: true, }, }, - read: { - readable: true, - type: QueryType.FIELDS, - fields: { - key: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - delete: { - type: QueryType.FIELDS, - fields: { - key: { - type: DatasourceFieldType.STRING, - required: true, - }, - }, - }, - command: { - readable: true, - displayName: "Redis Command", - type: QueryType.JSON, - }, }, + delete: { + type: QueryType.FIELDS, + fields: { + key: { + type: DatasourceFieldType.STRING, + required: true, + }, + }, + }, + command: { + readable: true, + displayName: "Redis Command", + type: QueryType.JSON, + }, + }, +} + +class RedisIntegration { + private readonly config: RedisConfig + private client: any + + constructor(config: RedisConfig) { + this.config = config + this.client = new Redis({ + host: this.config.host, + port: this.config.port, + username: this.config.username, + password: this.config.password, + }) } - class RedisIntegration { - private readonly config: RedisConfig - private client: any + async disconnect() { + this.client.disconnect() + } - constructor(config: RedisConfig) { - this.config = config - this.client = new Redis({ - host: this.config.host, - port: this.config.port, - username: this.config.username, - password: this.config.password, - }) + async redisContext(query: Function) { + try { + return await query() + } catch (err) { + throw new Error(`Redis error: ${err}`) + } finally { + this.disconnect() } + } - async disconnect() { - this.client.disconnect() - } - - async redisContext(query: Function) { - try { - return await query() - } catch (err) { - throw new Error(`Redis error: ${err}`) - } finally { - this.disconnect() + async create(query: { key: string; value: string; ttl: number }) { + return this.redisContext(async () => { + const response = await this.client.set(query.key, query.value) + if (query.ttl) { + await this.client.expire(query.key, query.ttl) } - } - - async create(query: { key: string; value: string; ttl: number }) { - return this.redisContext(async () => { - const response = await this.client.set(query.key, query.value) - if (query.ttl) { - await this.client.expire(query.key, query.ttl) - } - return response - }) - } - - async read(query: { key: string }) { - return this.redisContext(async () => { - const response = await this.client.get(query.key) - return response - }) - } - - async delete(query: { key: string }) { - return this.redisContext(async () => { - const response = await this.client.del(query.key) - return response - }) - } - - async command(query: { json: string }) { - return this.redisContext(async () => { - const commands = query.json.trim().split(" ") - const pipeline = this.client.pipeline([commands]) - const result = await pipeline.exec() - return { - response: result[0][1], - } - }) - } + return response + }) } - module.exports = { - schema: SCHEMA, - integration: RedisIntegration, + async read(query: { key: string }) { + return this.redisContext(async () => { + const response = await this.client.get(query.key) + return response + }) + } + + async delete(query: { key: string }) { + return this.redisContext(async () => { + const response = await this.client.del(query.key) + return response + }) + } + + async command(query: { json: string }) { + return this.redisContext(async () => { + const commands = query.json.trim().split(" ") + const pipeline = this.client.pipeline([commands]) + const result = await pipeline.exec() + return { + response: result[0][1], + } + }) } } + +export default { + schema: SCHEMA, + integration: RedisIntegration, +} diff --git a/packages/server/src/integrations/rest.ts b/packages/server/src/integrations/rest.ts index 284d2a921a..5126e0100e 100644 --- a/packages/server/src/integrations/rest.ts +++ b/packages/server/src/integrations/rest.ts @@ -14,6 +14,11 @@ import { BearerAuthConfig, } from "../definitions/datasource" import { get } from "lodash" +const fetch = require("node-fetch") +const { formatBytes } = require("../utilities") +const { performance } = require("perf_hooks") +const FormData = require("form-data") +const { URLSearchParams } = require("url") const BodyTypes = { NONE: "none", @@ -50,363 +55,353 @@ const coreFields = { }, } -module RestModule { - const fetch = require("node-fetch") - const { formatBytes } = require("../utilities") - const { performance } = require("perf_hooks") - const FormData = require("form-data") - const { URLSearchParams } = require("url") - const { - parseStringPromise: xmlParser, - Builder: XmlBuilder, - } = require("xml2js") +const { parseStringPromise: xmlParser, Builder: XmlBuilder } = require("xml2js") - const SCHEMA: Integration = { - docs: "https://github.com/node-fetch/node-fetch", - description: - "With the REST API datasource, you can connect, query and pull data from multiple REST APIs. You can then use the retrieved data to build apps.", - friendlyName: "REST API", - type: "API", - datasource: { - url: { - type: DatasourceFieldType.STRING, - default: "", - required: false, - deprecated: true, - }, - defaultHeaders: { - type: DatasourceFieldType.OBJECT, - required: false, - default: {}, - }, +const SCHEMA: Integration = { + docs: "https://github.com/node-fetch/node-fetch", + description: + "With the REST API datasource, you can connect, query and pull data from multiple REST APIs. You can then use the retrieved data to build apps.", + friendlyName: "REST API", + type: "API", + datasource: { + url: { + type: DatasourceFieldType.STRING, + default: "", + required: false, + deprecated: true, }, - query: { - create: { - readable: true, - displayName: "POST", - type: QueryType.FIELDS, - fields: coreFields, - }, - read: { - displayName: "GET", - readable: true, - type: QueryType.FIELDS, - fields: coreFields, - }, - update: { - displayName: "PUT", - readable: true, - type: QueryType.FIELDS, - fields: coreFields, - }, - patch: { - displayName: "PATCH", - readable: true, - type: QueryType.FIELDS, - fields: coreFields, - }, - delete: { - displayName: "DELETE", - type: QueryType.FIELDS, - fields: coreFields, - }, + defaultHeaders: { + type: DatasourceFieldType.OBJECT, + required: false, + default: {}, }, + }, + query: { + create: { + readable: true, + displayName: "POST", + type: QueryType.FIELDS, + fields: coreFields, + }, + read: { + displayName: "GET", + readable: true, + type: QueryType.FIELDS, + fields: coreFields, + }, + update: { + displayName: "PUT", + readable: true, + type: QueryType.FIELDS, + fields: coreFields, + }, + patch: { + displayName: "PATCH", + readable: true, + type: QueryType.FIELDS, + fields: coreFields, + }, + delete: { + displayName: "DELETE", + type: QueryType.FIELDS, + fields: coreFields, + }, + }, +} + +class RestIntegration implements IntegrationBase { + private config: RestConfig + private headers: { + [key: string]: string + } = {} + private startTimeMs: number = performance.now() + + constructor(config: RestConfig) { + this.config = config } - class RestIntegration implements IntegrationBase { - private config: RestConfig - private headers: { - [key: string]: string - } = {} - private startTimeMs: number = performance.now() - - constructor(config: RestConfig) { - this.config = config + async parseResponse(response: any, pagination: PaginationConfig | null) { + let data, raw, headers + const contentType = response.headers.get("content-type") || "" + try { + if (contentType.includes("application/json")) { + data = await response.json() + raw = JSON.stringify(data) + } else if ( + contentType.includes("text/xml") || + contentType.includes("application/xml") + ) { + const rawXml = await response.text() + data = + (await xmlParser(rawXml, { + explicitArray: false, + trim: true, + explicitRoot: false, + })) || {} + // there is only one structure, its an array, return the array so it appears as rows + const keys = Object.keys(data) + if (keys.length === 1 && Array.isArray(data[keys[0]])) { + data = data[keys[0]] + } + raw = rawXml + } else { + data = await response.text() + raw = data + } + } catch (err) { + throw "Failed to parse response body." + } + const size = formatBytes( + response.headers.get("content-length") || Buffer.byteLength(raw, "utf8") + ) + const time = `${Math.round(performance.now() - this.startTimeMs)}ms` + headers = response.headers.raw() + for (let [key, value] of Object.entries(headers)) { + headers[key] = Array.isArray(value) ? value[0] : value } - async parseResponse(response: any, pagination: PaginationConfig | null) { - let data, raw, headers - const contentType = response.headers.get("content-type") || "" - try { - if (contentType.includes("application/json")) { - data = await response.json() - raw = JSON.stringify(data) - } else if ( - contentType.includes("text/xml") || - contentType.includes("application/xml") - ) { - const rawXml = await response.text() - data = - (await xmlParser(rawXml, { - explicitArray: false, - trim: true, - explicitRoot: false, - })) || {} - // there is only one structure, its an array, return the array so it appears as rows - const keys = Object.keys(data) - if (keys.length === 1 && Array.isArray(data[keys[0]])) { - data = data[keys[0]] - } - raw = rawXml - } else { - data = await response.text() - raw = data - } - } catch (err) { - throw "Failed to parse response body." - } - const size = formatBytes( - response.headers.get("content-length") || Buffer.byteLength(raw, "utf8") - ) - const time = `${Math.round(performance.now() - this.startTimeMs)}ms` - headers = response.headers.raw() - for (let [key, value] of Object.entries(headers)) { - headers[key] = Array.isArray(value) ? value[0] : value + // Check if a pagination cursor exists in the response + let nextCursor = null + if (pagination?.responseParam) { + nextCursor = get(data, pagination.responseParam) + } + + return { + data, + info: { + code: response.status, + size, + time, + }, + extra: { + raw, + headers, + }, + pagination: { + cursor: nextCursor, + }, + } + } + + getUrl( + path: string, + queryString: string, + pagination: PaginationConfig | null, + paginationValues: PaginationValues | null + ): string { + // Add pagination params to query string if required + if (pagination?.location === "query" && paginationValues) { + const { pageParam, sizeParam } = pagination + const params = new URLSearchParams() + + // Append page number or cursor param if configured + if (pageParam && paginationValues.page != null) { + params.append(pageParam, paginationValues.page) } - // Check if a pagination cursor exists in the response - let nextCursor = null - if (pagination?.responseParam) { - nextCursor = get(data, pagination.responseParam) + // Append page size param if configured + if (sizeParam && paginationValues.limit != null) { + params.append(sizeParam, paginationValues.limit) } - return { - data, - info: { - code: response.status, - size, - time, - }, - extra: { - raw, - headers, - }, - pagination: { - cursor: nextCursor, - }, + // Prepend query string with pagination params + let paginationString = params.toString() + if (paginationString) { + queryString = `${paginationString}&${queryString}` } } - getUrl( - path: string, - queryString: string, - pagination: PaginationConfig | null, - paginationValues: PaginationValues | null - ): string { - // Add pagination params to query string if required - if (pagination?.location === "query" && paginationValues) { - const { pageParam, sizeParam } = pagination - const params = new URLSearchParams() - - // Append page number or cursor param if configured - if (pageParam && paginationValues.page != null) { - params.append(pageParam, paginationValues.page) - } - - // Append page size param if configured - if (sizeParam && paginationValues.limit != null) { - params.append(sizeParam, paginationValues.limit) - } - - // Prepend query string with pagination params - let paginationString = params.toString() - if (paginationString) { - queryString = `${paginationString}&${queryString}` - } - } - - const main = `${path}?${queryString}` - let complete = main - if (this.config.url && !main.startsWith("http")) { - complete = !this.config.url ? main : `${this.config.url}/${main}` - } - if (!complete.startsWith("http")) { - complete = `http://${complete}` - } - return complete + const main = `${path}?${queryString}` + let complete = main + if (this.config.url && !main.startsWith("http")) { + complete = !this.config.url ? main : `${this.config.url}/${main}` } + if (!complete.startsWith("http")) { + complete = `http://${complete}` + } + return complete + } - addBody( - bodyType: string, - body: string | any, - input: any, - pagination: PaginationConfig | null, - paginationValues: PaginationValues | null - ) { - if (!input.headers) { - input.headers = {} - } - if (bodyType === BodyTypes.NONE) { - return input - } - let error, - object: any = {}, - string = "" - try { - if (body) { - string = typeof body !== "string" ? JSON.stringify(body) : body - object = typeof body === "object" ? body : JSON.parse(body) - } - } catch (err) { - error = err - } - - // Util to add pagination values to a certain body type - const addPaginationToBody = (insertFn: Function) => { - if (pagination?.location === "body") { - if (pagination?.pageParam && paginationValues?.page != null) { - insertFn(pagination.pageParam, paginationValues.page) - } - if (pagination?.sizeParam && paginationValues?.limit != null) { - insertFn(pagination.sizeParam, paginationValues.limit) - } - } - } - - switch (bodyType) { - case BodyTypes.TEXT: - // content type defaults to plaintext - input.body = string - break - case BodyTypes.ENCODED: - const params = new URLSearchParams() - for (let [key, value] of Object.entries(object)) { - params.append(key, value) - } - addPaginationToBody((key: string, value: any) => { - params.append(key, value) - }) - input.body = params - break - case BodyTypes.FORM_DATA: - const form = new FormData() - for (let [key, value] of Object.entries(object)) { - form.append(key, value) - } - addPaginationToBody((key: string, value: any) => { - form.append(key, value) - }) - input.body = form - break - case BodyTypes.XML: - if (object != null && Object.keys(object).length) { - string = new XmlBuilder().buildObject(object) - } - input.body = string - input.headers["Content-Type"] = "application/xml" - break - case BodyTypes.JSON: - // if JSON error, throw it - if (error) { - throw "Invalid JSON for request body" - } - addPaginationToBody((key: string, value: any) => { - object[key] = value - }) - input.body = JSON.stringify(object) - input.headers["Content-Type"] = "application/json" - break - } + addBody( + bodyType: string, + body: string | any, + input: any, + pagination: PaginationConfig | null, + paginationValues: PaginationValues | null + ) { + if (!input.headers) { + input.headers = {} + } + if (bodyType === BodyTypes.NONE) { return input } + let error, + object: any = {}, + string = "" + try { + if (body) { + string = typeof body !== "string" ? JSON.stringify(body) : body + object = typeof body === "object" ? body : JSON.parse(body) + } + } catch (err) { + error = err + } - getAuthHeaders(authConfigId: string): { [key: string]: any } { - let headers: any = {} - - if (this.config.authConfigs && authConfigId) { - const authConfig = this.config.authConfigs.filter( - c => c._id === authConfigId - )[0] - // check the config still exists before proceeding - // if not - do nothing - if (authConfig) { - let config - switch (authConfig.type) { - case AuthType.BASIC: - config = authConfig.config as BasicAuthConfig - headers.Authorization = `Basic ${Buffer.from( - `${config.username}:${config.password}` - ).toString("base64")}` - break - case AuthType.BEARER: - config = authConfig.config as BearerAuthConfig - headers.Authorization = `Bearer ${config.token}` - break - } + // Util to add pagination values to a certain body type + const addPaginationToBody = (insertFn: Function) => { + if (pagination?.location === "body") { + if (pagination?.pageParam && paginationValues?.page != null) { + insertFn(pagination.pageParam, paginationValues.page) + } + if (pagination?.sizeParam && paginationValues?.limit != null) { + insertFn(pagination.sizeParam, paginationValues.limit) } } - - return headers } - async _req(query: RestQuery) { - const { - path = "", - queryString = "", - headers = {}, - method = "GET", - disabledHeaders, - bodyType, - requestBody, - authConfigId, - pagination, - paginationValues, - } = query - const authHeaders = this.getAuthHeaders(authConfigId) - - this.headers = { - ...this.config.defaultHeaders, - ...headers, - ...authHeaders, - } - - if (disabledHeaders) { - for (let headerKey of Object.keys(this.headers)) { - if (disabledHeaders[headerKey]) { - delete this.headers[headerKey] - } + switch (bodyType) { + case BodyTypes.TEXT: + // content type defaults to plaintext + input.body = string + break + case BodyTypes.ENCODED: + const params = new URLSearchParams() + for (let [key, value] of Object.entries(object)) { + params.append(key, value) } - } - - let input: any = { method, headers: this.headers } - input = this.addBody( - bodyType, - requestBody, - input, - pagination, - paginationValues - ) - - this.startTimeMs = performance.now() - const url = this.getUrl(path, queryString, pagination, paginationValues) - const response = await fetch(url, input) - return await this.parseResponse(response, pagination) - } - - async create(opts: RestQuery) { - return this._req({ ...opts, method: "POST" }) - } - - async read(opts: RestQuery) { - return this._req({ ...opts, method: "GET" }) - } - - async update(opts: RestQuery) { - return this._req({ ...opts, method: "PUT" }) - } - - async patch(opts: RestQuery) { - return this._req({ ...opts, method: "PATCH" }) - } - - async delete(opts: RestQuery) { - return this._req({ ...opts, method: "DELETE" }) + addPaginationToBody((key: string, value: any) => { + params.append(key, value) + }) + input.body = params + break + case BodyTypes.FORM_DATA: + const form = new FormData() + for (let [key, value] of Object.entries(object)) { + form.append(key, value) + } + addPaginationToBody((key: string, value: any) => { + form.append(key, value) + }) + input.body = form + break + case BodyTypes.XML: + if (object != null && Object.keys(object).length) { + string = new XmlBuilder().buildObject(object) + } + input.body = string + input.headers["Content-Type"] = "application/xml" + break + case BodyTypes.JSON: + // if JSON error, throw it + if (error) { + throw "Invalid JSON for request body" + } + addPaginationToBody((key: string, value: any) => { + object[key] = value + }) + input.body = JSON.stringify(object) + input.headers["Content-Type"] = "application/json" + break } + return input } - module.exports = { - schema: SCHEMA, - integration: RestIntegration, - AuthType, + getAuthHeaders(authConfigId: string): { [key: string]: any } { + let headers: any = {} + + if (this.config.authConfigs && authConfigId) { + const authConfig = this.config.authConfigs.filter( + c => c._id === authConfigId + )[0] + // check the config still exists before proceeding + // if not - do nothing + if (authConfig) { + let config + switch (authConfig.type) { + case AuthType.BASIC: + config = authConfig.config as BasicAuthConfig + headers.Authorization = `Basic ${Buffer.from( + `${config.username}:${config.password}` + ).toString("base64")}` + break + case AuthType.BEARER: + config = authConfig.config as BearerAuthConfig + headers.Authorization = `Bearer ${config.token}` + break + } + } + } + + return headers + } + + async _req(query: RestQuery) { + const { + path = "", + queryString = "", + headers = {}, + method = "GET", + disabledHeaders, + bodyType, + requestBody, + authConfigId, + pagination, + paginationValues, + } = query + const authHeaders = this.getAuthHeaders(authConfigId) + + this.headers = { + ...this.config.defaultHeaders, + ...headers, + ...authHeaders, + } + + if (disabledHeaders) { + for (let headerKey of Object.keys(this.headers)) { + if (disabledHeaders[headerKey]) { + delete this.headers[headerKey] + } + } + } + + let input: any = { method, headers: this.headers } + input = this.addBody( + bodyType, + requestBody, + input, + pagination, + paginationValues + ) + + this.startTimeMs = performance.now() + const url = this.getUrl(path, queryString, pagination, paginationValues) + const response = await fetch(url, input) + return await this.parseResponse(response, pagination) + } + + async create(opts: RestQuery) { + return this._req({ ...opts, method: "POST" }) + } + + async read(opts: RestQuery) { + return this._req({ ...opts, method: "GET" }) + } + + async update(opts: RestQuery) { + return this._req({ ...opts, method: "PUT" }) + } + + async patch(opts: RestQuery) { + return this._req({ ...opts, method: "PATCH" }) + } + + async delete(opts: RestQuery) { + return this._req({ ...opts, method: "DELETE" }) } } + +export default { + schema: SCHEMA, + integration: RestIntegration, + AuthType, +} diff --git a/packages/server/src/integrations/s3.ts b/packages/server/src/integrations/s3.ts index e8da696424..f92124082e 100644 --- a/packages/server/src/integrations/s3.ts +++ b/packages/server/src/integrations/s3.ts @@ -1,86 +1,83 @@ import { Integration, QueryType, IntegrationBase } from "@budibase/types" +const AWS = require("aws-sdk") -module S3Module { - const AWS = require("aws-sdk") +interface S3Config { + region: string + accessKeyId: string + secretAccessKey: string + s3ForcePathStyle: boolean + endpoint?: string +} - interface S3Config { - region: string - accessKeyId: string - secretAccessKey: string - s3ForcePathStyle: boolean - endpoint?: string - } - - const SCHEMA: Integration = { - docs: "https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html", - description: - "Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance.", - friendlyName: "Amazon S3", - type: "Object store", - datasource: { - region: { - type: "string", - required: false, - default: "us-east-1", - }, - accessKeyId: { - type: "password", - required: true, - }, - secretAccessKey: { - type: "password", - required: true, - }, - endpoint: { - type: "string", - required: false, - }, - signatureVersion: { - type: "string", - required: false, - default: "v4", - }, +const SCHEMA: Integration = { + docs: "https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html", + description: + "Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance.", + friendlyName: "Amazon S3", + type: "Object store", + datasource: { + region: { + type: "string", + required: false, + default: "us-east-1", }, - query: { - read: { - type: QueryType.FIELDS, - fields: { - bucket: { - type: "string", - required: true, - }, + accessKeyId: { + type: "password", + required: true, + }, + secretAccessKey: { + type: "password", + required: true, + }, + endpoint: { + type: "string", + required: false, + }, + signatureVersion: { + type: "string", + required: false, + default: "v4", + }, + }, + query: { + read: { + type: QueryType.FIELDS, + fields: { + bucket: { + type: "string", + required: true, }, }, }, - } + }, +} - class S3Integration implements IntegrationBase { - private readonly config: S3Config - private client: any +class S3Integration implements IntegrationBase { + private readonly config: S3Config + private client: any - constructor(config: S3Config) { - this.config = config - if (this.config.endpoint) { - this.config.s3ForcePathStyle = true - } else { - delete this.config.endpoint - } - - this.client = new AWS.S3(this.config) + constructor(config: S3Config) { + this.config = config + if (this.config.endpoint) { + this.config.s3ForcePathStyle = true + } else { + delete this.config.endpoint } - async read(query: { bucket: string }) { - const response = await this.client - .listObjects({ - Bucket: query.bucket, - }) - .promise() - return response.Contents - } + this.client = new AWS.S3(this.config) } - module.exports = { - schema: SCHEMA, - integration: S3Integration, + async read(query: { bucket: string }) { + const response = await this.client + .listObjects({ + Bucket: query.bucket, + }) + .promise() + return response.Contents } } + +export default { + schema: SCHEMA, + integration: S3Integration, +} diff --git a/packages/server/src/integrations/snowflake.ts b/packages/server/src/integrations/snowflake.ts index 7155d27b66..db702520f9 100644 --- a/packages/server/src/integrations/snowflake.ts +++ b/packages/server/src/integrations/snowflake.ts @@ -1,99 +1,97 @@ import { Integration, QueryType, SqlQuery } from "@budibase/types" import { Snowflake } from "snowflake-promise" -module SnowflakeModule { - interface SnowflakeConfig { - account: string - username: string - password: string - warehouse: string - database: string - schema: string - } +interface SnowflakeConfig { + account: string + username: string + password: string + warehouse: string + database: string + schema: string +} - const SCHEMA: Integration = { - docs: "https://developers.snowflake.com/", - description: - "Snowflake is a solution for data warehousing, data lakes, data engineering, data science, data application development, and securely sharing and consuming shared data.", - friendlyName: "Snowflake", - type: "Relational", - datasource: { - account: { - type: "string", - required: true, - }, - username: { - type: "string", - required: true, - }, - password: { - type: "password", - required: true, - }, - warehouse: { - type: "string", - required: true, - }, - database: { - type: "string", - required: true, - }, - schema: { - type: "string", - required: true, - }, +const SCHEMA: Integration = { + docs: "https://developers.snowflake.com/", + description: + "Snowflake is a solution for data warehousing, data lakes, data engineering, data science, data application development, and securely sharing and consuming shared data.", + friendlyName: "Snowflake", + type: "Relational", + datasource: { + account: { + type: "string", + required: true, }, - query: { - create: { - type: QueryType.SQL, - }, - read: { - type: QueryType.SQL, - }, - update: { - type: QueryType.SQL, - }, - delete: { - type: QueryType.SQL, - }, + username: { + type: "string", + required: true, }, + password: { + type: "password", + required: true, + }, + warehouse: { + type: "string", + required: true, + }, + database: { + type: "string", + required: true, + }, + schema: { + type: "string", + required: true, + }, + }, + query: { + create: { + type: QueryType.SQL, + }, + read: { + type: QueryType.SQL, + }, + update: { + type: QueryType.SQL, + }, + delete: { + type: QueryType.SQL, + }, + }, +} + +class SnowflakeIntegration { + private client: Snowflake + + constructor(config: SnowflakeConfig) { + this.client = new Snowflake(config) } - class SnowflakeIntegration { - private client: Snowflake - - constructor(config: SnowflakeConfig) { - this.client = new Snowflake(config) - } - - async internalQuery(query: SqlQuery) { - await this.client.connect() - try { - return await this.client.execute(query.sql) - } catch (err: any) { - throw err?.message.split(":")[1] || err?.message - } - } - - async create(query: SqlQuery) { - return this.internalQuery(query) - } - - async read(query: SqlQuery) { - return this.internalQuery(query) - } - - async update(query: SqlQuery) { - return this.internalQuery(query) - } - - async delete(query: SqlQuery) { - return this.internalQuery(query) + async internalQuery(query: SqlQuery) { + await this.client.connect() + try { + return await this.client.execute(query.sql) + } catch (err: any) { + throw err?.message.split(":")[1] || err?.message } } - module.exports = { - schema: SCHEMA, - integration: SnowflakeIntegration, + async create(query: SqlQuery) { + return this.internalQuery(query) + } + + async read(query: SqlQuery) { + return this.internalQuery(query) + } + + async update(query: SqlQuery) { + return this.internalQuery(query) + } + + async delete(query: SqlQuery) { + return this.internalQuery(query) } } + +export default { + schema: SCHEMA, + integration: SnowflakeIntegration, +} diff --git a/packages/types/src/documents/index.ts b/packages/types/src/documents/index.ts index 4f5b278a4b..1afee41599 100644 --- a/packages/types/src/documents/index.ts +++ b/packages/types/src/documents/index.ts @@ -1,5 +1,6 @@ export * from "./account" export * from "./app" export * from "./global" +export * from "./plugin" export * from "./platform" export * from "./document" diff --git a/packages/types/src/documents/plugin/index.ts b/packages/types/src/documents/plugin/index.ts new file mode 100644 index 0000000000..03a239a6c9 --- /dev/null +++ b/packages/types/src/documents/plugin/index.ts @@ -0,0 +1,4 @@ +export enum PluginType { + DATASOURCE = "datasource", + COMPONENT = "component", +} From 08145869cc60d81e3e942d9514dfbce48fe7af64 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 15 Aug 2022 11:23:27 +0100 Subject: [PATCH 034/162] Rename custom components to plugins in the new component panel --- .../[componentId]/new/_components/NewComponentPanel.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 b0cd544977..c18df34556 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 @@ -56,7 +56,7 @@ // Add custom components category if (customComponents?.length) { enrichedStructure.push({ - name: "Custom components", + name: "Plugins", isCategory: true, children: customComponents.map(x => ({ ...definitions[x], From 3388008f0b27c10b902fcc7b99d0f2eebe073176 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 15 Aug 2022 18:38:09 +0100 Subject: [PATCH 035/162] Adding custom datasources to UI. --- .../DatasourceNavigator/icons/Custom.svelte | 39 +++++++++++++++++++ .../DatasourceNavigator/icons/index.js | 2 + .../modals/CreateDatasourceModal.svelte | 10 ++++- .../server/src/api/controllers/datasource.js | 8 ++-- .../server/src/integrations/base/query.ts | 4 +- packages/server/src/integrations/index.ts | 20 ++++++++-- packages/server/src/threads/query.ts | 4 +- 7 files changed, 75 insertions(+), 12 deletions(-) create mode 100644 packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte diff --git a/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte b/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte new file mode 100644 index 0000000000..354b7a3358 --- /dev/null +++ b/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte @@ -0,0 +1,39 @@ + + + + + + + + + + diff --git a/packages/builder/src/components/backend/DatasourceNavigator/icons/index.js b/packages/builder/src/components/backend/DatasourceNavigator/icons/index.js index 404895f05a..267ed32b6e 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/icons/index.js +++ b/packages/builder/src/components/backend/DatasourceNavigator/icons/index.js @@ -15,6 +15,7 @@ import GoogleSheets from "./GoogleSheets.svelte" import Firebase from "./Firebase.svelte" import Redis from "./Redis.svelte" import Snowflake from "./Snowflake.svelte" +import Custom from "./Custom.svelte" export default { BUDIBASE: Budibase, @@ -34,4 +35,5 @@ export default { FIRESTORE: Firebase, REDIS: Redis, SNOWFLAKE: Snowflake, + CUSTOM: Custom, } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 8d34c292f3..2d5e6976bf 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -92,6 +92,14 @@ } integrations = newIntegrations } + + function getIcon(integrationType, schema) { + if (schema.custom) { + return ICONS.CUSTOM + } else { + return ICONS[integrationType] + } + } @@ -158,7 +166,7 @@ >
diff --git a/packages/server/src/api/controllers/datasource.js b/packages/server/src/api/controllers/datasource.js index 8b9b765a5f..36d345912e 100644 --- a/packages/server/src/api/controllers/datasource.js +++ b/packages/server/src/api/controllers/datasource.js @@ -7,7 +7,7 @@ const { getTableParams, } = require("../../db/utils") const { BuildSchemaErrors, InvalidColumns } = require("../../constants") -const { integrations } = require("../../integrations") +const { getIntegration } = require("../../integrations") const { getDatasourceAndQuery } = require("./row/utils") const { invalidateDynamicVariables } = require("../../threads/utils") const { getAppDB } = require("@budibase/backend-core/context") @@ -114,7 +114,7 @@ exports.update = async function (ctx) { // Drain connection pools when configuration is changed if (datasource.source) { - const source = integrations[datasource.source] + const source = await getIntegration(datasource.source) if (source && source.pool) { await source.pool.end() } @@ -149,7 +149,7 @@ exports.save = async function (ctx) { // Drain connection pools when configuration is changed if (datasource.source) { - const source = integrations[datasource.source] + const source = await getIntegration(datasource.source) if (source && source.pool) { await source.pool.end() } @@ -218,7 +218,7 @@ function updateError(error, newError, tables) { } const buildSchemaHelper = async datasource => { - const Connector = integrations[datasource.source] + const Connector = await getIntegration(datasource.source) // Connect to the DB and build the schema const connector = new Connector(datasource.config) diff --git a/packages/server/src/integrations/base/query.ts b/packages/server/src/integrations/base/query.ts index 1f3ed3dd74..7435b28141 100644 --- a/packages/server/src/integrations/base/query.ts +++ b/packages/server/src/integrations/base/query.ts @@ -1,11 +1,11 @@ import { QueryJson, Datasource } from "@budibase/types" -const { integrations } = require("../index") +const { getIntegration } = require("../index") export async function makeExternalQuery( datasource: Datasource, json: QueryJson ) { - const Integration = integrations[datasource.source] + const Integration = await getIntegration(datasource.source) // query is the opinionated function if (Integration.prototype.query) { const integration = new Integration(datasource.config) diff --git a/packages/server/src/integrations/index.ts b/packages/server/src/integrations/index.ts index bde7235ac8..bf267e46cc 100644 --- a/packages/server/src/integrations/index.ts +++ b/packages/server/src/integrations/index.ts @@ -67,8 +67,22 @@ if (environment.SELF_HOSTED) { module.exports = { getDefinitions: async () => { - const custom = await getPlugins(PluginType.DATASOURCE) - return cloneDeep(DEFINITIONS) + const plugins = await getPlugins(PluginType.DATASOURCE) + // extract the actual schema from each custom + const pluginSchemas: { [key: string]: Integration } = {} + for (let plugin of plugins) { + const sourceId = plugin.name + pluginSchemas[sourceId] = { + ...plugin.schema["schema"], + custom: true, + } + } + return { + ...cloneDeep(DEFINITIONS), + ...pluginSchemas, + } + }, + getIntegration: async () => { + return INTEGRATIONS }, - integrations: INTEGRATIONS, } diff --git a/packages/server/src/threads/query.ts b/packages/server/src/threads/query.ts index 6b93a00200..86cbf89c87 100644 --- a/packages/server/src/threads/query.ts +++ b/packages/server/src/threads/query.ts @@ -2,7 +2,7 @@ import { default as threadUtils } from "./utils" threadUtils.threadSetup() import { WorkerCallback, QueryEvent, QueryVariable } from "./definitions" const ScriptRunner = require("../utilities/scriptRunner") -const { integrations } = require("../integrations") +const { getIntegration } = require("../integrations") const { processStringSync } = require("@budibase/string-templates") const { doInAppContext, getAppDB } = require("@budibase/backend-core/context") const { @@ -62,7 +62,7 @@ class QueryRunner { let datasourceClone = cloneDeep(datasource) let fieldsClone = cloneDeep(fields) - const Integration = integrations[datasourceClone.source] + const Integration = await getIntegration(datasourceClone.source) if (!Integration) { throw "Integration type does not exist." } From 54907ad7b0ac41a232daaf1ffd81d29507e6b4da Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 15 Aug 2022 22:23:45 +0100 Subject: [PATCH 036/162] Add hot reloading for component plugins via watched plugin directory --- .../templates/app-service-deployment.yaml | 8 +- hosting/.env | 5 +- hosting/hosting.properties | 5 +- packages/server/package.json | 1 + packages/server/scripts/dev/manage.js | 1 + packages/server/src/api/controllers/plugin.ts | 93 +-- packages/server/src/app.ts | 28 + packages/server/src/environment.js | 1 + packages/server/yarn.lock | 645 +++++++++++++++++- packages/types/src/documents/plugin/index.ts | 5 + 10 files changed, 734 insertions(+), 58 deletions(-) diff --git a/charts/budibase/templates/app-service-deployment.yaml b/charts/budibase/templates/app-service-deployment.yaml index fd46e77647..332637d971 100644 --- a/charts/budibase/templates/app-service-deployment.yaml +++ b/charts/budibase/templates/app-service-deployment.yaml @@ -124,11 +124,15 @@ spec: value: {{ .Values.globals.tenantFeatureFlags | quote }} {{ if .Values.globals.bbAdminUserEmail }} - name: BB_ADMIN_USER_EMAIL - value: { { .Values.globals.bbAdminUserEmail | quote } } + value: {{ .Values.globals.bbAdminUserEmail | quote }} {{ end }} {{ if .Values.globals.bbAdminUserPassword }} - name: BB_ADMIN_USER_PASSWORD - value: { { .Values.globals.bbAdminUserPassword | quote } } + value: {{ .Values.globals.bbAdminUserPassword | quote }} + {{ end }} + {{ if .Values.globals.pluginsDir }} + - name: PLUGINS_DIR + value: { { .Values.globals.pluginsDir | quote }} {{ end }} image: budibase/apps:{{ .Values.globals.appVersion }} diff --git a/hosting/.env b/hosting/.env index 11dd661bf1..c5638a266f 100644 --- a/hosting/.env +++ b/hosting/.env @@ -22,4 +22,7 @@ BUDIBASE_ENVIRONMENT=PRODUCTION # An admin user can be automatically created initially if these are set BB_ADMIN_USER_EMAIL= -BB_ADMIN_USER_PASSWORD= \ No newline at end of file +BB_ADMIN_USER_PASSWORD= + +# A path that is watched for plugin bundles. Any bundles found are imported automatically/ +PLUGINS_DIR= \ No newline at end of file diff --git a/hosting/hosting.properties b/hosting/hosting.properties index 11dd661bf1..c5638a266f 100644 --- a/hosting/hosting.properties +++ b/hosting/hosting.properties @@ -22,4 +22,7 @@ BUDIBASE_ENVIRONMENT=PRODUCTION # An admin user can be automatically created initially if these are set BB_ADMIN_USER_EMAIL= -BB_ADMIN_USER_PASSWORD= \ No newline at end of file +BB_ADMIN_USER_PASSWORD= + +# A path that is watched for plugin bundles. Any bundles found are imported automatically/ +PLUGINS_DIR= \ No newline at end of file diff --git a/packages/server/package.json b/packages/server/package.json index 2bea771ad7..0a24f767e0 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -95,6 +95,7 @@ "bcryptjs": "2.4.3", "bull": "3.29.3", "chmodr": "1.2.0", + "chokidar": "^3.5.3", "csvtojson": "2.0.10", "curlconverter": "3.21.0", "dotenv": "8.2.0", diff --git a/packages/server/scripts/dev/manage.js b/packages/server/scripts/dev/manage.js index fc9fde0a02..8a5f8e9477 100644 --- a/packages/server/scripts/dev/manage.js +++ b/packages/server/scripts/dev/manage.js @@ -58,6 +58,7 @@ async function init() { DEPLOYMENT_ENVIRONMENT: "development", BB_ADMIN_USER_EMAIL: "", BB_ADMIN_USER_PASSWORD: "", + PLUGINS_DIR: "", } let envFile = "" Object.keys(envFileJson).forEach(key => { diff --git a/packages/server/src/api/controllers/plugin.ts b/packages/server/src/api/controllers/plugin.ts index 48104f24b9..93e569e0c8 100644 --- a/packages/server/src/api/controllers/plugin.ts +++ b/packages/server/src/api/controllers/plugin.ts @@ -3,7 +3,7 @@ import { extractPluginTarball } from "../../utilities/fileSystem" import { getGlobalDB } from "@budibase/backend-core/tenancy" import { generatePluginID, getPluginParams } from "../../db/utils" import { uploadDirectory } from "@budibase/backend-core/objectStore" -import { PluginType } from "@budibase/types" +import { PluginType, FileType } from "@budibase/types" export async function getPlugins(type?: PluginType) { const db = getGlobalDB() @@ -21,56 +21,16 @@ export async function getPlugins(type?: PluginType) { } export async function upload(ctx: any) { - const plugins = + const plugins: FileType[] = ctx.request.files.file.length > 1 ? Array.from(ctx.request.files.file) : [ctx.request.files.file] - const db = getGlobalDB() try { let docs = [] // can do single or multiple plugins for (let plugin of plugins) { - const { metadata, directory } = await extractPluginTarball(plugin) - const version = metadata.package.version, - name = metadata.package.name, - description = metadata.package.description - - // first open the tarball into tmp directory - const bucketPath = `${name}/${version}/` - const files = await uploadDirectory( - ObjectStoreBuckets.PLUGINS, - directory, - bucketPath - ) - const jsFile = files.find((file: any) => file.name.endsWith(".js")) - if (!jsFile) { - throw new Error(`Plugin missing .js file.`) - } - const jsFileName = jsFile.name - const pluginId = generatePluginID(name, version) - - // overwrite existing docs entirely if they exist - let rev - try { - const existing = await db.get(pluginId) - rev = existing._rev - } catch (err) { - rev = undefined - } - const doc = { - _id: pluginId, - _rev: rev, - name, - version, - description, - ...metadata, - jsUrl: `${bucketPath}${jsFileName}`, - } - const response = await db.put(doc) - docs.push({ - ...doc, - _rev: response.rev, - }) + const doc = await processPlugin(plugin) + docs.push(doc) } ctx.body = { message: "Plugin(s) uploaded successfully", @@ -87,3 +47,48 @@ export async function fetch(ctx: any) { } export async function destroy(ctx: any) {} + +export async function processPlugin(plugin: FileType) { + const db = getGlobalDB() + const { metadata, directory } = await extractPluginTarball(plugin) + const version = metadata.package.version, + name = metadata.package.name, + description = metadata.package.description + + // first open the tarball into tmp directory + const bucketPath = `${name}/${version}/` + const files = await uploadDirectory( + ObjectStoreBuckets.PLUGINS, + directory, + bucketPath + ) + const jsFile = files.find((file: any) => file.name.endsWith(".js")) + if (!jsFile) { + throw new Error(`Plugin missing .js file.`) + } + const jsFileName = jsFile.name + const pluginId = generatePluginID(name, version) + + // overwrite existing docs entirely if they exist + let rev + try { + const existing = await db.get(pluginId) + rev = existing._rev + } catch (err) { + rev = undefined + } + const doc = { + _id: pluginId, + _rev: rev, + name, + version, + description, + ...metadata, + jsUrl: `${bucketPath}${jsFileName}`, + } + const response = await db.put(doc) + return { + ...doc, + _rev: response.rev, + } +} diff --git a/packages/server/src/app.ts b/packages/server/src/app.ts index 62301d57ca..2f8adc879d 100644 --- a/packages/server/src/app.ts +++ b/packages/server/src/app.ts @@ -17,10 +17,15 @@ const bullboard = require("./automations/bullboard") const { logAlert } = require("@budibase/backend-core/logging") const { pinoSettings } = require("@budibase/backend-core") const { Thread } = require("./threads") +const chokidar = require("chokidar") +const fs = require("fs") +const path = require("path") import redis from "./utilities/redis" import * as migrations from "./migrations" import { events, installation, tenancy } from "@budibase/backend-core" import { createAdminUser, getChecklist } from "./utilities/workerRequests" +import { processPlugin } from "./api/controllers/plugin" +import { getGlobalDB } from "@budibase/backend-core/tenancy" const app = new Koa() @@ -132,6 +137,29 @@ module.exports = server.listen(env.PORT || 0, async () => { } } + // monitor plugin directory if required + if (env.SELF_HOSTED && env.PLUGINS_DIR && fs.existsSync(env.PLUGINS_DIR)) { + const watchPath = path.join(env.PLUGINS_DIR, "./**/dist/*.tar.gz") + chokidar + .watch(watchPath, { + ignored: "**/node_modules", + awaitWriteFinish: true, + }) + .on("all", async (event: string, path: string) => { + const tenantId = tenancy.getTenantId() + await tenancy.doInTenant(tenantId, async () => { + try { + const split = path.split("/") + const name = split[split.length - 1] + console.log("Importing plugin:", path) + await processPlugin({ name, path }) + } catch (err) { + console.log("Failed to import plugin:", err) + } + }) + }) + } + // check for version updates await installation.checkInstallVersion() diff --git a/packages/server/src/environment.js b/packages/server/src/environment.js index c2e2815e00..5a7aa61b9d 100644 --- a/packages/server/src/environment.js +++ b/packages/server/src/environment.js @@ -77,6 +77,7 @@ module.exports = { SQL_MAX_ROWS: process.env.SQL_MAX_ROWS, BB_ADMIN_USER_EMAIL: process.env.BB_ADMIN_USER_EMAIL, BB_ADMIN_USER_PASSWORD: process.env.BB_ADMIN_USER_PASSWORD, + PLUGINS_DIR: process.env.PLUGINS_DIR, // flags ALLOW_DEV_AUTOMATIONS: process.env.ALLOW_DEV_AUTOMATIONS, DISABLE_THREADING: process.env.DISABLE_THREADING, diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index a8dea20e95..ac01381814 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1128,6 +1128,93 @@ uuid "8.3.2" zlib "1.0.5" +"@budibase/backend-core@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.39-alpha.1.tgz#7e5293670cf39f05e31eaaabbc3d7abc7f9837ca" + integrity sha512-mfHGyLc2FZ63cF8f4VX8GdJe7ciLCX4kZ+NK1yzBG0rRzHSTWJb2CVRq0rXNsZbwAVt9llHH58ysSHd+ggw9hg== + dependencies: + "@budibase/types" "1.2.39-alpha.1" + "@techpass/passport-openidconnect" "0.3.2" + aws-sdk "2.1030.0" + bcrypt "5.0.1" + dotenv "16.0.1" + emitter-listener "1.1.2" + ioredis "4.28.0" + joi "17.6.0" + jsonwebtoken "8.5.1" + koa-passport "4.1.4" + lodash "4.17.21" + lodash.isarguments "3.1.0" + node-fetch "2.6.7" + passport-google-auth "1.0.2" + passport-google-oauth "2.0.0" + passport-jwt "4.0.0" + passport-local "1.0.0" + passport-oauth2-refresh "^2.1.0" + posthog-node "1.3.0" + pouchdb "7.3.0" + pouchdb-find "7.2.2" + pouchdb-replication-stream "1.2.9" + redlock "4.2.0" + sanitize-s3-objectkey "0.0.1" + semver "7.3.7" + tar-fs "2.1.1" + uuid "8.3.2" + zlib "1.0.5" + +"@budibase/bbui@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/bbui/-/bbui-1.2.39-alpha.1.tgz#6c4698e86540ae547b4569b077da1a3d7637809a" + integrity sha512-wZbe/G/jUxQwhpkqdnJyMQObRTT9eY0vowHkLrplAAVfG84tPYsWDMKqLmauJOXv8Fl3G24I2Jj1kzWFKjYieA== + dependencies: + "@adobe/spectrum-css-workflow-icons" "^1.2.1" + "@budibase/string-templates" "1.2.39-alpha.1" + "@spectrum-css/actionbutton" "^1.0.1" + "@spectrum-css/actiongroup" "^1.0.1" + "@spectrum-css/avatar" "^3.0.2" + "@spectrum-css/button" "^3.0.1" + "@spectrum-css/buttongroup" "^3.0.2" + "@spectrum-css/checkbox" "^3.0.2" + "@spectrum-css/dialog" "^3.0.1" + "@spectrum-css/divider" "^1.0.3" + "@spectrum-css/dropzone" "^3.0.2" + "@spectrum-css/fieldgroup" "^3.0.2" + "@spectrum-css/fieldlabel" "^3.0.1" + "@spectrum-css/icon" "^3.0.1" + "@spectrum-css/illustratedmessage" "^3.0.2" + "@spectrum-css/inlinealert" "^2.0.1" + "@spectrum-css/inputgroup" "^3.0.2" + "@spectrum-css/label" "^2.0.10" + "@spectrum-css/link" "^3.1.1" + "@spectrum-css/menu" "^3.0.1" + "@spectrum-css/modal" "^3.0.1" + "@spectrum-css/pagination" "^3.0.3" + "@spectrum-css/picker" "^1.0.1" + "@spectrum-css/popover" "^3.0.1" + "@spectrum-css/progressbar" "^1.0.2" + "@spectrum-css/progresscircle" "^1.0.2" + "@spectrum-css/radio" "^3.0.2" + "@spectrum-css/search" "^3.0.2" + "@spectrum-css/sidenav" "^3.0.2" + "@spectrum-css/slider" "3.0.1" + "@spectrum-css/statuslight" "^3.0.2" + "@spectrum-css/stepper" "^3.0.3" + "@spectrum-css/switch" "^1.0.2" + "@spectrum-css/table" "^3.0.1" + "@spectrum-css/tabs" "^3.2.12" + "@spectrum-css/tags" "^3.0.2" + "@spectrum-css/textfield" "^3.0.1" + "@spectrum-css/toast" "^3.0.1" + "@spectrum-css/tooltip" "^3.0.3" + "@spectrum-css/treeview" "^3.0.2" + "@spectrum-css/typography" "^3.0.1" + "@spectrum-css/underlay" "^2.0.9" + "@spectrum-css/vars" "^3.0.1" + dayjs "^1.10.4" + easymde "^2.16.1" + svelte-flatpickr "^3.2.3" + svelte-portal "^1.0.0" + "@budibase/bbui@^0.9.139": version "0.9.190" resolved "https://registry.yarnpkg.com/@budibase/bbui/-/bbui-0.9.190.tgz#e1ec400ac90f556bfbc80fc23a04506f1585ea81" @@ -1178,6 +1265,70 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" +"@budibase/client@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/client/-/client-1.2.39-alpha.1.tgz#a9a727d0843d7e610d224d2b1b0a15d336c0199c" + integrity sha512-qAzbpIgAoLll56xq6pVmOMI05KdcO/Dp/4aAzYKxKteRq+fcBeNIb9WPlP3NKYhYFE/HJegkiwqTt+B3UKA/gQ== + dependencies: + "@budibase/bbui" "1.2.39-alpha.1" + "@budibase/frontend-core" "1.2.39-alpha.1" + "@budibase/string-templates" "1.2.39-alpha.1" + "@spectrum-css/button" "^3.0.3" + "@spectrum-css/card" "^3.0.3" + "@spectrum-css/divider" "^1.0.3" + "@spectrum-css/link" "^3.1.3" + "@spectrum-css/page" "^3.0.1" + "@spectrum-css/tag" "^3.1.4" + "@spectrum-css/typography" "^3.0.2" + "@spectrum-css/vars" "^3.0.1" + apexcharts "^3.22.1" + dayjs "^1.10.5" + downloadjs "1.4.7" + leaflet "^1.7.1" + regexparam "^1.3.0" + rollup-plugin-polyfill-node "^0.8.0" + sanitize-html "^2.7.0" + screenfull "^6.0.1" + shortid "^2.2.15" + svelte "^3.49.0" + svelte-apexcharts "^1.0.2" + svelte-flatpickr "^3.1.0" + svelte-spa-router "^3.0.5" + +"@budibase/frontend-core@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/frontend-core/-/frontend-core-1.2.39-alpha.1.tgz#8ba142af58fdb5226254001f0360d048a31cc60f" + integrity sha512-WsQCrVGKeWhFTAxjmakkVEcCzxAaRwxoBIze97psupq0a4EUKLOqblFzrlL9Y+1SvVHyUQQz0bqjXfDzAlv7TQ== + dependencies: + "@budibase/bbui" "1.2.39-alpha.1" + lodash "^4.17.21" + svelte "^3.46.2" + +"@budibase/handlebars-helpers@^0.11.8": + version "0.11.8" + resolved "https://registry.yarnpkg.com/@budibase/handlebars-helpers/-/handlebars-helpers-0.11.8.tgz#6953d29673a8c5c407e096c0a84890465c7ce841" + integrity sha512-ggWJUt0GqsHFAEup5tlWlcrmYML57nKhpNGGLzVsqXVYN8eVmf3xluYmmMe7fDYhQH0leSprrdEXmsdFQF3HAQ== + dependencies: + array-sort "^1.0.0" + define-property "^2.0.2" + extend-shallow "^3.0.2" + for-in "^1.0.2" + get-object "^0.2.0" + get-value "^3.0.1" + handlebars "^4.7.7" + handlebars-utils "^1.0.6" + has-value "^2.0.2" + helper-md "^0.2.2" + html-tag "^2.0.0" + is-even "^1.0.0" + is-glob "^4.0.1" + kind-of "^6.0.3" + micromatch "^3.1.5" + relative "^3.0.2" + striptags "^3.1.1" + to-gfm-code-block "^0.1.1" + year "^0.2.1" + "@budibase/pro@1.2.39-alpha.0": version "1.2.39-alpha.0" resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.39-alpha.0.tgz#272e3ffd5e2189c787df6b6fbe22b7084832ade7" @@ -1207,11 +1358,28 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" +"@budibase/string-templates@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.39-alpha.1.tgz#2cef89a75b85289742588f067e426046039b67a5" + integrity sha512-puWejjG6+Yz8jmKxi7j2rMwuilNXC9cmIH4dNHfAowvq3Cn2w31SjR5Qd79cmJe2wb8B1snXMqti0uzSHWGmhQ== + dependencies: + "@budibase/handlebars-helpers" "^0.11.8" + dayjs "^1.10.4" + handlebars "^4.7.6" + handlebars-utils "^1.0.6" + lodash "^4.17.20" + vm2 "^3.9.4" + "@budibase/types@1.2.39-alpha.0": version "1.2.39-alpha.0" resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.39-alpha.0.tgz#d0d48e4da36a93a4a9354cc49663f38d0181b6c0" integrity sha512-i+lQeqlKmFORLuKdwmKnlmCCCEXZH6NdXHrOqNcebJzcNlx3Gx342+cHe4ZGYu0L+wCkWWelD5XHFuNMVMcuHg== +"@budibase/types@1.2.39-alpha.1": + version "1.2.39-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.39-alpha.1.tgz#1758c5c7b8a1d754b4c391fc2dc699d6e249980b" + integrity sha512-b3YKkNf0+ImO/HvNbDS0biaMY2uu5ClphBLtA34hOd1I8hjjNj1kguuiQvgW7zqTYvMRK0hBNtTCnSa90uI7Fg== + "@bull-board/api@3.7.0": version "3.7.0" resolved "https://registry.yarnpkg.com/@bull-board/api/-/api-3.7.0.tgz#231f687187c0cb34e0b97f463917b6aaeb4ef6af" @@ -2139,6 +2307,24 @@ resolved "https://registry.yarnpkg.com/@redis/time-series/-/time-series-1.0.3.tgz#4cfca8e564228c0bddcdf4418cba60c20b224ac4" integrity sha512-OFp0q4SGrTH0Mruf6oFsHGea58u8vS/iI5+NpYdicaM+7BgqBZH8FFvNZ8rYYLrUO/QRqMq72NpXmxLVNcdmjA== +"@rollup/plugin-inject@^4.0.0": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@rollup/plugin-inject/-/plugin-inject-4.0.4.tgz#fbeee66e9a700782c4f65c8b0edbafe58678fbc2" + integrity sha512-4pbcU4J/nS+zuHk+c+OL3WtmEQhqxlZ9uqfjQMQDOHOPld7PsCd8k5LWs8h5wjwJN7MgnAn768F2sDxEP4eNFQ== + dependencies: + "@rollup/pluginutils" "^3.1.0" + estree-walker "^2.0.1" + magic-string "^0.25.7" + +"@rollup/pluginutils@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" + integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== + dependencies: + "@types/estree" "0.0.39" + estree-walker "^1.0.1" + picomatch "^2.2.2" + "@sendgrid/client@^7.1.1": version "7.7.0" resolved "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.7.0.tgz#f8f67abd604205a0d0b1af091b61517ef465fdbf" @@ -2420,6 +2606,11 @@ resolved "https://registry.yarnpkg.com/@spectrum-css/sidenav/-/sidenav-3.0.23.tgz#c218560d472e13a3e0d1499b762df1206dcffbfd" integrity sha512-4IFw2/HMQJRzM0M2c5na/HeY7y5vJoGpMFBkXNpQyhW4TRo7N1rGwYQ5dRD3s4OVEWV4/rjfGV0d/qhfwKUTog== +"@spectrum-css/slider@3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@spectrum-css/slider/-/slider-3.0.1.tgz#5281e6f47eb5a4fd3d1816c138bf66d01d7f2e49" + integrity sha512-DI2dtMRnQuDM1miVzl3SGyR1khUEKnwdXfO5EHDFwkC3yav43F5QogkfjmjFmWWobMVovdJlAuiaaJ/IHejD0Q== + "@spectrum-css/statuslight@^3.0.2": version "3.0.8" resolved "https://registry.yarnpkg.com/@spectrum-css/statuslight/-/statuslight-3.0.8.tgz#3b0ea80712573679870a85d469850230e794a0f7" @@ -2445,6 +2636,16 @@ resolved "https://registry.yarnpkg.com/@spectrum-css/tabs/-/tabs-3.2.16.tgz#c3f7800d8d6f7c9930c28cd01354816328bf72b1" integrity sha512-JUcMB/fiDG/KoyrVstlUMacFJUY4OHKqhMRuPtu9ggUXWCRbSkY8he92v6u0HwY3DuhDoOxNTK8d/PLjk/fsbg== +"@spectrum-css/tabs@^3.2.12": + version "3.2.19" + resolved "https://registry.yarnpkg.com/@spectrum-css/tabs/-/tabs-3.2.19.tgz#2eae3a2c4760466882db08281365d502c3f22ebf" + integrity sha512-SNGFf/karBr/GNz5GNWnbppFz6uEOGecv6D8WA1ZLeWkjg4gG5e4M9XmPcB32v350e1PTRG7KwWDce48qWAKCQ== + +"@spectrum-css/tag@^3.1.4": + version "3.3.14" + resolved "https://registry.yarnpkg.com/@spectrum-css/tag/-/tag-3.3.14.tgz#2d1ca0759da6a3a2970d14bcabf33bd4a8f63a5f" + integrity sha512-S4RUaxN/83Pr/SYkQHeZNh2NXmtumUEzhrsrrliI6bAt3bjs+mLresTGd9qkIX2+Ycq1JHWTr0HTga4ti1YYyA== + "@spectrum-css/tags@^3.0.2": version "3.0.3" resolved "https://registry.yarnpkg.com/@spectrum-css/tags/-/tags-3.0.3.tgz#fc76d2735cdc442de91b7eb3bee49a928c0767ac" @@ -2622,6 +2823,13 @@ resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8" integrity sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w== +"@types/codemirror@^5.60.4": + version "5.60.5" + resolved "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-5.60.5.tgz#5b989a3b4bbe657458cf372c92b6bfda6061a2b7" + integrity sha512-TiECZmm8St5YxjFUp64LK0c8WU5bxMDt9YaAek1UqUb9swrSCoJhh92fWu1p3mTEqlHjhB5sY7OFBhWroJXZVg== + dependencies: + "@types/tern" "*" + "@types/connect@*": version "3.4.35" resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" @@ -2670,6 +2878,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== +"@types/estree@0.0.39": + version "0.0.39" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" + integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== + "@types/express-serve-static-core@^4.17.18": version "4.17.28" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8" @@ -2813,6 +3026,11 @@ resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== +"@types/marked@^4.0.1": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/marked/-/marked-4.0.3.tgz#2098f4a77adaba9ce881c9e0b6baf29116e5acc4" + integrity sha512-HnMWQkLJEf/PnxZIfbm0yGJRRZYYMhb++O9M36UCTA9z53uPvVoSlAwJr3XOpDEryb7Hwl1qAx/MV6YIW1RXxg== + "@types/mime@^1": version "1.3.2" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" @@ -2948,6 +3166,13 @@ "@types/cookiejar" "*" "@types/node" "*" +"@types/tern@*": + version "0.23.4" + resolved "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" + integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== + dependencies: + "@types/estree" "*" + "@types/tough-cookie@*": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" @@ -3532,7 +3757,7 @@ arg@^4.1.0: resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== -argparse@^1.0.7: +argparse@^1.0.10, argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== @@ -3579,6 +3804,15 @@ array-equal@^1.0.0: resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha512-H3LU5RLiSsGXPhN+Nipar0iR0IofH+8r89G2y1tBKxQ/agagKyAjhkAFDRBfodP2caPrNKHpAWNIM/c9yeL7uA== +array-sort@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" + integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== + dependencies: + default-compare "^1.0.0" + get-value "^2.0.6" + kind-of "^5.0.2" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" @@ -3710,6 +3944,13 @@ atomic-sleep@^1.0.0: resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== +autolinker@~0.28.0: + version "0.28.1" + resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-0.28.1.tgz#0652b491881879f0775dace0cdca3233942a4e47" + integrity sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ== + dependencies: + gulp-header "^1.7.1" + available-typed-arrays@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" @@ -4411,7 +4652,7 @@ chmodr@1.2.0: resolved "https://registry.yarnpkg.com/chmodr/-/chmodr-1.2.0.tgz#720e96caa09b7f1cdbb01529b7d0ab6bc5e118b9" integrity sha512-Y5uI7Iq/Az6HgJEL6pdw7THVd7jbVOTPwsmcPOBjQL8e3N+pz872kzK5QxYGEy21iRys+iHWV0UZQXDFJo1hyA== -chokidar@^3.5.2: +chokidar@^3.5.2, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -4542,6 +4783,18 @@ co@^4.6.0: resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== +codemirror-spell-checker@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/codemirror-spell-checker/-/codemirror-spell-checker-1.1.2.tgz#1c660f9089483ccb5113b9ba9ca19c3f4993371e" + integrity sha512-2Tl6n0v+GJRsC9K3MLCdLaMOmvWL0uukajNJseorZJsslaxZyZMgENocPU8R0DyoTAiKsyqiemSOZo7kjGV0LQ== + dependencies: + typo-js "*" + +codemirror@^5.63.1: + version "5.65.7" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.65.7.tgz#29af41ce5f4c2b8f1c1e16f4e645ff392823716a" + integrity sha512-zb67cXzgugIQmb6tfD4G11ILjYoMfTjwcjn+cWsa4GewlI2adhR/h3kolkoCQTm1msD/1BuqVTKuO09ELsS++A== + collect-v8-coverage@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" @@ -4692,6 +4945,13 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +concat-with-sourcemaps@*: + version "1.1.0" + resolved "https://registry.yarnpkg.com/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz#d4ea93f05ae25790951b99e7b3b09e3908a4082e" + integrity sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg== + dependencies: + source-map "^0.6.1" + condense-newlines@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" @@ -5098,6 +5358,13 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== +default-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" + integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== + dependencies: + kind-of "^5.0.2" + default-shell@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/default-shell/-/default-shell-1.0.1.tgz#752304bddc6174f49eb29cb988feea0b8813c8bc" @@ -5265,11 +5532,25 @@ doctrine@3.0.0, doctrine@^3.0.0: dependencies: esutils "^2.0.2" +dom-serializer@^1.0.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + dom-walk@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== +domelementtype@^2.0.1, domelementtype@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== + domexception@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" @@ -5284,6 +5565,22 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" +domhandler@^4.0.0, domhandler@^4.2.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== + dependencies: + domelementtype "^2.2.0" + +domutils@^2.5.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + dot-prop@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -5328,6 +5625,11 @@ download@8.0.0: p-event "^2.1.0" pify "^4.0.1" +downloadjs@1.4.7: + version "1.4.7" + resolved "https://registry.yarnpkg.com/downloadjs/-/downloadjs-1.4.7.tgz#f69f96f940e0d0553dac291139865a3cd0101e3c" + integrity sha512-LN1gO7+u9xjU5oEScGFKvXhYf7Y/empUIIEAGBs1LzUq/rg5duiDrkuH5A2lQGd5jfMOb9X9usDa2oVXwJ0U/Q== + duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -5343,6 +5645,17 @@ duplexify@^4.0.0: readable-stream "^3.1.1" stream-shift "^1.0.0" +easymde@^2.16.1: + version "2.16.1" + resolved "https://registry.yarnpkg.com/easymde/-/easymde-2.16.1.tgz#f4c2380312615cb33826f1a1fecfaa4022ff551a" + integrity sha512-FihYgjRsKfhGNk89SHSqxKLC4aJ1kfybPWW6iAmtb5GnXu+tnFPSzSaGBmk1RRlCuhFSjhF0SnIMGVPjEzkr6g== + dependencies: + "@types/codemirror" "^5.60.4" + "@types/marked" "^4.0.1" + codemirror "^5.63.1" + codemirror-spell-checker "1.1.2" + marked "^4.0.10" + ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -5454,6 +5767,16 @@ enhanced-resolve@^5.9.3: graceful-fs "^4.2.4" tapable "^2.2.0" +ent@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" + integrity sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA== + +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + entities@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" @@ -5887,6 +6210,16 @@ estraverse@^5.1.0, estraverse@^5.2.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== +estree-walker@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" + integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== + +estree-walker@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -6436,6 +6769,11 @@ fs-constants@^1.0.0: resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== +fs-exists-sync@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" + integrity sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg== + fs-extra@8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -6584,6 +6922,14 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: has "^1.0.3" has-symbols "^1.0.3" +get-object@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/get-object/-/get-object-0.2.0.tgz#d92ff7d5190c64530cda0543dac63a3d47fe8c0c" + integrity sha512-7P6y6k6EzEFmO/XyUyFlXm1YLJy9xeA1x/grNV8276abX5GuwUtYgKFkRFkLixw4hf4Pz9q2vgv/8Ar42R0HuQ== + dependencies: + is-number "^2.0.2" + isobject "^0.2.0" + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -6646,6 +6992,13 @@ get-value@^2.0.3, get-value@^2.0.6: resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== +get-value@^3.0.0, get-value@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-3.0.1.tgz#5efd2a157f1d6a516d7524e124ac52d0a39ef5a8" + integrity sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA== + dependencies: + isobject "^3.0.1" + getopts@2.2.5: version "2.2.5" resolved "https://registry.yarnpkg.com/getopts/-/getopts-2.2.5.tgz#67a0fe471cacb9c687d817cab6450b96dde8313b" @@ -6951,7 +7304,24 @@ gtoken@^5.0.4: google-p12-pem "^3.1.3" jws "^4.0.0" -handlebars@^4.7.7: +gulp-header@^1.7.1: + version "1.8.12" + resolved "https://registry.yarnpkg.com/gulp-header/-/gulp-header-1.8.12.tgz#ad306be0066599127281c4f8786660e705080a84" + integrity sha512-lh9HLdb53sC7XIZOYzTXM4lFuXElv3EVkSDhsd7DoJBj7hm+Ni7D3qYbb+Rr8DuM8nRanBvkVO9d7askreXGnQ== + dependencies: + concat-with-sourcemaps "*" + lodash.template "^4.4.0" + through2 "^2.0.0" + +handlebars-utils@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/handlebars-utils/-/handlebars-utils-1.0.6.tgz#cb9db43362479054782d86ffe10f47abc76357f9" + integrity sha512-d5mmoQXdeEqSKMtQQZ9WkiUcO1E3tPbWxluCK9hVgIDPzQa9WsKo3Lbe/sGflTe7TomHEeZaOgwIkyIr1kfzkw== + dependencies: + kind-of "^6.0.0" + typeof-article "^0.1.1" + +handlebars@^4.7.6, handlebars@^4.7.7: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== @@ -7045,6 +7415,14 @@ has-value@^1.0.0: has-values "^1.0.0" isobject "^3.0.0" +has-value@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-2.0.2.tgz#d0f12e8780ba8e90e66ad1a21c707fdb67c25658" + integrity sha512-ybKOlcRsK2MqrM3Hmz/lQxXHZ6ejzSPzpNabKB45jb5qDgJvKPa3SdapTsTLwEb9WltgWpOmNax7i+DzNOk4TA== + dependencies: + get-value "^3.0.0" + has-values "^2.0.1" + has-values@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" @@ -7058,6 +7436,13 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" +has-values@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-2.0.1.tgz#3876200ff86d8a8546a9264a952c17d5fc17579d" + integrity sha512-+QdH3jOmq9P8GfdjFg0eJudqx1FqU62NQJ4P16rOEHeRdl7ckgwn6uqQjzYE0ZoHVV/e5E2esuJ5Gl5+HUW19w== + dependencies: + kind-of "^6.0.2" + has-yarn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" @@ -7070,6 +7455,16 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +helper-md@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/helper-md/-/helper-md-0.2.2.tgz#c1f59d7e55bbae23362fd8a0e971607aec69d41f" + integrity sha512-49TaQzK+Ic7ZVTq4i1UZxRUJEmAilTk8hz7q4I0WNUaTclLR8ArJV5B3A1fe1xF2HtsDTr2gYKLaVTof/Lt84Q== + dependencies: + ent "^2.2.0" + extend-shallow "^2.0.1" + fs-exists-sync "^0.1.0" + remarkable "^1.6.2" + homedir-polyfill@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" @@ -7106,6 +7501,24 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== +html-tag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/html-tag/-/html-tag-2.0.0.tgz#36c3bc8d816fd30b570d5764a497a641640c2fed" + integrity sha512-XxzooSo6oBoxBEUazgjdXj7VwTn/iSTSZzTYKzYY6I916tkaYzypHxy+pbVU1h+0UQ9JlVf5XkNQyxOAiiQO1g== + dependencies: + is-self-closing "^1.0.1" + kind-of "^6.0.0" + +htmlparser2@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" + http-assert@^1.3.0: version "1.5.0" resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f" @@ -7546,6 +7959,13 @@ is-docker@^2.0.0, is-docker@^2.1.1: resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== +is-even@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-even/-/is-even-1.0.0.tgz#76b5055fbad8d294a86b6a949015e1c97b717c06" + integrity sha512-LEhnkAdJqic4Dbqn58A0y52IXoHWlsueqQkKfMfdEnIYG8A1sm/GHidKkS6yvXlMoRrkM34csHnXQtOqcb+Jzg== + dependencies: + is-odd "^0.1.2" + is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -7635,6 +8055,13 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" +is-number@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + integrity sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg== + dependencies: + kind-of "^3.0.2" + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -7657,6 +8084,13 @@ is-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== +is-odd@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-0.1.2.tgz#bc573b5ce371ef2aad6e6f49799b72bef13978a7" + integrity sha512-Ri7C2K7o5IrUU9UEI8losXJCCD/UtsaIrkR5sxIcFg4xQ9cRJXlWA5DQvTE0yDc0krvSNLsRGXN11UPS6KyfBw== + dependencies: + is-number "^3.0.0" + is-path-inside@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" @@ -7674,6 +8108,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-plain-object@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -7702,6 +8141,13 @@ is-retry-allowed@^2.2.0: resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== +is-self-closing@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-self-closing/-/is-self-closing-1.0.1.tgz#5f406b527c7b12610176320338af0fa3896416e4" + integrity sha512-E+60FomW7Blv5GXTlYee2KDrnG6srxF7Xt1SjrhWUGUEsTFIqY/nq2y3DaftCsgUMdh89V07IVfhY9KIJhLezg== + dependencies: + self-closing-tags "^1.0.1" + is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -7812,6 +8258,11 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isobject@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-0.2.0.tgz#a3432192f39b910b5f02cc989487836ec70aa85e" + integrity sha512-VaWq6XYAsbvM0wf4dyBO7WH9D7GosB7ZZlqrawI9BBiTMINBeCyqSKBa35m870MY3O4aM31pYyZi9DfGrYMJrQ== + isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" @@ -8992,7 +9443,7 @@ keyv@^3.0.0: dependencies: json-buffer "3.0.0" -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.1.0, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== @@ -9006,12 +9457,12 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -kind-of@^5.0.0: +kind-of@^5.0.0, kind-of@^5.0.2: version "5.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== -kind-of@^6.0.0, kind-of@^6.0.2: +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -9271,6 +9722,11 @@ lcid@^2.0.0: dependencies: invert-kv "^2.0.0" +leaflet@^1.7.1: + version "1.8.0" + resolved "https://registry.yarnpkg.com/leaflet/-/leaflet-1.8.0.tgz#4615db4a22a304e8e692cae9270b983b38a2055e" + integrity sha512-gwhMjFCQiYs3x/Sf+d49f10ERXaEFCPr+nVTryhAW8DWbMGqJqt9G4XuIaHmFW08zYvhgdzqXGr8AlW8v8dQkA== + left-pad@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" @@ -9465,6 +9921,11 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -9575,6 +10036,21 @@ lodash.sortby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== +lodash.template@^4.4.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.templatesettings "^4.0.0" + +lodash.templatesettings@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.without@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" @@ -9585,7 +10061,7 @@ lodash.xor@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.xor/-/lodash.xor-4.5.0.tgz#4d48ed7e98095b0632582ba714d3ff8ae8fb1db6" integrity sha512-sVN2zimthq7aZ5sPGXnSz32rZPuqcparVW50chJQe+mzTYV+IsxSsl/2gnkWWE2Of7K3myBQBqtLKOUEHJKRsQ== -lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.7.0: +lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -9653,6 +10129,13 @@ ltgt@2.2.1, ltgt@^2.1.2, ltgt@~2.2.0: resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== +magic-string@^0.25.7: + version "0.25.9" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== + dependencies: + sourcemap-codec "^1.4.8" + make-dir@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" @@ -9717,6 +10200,11 @@ markdown-it@^12.2.0: mdurl "^1.0.1" uc.micro "^1.0.5" +marked@^4.0.10: + version "4.0.18" + resolved "https://registry.yarnpkg.com/marked/-/marked-4.0.18.tgz#cd0ac54b2e5610cfb90e8fd46ccaa8292c9ed569" + integrity sha512-wbLDJ7Zh0sqA0Vdg6aqlbT+yPxqLblpAZh1mK2+AO2twQkPywvvqQNfEPVwSSRjZ7dZcdeVBIAgiO7MMp3Dszw== + matcher@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz#bd9060f4c5b70aa8041ccc6f80368760994f30ca" @@ -9789,7 +10277,7 @@ methods@^1.0.1, methods@^1.1.1, methods@^1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^3.1.10, micromatch@^3.1.4: +micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.5: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -10047,6 +10535,16 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916" integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA== +nanoid@^2.1.0: + version "2.1.11" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.11.tgz#ec24b8a758d591561531b4176a01e3ab4f0f0280" + integrity sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA== + +nanoid@^3.3.4: + version "3.3.4" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== + nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -10644,6 +11142,11 @@ parse-passwd@^1.0.0: resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== +parse-srcset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" + integrity sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q== + parse5@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" @@ -10890,7 +11393,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -11005,6 +11508,15 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +postcss@^8.3.11: + version "8.4.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c" + integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ== + dependencies: + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" + postgres-array@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" @@ -11753,6 +12265,16 @@ regexp.prototype.flags@^1.4.3: define-properties "^1.1.3" functions-have-names "^1.2.2" +regexparam@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-2.0.1.tgz#c912f5dae371e3798100b3c9ce22b7414d0889fa" + integrity sha512-zRgSaYemnNYxUv+/5SeoHI0eJIgTL/A2pUtXUPLHQxUldagouJ9p+K6IbIZ/JiQuCEv2E2B1O11SjVQy3aMCkw== + +regexparam@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/regexparam/-/regexparam-1.3.0.tgz#2fe42c93e32a40eff6235d635e0ffa344b92965f" + integrity sha512-6IQpFBv6e5vz1QAqI+V4k8P2e/3gRrqfCJ9FI+O1FLQTO+Uz6RXZEZOPmTJ6hlGj7gkERzY5BRCv09whKP96/g== + regexpp@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" @@ -11796,6 +12318,21 @@ regjsparser@^0.8.2: dependencies: jsesc "~0.5.0" +relative@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/relative/-/relative-3.0.2.tgz#0dcd8ec54a5d35a3c15e104503d65375b5a5367f" + integrity sha512-Q5W2qeYtY9GbiR8z1yHNZ1DGhyjb4AnLEjt8iE6XfcC1QIu+FAtj3HQaO0wH28H1mX6cqNLvAqWhP402dxJGyA== + dependencies: + isobject "^2.0.0" + +remarkable@^1.6.2: + version "1.7.4" + resolved "https://registry.yarnpkg.com/remarkable/-/remarkable-1.7.4.tgz#19073cb960398c87a7d6546eaa5e50d2022fcd00" + integrity sha512-e6NKUXgX95whv7IgddywbeN/ItCkWbISmc2DiqHJb0wTrqZIexqdco5b8Z3XZoo/48IdNVKM9ZCvTPJ4F5uvhg== + dependencies: + argparse "^1.0.10" + autolinker "~0.28.0" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -12007,6 +12544,13 @@ roarr@^2.15.3: semver-compare "^1.0.0" sprintf-js "^1.1.2" +rollup-plugin-polyfill-node@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-polyfill-node/-/rollup-plugin-polyfill-node-0.8.0.tgz#859c070822f5e38d221e5b4238cb34aa894c2b19" + integrity sha512-C4UeKedOmOBkB3FgR+z/v9kzRwV1Q/H8xWs1u1+CNe4XOV6hINfOrcO+TredKxYvopCmr+WKUSNsFUnD1RLHgQ== + dependencies: + "@rollup/plugin-inject" "^4.0.0" + rsvp@^4.8.4: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" @@ -12073,6 +12617,18 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" +sanitize-html@^2.7.0: + version "2.7.1" + resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.7.1.tgz#a6c2c1a88054a79eeacfac9b0a43f1b393476901" + integrity sha512-oOpe8l4J8CaBk++2haoN5yNI5beekjuHv3JRPKUx/7h40Rdr85pemn4NkvUB3TcBP7yjat574sPlcMAyv4UQig== + dependencies: + deepmerge "^4.2.2" + escape-string-regexp "^4.0.0" + htmlparser2 "^6.0.0" + is-plain-object "^5.0.0" + parse-srcset "^1.0.2" + postcss "^8.3.11" + sanitize-s3-objectkey@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/sanitize-s3-objectkey/-/sanitize-s3-objectkey-0.0.1.tgz#efa9887cd45275b40234fb4bb12fc5754fe64e7e" @@ -12111,6 +12667,11 @@ schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" +screenfull@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-6.0.2.tgz#3dbe4b8c4f8f49fb8e33caa8f69d0bca730ab238" + integrity sha512-AQdy8s4WhNvUZ6P8F6PB21tSPIYKniic+Ogx0AacBMjKP1GUHN2E9URxQHtCusiwxudnCKkdy4GrHXPPJSkCCw== + search-params@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/search-params/-/search-params-3.0.0.tgz#dbc7c243058e5a33ae1e9870be91f5aced4100d8" @@ -12128,6 +12689,11 @@ seek-bzip@^1.0.5: dependencies: commander "^2.8.1" +self-closing-tags@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/self-closing-tags/-/self-closing-tags-1.0.1.tgz#6c5fa497994bb826b484216916371accee490a5d" + integrity sha512-7t6hNbYMxM+VHXTgJmxwgZgLGktuXtVVD5AivWzNTdJBM4DBjnDKDzkf2SrNjihaArpeJYNjxkELBu1evI4lQA== + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -12263,6 +12829,13 @@ shimmer@^1.2.0: resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337" integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== +shortid@^2.2.15: + version "2.2.16" + resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.16.tgz#b742b8f0cb96406fd391c76bfc18a67a57fe5608" + integrity sha512-Ugt+GIZqvGXCIItnsL+lvFJOiN7RYqlGy7QE41O3YC1xbNSeDGIRO7xg2JJXIAj1cAGnOeC1r7/T9pgrtQbv4g== + dependencies: + nanoid "^2.1.0" + side-channel@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" @@ -12427,6 +13000,11 @@ source-list-map@^2.0.1: resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + source-map-resolve@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" @@ -12480,6 +13058,11 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== +sourcemap-codec@^1.4.8: + version "1.4.8" + resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== + spark-md5@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/spark-md5/-/spark-md5-3.0.1.tgz#83a0e255734f2ab4e5c466e5a2cfc9ba2aa2124d" @@ -12804,6 +13387,11 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" +striptags@^3.1.1: + version "3.2.0" + resolved "https://registry.yarnpkg.com/striptags/-/striptags-3.2.0.tgz#cc74a137db2de8b0b9a370006334161f7dd67052" + integrity sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw== + style-loader@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575" @@ -12903,7 +13491,14 @@ svelte-portal@^1.0.0: resolved "https://registry.yarnpkg.com/svelte-portal/-/svelte-portal-1.0.0.tgz#36a47c5578b1a4d9b4dc60fa32a904640ec4cdd3" integrity sha512-nHf+DS/jZ6jjnZSleBMSaZua9JlG5rZv9lOGKgJuaZStfevtjIlUJrkLc3vbV8QdBvPPVmvcjTlazAzfKu0v3Q== -svelte@3.49.0: +svelte-spa-router@^3.0.5: + version "3.3.0" + resolved "https://registry.yarnpkg.com/svelte-spa-router/-/svelte-spa-router-3.3.0.tgz#2fc0967a49dc361dfe4d38dddad6e662eed5b42c" + integrity sha512-cwRNe7cxD43sCvSfEeaKiNZg3FCizGxeMcf7CPiWRP3jKXjEma3vxyyuDtPOam6nWbVxl9TNM3hlE/i87ZlqcQ== + dependencies: + regexparam "2.0.1" + +svelte@3.49.0, svelte@^3.46.2, svelte@^3.49.0: version "3.49.0" resolved "https://registry.yarnpkg.com/svelte/-/svelte-3.49.0.tgz#5baee3c672306de1070c3b7888fc2204e36a4029" integrity sha512-+lmjic1pApJWDfPCpUUTc1m8azDqYCG1JN9YEngrx/hUyIcFJo6VZhj0A1Ai0wqoHcEIuQy+e9tk+4uDgdtsFA== @@ -13265,6 +13860,11 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= +to-gfm-code-block@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/to-gfm-code-block/-/to-gfm-code-block-0.1.1.tgz#25d045a5fae553189e9637b590900da732d8aa82" + integrity sha512-LQRZWyn8d5amUKnfR9A9Uu7x9ss7Re8peuWR2gkh1E+ildOfv2aF26JpuDg8JtvCduu5+hOrMIH+XstZtnagqg== + to-json-schema@0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/to-json-schema/-/to-json-schema-0.2.5.tgz#ef3c3f11ad64460dcfbdbafd0fd525d69d62a98f" @@ -13511,6 +14111,13 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" +typeof-article@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/typeof-article/-/typeof-article-0.1.1.tgz#9f07e733c3fbb646ffa9e61c08debacd460e06af" + integrity sha512-Vn42zdX3FhmUrzEmitX3iYyLb+Umwpmv8fkZRIknYh84lmdrwqZA5xYaoKiIj2Rc5i/5wcDrpUmZcbk1U51vTw== + dependencies: + kind-of "^3.1.0" + typeof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typeof/-/typeof-1.0.0.tgz#9c84403f2323ae5399167275497638ea1d2f2440" @@ -13521,6 +14128,11 @@ typescript@4.6.2: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4" integrity sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg== +typo-js@*: + version "1.2.2" + resolved "https://registry.yarnpkg.com/typo-js/-/typo-js-1.2.2.tgz#340484d81fe518e77c81a5a770162b14492f183b" + integrity sha512-C7pYBQK17EjSg8tVNY91KHdUt5Nf6FMJ+c3js076quPmBML57PmNMzAcIq/2kf/hSYtFABNDIYNYlJRl5BJhGw== + uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" @@ -13845,6 +14457,14 @@ vm2@3.9.6: acorn "^8.7.0" acorn-walk "^8.2.0" +vm2@^3.9.4: + version "3.9.10" + resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.10.tgz#c66543096b5c44c8861a6465805c23c7cc996a44" + integrity sha512-AuECTSvwu2OHLAZYhG716YzwodKCIJxB6u1zG7PgSQwIgAlEaoXH52bxdcvT8GkGjnYK7r7yWDW0m0sOsPuBjQ== + dependencies: + acorn "^8.7.0" + acorn-walk "^8.2.0" + vuvuzela@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/vuvuzela/-/vuvuzela-1.0.3.tgz#3be145e58271c73ca55279dd851f12a682114b0b" @@ -14398,6 +15018,11 @@ yauzl@^2.4.2: buffer-crc32 "~0.2.3" fd-slicer "~1.1.0" +year@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/year/-/year-0.2.1.tgz#4083ae520a318b23ec86037f3000cb892bdf9bb0" + integrity sha512-9GnJUZ0QM4OgXuOzsKNzTJ5EOkums1Xc+3YQXp+Q+UxFjf7zLucp9dQ8QMIft0Szs1E1hUiXFim1OYfEKFq97w== + ylru@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.3.2.tgz#0de48017473275a4cbdfc83a1eaf67c01af8a785" diff --git a/packages/types/src/documents/plugin/index.ts b/packages/types/src/documents/plugin/index.ts index 03a239a6c9..8133e91523 100644 --- a/packages/types/src/documents/plugin/index.ts +++ b/packages/types/src/documents/plugin/index.ts @@ -2,3 +2,8 @@ export enum PluginType { DATASOURCE = "datasource", COMPONENT = "component", } + +export interface FileType { + path: string + name: string +} From 04f49fd7b936a5d10db2b300483d974a2af23b5c Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 09:25:16 +0000 Subject: [PATCH 037/162] Proxy vite HMR websocket in dev --- hosting/nginx.dev.conf.hbs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hosting/nginx.dev.conf.hbs b/hosting/nginx.dev.conf.hbs index 9398b7e719..91f495cfac 100644 --- a/hosting/nginx.dev.conf.hbs +++ b/hosting/nginx.dev.conf.hbs @@ -77,6 +77,11 @@ http { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } + location /ws { + proxy_pass http://{{ address }}:3000; + rewrite ^/ws(.*)$ /$1 break; + } + location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From 4645901309b7bb2a4bb465cf75b9baf841980a45 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 09:26:23 +0000 Subject: [PATCH 038/162] Support env variables for vite config --- packages/builder/vite.config.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index 56ffbf20f5..9859e1dbb9 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -1,15 +1,22 @@ import { svelte } from "@sveltejs/vite-plugin-svelte" import replace from "@rollup/plugin-replace" +import { defineConfig, loadEnv } from "vite" import path from "path" -export default ({ mode }) => { +export default defineConfig(({ mode }) => { const isProduction = mode === "production" + const env = loadEnv(mode, process.cwd()) return { server: { fs: { strict: false, }, + hmr: { + protocol: "wss", + clientPort: env.VITE_HMR_CLIENT_PORT || 3000, + path: env.VITE_HMR_PATH || "/" + } }, base: "/builder/", build: { @@ -79,4 +86,4 @@ export default ({ mode }) => { ], }, } -} +}) From 2a6719d3acb40ece69f88961e912de4c03ce81f4 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 14:02:51 +0000 Subject: [PATCH 039/162] Only watch plugins in single tenant envs --- packages/server/src/app.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/server/src/app.ts b/packages/server/src/app.ts index 2f8adc879d..6f63715cfb 100644 --- a/packages/server/src/app.ts +++ b/packages/server/src/app.ts @@ -25,7 +25,7 @@ import * as migrations from "./migrations" import { events, installation, tenancy } from "@budibase/backend-core" import { createAdminUser, getChecklist } from "./utilities/workerRequests" import { processPlugin } from "./api/controllers/plugin" -import { getGlobalDB } from "@budibase/backend-core/tenancy" +import { DEFAULT_TENANT_ID } from "@budibase/backend-core/constants" const app = new Koa() @@ -138,7 +138,7 @@ module.exports = server.listen(env.PORT || 0, async () => { } // monitor plugin directory if required - if (env.SELF_HOSTED && env.PLUGINS_DIR && fs.existsSync(env.PLUGINS_DIR)) { + if (env.SELF_HOSTED && !env.MULTI_TENANCY && env.PLUGINS_DIR && fs.existsSync(env.PLUGINS_DIR)) { const watchPath = path.join(env.PLUGINS_DIR, "./**/dist/*.tar.gz") chokidar .watch(watchPath, { @@ -146,8 +146,7 @@ module.exports = server.listen(env.PORT || 0, async () => { awaitWriteFinish: true, }) .on("all", async (event: string, path: string) => { - const tenantId = tenancy.getTenantId() - await tenancy.doInTenant(tenantId, async () => { + await tenancy.doInTenant(DEFAULT_TENANT_ID, async () => { try { const split = path.split("/") const name = split[split.length - 1] From bb19810e361cee0714698f6a11c585fbdd20c09e Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 14:42:32 +0000 Subject: [PATCH 040/162] Add missing declaration of objectstore module --- packages/server/src/module.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/server/src/module.d.ts b/packages/server/src/module.d.ts index 4c0e13586a..eb1d1feb48 100644 --- a/packages/server/src/module.d.ts +++ b/packages/server/src/module.d.ts @@ -10,3 +10,4 @@ declare module "@budibase/backend-core/sessions" declare module "@budibase/backend-core/encryption" declare module "@budibase/backend-core/utils" declare module "@budibase/backend-core/redis" +declare module "@budibase/backend-core/objectStore" From 55eef09204a0274ef6f47d0081e67d9d4f740bb9 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 15:14:47 +0000 Subject: [PATCH 041/162] Add PLUGINS_DIR env var and show example mount for HMR of plugins --- hosting/docker-compose.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hosting/docker-compose.yaml b/hosting/docker-compose.yaml index 7d3e6960dc..4506467791 100644 --- a/hosting/docker-compose.yaml +++ b/hosting/docker-compose.yaml @@ -25,9 +25,12 @@ services: REDIS_PASSWORD: ${REDIS_PASSWORD} BB_ADMIN_USER_EMAIL: ${BB_ADMIN_USER_EMAIL} BB_ADMIN_USER_PASSWORD: ${BB_ADMIN_USER_PASSWORD} + PLUGINS_DIR: ${PLUGINS_DIR} depends_on: - worker-service - redis-service +# volumes: +# - /some/path/to/plugins:/plugins worker-service: restart: unless-stopped From 623a5ee563649e6cf0802e1460d63f66c22a8ea3 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 16 Aug 2022 15:16:46 +0000 Subject: [PATCH 042/162] Default plugins dir to /plugins --- packages/server/src/app.ts | 7 ++++++- packages/server/src/environment.js | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/server/src/app.ts b/packages/server/src/app.ts index 6f63715cfb..e9a5661093 100644 --- a/packages/server/src/app.ts +++ b/packages/server/src/app.ts @@ -138,7 +138,12 @@ module.exports = server.listen(env.PORT || 0, async () => { } // monitor plugin directory if required - if (env.SELF_HOSTED && !env.MULTI_TENANCY && env.PLUGINS_DIR && fs.existsSync(env.PLUGINS_DIR)) { + if ( + env.SELF_HOSTED && + !env.MULTI_TENANCY && + env.PLUGINS_DIR && + fs.existsSync(env.PLUGINS_DIR) + ) { const watchPath = path.join(env.PLUGINS_DIR, "./**/dist/*.tar.gz") chokidar .watch(watchPath, { diff --git a/packages/server/src/environment.js b/packages/server/src/environment.js index 5a7aa61b9d..5524159a78 100644 --- a/packages/server/src/environment.js +++ b/packages/server/src/environment.js @@ -77,7 +77,7 @@ module.exports = { SQL_MAX_ROWS: process.env.SQL_MAX_ROWS, BB_ADMIN_USER_EMAIL: process.env.BB_ADMIN_USER_EMAIL, BB_ADMIN_USER_PASSWORD: process.env.BB_ADMIN_USER_PASSWORD, - PLUGINS_DIR: process.env.PLUGINS_DIR, + PLUGINS_DIR: process.env.PLUGINS_DIR || "/plugins", // flags ALLOW_DEV_AUTOMATIONS: process.env.ALLOW_DEV_AUTOMATIONS, DISABLE_THREADING: process.env.DISABLE_THREADING, From 45594e442a8c17b7a1439c02ef6983382096950a Mon Sep 17 00:00:00 2001 From: Michael Drury Date: Tue, 16 Aug 2022 16:27:03 +0100 Subject: [PATCH 043/162] Adding watch command to CLI. --- packages/builder/vite.config.js | 4 ++-- packages/cli/src/plugins/index.js | 31 +++++++++++++++++++++++++++++-- packages/cli/src/prebuilds.js | 5 ++++- packages/cli/yarn.lock | 26 +++++++++++++------------- packages/server/src/app.ts | 7 ++++++- packages/server/yarn.lock | 31 +++++++++++++++---------------- packages/worker/yarn.lock | 31 +++++++++++++++---------------- 7 files changed, 84 insertions(+), 51 deletions(-) diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index 9859e1dbb9..20ff93831c 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -15,8 +15,8 @@ export default defineConfig(({ mode }) => { hmr: { protocol: "wss", clientPort: env.VITE_HMR_CLIENT_PORT || 3000, - path: env.VITE_HMR_PATH || "/" - } + path: env.VITE_HMR_PATH || "/", + }, }, base: "/builder/", build: { diff --git a/packages/cli/src/plugins/index.js b/packages/cli/src/plugins/index.js index e6de624b63..3ee2463a31 100644 --- a/packages/cli/src/plugins/index.js +++ b/packages/cli/src/plugins/index.js @@ -41,7 +41,7 @@ async function init(opts) { console.log(info(`Plugin created in directory "${name}"`)) } -async function build() { +async function verify() { console.log(info("Verifying plugin...")) const schema = fs.readFileSync("schema.json", "utf8") const pkg = fs.readFileSync("package.json", "utf8") @@ -57,21 +57,43 @@ async function build() { name = pkgJson.name version = pkgJson.version validate(schemaJson) + return { name, version } } catch (err) { if (err && err.message && err.message.includes("not valid JSON")) { console.log(error(`schema.json is not valid JSON: ${err.message}`)) } else { console.log(error(`Invalid schema/package.json: ${err.message}`)) } + } +} + +async function build() { + const verified = await verify() + if (!verified.name) { return } console.log(success("Verified!")) console.log(info("Building plugin...")) await runPkgCommand("build") - const output = join("dist", `${name}-${version}.tar.gz`) + const output = join("dist", `${verified.name}-${verified.version}.tar.gz`) console.log(success(`Build complete - output in: ${output}`)) } +async function watch() { + const verified = await verify() + if (!verified.name) { + return + } + const output = join("dist", `${verified.name}-${verified.version}.tar.gz`) + console.log(info(`Watching - build in: ${output}`)) + try { + await runPkgCommand("watch") + } catch (err) { + // always errors when user escapes + console.log(success("Watch exited.")) + } +} + const command = new Command(`${CommandWords.PLUGIN}`) .addHelp( "Custom plugins for Budibase, init, build and verify your components and datasources with this tool." @@ -86,5 +108,10 @@ const command = new Command(`${CommandWords.PLUGIN}`) "Build your plugin, this will verify and produce a final tarball for your project.", build ) + .addSubOption( + "--watch", + "Automatically build any changes to your plugin.", + watch + ) exports.command = command diff --git a/packages/cli/src/prebuilds.js b/packages/cli/src/prebuilds.js index ecc59f964a..b8f380a937 100644 --- a/packages/cli/src/prebuilds.js +++ b/packages/cli/src/prebuilds.js @@ -5,7 +5,10 @@ const PREBUILDS = "prebuilds" const ARCH = `${os.platform()}-${os.arch()}` const PREBUILD_DIR = join(process.execPath, "..", PREBUILDS, ARCH) -checkForBinaries() +// running as built CLI pkg bundle +if (!process.argv[0].includes("node")) { + checkForBinaries() +} function checkForBinaries() { const readDir = join(__filename, "..", "..", PREBUILDS, ARCH) diff --git a/packages/cli/yarn.lock b/packages/cli/yarn.lock index 43c219fcd7..72b4bb328e 100644 --- a/packages/cli/yarn.lock +++ b/packages/cli/yarn.lock @@ -43,12 +43,12 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@budibase/backend-core@^1.2.38": - version "1.2.38" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.38.tgz#9451ae72f6af8cff3aa0a57dc61fc8d3505a77a0" - integrity sha512-g7m4fHG1tLqNsSvdSltqRHLASOH5n3QBbN5DD7cmSBIVpUtDCA0EMx/L0vkDDhTmbOQApXAW3cyJs6H3QiWtOw== +"@budibase/backend-core@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.40.tgz#692062478f310eaee780adbc55e266fc3b6649b6" + integrity sha512-HUw6IQgKkP345vnQcTok6X+inqYe0WpUL7uFJnm3XERvsAWX4FYWbgDoGJGS0+jZjdPjvARkt4+uZuTAEUFLiQ== dependencies: - "@budibase/types" "^1.2.38" + "@budibase/types" "^1.2.40" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -101,10 +101,10 @@ to-gfm-code-block "^0.1.1" year "^0.2.1" -"@budibase/string-templates@^1.2.38": - version "1.2.38" - resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.38.tgz#404804df516fb981b4f073f09bab64c9111cecb0" - integrity sha512-JRIAZVuuBECxDBcbx5FOYRRKi1ZyW7//LwKL5U1r9sIVCIxCW1t5b175oTnR9/bkktNs7X2ziynH/tsT5GVC0g== +"@budibase/string-templates@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/string-templates/-/string-templates-1.2.40.tgz#d7012b415a51e0119ac098e77d052f96bc04e742" + integrity sha512-Vc/DrmJ//kpT+QoIGqloVnomBJgHVPNIiCOXc+2XSsN5HyR18S8uO7lc77cpln3dTlvNcd7bQqXO1UIx8oebUQ== dependencies: "@budibase/handlebars-helpers" "^0.11.8" dayjs "^1.10.4" @@ -113,10 +113,10 @@ lodash "^4.17.20" vm2 "^3.9.4" -"@budibase/types@^1.2.38": - version "1.2.38" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.38.tgz#472f4ec891242488561a8cfc175961664bc7ac88" - integrity sha512-pMKh4FKhPoa1pge4FKqPi3gbzZp3HJ1RuhM5naKFqC1yompIn/Es+YNft39VC2bTW5tiGbucMcjWzdpMwTSTVw== +"@budibase/types@1.2.40", "@budibase/types@^1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.40.tgz#c1456728b61966cab7fe3689bd044bf415faa138" + integrity sha512-eNZFG0C/GBog87y6StKBjdF/aDJJtUHbAM8NWLUNNqTAiMxO2s3XhDN1dE6t74NBCRFzJo2sAD+34pJHhKFanQ== "@eslint/eslintrc@^0.4.3": version "0.4.3" diff --git a/packages/server/src/app.ts b/packages/server/src/app.ts index 6f63715cfb..e9a5661093 100644 --- a/packages/server/src/app.ts +++ b/packages/server/src/app.ts @@ -138,7 +138,12 @@ module.exports = server.listen(env.PORT || 0, async () => { } // monitor plugin directory if required - if (env.SELF_HOSTED && !env.MULTI_TENANCY && env.PLUGINS_DIR && fs.existsSync(env.PLUGINS_DIR)) { + if ( + env.SELF_HOSTED && + !env.MULTI_TENANCY && + env.PLUGINS_DIR && + fs.existsSync(env.PLUGINS_DIR) + ) { const watchPath = path.join(env.PLUGINS_DIR, "./**/dist/*.tar.gz") chokidar .watch(watchPath, { diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index ebfd49ce8b..e39b0b97c4 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,19 +1094,18 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.39-alpha.8.tgz#70c4d3de7c68feaa3d7b183e4c9cfb1baf3d3d47" - integrity sha512-vBGPIei1qVPmbrHKGD4Swf7ECOWGXV+2buRIOkr0gRawK8oLOXc2xYV1zsDM7jd7rTMwtyF86fL/lhaSkXWwKA== +"@budibase/backend-core@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.40.tgz#692062478f310eaee780adbc55e266fc3b6649b6" + integrity sha512-HUw6IQgKkP345vnQcTok6X+inqYe0WpUL7uFJnm3XERvsAWX4FYWbgDoGJGS0+jZjdPjvARkt4+uZuTAEUFLiQ== dependencies: - "@budibase/types" "1.2.39-alpha.8" + "@budibase/types" "^1.2.40" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" dotenv "16.0.1" emitter-listener "1.1.2" ioredis "4.28.0" - joi "17.6.0" jsonwebtoken "8.5.1" koa-passport "4.1.4" lodash "4.17.21" @@ -1178,13 +1177,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.39-alpha.8.tgz#11433da0dba0e6c81ad93d6cabc5ce165db94e0f" - integrity sha512-1N3FnVPhUwh2KR0IGiN+EjbY3LpF563Ac2FyT/JgyS9wG6NTP0hV/ugA7TZIvkv2XaYroYMYSPBa/wYtWh4xBQ== +"@budibase/pro@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.40.tgz#007cad4d8341698104498ae7d1578a7e26760dd7" + integrity sha512-lGB0/O8l63FtpP1dOzxowFUjgj7SrRSVsODygPB7oScfUBtbqHyZKC4EafrVpJT4A8hbdh1ijQZ8PLJE/YdRkQ== dependencies: - "@budibase/backend-core" "1.2.39-alpha.8" - "@budibase/types" "1.2.39-alpha.8" + "@budibase/backend-core" "1.2.40" + "@budibase/types" "1.2.40" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1206,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.39-alpha.8.tgz#2999dac33da64b41f222d0fe73cfd387957952d9" - integrity sha512-UbknZ3Pnl8tdCPy5XKkuW3OQb1T/L+n1slY8/orm8KpR/TOEhK4Q20JRxENqQo5f9Za8bX4COesLjwAmae426Q== +"@budibase/types@1.2.40", "@budibase/types@^1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.40.tgz#c1456728b61966cab7fe3689bd044bf415faa138" + integrity sha512-eNZFG0C/GBog87y6StKBjdF/aDJJtUHbAM8NWLUNNqTAiMxO2s3XhDN1dE6t74NBCRFzJo2sAD+34pJHhKFanQ== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 9b29ca8dc7..9806952df8 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,19 +291,18 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.39-alpha.8.tgz#70c4d3de7c68feaa3d7b183e4c9cfb1baf3d3d47" - integrity sha512-vBGPIei1qVPmbrHKGD4Swf7ECOWGXV+2buRIOkr0gRawK8oLOXc2xYV1zsDM7jd7rTMwtyF86fL/lhaSkXWwKA== +"@budibase/backend-core@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.40.tgz#692062478f310eaee780adbc55e266fc3b6649b6" + integrity sha512-HUw6IQgKkP345vnQcTok6X+inqYe0WpUL7uFJnm3XERvsAWX4FYWbgDoGJGS0+jZjdPjvARkt4+uZuTAEUFLiQ== dependencies: - "@budibase/types" "1.2.39-alpha.8" + "@budibase/types" "^1.2.40" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" dotenv "16.0.1" emitter-listener "1.1.2" ioredis "4.28.0" - joi "17.6.0" jsonwebtoken "8.5.1" koa-passport "4.1.4" lodash "4.17.21" @@ -325,21 +324,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.39-alpha.8.tgz#11433da0dba0e6c81ad93d6cabc5ce165db94e0f" - integrity sha512-1N3FnVPhUwh2KR0IGiN+EjbY3LpF563Ac2FyT/JgyS9wG6NTP0hV/ugA7TZIvkv2XaYroYMYSPBa/wYtWh4xBQ== +"@budibase/pro@1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.40.tgz#007cad4d8341698104498ae7d1578a7e26760dd7" + integrity sha512-lGB0/O8l63FtpP1dOzxowFUjgj7SrRSVsODygPB7oScfUBtbqHyZKC4EafrVpJT4A8hbdh1ijQZ8PLJE/YdRkQ== dependencies: - "@budibase/backend-core" "1.2.39-alpha.8" - "@budibase/types" "1.2.39-alpha.8" + "@budibase/backend-core" "1.2.40" + "@budibase/types" "1.2.40" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.39-alpha.8": - version "1.2.39-alpha.8" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.39-alpha.8.tgz#2999dac33da64b41f222d0fe73cfd387957952d9" - integrity sha512-UbknZ3Pnl8tdCPy5XKkuW3OQb1T/L+n1slY8/orm8KpR/TOEhK4Q20JRxENqQo5f9Za8bX4COesLjwAmae426Q== +"@budibase/types@1.2.40", "@budibase/types@^1.2.40": + version "1.2.40" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.40.tgz#c1456728b61966cab7fe3689bd044bf415faa138" + integrity sha512-eNZFG0C/GBog87y6StKBjdF/aDJJtUHbAM8NWLUNNqTAiMxO2s3XhDN1dE6t74NBCRFzJo2sAD+34pJHhKFanQ== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 39188c6af4c7f2b5d385492ced798e2be7f8ea2b Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 17 Aug 2022 09:21:36 +0100 Subject: [PATCH 044/162] Update vite config to work properly with all defaults --- packages/builder/vite.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index 20ff93831c..ad58b472dd 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -13,7 +13,7 @@ export default defineConfig(({ mode }) => { strict: false, }, hmr: { - protocol: "wss", + protocol: env.VITE_HMR_PROTOCOL || "ws", clientPort: env.VITE_HMR_CLIENT_PORT || 3000, path: env.VITE_HMR_PATH || "/", }, From 9a49f58a88f14dcb08b1c8b52c844abc43a207c6 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 17 Aug 2022 10:05:13 +0100 Subject: [PATCH 045/162] Adding full flow for creating custom datasource. --- .../modals/CreateDatasourceModal.svelte | 3 +++ .../modals/DatasourceConfigModal.svelte | 5 ++++- packages/server/src/integrations/index.ts | 16 ++++++++++++-- .../server/src/utilities/fileSystem/index.js | 22 +++++++++++++++++++ 4 files changed, 43 insertions(+), 3 deletions(-) diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 2d5e6976bf..33953493f6 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -49,6 +49,9 @@ schema: selected.datasource, auth: selected.auth, } + if (selected.friendlyName) { + integration.name = selected.friendlyName + } checkShowImport() } diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte index 0aaa2b201d..ecfd838b16 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte @@ -14,6 +14,9 @@ let datasource = cloneDeep(integration) let skipFetch = false + $: name = + IntegrationNames[datasource.type] || datasource.name || datasource.type + async function saveDatasource() { try { const resp = await save(datasource, skipFetch) @@ -32,7 +35,7 @@ saveDatasource()} onCancel={() => modal.show()} confirmText={datasource.plus diff --git a/packages/server/src/integrations/index.ts b/packages/server/src/integrations/index.ts index bf267e46cc..b9523061a4 100644 --- a/packages/server/src/integrations/index.ts +++ b/packages/server/src/integrations/index.ts @@ -15,6 +15,7 @@ import redis from "./redis" import snowflake from "./snowflake" import { getPlugins } from "../api/controllers/plugin" import { SourceName, Integration, PluginType } from "@budibase/types" +import { getDatasourcePlugin } from "../utilities/fileSystem" const environment = require("../environment") const { cloneDeep } = require("lodash") @@ -65,6 +66,8 @@ if (environment.SELF_HOSTED) { DEFINITIONS[SourceName.GOOGLE_SHEETS] = googlesheets.schema } +function isIntegrationAvailable(integration: string) {} + module.exports = { getDefinitions: async () => { const plugins = await getPlugins(PluginType.DATASOURCE) @@ -82,7 +85,16 @@ module.exports = { ...pluginSchemas, } }, - getIntegration: async () => { - return INTEGRATIONS + getIntegration: async (integration: string) => { + if (INTEGRATIONS[integration]) { + return INTEGRATIONS[integration] + } + const plugins = await getPlugins(PluginType.DATASOURCE) + for (let plugin of plugins) { + if (plugin.name === integration) { + // need to use commonJS require due to its dynamic runtime nature + return getDatasourcePlugin(plugin.name, plugin.jsUrl) + } + } }, } diff --git a/packages/server/src/utilities/fileSystem/index.js b/packages/server/src/utilities/fileSystem/index.js index 94c5a92375..9b124d6c29 100644 --- a/packages/server/src/utilities/fileSystem/index.js +++ b/packages/server/src/utilities/fileSystem/index.js @@ -26,9 +26,11 @@ const { const MemoryStream = require("memorystream") const { getAppId } = require("@budibase/backend-core/context") const tar = require("tar") +const fetch = require("node-fetch") const TOP_LEVEL_PATH = join(__dirname, "..", "..", "..") const NODE_MODULES_PATH = join(TOP_LEVEL_PATH, "node_modules") +const DATASOURCE_PATH = join(budibaseTempDir(), "datasource") /** * The single stack system (Cloud and Builder) should not make use of the file system where possible, @@ -348,6 +350,26 @@ exports.extractPluginTarball = async file => { return { metadata, directory: path } } +exports.getDatasourcePlugin = async (name, url) => { + if (!fs.existsSync(DATASOURCE_PATH)) { + fs.mkdirSync(DATASOURCE_PATH) + } + const filename = join(DATASOURCE_PATH, name) + if (fs.existsSync(filename)) { + return require(filename) + } + const response = fetch(url) + if (response.status === 200) { + const content = await response.text() + fs.writeFileSync(filename, content) + require(filename) + } else { + throw new Error( + `Unable to retrieve plugin - reason: ${await response.text()}` + ) + } +} + /** * Full function definition for below can be found in the utilities. */ From ecf1fbffa5578bc924156a2ab1945749287349f4 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 17 Aug 2022 10:46:17 +0100 Subject: [PATCH 046/162] Updating custom datasource SVG - splitting out in UI. --- .../_components/DatasourceCard.svelte | 73 +++++++++++++++++++ .../DatasourceNavigator/icons/Custom.svelte | 57 ++++++++------- .../modals/CreateDatasourceModal.svelte | 45 +++++------- 3 files changed, 122 insertions(+), 53 deletions(-) create mode 100644 packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte diff --git a/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte b/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte new file mode 100644 index 0000000000..2dac2fec79 --- /dev/null +++ b/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte @@ -0,0 +1,73 @@ + + +
dispatcher("selected", integrationType)} + class="item hoverable" +> +
+ +
+ {schema.friendlyName} + {#if schema.type} + {schema.type || ""} + {/if} +
+
+
+ + diff --git a/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte b/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte index 354b7a3358..0d4b7219aa 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/icons/Custom.svelte @@ -1,8 +1,6 @@ - - - - - - + + + + + diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 33953493f6..945cd574d8 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -18,6 +18,7 @@ import { createRestDatasource } from "builderStore/datasource" import { goto } from "@roxi/routify" import ImportRestQueriesModal from "./ImportRestQueriesModal.svelte" + import DatasourceCard from "../_components/DatasourceCard.svelte" export let modal let integrations = {} @@ -95,14 +96,6 @@ } integrations = newIntegrations } - - function getIcon(integrationType, schema) { - if (schema.custom) { - return ICONS.CUSTOM - } else { - return ICONS[integrationType] - } - } @@ -161,28 +154,24 @@ Connect to an external data source
- {#each Object.entries(integrations).filter(([key]) => key !== IntegrationTypes.INTERNAL) as [integrationType, schema]} -
selectIntegration(integrationType)} - class="item hoverable" - > -
- -
- {schema.friendlyName} - {#if schema.type} - {schema.type || ""} - {/if} -
-
-
+ {#each Object.entries(integrations).filter(([key, val]) => key !== IntegrationTypes.INTERNAL && !val.custom) as [integrationType, schema]} + selectIntegration(evt.detail)} + {schema} + bind:integrationType + {integration} + /> {/each}
+ Custom data source + {#each Object.entries(integrations).filter(entry => entry[1].custom) as [integrationType, schema]} + selectIntegration(evt.detail)} + {schema} + bind:integrationType + {integration} + /> + {/each}
From ffb4ba48e7b560d361919ad33f016ed26c97ed6e Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 17 Aug 2022 11:01:25 +0100 Subject: [PATCH 047/162] Adding some controls around datasource config creation and updating minio fetch. --- .../DatasourceNavigator/modals/DatasourceConfigModal.svelte | 3 +++ packages/server/src/utilities/fileSystem/index.js | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte index ecfd838b16..c8a5bc96eb 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/DatasourceConfigModal.svelte @@ -19,6 +19,9 @@ async function saveDatasource() { try { + if (!datasource.name) { + datasource.name = name + } const resp = await save(datasource, skipFetch) $goto(`./datasource/${resp._id}`) notifications.success(`Datasource updated successfully.`) diff --git a/packages/server/src/utilities/fileSystem/index.js b/packages/server/src/utilities/fileSystem/index.js index 9b124d6c29..d65ee48f05 100644 --- a/packages/server/src/utilities/fileSystem/index.js +++ b/packages/server/src/utilities/fileSystem/index.js @@ -17,6 +17,7 @@ const { downloadTarball, } = require("./utilities") const { updateClientLibrary } = require("./clientLibrary") +const { checkSlashesInUrl } = require("../") const env = require("../../environment") const { USER_METDATA_PREFIX, @@ -358,7 +359,7 @@ exports.getDatasourcePlugin = async (name, url) => { if (fs.existsSync(filename)) { return require(filename) } - const response = fetch(url) + const response = await fetch(checkSlashesInUrl(`${env.MINIO_URL}/${url}`)) if (response.status === 200) { const content = await response.text() fs.writeFileSync(filename, content) From 0db9a4ec6ee37ddeff7065d466d23e61597923ae Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 17 Aug 2022 23:13:51 +0100 Subject: [PATCH 048/162] Adding full builder integration of custom components - splitting into own section properly - fixing some issues with SVG class overlap. --- .../builder/src/builderStore/datasource.js | 2 +- .../DatasourceNavigator.svelte | 4 ++-- .../_components/DatasourceCard.svelte | 10 +--------- .../DatasourceNavigator/icons/Custom.svelte | 18 ++++++++++++------ .../backend/DatasourceNavigator/icons/index.js | 12 +++++++++++- .../app/[application]/data/_layout.svelte | 4 +++- .../server/src/utilities/fileSystem/index.js | 5 ++++- 7 files changed, 34 insertions(+), 21 deletions(-) diff --git a/packages/builder/src/builderStore/datasource.js b/packages/builder/src/builderStore/datasource.js index 804d88bad6..84edcdd6ad 100644 --- a/packages/builder/src/builderStore/datasource.js +++ b/packages/builder/src/builderStore/datasource.js @@ -9,7 +9,7 @@ function prepareData(config) { ds => ds.source === config.type ).length - let baseName = IntegrationNames[config.type] + let baseName = IntegrationNames[config.type] || config.name let name = existingTypeCount === 0 ? baseName : `${baseName}-${existingTypeCount + 1}` diff --git a/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte b/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte index 9faf00a199..6235e52916 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/DatasourceNavigator.svelte @@ -13,7 +13,7 @@ customQueryIconColor, customQueryText, } from "helpers/data/utils" - import ICONS from "./icons" + import { getIcon } from "./icons" import { notifications } from "@budibase/bbui" let openDataSources = [] @@ -124,7 +124,7 @@ >
diff --git a/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte b/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte index 2dac2fec79..6dffc70a63 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/_components/DatasourceCard.svelte @@ -1,21 +1,13 @@
- + - + {#if modal} + + {/if}
diff --git a/packages/server/src/utilities/fileSystem/index.js b/packages/server/src/utilities/fileSystem/index.js index d65ee48f05..f937f172b5 100644 --- a/packages/server/src/utilities/fileSystem/index.js +++ b/packages/server/src/utilities/fileSystem/index.js @@ -359,7 +359,10 @@ exports.getDatasourcePlugin = async (name, url) => { if (fs.existsSync(filename)) { return require(filename) } - const response = await fetch(checkSlashesInUrl(`${env.MINIO_URL}/${url}`)) + const fullUrl = checkSlashesInUrl( + `${env.MINIO_URL}/${ObjectStoreBuckets.PLUGINS}/${url}` + ) + const response = await fetch(fullUrl) if (response.status === 200) { const content = await response.text() fs.writeFileSync(filename, content) From ebb622097b173800a5428ff7576c8cf7c2dcc8e7 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Wed, 17 Aug 2022 23:17:10 +0100 Subject: [PATCH 049/162] Fixing issue with single custom datasource being full width in creation modal. --- .../modals/CreateDatasourceModal.svelte | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 945cd574d8..a500c6a5b3 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -164,14 +164,16 @@ {/each}
Custom data source - {#each Object.entries(integrations).filter(entry => entry[1].custom) as [integrationType, schema]} - selectIntegration(evt.detail)} - {schema} - bind:integrationType - {integration} - /> - {/each} +
+ {#each Object.entries(integrations).filter(entry => entry[1].custom) as [integrationType, schema]} + selectIntegration(evt.detail)} + {schema} + bind:integrationType + {integration} + /> + {/each} +
@@ -179,7 +181,7 @@ diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte index b4c8e7abad..399ceab4a9 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte @@ -124,17 +124,5 @@ {#if idx === 0 && componentDefinition?.component?.endsWith("/fieldgroup")} {/if} - {#if section?.info} -
- {@html section.info} -
- {/if} {/each} - - From 60289734dd87b3a80b02a4e0b8983dda4f459809 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 30 Aug 2022 13:32:52 +0100 Subject: [PATCH 067/162] Allow dropping on empty space below tree --- .../navigation/ComponentScrollWrapper.svelte | 18 +++++++++++++++++- .../navigation/ComponentTree.svelte | 3 ++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentScrollWrapper.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentScrollWrapper.svelte index 65352a5dda..15ba7acecf 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentScrollWrapper.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentScrollWrapper.svelte @@ -1,5 +1,7 @@ -
+
diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentTree.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentTree.svelte index 6704027f35..31d6eb132b 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentTree.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentTree.svelte @@ -68,7 +68,8 @@ closedNodes = closedNodes } - const onDrop = async () => { + const onDrop = async e => { + e.stopPropagation() try { await dndStore.actions.drop() } catch (error) { From aed4331ce8850541e35857c33106bb005e1af6e2 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 1 Sep 2022 13:14:25 +0100 Subject: [PATCH 068/162] Revert some cherry pick changes --- .../settings/ComponentSettingsSection.svelte | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte index 399ceab4a9..b4c8e7abad 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsSection.svelte @@ -124,5 +124,17 @@ {#if idx === 0 && componentDefinition?.component?.endsWith("/fieldgroup")} {/if} + {#if section?.info} +
+ {@html section.info} +
+ {/if} {/each} + + From 2922b47620173f41097d36b9dc5b1c0f8f7b063a Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 1 Sep 2022 12:49:54 +0000 Subject: [PATCH 069/162] v1.2.58 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index bb19f48bb0..1e077dc047 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.57", + "version": "1.2.58", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index d0fdb55cb8..eae0c653f3 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.57", + "version": "1.2.58", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.2.57", + "@budibase/types": "^1.2.58", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 5a3a1b4b97..9cff16fc3a 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": "1.2.57", + "version": "1.2.58", "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": "^1.2.57", + "@budibase/string-templates": "^1.2.58", "@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 479956a84b..a13f981c5e 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.57", + "version": "1.2.58", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.2.57", - "@budibase/client": "^1.2.57", - "@budibase/frontend-core": "^1.2.57", - "@budibase/string-templates": "^1.2.57", + "@budibase/bbui": "^1.2.58", + "@budibase/client": "^1.2.58", + "@budibase/frontend-core": "^1.2.58", + "@budibase/string-templates": "^1.2.58", "@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 787b9dd6e0..a19459ce2d 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.57", + "version": "1.2.58", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index fdeac37bd9..b40071bea7 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.57", + "version": "1.2.58", "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": "^1.2.57", - "@budibase/frontend-core": "^1.2.57", - "@budibase/string-templates": "^1.2.57", + "@budibase/bbui": "^1.2.58", + "@budibase/frontend-core": "^1.2.58", + "@budibase/string-templates": "^1.2.58", "@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 0221be197e..bfbe609baa 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.2.57", + "version": "1.2.58", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.2.57", + "@budibase/bbui": "^1.2.58", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index b996fe8787..437ea4f7ba 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.57", + "version": "1.2.58", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.2.57", - "@budibase/client": "^1.2.57", + "@budibase/backend-core": "^1.2.58", + "@budibase/client": "^1.2.58", "@budibase/pro": "1.2.57", - "@budibase/string-templates": "^1.2.57", - "@budibase/types": "^1.2.57", + "@budibase/string-templates": "^1.2.58", + "@budibase/types": "^1.2.58", "@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 9ec0fa65eb..4d4a68f1be 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.57", + "version": "1.2.58", "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 a1c98eb0e7..6974c82e47 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.57", + "version": "1.2.58", "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 c54d9185de..84dc550935 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.57", + "version": "1.2.58", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.2.57", + "@budibase/backend-core": "^1.2.58", "@budibase/pro": "1.2.57", - "@budibase/string-templates": "^1.2.57", - "@budibase/types": "^1.2.57", + "@budibase/string-templates": "^1.2.58", + "@budibase/types": "^1.2.58", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 55e705227306d5e79af2458b355a9eec7cc6a7ef Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 1 Sep 2022 12:53:41 +0000 Subject: [PATCH 070/162] Update pro version to 1.2.58 --- 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 437ea4f7ba..a74fb9e26f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.2.58", "@budibase/client": "^1.2.58", - "@budibase/pro": "1.2.57", + "@budibase/pro": "1.2.58", "@budibase/string-templates": "^1.2.58", "@budibase/types": "^1.2.58", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 5f053ddd46..b09a2116f7 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.57.tgz#eec40e82753d8339ab7f00dc50fd45a65f54fbce" - integrity sha512-vUswrbFGO0BXU5CuK2JmEFdD+sNIjsr4KdNN9ne1u8PTf8WwvEphUm/K6nd+W+KckrzrExqPWIAfM0wI1znsTA== +"@budibase/backend-core@1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58.tgz#00afc311adbfcb8cc2563f77ba7dd1c228d1591f" + integrity sha512-kQvs9S7t+p9K/VwEmXkwVqEgz0fqsd0u7794YUhbE69fSso+PiTZlr0tM9mpprLPqJlVm57/4rt8rzoSldRy0g== dependencies: - "@budibase/types" "^1.2.57" + "@budibase/types" "^1.2.58" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1177,13 +1177,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.57.tgz#89733b31d72731a92341428c86401b07bd9d2050" - integrity sha512-FPUvjjTzM7CV7oOAo6Cf8nSx6GkUmmDTOR0KE9rBH08i5lyZwG+Xw+jt7xHge47ECDwAu2oCjt+6xDpm/6t7jw== +"@budibase/pro@1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58.tgz#da93611966e95d2a2427bbff3dfe14301b366123" + integrity sha512-DAoSjxtSRpgmPS8arFf7tTXyFud5oQH2HwgttS96tDm9/JnZWwKs2vfnj3XX/w8T0SaINvc1abRzjFrryIrTfw== dependencies: - "@budibase/backend-core" "1.2.57" - "@budibase/types" "1.2.57" + "@budibase/backend-core" "1.2.58" + "@budibase/types" "1.2.58" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1206,10 +1206,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.57", "@budibase/types@^1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.57.tgz#416e92f99bc8cde206e311b832b6c924299b57a5" - integrity sha512-tD8qcFnCt46R4k07OokrVJiWcceZtVA9pPNPmrH96S+hGwxXbYGLyaTJpG4nJmiALFG7JzxnesW19UPZeVbalA== +"@budibase/types@1.2.58", "@budibase/types@^1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58.tgz#2f29047f4c11318367516ef63d3c447e4ef28be0" + integrity sha512-Em3IrTjK/DO7+CHt17g3XXDQ45KF4+E9b37xdwHIQiXrNKFaDTJXAF9KWFCZD4d6pYgI/+WZCCew/DNOgOUPhA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 84dc550935..22a08af25f 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.2.58", - "@budibase/pro": "1.2.57", + "@budibase/pro": "1.2.58", "@budibase/string-templates": "^1.2.58", "@budibase/types": "^1.2.58", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index cb6519f4d2..0d7c99f049 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.57.tgz#eec40e82753d8339ab7f00dc50fd45a65f54fbce" - integrity sha512-vUswrbFGO0BXU5CuK2JmEFdD+sNIjsr4KdNN9ne1u8PTf8WwvEphUm/K6nd+W+KckrzrExqPWIAfM0wI1znsTA== +"@budibase/backend-core@1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58.tgz#00afc311adbfcb8cc2563f77ba7dd1c228d1591f" + integrity sha512-kQvs9S7t+p9K/VwEmXkwVqEgz0fqsd0u7794YUhbE69fSso+PiTZlr0tM9mpprLPqJlVm57/4rt8rzoSldRy0g== dependencies: - "@budibase/types" "^1.2.57" + "@budibase/types" "^1.2.58" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -324,21 +324,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.57.tgz#89733b31d72731a92341428c86401b07bd9d2050" - integrity sha512-FPUvjjTzM7CV7oOAo6Cf8nSx6GkUmmDTOR0KE9rBH08i5lyZwG+Xw+jt7xHge47ECDwAu2oCjt+6xDpm/6t7jw== +"@budibase/pro@1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58.tgz#da93611966e95d2a2427bbff3dfe14301b366123" + integrity sha512-DAoSjxtSRpgmPS8arFf7tTXyFud5oQH2HwgttS96tDm9/JnZWwKs2vfnj3XX/w8T0SaINvc1abRzjFrryIrTfw== dependencies: - "@budibase/backend-core" "1.2.57" - "@budibase/types" "1.2.57" + "@budibase/backend-core" "1.2.58" + "@budibase/types" "1.2.58" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.57", "@budibase/types@^1.2.57": - version "1.2.57" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.57.tgz#416e92f99bc8cde206e311b832b6c924299b57a5" - integrity sha512-tD8qcFnCt46R4k07OokrVJiWcceZtVA9pPNPmrH96S+hGwxXbYGLyaTJpG4nJmiALFG7JzxnesW19UPZeVbalA== +"@budibase/types@1.2.58", "@budibase/types@^1.2.58": + version "1.2.58" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58.tgz#2f29047f4c11318367516ef63d3c447e4ef28be0" + integrity sha512-Em3IrTjK/DO7+CHt17g3XXDQ45KF4+E9b37xdwHIQiXrNKFaDTJXAF9KWFCZD4d6pYgI/+WZCCew/DNOgOUPhA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 7a7f6c4dbeed4972d302061c870315a9708a5f8f Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 1 Sep 2022 13:59:55 +0100 Subject: [PATCH 071/162] Remove lingering mentions of block ejection --- .../navigation/ComponentKeyHandler.svelte | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte index 004db799d0..467d9a5a2f 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte @@ -7,9 +7,7 @@ import ConfirmDialog from "components/common/ConfirmDialog.svelte" let confirmDeleteDialog - let confirmEjectDialog let componentToDelete - let componentToEject const keyHandlers = { ["^ArrowUp"]: async component => { @@ -31,10 +29,6 @@ store.actions.components.copy(component) await store.actions.components.paste(component, "below") }, - ["^e"]: component => { - componentToEject = component - confirmEjectDialog.show() - }, ["^Enter"]: () => { $goto("./new") }, @@ -122,10 +116,3 @@ okText="Delete Component" onOk={() => store.actions.components.delete(componentToDelete)} /> - store.actions.components.requestEjectBlock(componentToEject?._id)} - okText="Eject block" -/> From 6225d7d6a9d66f5675411db8292acadb3d78446f Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 1 Sep 2022 13:02:02 +0000 Subject: [PATCH 072/162] v1.2.58-alpha.6 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index d726cbab9c..2498e120c0 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index e02ecc2c0c..7609d7abab 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.2.58-alpha.5", + "@budibase/types": "1.2.58-alpha.6", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index a35698c779..4045df839c 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": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "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": "1.2.58-alpha.5", + "@budibase/string-templates": "1.2.58-alpha.6", "@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 2ac398ecca..1bc721bf58 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.2.58-alpha.5", - "@budibase/client": "1.2.58-alpha.5", - "@budibase/frontend-core": "1.2.58-alpha.5", - "@budibase/string-templates": "1.2.58-alpha.5", + "@budibase/bbui": "1.2.58-alpha.6", + "@budibase/client": "1.2.58-alpha.6", + "@budibase/frontend-core": "1.2.58-alpha.6", + "@budibase/string-templates": "1.2.58-alpha.6", "@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 6d5a1e8794..6f077cb0e5 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.2.58-alpha.5", + "@budibase/backend-core": "1.2.58-alpha.6", "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 4b4760099d..c40cc75a27 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "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": "1.2.58-alpha.5", - "@budibase/frontend-core": "1.2.58-alpha.5", - "@budibase/string-templates": "1.2.58-alpha.5", + "@budibase/bbui": "1.2.58-alpha.6", + "@budibase/frontend-core": "1.2.58-alpha.6", + "@budibase/string-templates": "1.2.58-alpha.6", "@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 20b22ffe40..c16c488b51 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.2.58-alpha.5", + "@budibase/bbui": "1.2.58-alpha.6", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index c440376177..2f27499fe6 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.2.58-alpha.5", - "@budibase/client": "1.2.58-alpha.5", + "@budibase/backend-core": "1.2.58-alpha.6", + "@budibase/client": "1.2.58-alpha.6", "@budibase/pro": "1.2.58-alpha.5", - "@budibase/string-templates": "1.2.58-alpha.5", - "@budibase/types": "1.2.58-alpha.5", + "@budibase/string-templates": "1.2.58-alpha.6", + "@budibase/types": "1.2.58-alpha.6", "@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 7cd3887fc8..88589b72a0 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "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 6ca06392d3..dce4173a21 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "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 4601c1cd43..766ef529e6 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.58-alpha.5", + "version": "1.2.58-alpha.6", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.2.58-alpha.5", + "@budibase/backend-core": "1.2.58-alpha.6", "@budibase/pro": "1.2.58-alpha.5", - "@budibase/string-templates": "1.2.58-alpha.5", - "@budibase/types": "1.2.58-alpha.5", + "@budibase/string-templates": "1.2.58-alpha.6", + "@budibase/types": "1.2.58-alpha.6", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 6d5f277908dc67aa4c01341ce956fe70ea6b7fb6 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 1 Sep 2022 13:06:11 +0000 Subject: [PATCH 073/162] Update pro version to 1.2.58-alpha.6 --- 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 2f27499fe6..1b7dc9acc3 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.2.58-alpha.6", "@budibase/client": "1.2.58-alpha.6", - "@budibase/pro": "1.2.58-alpha.5", + "@budibase/pro": "1.2.58-alpha.6", "@budibase/string-templates": "1.2.58-alpha.6", "@budibase/types": "1.2.58-alpha.6", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 19c3977f67..b49da40e89 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.5.tgz#430699334629b3bd05a5066aa6660c1f68f047b2" - integrity sha512-Z926rAp0eskXUr5UXGwh0S1OMDA3qzIi8o0GHLlO7KZAzk49RYzhRT/yo1fIst8Eq/9ZCaXLFxIeRkDmCJgILg== +"@budibase/backend-core@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.6.tgz#5c8d56af57247ce240d4dc1ba5ca8d5dc172903b" + integrity sha512-QMtLjvF4aKOSzlr4G3/ZREhSgD3dzm4v7l9KnYTmoeV0KkoxW1ytf1Q7fP2QWiMwWr4mhG3OJiY2x/0vsVaGiw== dependencies: - "@budibase/types" "1.2.58-alpha.5" + "@budibase/types" "1.2.58-alpha.6" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.5.tgz#1f739653e641ac32d20818517d35bef489ec2ae6" - integrity sha512-owT7ipgZ588KAz6aHPJie5bLJX6EkhTRUvUQlyOJuLWt/hdXXnvbu+agxBQNaXE4gVzn916JJP0L0tbiMctjNA== +"@budibase/pro@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.6.tgz#00d5c9d90109718019bc5891d3a57e6e184e137f" + integrity sha512-EzjUVXKOP5QbtIC1+e0w5eE75Meq8ZmtzYAQ9uU7vSy3EvErxCG5+eEr0UwzHHxQNhWxqkrNQnuae7QfNy1Ytg== dependencies: - "@budibase/backend-core" "1.2.58-alpha.5" - "@budibase/types" "1.2.58-alpha.5" + "@budibase/backend-core" "1.2.58-alpha.6" + "@budibase/types" "1.2.58-alpha.6" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.5.tgz#8ea99745f296a1076f878a06b7c228bc60886cd3" - integrity sha512-0JhHDGvfcMcjhBckP3RqbKCDsMhx7ZVTV8wvaqsOaG7PnBSst9dxyX7ETVVzfvYolIK1eV11itsgx0FpbYID2w== +"@budibase/types@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.6.tgz#7465783174993749852f6c6be0afa67f709571f3" + integrity sha512-+z7WZw/gunmGIQeyPnLWApiqUTqeq+Wq8m/1Utz58ImHkoM0iumKrHtevSNRxAl0YHy5s11aetI24XuoxGHaTQ== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 766ef529e6..35f1030049 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.2.58-alpha.6", - "@budibase/pro": "1.2.58-alpha.5", + "@budibase/pro": "1.2.58-alpha.6", "@budibase/string-templates": "1.2.58-alpha.6", "@budibase/types": "1.2.58-alpha.6", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 580f586a63..a8730bed22 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.5.tgz#430699334629b3bd05a5066aa6660c1f68f047b2" - integrity sha512-Z926rAp0eskXUr5UXGwh0S1OMDA3qzIi8o0GHLlO7KZAzk49RYzhRT/yo1fIst8Eq/9ZCaXLFxIeRkDmCJgILg== +"@budibase/backend-core@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.6.tgz#5c8d56af57247ce240d4dc1ba5ca8d5dc172903b" + integrity sha512-QMtLjvF4aKOSzlr4G3/ZREhSgD3dzm4v7l9KnYTmoeV0KkoxW1ytf1Q7fP2QWiMwWr4mhG3OJiY2x/0vsVaGiw== dependencies: - "@budibase/types" "1.2.58-alpha.5" + "@budibase/types" "1.2.58-alpha.6" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.5.tgz#1f739653e641ac32d20818517d35bef489ec2ae6" - integrity sha512-owT7ipgZ588KAz6aHPJie5bLJX6EkhTRUvUQlyOJuLWt/hdXXnvbu+agxBQNaXE4gVzn916JJP0L0tbiMctjNA== +"@budibase/pro@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.6.tgz#00d5c9d90109718019bc5891d3a57e6e184e137f" + integrity sha512-EzjUVXKOP5QbtIC1+e0w5eE75Meq8ZmtzYAQ9uU7vSy3EvErxCG5+eEr0UwzHHxQNhWxqkrNQnuae7QfNy1Ytg== dependencies: - "@budibase/backend-core" "1.2.58-alpha.5" - "@budibase/types" "1.2.58-alpha.5" + "@budibase/backend-core" "1.2.58-alpha.6" + "@budibase/types" "1.2.58-alpha.6" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.58-alpha.5": - version "1.2.58-alpha.5" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.5.tgz#8ea99745f296a1076f878a06b7c228bc60886cd3" - integrity sha512-0JhHDGvfcMcjhBckP3RqbKCDsMhx7ZVTV8wvaqsOaG7PnBSst9dxyX7ETVVzfvYolIK1eV11itsgx0FpbYID2w== +"@budibase/types@1.2.58-alpha.6": + version "1.2.58-alpha.6" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.6.tgz#7465783174993749852f6c6be0afa67f709571f3" + integrity sha512-+z7WZw/gunmGIQeyPnLWApiqUTqeq+Wq8m/1Utz58ImHkoM0iumKrHtevSNRxAl0YHy5s11aetI24XuoxGHaTQ== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From e03c48bd6e78d8d8e89a4d2e5963169fef3d1635 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 1 Sep 2022 14:10:29 +0100 Subject: [PATCH 074/162] Remove extra space --- charts/budibase/templates/app-service-deployment.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/budibase/templates/app-service-deployment.yaml b/charts/budibase/templates/app-service-deployment.yaml index 89bc2e578d..a9bf714c45 100644 --- a/charts/budibase/templates/app-service-deployment.yaml +++ b/charts/budibase/templates/app-service-deployment.yaml @@ -132,7 +132,7 @@ spec: {{ end }} {{ if .Values.globals.pluginsDir }} - name: PLUGINS_DIR - value: { { .Values.globals.pluginsDir | quote }} + value: {{ .Values.globals.pluginsDir | quote }} {{ end }} {{ if .Values.services.apps.nodeDebug }} - name: NODE_DEBUG From be967fbf9eea4d1d0c58a624251b00452ad65482 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 1 Sep 2022 14:31:49 +0000 Subject: [PATCH 075/162] v1.2.58-alpha.7 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 2498e120c0..dd5f7a9db3 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 7609d7abab..4eae026f90 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.2.58-alpha.6", + "@budibase/types": "1.2.58-alpha.7", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 4045df839c..7157f0e22e 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": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "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": "1.2.58-alpha.6", + "@budibase/string-templates": "1.2.58-alpha.7", "@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 1bc721bf58..1ff505a25a 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.2.58-alpha.6", - "@budibase/client": "1.2.58-alpha.6", - "@budibase/frontend-core": "1.2.58-alpha.6", - "@budibase/string-templates": "1.2.58-alpha.6", + "@budibase/bbui": "1.2.58-alpha.7", + "@budibase/client": "1.2.58-alpha.7", + "@budibase/frontend-core": "1.2.58-alpha.7", + "@budibase/string-templates": "1.2.58-alpha.7", "@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 6f077cb0e5..86e45021c9 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.2.58-alpha.6", + "@budibase/backend-core": "1.2.58-alpha.7", "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 c40cc75a27..f35d5fd112 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "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": "1.2.58-alpha.6", - "@budibase/frontend-core": "1.2.58-alpha.6", - "@budibase/string-templates": "1.2.58-alpha.6", + "@budibase/bbui": "1.2.58-alpha.7", + "@budibase/frontend-core": "1.2.58-alpha.7", + "@budibase/string-templates": "1.2.58-alpha.7", "@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 c16c488b51..8ee1aa8559 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.2.58-alpha.6", + "@budibase/bbui": "1.2.58-alpha.7", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 1b7dc9acc3..a298c83947 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.2.58-alpha.6", - "@budibase/client": "1.2.58-alpha.6", + "@budibase/backend-core": "1.2.58-alpha.7", + "@budibase/client": "1.2.58-alpha.7", "@budibase/pro": "1.2.58-alpha.6", - "@budibase/string-templates": "1.2.58-alpha.6", - "@budibase/types": "1.2.58-alpha.6", + "@budibase/string-templates": "1.2.58-alpha.7", + "@budibase/types": "1.2.58-alpha.7", "@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 88589b72a0..99a2387f2c 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "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 dce4173a21..2ce235bb09 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "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 35f1030049..0bb3dba237 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.58-alpha.6", + "version": "1.2.58-alpha.7", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.2.58-alpha.6", + "@budibase/backend-core": "1.2.58-alpha.7", "@budibase/pro": "1.2.58-alpha.6", - "@budibase/string-templates": "1.2.58-alpha.6", - "@budibase/types": "1.2.58-alpha.6", + "@budibase/string-templates": "1.2.58-alpha.7", + "@budibase/types": "1.2.58-alpha.7", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From fa3f827a7d28a1b26c71cf76ddc605c062e666e5 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 1 Sep 2022 14:34:56 +0000 Subject: [PATCH 076/162] Update pro version to 1.2.58-alpha.7 --- 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 a298c83947..330cd574c9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.2.58-alpha.7", "@budibase/client": "1.2.58-alpha.7", - "@budibase/pro": "1.2.58-alpha.6", + "@budibase/pro": "1.2.58-alpha.7", "@budibase/string-templates": "1.2.58-alpha.7", "@budibase/types": "1.2.58-alpha.7", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index b49da40e89..aaae2ae12f 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.6.tgz#5c8d56af57247ce240d4dc1ba5ca8d5dc172903b" - integrity sha512-QMtLjvF4aKOSzlr4G3/ZREhSgD3dzm4v7l9KnYTmoeV0KkoxW1ytf1Q7fP2QWiMwWr4mhG3OJiY2x/0vsVaGiw== +"@budibase/backend-core@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.7.tgz#b7888eb0e9796a4e49283cf8b928a6771439dbc0" + integrity sha512-wdZlJDQtYkGNce9hlj30Np6BDxvS5Mr07XhMwERlKzSRjOOAkQtM5bX+7UVZoIE/X0f8/h47U8P4T3Y98WGMkg== dependencies: - "@budibase/types" "1.2.58-alpha.6" + "@budibase/types" "1.2.58-alpha.7" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.6.tgz#00d5c9d90109718019bc5891d3a57e6e184e137f" - integrity sha512-EzjUVXKOP5QbtIC1+e0w5eE75Meq8ZmtzYAQ9uU7vSy3EvErxCG5+eEr0UwzHHxQNhWxqkrNQnuae7QfNy1Ytg== +"@budibase/pro@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.7.tgz#8b21dbda2081a4362701195365cf5290e8416115" + integrity sha512-GDTi6xYpkstSS0CL2kBuNixrVApciovqmx1iC7M5JofGZvbym+Yh4EV+Y9CGAlBw5xgaM3qoGa50AAHB43gtEw== dependencies: - "@budibase/backend-core" "1.2.58-alpha.6" - "@budibase/types" "1.2.58-alpha.6" + "@budibase/backend-core" "1.2.58-alpha.7" + "@budibase/types" "1.2.58-alpha.7" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.6.tgz#7465783174993749852f6c6be0afa67f709571f3" - integrity sha512-+z7WZw/gunmGIQeyPnLWApiqUTqeq+Wq8m/1Utz58ImHkoM0iumKrHtevSNRxAl0YHy5s11aetI24XuoxGHaTQ== +"@budibase/types@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.7.tgz#5f4e7d262bb597d01a1bd7c0674453946de3cfa2" + integrity sha512-VVW7XKFyax5A69cMoR8gwI06cxt/1G1cLH+8ECjIiwb2oO3hHe6WnlA91dUar0IdcdBHji7vYXg4MD1p8wb6jA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 0bb3dba237..bb85730db0 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.2.58-alpha.7", - "@budibase/pro": "1.2.58-alpha.6", + "@budibase/pro": "1.2.58-alpha.7", "@budibase/string-templates": "1.2.58-alpha.7", "@budibase/types": "1.2.58-alpha.7", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index a8730bed22..ed1335a706 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.6.tgz#5c8d56af57247ce240d4dc1ba5ca8d5dc172903b" - integrity sha512-QMtLjvF4aKOSzlr4G3/ZREhSgD3dzm4v7l9KnYTmoeV0KkoxW1ytf1Q7fP2QWiMwWr4mhG3OJiY2x/0vsVaGiw== +"@budibase/backend-core@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.7.tgz#b7888eb0e9796a4e49283cf8b928a6771439dbc0" + integrity sha512-wdZlJDQtYkGNce9hlj30Np6BDxvS5Mr07XhMwERlKzSRjOOAkQtM5bX+7UVZoIE/X0f8/h47U8P4T3Y98WGMkg== dependencies: - "@budibase/types" "1.2.58-alpha.6" + "@budibase/types" "1.2.58-alpha.7" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.6.tgz#00d5c9d90109718019bc5891d3a57e6e184e137f" - integrity sha512-EzjUVXKOP5QbtIC1+e0w5eE75Meq8ZmtzYAQ9uU7vSy3EvErxCG5+eEr0UwzHHxQNhWxqkrNQnuae7QfNy1Ytg== +"@budibase/pro@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58-alpha.7.tgz#8b21dbda2081a4362701195365cf5290e8416115" + integrity sha512-GDTi6xYpkstSS0CL2kBuNixrVApciovqmx1iC7M5JofGZvbym+Yh4EV+Y9CGAlBw5xgaM3qoGa50AAHB43gtEw== dependencies: - "@budibase/backend-core" "1.2.58-alpha.6" - "@budibase/types" "1.2.58-alpha.6" + "@budibase/backend-core" "1.2.58-alpha.7" + "@budibase/types" "1.2.58-alpha.7" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.58-alpha.6": - version "1.2.58-alpha.6" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.6.tgz#7465783174993749852f6c6be0afa67f709571f3" - integrity sha512-+z7WZw/gunmGIQeyPnLWApiqUTqeq+Wq8m/1Utz58ImHkoM0iumKrHtevSNRxAl0YHy5s11aetI24XuoxGHaTQ== +"@budibase/types@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.7.tgz#5f4e7d262bb597d01a1bd7c0674453946de3cfa2" + integrity sha512-VVW7XKFyax5A69cMoR8gwI06cxt/1G1cLH+8ECjIiwb2oO3hHe6WnlA91dUar0IdcdBHji7vYXg4MD1p8wb6jA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 309f746b3e676c68391a75cbb94bf894cb1145ad Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 2 Sep 2022 10:05:43 +0100 Subject: [PATCH 077/162] Fix user validation when pressing confirm --- .../builder/portal/manage/users/_components/AddUserModal.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte b/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte index 0c02eec4e9..e76271854d 100644 --- a/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte +++ b/packages/builder/src/pages/builder/portal/manage/users/_components/AddUserModal.svelte @@ -65,7 +65,7 @@ const onConfirm = () => { let valid = true userData.forEach((input, index) => { - valid = validateInput(input.email, index) && valid + valid = validateInput(input, index) && valid }) if (!valid) { return false From 365df003a72dfe4de8575334b5302ccbf6b2ce4f Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 2 Sep 2022 09:19:07 +0000 Subject: [PATCH 078/162] v1.2.59-alpha.0 --- lerna.json | 4 ++-- packages/backend-core/package.json | 6 +++--- packages/bbui/package.json | 6 +++--- packages/builder/package.json | 12 ++++++------ packages/cli/package.json | 4 ++-- packages/client/package.json | 10 +++++----- packages/frontend-core/package.json | 6 +++--- packages/server/package.json | 12 ++++++------ packages/string-templates/package.json | 4 ++-- packages/types/package.json | 4 ++-- packages/worker/package.json | 10 +++++----- 11 files changed, 39 insertions(+), 39 deletions(-) diff --git a/lerna.json b/lerna.json index 37acdab0e5..4974a78682 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.58", + "version": "1.2.59-alpha.0", "npmClient": "yarn", "packages": [ "packages/*" @@ -15,4 +15,4 @@ ] } } -} \ No newline at end of file +} diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 7eb09cedde..1b0304cb91 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.2.58", + "@budibase/types": "1.2.59-alpha.0", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", @@ -81,4 +81,4 @@ "typescript": "4.7.3" }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 29b41b6352..13c695d015 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": "1.2.58", + "version": "1.2.59-alpha.0", "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": "^1.2.58", + "@budibase/string-templates": "1.2.59-alpha.0", "@spectrum-css/actionbutton": "^1.0.1", "@spectrum-css/actiongroup": "^1.0.1", "@spectrum-css/avatar": "^3.0.2", @@ -86,4 +86,4 @@ "svelte-portal": "^1.0.0" }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} diff --git a/packages/builder/package.json b/packages/builder/package.json index 3d2398d19d..425153a832 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.2.58", - "@budibase/client": "^1.2.58", - "@budibase/frontend-core": "^1.2.58", - "@budibase/string-templates": "^1.2.58", + "@budibase/bbui": "1.2.59-alpha.0", + "@budibase/client": "1.2.59-alpha.0", + "@budibase/frontend-core": "1.2.59-alpha.0", + "@budibase/string-templates": "1.2.59-alpha.0", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", @@ -121,4 +121,4 @@ "vite": "^2.1.5" }, "gitHead": "115189f72a850bfb52b65ec61d932531bf327072" -} \ No newline at end of file +} diff --git a/packages/cli/package.json b/packages/cli/package.json index 624008a7e0..8213d4e914 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -48,4 +48,4 @@ "eslint": "^7.20.0", "renamer": "^4.0.0" } -} \ No newline at end of file +} diff --git a/packages/client/package.json b/packages/client/package.json index cde5efe5db..0c00c1a702 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "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": "^1.2.58", - "@budibase/frontend-core": "^1.2.58", - "@budibase/string-templates": "^1.2.58", + "@budibase/bbui": "1.2.59-alpha.0", + "@budibase/frontend-core": "1.2.59-alpha.0", + "@budibase/string-templates": "1.2.59-alpha.0", "@spectrum-css/button": "^3.0.3", "@spectrum-css/card": "^3.0.3", "@spectrum-css/divider": "^1.0.3", @@ -58,4 +58,4 @@ "rollup-plugin-visualizer": "^5.5.4" }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} diff --git a/packages/frontend-core/package.json b/packages/frontend-core/package.json index 5b816d6d21..8403e5034e 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,13 +1,13 @@ { "name": "@budibase/frontend-core", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.2.58", + "@budibase/bbui": "1.2.59-alpha.0", "lodash": "^4.17.21", "svelte": "^3.46.2" } -} \ No newline at end of file +} diff --git a/packages/server/package.json b/packages/server/package.json index 04d242f195..a6a964b9e6 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.2.58", - "@budibase/client": "^1.2.58", + "@budibase/backend-core": "1.2.59-alpha.0", + "@budibase/client": "1.2.59-alpha.0", "@budibase/pro": "1.2.58", - "@budibase/string-templates": "^1.2.58", - "@budibase/types": "^1.2.58", + "@budibase/string-templates": "1.2.59-alpha.0", + "@budibase/types": "1.2.59-alpha.0", "@bull-board/api": "3.7.0", "@bull-board/koa": "3.9.4", "@elastic/elasticsearch": "7.10.0", @@ -197,4 +197,4 @@ "oracledb": "5.3.0" }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 214d105912..6034e76a32 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", @@ -46,4 +46,4 @@ "typescript": "^4.5.5" }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} diff --git a/packages/types/package.json b/packages/types/package.json index 7805ca3f51..8e9f4c2391 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase types", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -17,4 +17,4 @@ "rimraf": "3.0.2", "typescript": "4.7.3" } -} \ No newline at end of file +} diff --git a/packages/worker/package.json b/packages/worker/package.json index b24d500f7a..b404bfaeea 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.58", + "version": "1.2.59-alpha.0", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.2.58", + "@budibase/backend-core": "1.2.59-alpha.0", "@budibase/pro": "1.2.58", - "@budibase/string-templates": "^1.2.58", - "@budibase/types": "^1.2.58", + "@budibase/string-templates": "1.2.59-alpha.0", + "@budibase/types": "1.2.59-alpha.0", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", @@ -104,4 +104,4 @@ ] }, "gitHead": "d1836a898cab3f8ab80ee6d8f42be1a9eed7dcdc" -} \ No newline at end of file +} From 30bbb5e0d890ba6615a73702386fe1bfd4101edc Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 2 Sep 2022 09:22:44 +0000 Subject: [PATCH 079/162] Update pro version to 1.2.59-alpha.0 --- 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 a6a964b9e6..9f1210fb32 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.2.59-alpha.0", "@budibase/client": "1.2.59-alpha.0", - "@budibase/pro": "1.2.58", + "@budibase/pro": "1.2.59-alpha.0", "@budibase/string-templates": "1.2.59-alpha.0", "@budibase/types": "1.2.59-alpha.0", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 72f3c5ff09..93ba08da8c 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58.tgz#00afc311adbfcb8cc2563f77ba7dd1c228d1591f" - integrity sha512-kQvs9S7t+p9K/VwEmXkwVqEgz0fqsd0u7794YUhbE69fSso+PiTZlr0tM9mpprLPqJlVm57/4rt8rzoSldRy0g== +"@budibase/backend-core@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59-alpha.0.tgz#34330175c26e31ec4838891e8ed561d5f75f1158" + integrity sha512-dXVX+IKeNMUIQUAH52E/9D73s+PSkXeU5m7dGjGeiWZQ2m3CALX0XhdL64NVEmpwmKwJVEvagi26lQSYwVrSyQ== dependencies: - "@budibase/types" "^1.2.58" + "@budibase/types" "1.2.59-alpha.0" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58.tgz#da93611966e95d2a2427bbff3dfe14301b366123" - integrity sha512-DAoSjxtSRpgmPS8arFf7tTXyFud5oQH2HwgttS96tDm9/JnZWwKs2vfnj3XX/w8T0SaINvc1abRzjFrryIrTfw== +"@budibase/pro@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59-alpha.0.tgz#191865bf170832b17566336b047d3461f6036009" + integrity sha512-nP8LL0eZdWpLZ4NViou31dE3uY1dQPJDzvFE9r71OsSLG6KGHS7fkkMA+4hq3gfrsPzAIp729m6RroksqnnKGw== dependencies: - "@budibase/backend-core" "1.2.58" - "@budibase/types" "1.2.58" + "@budibase/backend-core" "1.2.59-alpha.0" + "@budibase/types" "1.2.59-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.58", "@budibase/types@^1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58.tgz#2f29047f4c11318367516ef63d3c447e4ef28be0" - integrity sha512-Em3IrTjK/DO7+CHt17g3XXDQ45KF4+E9b37xdwHIQiXrNKFaDTJXAF9KWFCZD4d6pYgI/+WZCCew/DNOgOUPhA== +"@budibase/types@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59-alpha.0.tgz#7d77598607865a0f5b9a7c9063e0f7a774ebd2a1" + integrity sha512-ddoqBxRKYl3biVmg3l3jFE/eB8DvL1VqMA/sIaVYU16Js913pU0jauT9Z/y2uqiGescfoZReCabBjD7qhr6L7w== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index b404bfaeea..e9708628a1 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.2.59-alpha.0", - "@budibase/pro": "1.2.58", + "@budibase/pro": "1.2.59-alpha.0", "@budibase/string-templates": "1.2.59-alpha.0", "@budibase/types": "1.2.59-alpha.0", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 5ad3ab61c3..f5cb949c22 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58.tgz#00afc311adbfcb8cc2563f77ba7dd1c228d1591f" - integrity sha512-kQvs9S7t+p9K/VwEmXkwVqEgz0fqsd0u7794YUhbE69fSso+PiTZlr0tM9mpprLPqJlVm57/4rt8rzoSldRy0g== +"@budibase/backend-core@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59-alpha.0.tgz#34330175c26e31ec4838891e8ed561d5f75f1158" + integrity sha512-dXVX+IKeNMUIQUAH52E/9D73s+PSkXeU5m7dGjGeiWZQ2m3CALX0XhdL64NVEmpwmKwJVEvagi26lQSYwVrSyQ== dependencies: - "@budibase/types" "^1.2.58" + "@budibase/types" "1.2.59-alpha.0" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.58.tgz#da93611966e95d2a2427bbff3dfe14301b366123" - integrity sha512-DAoSjxtSRpgmPS8arFf7tTXyFud5oQH2HwgttS96tDm9/JnZWwKs2vfnj3XX/w8T0SaINvc1abRzjFrryIrTfw== +"@budibase/pro@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59-alpha.0.tgz#191865bf170832b17566336b047d3461f6036009" + integrity sha512-nP8LL0eZdWpLZ4NViou31dE3uY1dQPJDzvFE9r71OsSLG6KGHS7fkkMA+4hq3gfrsPzAIp729m6RroksqnnKGw== dependencies: - "@budibase/backend-core" "1.2.58" - "@budibase/types" "1.2.58" + "@budibase/backend-core" "1.2.59-alpha.0" + "@budibase/types" "1.2.59-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.58", "@budibase/types@^1.2.58": - version "1.2.58" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58.tgz#2f29047f4c11318367516ef63d3c447e4ef28be0" - integrity sha512-Em3IrTjK/DO7+CHt17g3XXDQ45KF4+E9b37xdwHIQiXrNKFaDTJXAF9KWFCZD4d6pYgI/+WZCCew/DNOgOUPhA== +"@budibase/types@1.2.59-alpha.0": + version "1.2.59-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59-alpha.0.tgz#7d77598607865a0f5b9a7c9063e0f7a774ebd2a1" + integrity sha512-ddoqBxRKYl3biVmg3l3jFE/eB8DvL1VqMA/sIaVYU16Js913pU0jauT9Z/y2uqiGescfoZReCabBjD7qhr6L7w== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 92c556777850894aa27b070d8cc782d857f8a5e4 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 09:52:52 +0000 Subject: [PATCH 080/162] v1.2.59 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index 4974a78682..31155ea968 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.59-alpha.0", + "version": "1.2.59", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 1b0304cb91..0107eda8e6 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.2.59-alpha.0", + "@budibase/types": "^1.2.59", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 13c695d015..7176883c08 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": "1.2.59-alpha.0", + "version": "1.2.59", "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": "1.2.59-alpha.0", + "@budibase/string-templates": "^1.2.59", "@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 425153a832..b62cb954c5 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.2.59-alpha.0", - "@budibase/client": "1.2.59-alpha.0", - "@budibase/frontend-core": "1.2.59-alpha.0", - "@budibase/string-templates": "1.2.59-alpha.0", + "@budibase/bbui": "^1.2.59", + "@budibase/client": "^1.2.59", + "@budibase/frontend-core": "^1.2.59", + "@budibase/string-templates": "^1.2.59", "@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 8213d4e914..ae14ca1ff2 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 0c00c1a702..0c3288cba4 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "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": "1.2.59-alpha.0", - "@budibase/frontend-core": "1.2.59-alpha.0", - "@budibase/string-templates": "1.2.59-alpha.0", + "@budibase/bbui": "^1.2.59", + "@budibase/frontend-core": "^1.2.59", + "@budibase/string-templates": "^1.2.59", "@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 8403e5034e..f781844301 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.2.59-alpha.0", + "@budibase/bbui": "^1.2.59", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 9f1210fb32..f264614b36 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.2.59-alpha.0", - "@budibase/client": "1.2.59-alpha.0", + "@budibase/backend-core": "^1.2.59", + "@budibase/client": "^1.2.59", "@budibase/pro": "1.2.59-alpha.0", - "@budibase/string-templates": "1.2.59-alpha.0", - "@budibase/types": "1.2.59-alpha.0", + "@budibase/string-templates": "^1.2.59", + "@budibase/types": "^1.2.59", "@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 6034e76a32..74b3364691 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "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 8e9f4c2391..e6180bdced 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "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 e9708628a1..b91735c15c 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.59-alpha.0", + "version": "1.2.59", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.2.59-alpha.0", + "@budibase/backend-core": "^1.2.59", "@budibase/pro": "1.2.59-alpha.0", - "@budibase/string-templates": "1.2.59-alpha.0", - "@budibase/types": "1.2.59-alpha.0", + "@budibase/string-templates": "^1.2.59", + "@budibase/types": "^1.2.59", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 03bc87bdb6b24d6156e1c52f5baba05b9545ea70 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 09:55:58 +0000 Subject: [PATCH 081/162] Update pro version to 1.2.59 --- 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 f264614b36..29ab0a51a2 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.2.59", "@budibase/client": "^1.2.59", - "@budibase/pro": "1.2.59-alpha.0", + "@budibase/pro": "1.2.59", "@budibase/string-templates": "^1.2.59", "@budibase/types": "^1.2.59", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 93ba08da8c..82fce94706 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59-alpha.0.tgz#34330175c26e31ec4838891e8ed561d5f75f1158" - integrity sha512-dXVX+IKeNMUIQUAH52E/9D73s+PSkXeU5m7dGjGeiWZQ2m3CALX0XhdL64NVEmpwmKwJVEvagi26lQSYwVrSyQ== +"@budibase/backend-core@1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59.tgz#283b4c8bb24c4deacc28b3fb10dfb59d0e63e6ac" + integrity sha512-QC/ftdhdIQPTFbbGG4c5F7BqwPBQpevzj21GuYNbMda3OQPn6nS5SKK0fP99/DRSf9WIRi+5Pg1fzlHg2DIQLA== dependencies: - "@budibase/types" "1.2.59-alpha.0" + "@budibase/types" "^1.2.59" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59-alpha.0.tgz#191865bf170832b17566336b047d3461f6036009" - integrity sha512-nP8LL0eZdWpLZ4NViou31dE3uY1dQPJDzvFE9r71OsSLG6KGHS7fkkMA+4hq3gfrsPzAIp729m6RroksqnnKGw== +"@budibase/pro@1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59.tgz#2f266d9ede1f722d879841fdb8da1a98a0628136" + integrity sha512-QwNRb5JT+SZaES3sUFxxQA6Ep2dH/fVqXrnzKPV/CoMa43YWkjOUTX2hjgmOWDsipBK90RK3wRYzcTG0BgEkJw== dependencies: - "@budibase/backend-core" "1.2.59-alpha.0" - "@budibase/types" "1.2.59-alpha.0" + "@budibase/backend-core" "1.2.59" + "@budibase/types" "1.2.59" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59-alpha.0.tgz#7d77598607865a0f5b9a7c9063e0f7a774ebd2a1" - integrity sha512-ddoqBxRKYl3biVmg3l3jFE/eB8DvL1VqMA/sIaVYU16Js913pU0jauT9Z/y2uqiGescfoZReCabBjD7qhr6L7w== +"@budibase/types@1.2.59", "@budibase/types@^1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59.tgz#e2a04f7fffcb68bd2cd12043430c0bf0db07ae71" + integrity sha512-2DpKE7NMGh2th/obOjT32uxLpQjyGLVQ925yM164pSvfZUyNA3zkQhOmNoMS9HJVHVavHyHVfSgGDQrF0YfNhA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index b91735c15c..0ade9a8363 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.2.59", - "@budibase/pro": "1.2.59-alpha.0", + "@budibase/pro": "1.2.59", "@budibase/string-templates": "^1.2.59", "@budibase/types": "^1.2.59", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index f5cb949c22..931ba934d7 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59-alpha.0.tgz#34330175c26e31ec4838891e8ed561d5f75f1158" - integrity sha512-dXVX+IKeNMUIQUAH52E/9D73s+PSkXeU5m7dGjGeiWZQ2m3CALX0XhdL64NVEmpwmKwJVEvagi26lQSYwVrSyQ== +"@budibase/backend-core@1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59.tgz#283b4c8bb24c4deacc28b3fb10dfb59d0e63e6ac" + integrity sha512-QC/ftdhdIQPTFbbGG4c5F7BqwPBQpevzj21GuYNbMda3OQPn6nS5SKK0fP99/DRSf9WIRi+5Pg1fzlHg2DIQLA== dependencies: - "@budibase/types" "1.2.59-alpha.0" + "@budibase/types" "^1.2.59" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59-alpha.0.tgz#191865bf170832b17566336b047d3461f6036009" - integrity sha512-nP8LL0eZdWpLZ4NViou31dE3uY1dQPJDzvFE9r71OsSLG6KGHS7fkkMA+4hq3gfrsPzAIp729m6RroksqnnKGw== +"@budibase/pro@1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59.tgz#2f266d9ede1f722d879841fdb8da1a98a0628136" + integrity sha512-QwNRb5JT+SZaES3sUFxxQA6Ep2dH/fVqXrnzKPV/CoMa43YWkjOUTX2hjgmOWDsipBK90RK3wRYzcTG0BgEkJw== dependencies: - "@budibase/backend-core" "1.2.59-alpha.0" - "@budibase/types" "1.2.59-alpha.0" + "@budibase/backend-core" "1.2.59" + "@budibase/types" "1.2.59" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.59-alpha.0": - version "1.2.59-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59-alpha.0.tgz#7d77598607865a0f5b9a7c9063e0f7a774ebd2a1" - integrity sha512-ddoqBxRKYl3biVmg3l3jFE/eB8DvL1VqMA/sIaVYU16Js913pU0jauT9Z/y2uqiGescfoZReCabBjD7qhr6L7w== +"@budibase/types@1.2.59", "@budibase/types@^1.2.59": + version "1.2.59" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59.tgz#e2a04f7fffcb68bd2cd12043430c0bf0db07ae71" + integrity sha512-2DpKE7NMGh2th/obOjT32uxLpQjyGLVQ925yM164pSvfZUyNA3zkQhOmNoMS9HJVHVavHyHVfSgGDQrF0YfNhA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 9c49a2195347eada0f80045e45519c29eeb565a1 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 2 Sep 2022 11:48:45 +0100 Subject: [PATCH 082/162] Update vite path for proxying websocket to be /vite --- hosting/nginx.dev.conf.hbs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hosting/nginx.dev.conf.hbs b/hosting/nginx.dev.conf.hbs index ecf73c4fb1..430ea75398 100644 --- a/hosting/nginx.dev.conf.hbs +++ b/hosting/nginx.dev.conf.hbs @@ -84,9 +84,9 @@ http { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } - location /ws { + location /vite { proxy_pass http://{{ address }}:3000; - rewrite ^/ws(.*)$ /$1 break; + rewrite ^/vite(.*)$ /$1 break; } location / { From e0b45432e068df9fc94d79de1849c4d80cd626be Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 11:10:25 +0000 Subject: [PATCH 083/162] v1.3.0 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index 31155ea968..b43a0447b1 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.2.59", + "version": "1.3.0", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 0107eda8e6..fb887f972b 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.2.59", + "version": "1.3.0", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.2.59", + "@budibase/types": "^1.3.0", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 7176883c08..0c0a362965 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": "1.2.59", + "version": "1.3.0", "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": "^1.2.59", + "@budibase/string-templates": "^1.3.0", "@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 b62cb954c5..b81c91039b 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.2.59", + "version": "1.3.0", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.2.59", - "@budibase/client": "^1.2.59", - "@budibase/frontend-core": "^1.2.59", - "@budibase/string-templates": "^1.2.59", + "@budibase/bbui": "^1.3.0", + "@budibase/client": "^1.3.0", + "@budibase/frontend-core": "^1.3.0", + "@budibase/string-templates": "^1.3.0", "@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 ae14ca1ff2..bcb56d1b84 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.2.59", + "version": "1.3.0", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 0c3288cba4..645469958b 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.2.59", + "version": "1.3.0", "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": "^1.2.59", - "@budibase/frontend-core": "^1.2.59", - "@budibase/string-templates": "^1.2.59", + "@budibase/bbui": "^1.3.0", + "@budibase/frontend-core": "^1.3.0", + "@budibase/string-templates": "^1.3.0", "@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 f781844301..bd29f9ba4e 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.2.59", + "version": "1.3.0", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.2.59", + "@budibase/bbui": "^1.3.0", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 29ab0a51a2..a09d8d051b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.2.59", + "version": "1.3.0", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.2.59", - "@budibase/client": "^1.2.59", + "@budibase/backend-core": "^1.3.0", + "@budibase/client": "^1.3.0", "@budibase/pro": "1.2.59", - "@budibase/string-templates": "^1.2.59", - "@budibase/types": "^1.2.59", + "@budibase/string-templates": "^1.3.0", + "@budibase/types": "^1.3.0", "@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 74b3364691..bdf09fcaa6 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.2.59", + "version": "1.3.0", "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 e6180bdced..0c7ea2cb2d 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.2.59", + "version": "1.3.0", "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 0ade9a8363..6bb723e8d1 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.2.59", + "version": "1.3.0", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.2.59", + "@budibase/backend-core": "^1.3.0", "@budibase/pro": "1.2.59", - "@budibase/string-templates": "^1.2.59", - "@budibase/types": "^1.2.59", + "@budibase/string-templates": "^1.3.0", + "@budibase/types": "^1.3.0", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 68d741c482a7a9c2ca2f4de6fedd809d06bd242b Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 11:23:26 +0000 Subject: [PATCH 084/162] v1.3.1 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index b43a0447b1..9949bcfa80 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.0", + "version": "1.3.1", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index fb887f972b..12d13ca518 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.0", + "version": "1.3.1", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.0", + "@budibase/types": "^1.3.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 0c0a362965..77e5e906d8 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": "1.3.0", + "version": "1.3.1", "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": "^1.3.0", + "@budibase/string-templates": "^1.3.1", "@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 b81c91039b..6463407199 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.0", + "version": "1.3.1", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.0", - "@budibase/client": "^1.3.0", - "@budibase/frontend-core": "^1.3.0", - "@budibase/string-templates": "^1.3.0", + "@budibase/bbui": "^1.3.1", + "@budibase/client": "^1.3.1", + "@budibase/frontend-core": "^1.3.1", + "@budibase/string-templates": "^1.3.1", "@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 bcb56d1b84..af28c5f851 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.0", + "version": "1.3.1", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 645469958b..723a9f91f7 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.0", + "version": "1.3.1", "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": "^1.3.0", - "@budibase/frontend-core": "^1.3.0", - "@budibase/string-templates": "^1.3.0", + "@budibase/bbui": "^1.3.1", + "@budibase/frontend-core": "^1.3.1", + "@budibase/string-templates": "^1.3.1", "@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 bd29f9ba4e..8917ae11cf 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.0", + "version": "1.3.1", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.0", + "@budibase/bbui": "^1.3.1", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index a09d8d051b..103ea8992d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.0", + "version": "1.3.1", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.0", - "@budibase/client": "^1.3.0", + "@budibase/backend-core": "^1.3.1", + "@budibase/client": "^1.3.1", "@budibase/pro": "1.2.59", - "@budibase/string-templates": "^1.3.0", - "@budibase/types": "^1.3.0", + "@budibase/string-templates": "^1.3.1", + "@budibase/types": "^1.3.1", "@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 bdf09fcaa6..dfa6736936 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.0", + "version": "1.3.1", "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 0c7ea2cb2d..374989a52d 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.0", + "version": "1.3.1", "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 6bb723e8d1..60cf16253c 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.0", + "version": "1.3.1", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.0", + "@budibase/backend-core": "^1.3.1", "@budibase/pro": "1.2.59", - "@budibase/string-templates": "^1.3.0", - "@budibase/types": "^1.3.0", + "@budibase/string-templates": "^1.3.1", + "@budibase/types": "^1.3.1", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From a31e9331f38d3adeacd13c55b1c52bcc73a53999 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 11:26:39 +0000 Subject: [PATCH 085/162] Update pro version to 1.3.1 --- 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 103ea8992d..24878de855 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.1", "@budibase/client": "^1.3.1", - "@budibase/pro": "1.2.59", + "@budibase/pro": "1.3.1", "@budibase/string-templates": "^1.3.1", "@budibase/types": "^1.3.1", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 82fce94706..3352038d8e 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59.tgz#283b4c8bb24c4deacc28b3fb10dfb59d0e63e6ac" - integrity sha512-QC/ftdhdIQPTFbbGG4c5F7BqwPBQpevzj21GuYNbMda3OQPn6nS5SKK0fP99/DRSf9WIRi+5Pg1fzlHg2DIQLA== +"@budibase/backend-core@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.1.tgz#7fb6437d9d8926c1500f8dd2ce51bc5e850b354a" + integrity sha512-H9iqfcVX/XSxJr9aWkhIUHD87fdJgDHpd6Gdkjsx/Ua3z3UJeW2dfkcP3so2MM/hPLpP181hOaFjk2/lDBiagw== dependencies: - "@budibase/types" "^1.2.59" + "@budibase/types" "^1.3.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59.tgz#2f266d9ede1f722d879841fdb8da1a98a0628136" - integrity sha512-QwNRb5JT+SZaES3sUFxxQA6Ep2dH/fVqXrnzKPV/CoMa43YWkjOUTX2hjgmOWDsipBK90RK3wRYzcTG0BgEkJw== +"@budibase/pro@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.1.tgz#5ab732dbdf30a1967ca5e92b4de48518d538cb32" + integrity sha512-ErZhpeMvhiN8bLkoXe0N/yBU1wHDnk962tQ2tzMqlkWE4fCtfvo3SxD7VsYbu6Qmakkys1QPd6lBphnBOw58FQ== dependencies: - "@budibase/backend-core" "1.2.59" - "@budibase/types" "1.2.59" + "@budibase/backend-core" "1.3.1" + "@budibase/types" "1.3.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.2.59", "@budibase/types@^1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59.tgz#e2a04f7fffcb68bd2cd12043430c0bf0db07ae71" - integrity sha512-2DpKE7NMGh2th/obOjT32uxLpQjyGLVQ925yM164pSvfZUyNA3zkQhOmNoMS9HJVHVavHyHVfSgGDQrF0YfNhA== +"@budibase/types@1.3.1", "@budibase/types@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.1.tgz#84a8b0e6c574d6b53c50ffe2c6fba59241ede98b" + integrity sha512-dAZvJzvw0phvLub6nmeH4sPDWKqPQH6QrFjOcgE6XR/7o7QjwTCJ00Jz07FBjh/ax+/9v6y/GauozejoESwA2w== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 60cf16253c..d8f1aa8357 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.1", - "@budibase/pro": "1.2.59", + "@budibase/pro": "1.3.1", "@budibase/string-templates": "^1.3.1", "@budibase/types": "^1.3.1", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 931ba934d7..959b86fa00 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.59.tgz#283b4c8bb24c4deacc28b3fb10dfb59d0e63e6ac" - integrity sha512-QC/ftdhdIQPTFbbGG4c5F7BqwPBQpevzj21GuYNbMda3OQPn6nS5SKK0fP99/DRSf9WIRi+5Pg1fzlHg2DIQLA== +"@budibase/backend-core@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.1.tgz#7fb6437d9d8926c1500f8dd2ce51bc5e850b354a" + integrity sha512-H9iqfcVX/XSxJr9aWkhIUHD87fdJgDHpd6Gdkjsx/Ua3z3UJeW2dfkcP3so2MM/hPLpP181hOaFjk2/lDBiagw== dependencies: - "@budibase/types" "^1.2.59" + "@budibase/types" "^1.3.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.2.59.tgz#2f266d9ede1f722d879841fdb8da1a98a0628136" - integrity sha512-QwNRb5JT+SZaES3sUFxxQA6Ep2dH/fVqXrnzKPV/CoMa43YWkjOUTX2hjgmOWDsipBK90RK3wRYzcTG0BgEkJw== +"@budibase/pro@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.1.tgz#5ab732dbdf30a1967ca5e92b4de48518d538cb32" + integrity sha512-ErZhpeMvhiN8bLkoXe0N/yBU1wHDnk962tQ2tzMqlkWE4fCtfvo3SxD7VsYbu6Qmakkys1QPd6lBphnBOw58FQ== dependencies: - "@budibase/backend-core" "1.2.59" - "@budibase/types" "1.2.59" + "@budibase/backend-core" "1.3.1" + "@budibase/types" "1.3.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.2.59", "@budibase/types@^1.2.59": - version "1.2.59" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.59.tgz#e2a04f7fffcb68bd2cd12043430c0bf0db07ae71" - integrity sha512-2DpKE7NMGh2th/obOjT32uxLpQjyGLVQ925yM164pSvfZUyNA3zkQhOmNoMS9HJVHVavHyHVfSgGDQrF0YfNhA== +"@budibase/types@1.3.1", "@budibase/types@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.1.tgz#84a8b0e6c574d6b53c50ffe2c6fba59241ede98b" + integrity sha512-dAZvJzvw0phvLub6nmeH4sPDWKqPQH6QrFjOcgE6XR/7o7QjwTCJ00Jz07FBjh/ax+/9v6y/GauozejoESwA2w== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 3dbf4b4075e20a5b267eee1854a31fa5e354797b Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 2 Sep 2022 18:14:08 +0100 Subject: [PATCH 086/162] Adding in a check for when there are no screen actions that need to be performed - #7592. --- packages/cli/yarn.lock | 1115 +++++++++++++++++- packages/client/src/components/Screen.svelte | 6 +- 2 files changed, 1100 insertions(+), 21 deletions(-) diff --git a/packages/cli/yarn.lock b/packages/cli/yarn.lock index 86d4d40e78..a7559a48da 100644 --- a/packages/cli/yarn.lock +++ b/packages/cli/yarn.lock @@ -48,6 +48,45 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" +"@budibase/backend-core@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.2.58-alpha.7.tgz#b7888eb0e9796a4e49283cf8b928a6771439dbc0" + integrity sha512-wdZlJDQtYkGNce9hlj30Np6BDxvS5Mr07XhMwERlKzSRjOOAkQtM5bX+7UVZoIE/X0f8/h47U8P4T3Y98WGMkg== + dependencies: + "@budibase/types" "1.2.58-alpha.7" + "@techpass/passport-openidconnect" "0.3.2" + aws-sdk "2.1030.0" + bcrypt "5.0.1" + dotenv "16.0.1" + emitter-listener "1.1.2" + ioredis "4.28.0" + joi "17.6.0" + jsonwebtoken "8.5.1" + koa-passport "4.1.4" + lodash "4.17.21" + lodash.isarguments "3.1.0" + node-fetch "2.6.7" + passport-google-auth "1.0.2" + passport-google-oauth "2.0.0" + passport-jwt "4.0.0" + passport-local "1.0.0" + passport-oauth2-refresh "^2.1.0" + posthog-node "1.3.0" + pouchdb "7.3.0" + pouchdb-find "7.2.2" + pouchdb-replication-stream "1.2.9" + redlock "4.2.0" + sanitize-s3-objectkey "0.0.1" + semver "7.3.7" + tar-fs "2.1.1" + uuid "8.3.2" + zlib "1.0.5" + +"@budibase/types@1.2.58-alpha.7": + version "1.2.58-alpha.7" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.2.58-alpha.7.tgz#5f4e7d262bb597d01a1bd7c0674453946de3cfa2" + integrity sha512-VVW7XKFyax5A69cMoR8gwI06cxt/1G1cLH+8ECjIiwb2oO3hHe6WnlA91dUar0IdcdBHji7vYXg4MD1p8wb6jA== + "@eslint/eslintrc@^0.4.3": version "0.4.3" resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" @@ -63,6 +102,18 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@hapi/hoek@^9.0.0": + version "9.3.0" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== + +"@hapi/topo@^5.0.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" + integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== + dependencies: + "@hapi/hoek" "^9.0.0" + "@humanwhocodes/config-array@^0.5.0": version "0.5.0" resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" @@ -77,6 +128,21 @@ resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== +"@mapbox/node-pre-gyp@^1.0.0": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz#09a8781a3a036151cdebbe8719d6f8b25d4058bc" + integrity sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw== + dependencies: + detect-libc "^2.0.0" + https-proxy-agent "^5.0.0" + make-dir "^3.1.0" + node-fetch "^2.6.7" + nopt "^5.0.0" + npmlog "^5.0.1" + rimraf "^3.0.2" + semver "^7.3.5" + tar "^6.1.11" + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" @@ -98,6 +164,39 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@sideway/address@^4.1.3": + version "4.1.4" + resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" + integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== + dependencies: + "@hapi/hoek" "^9.0.0" + +"@sideway/formula@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" + integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== + +"@sideway/pinpoint@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" + integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== + +"@techpass/passport-openidconnect@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@techpass/passport-openidconnect/-/passport-openidconnect-0.3.2.tgz#f8fd5d97256286665dbf26dac92431f977ab1e63" + integrity sha512-fnCtEiexXSHA029B//hJcCJlLJrT3lhpNCyA0rnz58Qttz0BLGCVv6yMT8HmOnGThH6vcDOVwdgKM3kbCQtEhw== + dependencies: + base64url "^3.0.1" + oauth "^0.9.15" + passport-strategy "^1.0.0" + request "^2.88.0" + webfinger "^0.4.2" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + abort-controller@3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" @@ -144,7 +243,7 @@ agent-base@6: dependencies: debug "4" -ajv@^6.10.0, ajv@^6.12.4: +ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -205,6 +304,19 @@ aproba@^1.0.3: resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + +are-we-there-yet@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + are-we-there-yet@~1.1.2: version "1.1.7" resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz" @@ -250,16 +362,65 @@ array-uniq@1.0.2: resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" integrity sha1-X8w3OSB3VyPP1k1lxkvvU7+eum0= +asn1@~0.2.3: + version "0.2.6" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== +async@~2.1.4: + version "2.1.5" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.5.tgz#e587c68580994ac67fc56ff86d3ac56bdbe810bc" + integrity sha512-+g/Ncjbx0JSq2Mk03WQkyKvNh5q9Qvyo/RIqIqnmC5feJY70PNl2ESwZU2BhAB+AZPkHNzzyC2Dq2AS5VnTKhQ== + dependencies: + lodash "^4.14.0" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + at-least-node@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== +aws-sdk@2.1030.0: + version "2.1030.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1030.0.tgz#24a856af3d2b8b37c14a8f59974993661c66fd82" + integrity sha512-to0STOb8DsSGuSsUb/WCbg/UFnMGfIYavnJH5ZlRCHzvCFjTyR+vfE8ku+qIZvfFM4+5MNTQC/Oxfun2X/TuyA== + dependencies: + buffer "4.9.2" + events "1.1.1" + ieee754 "1.1.13" + jmespath "0.15.0" + querystring "0.2.0" + sax "1.2.1" + url "0.10.3" + uuid "3.3.2" + xml2js "0.4.19" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== + +aws4@^1.8.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== + axios-retry@^3.1.9: version "3.2.4" resolved "https://registry.npmjs.org/axios-retry/-/axios-retry-3.2.4.tgz" @@ -275,6 +436,13 @@ axios@0.21.2: dependencies: follow-redirects "^1.14.0" +axios@0.24.0: + version "0.24.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6" + integrity sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA== + dependencies: + follow-redirects "^1.14.4" + axios@^0.21.1: version "0.21.4" resolved "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz" @@ -287,11 +455,31 @@ balanced-match@^1.0.0: resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.3.1: +base64-js@^1.0.2, base64-js@^1.3.1: version "1.5.1" resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +base64url@3.x.x, base64url@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/base64url/-/base64url-3.0.1.tgz#6399d572e2bc3f90a9a8b22d5dbb0a32d33f788d" + integrity sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== + dependencies: + tweetnacl "^0.14.3" + +bcrypt@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.0.1.tgz#f1a2c20f208e2ccdceea4433df0c8b2c54ecdf71" + integrity sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw== + dependencies: + "@mapbox/node-pre-gyp" "^1.0.0" + node-addon-api "^3.1.0" + bl@^4.0.3: version "4.1.0" resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz" @@ -301,6 +489,11 @@ bl@^4.0.3: inherits "^2.0.4" readable-stream "^3.4.0" +bluebird@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" @@ -316,11 +509,30 @@ braces@^3.0.1: dependencies: fill-range "^7.0.1" +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== + +buffer-from@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + buffer-from@1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== +buffer@4.9.2: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + buffer@^5.5.0, buffer@^5.6.0: version "5.7.1" resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz" @@ -334,6 +546,11 @@ callsites@^3.0.0: resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== + chalk@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" @@ -412,6 +629,11 @@ clone-buffer@1.0.0: resolved "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz" integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== +cluster-key-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz#30474b2a981fb12172695833052bc0d01336d10d" + integrity sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw== + code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" @@ -441,6 +663,18 @@ color-name@~1.1.4: resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + command-line-args@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" @@ -476,7 +710,7 @@ concat-map@0.0.1: resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -console-control-strings@^1.0.0, console-control-strings@~1.1.0: +console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== @@ -494,6 +728,11 @@ copyfiles@^2.4.1: untildify "^4.0.0" yargs "^16.1.0" +core-util-is@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== + core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" @@ -518,6 +757,13 @@ current-module-paths@^1.1.0: resolved "https://registry.yarnpkg.com/current-module-paths/-/current-module-paths-1.1.0.tgz#5d5bf214281d80aea264e642f028e672098238f6" integrity sha512-HGhLUszcgprjKmzvQoCQda8iEWsQn3sWVzPdttyJVR5cjfVDYcoyozQA5D1YXgab9v84SPMpSuD+YrPX6i1IMQ== +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== + dependencies: + assert-plus "^1.0.0" + debug@4, debug@^4.0.1, debug@^4.1.1: version "4.3.2" resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" @@ -525,6 +771,13 @@ debug@4, debug@^4.0.1, debug@^4.1.1: dependencies: ms "2.1.2" +debug@^4.3.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + decompress-response@^4.2.0: version "4.2.1" resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz" @@ -550,16 +803,31 @@ deferred-leveldown@~5.3.0: abstract-leveldown "~6.2.1" inherits "^2.0.3" +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + delegates@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= +denque@^1.1.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.1.tgz#07f670e29c9a78f8faecb2566a1e2c11929c5cbf" + integrity sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw== + detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= +detect-libc@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" @@ -589,6 +857,28 @@ double-ended-queue@2.1.0-0: resolved "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz" integrity sha512-+BNfZ+deCo8hMNpDqDnvT+c0XpJ5cUa6mqYq89bho2Ifze4URTqRkcwR399hWoTrTkbZ/XJYDgP6rc7pRgffEQ== +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ecdsa-sig-formatter@1.0.11: + version "1.0.11" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== + dependencies: + safe-buffer "^5.0.1" + +emitter-listener@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/emitter-listener/-/emitter-listener-1.1.2.tgz#56b140e8f6992375b3d7cb2cab1cc7432d9632e8" + integrity sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ== + dependencies: + shimmer "^1.2.0" + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" @@ -778,11 +1068,21 @@ event-target-shim@^5.0.0: resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== +events@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + integrity sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== + expand-template@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + external-editor@^3.0.3: version "3.1.0" resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" @@ -792,6 +1092,16 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== + +extsprintf@^1.2.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" @@ -830,6 +1140,13 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" +fetch-cookie@0.10.1: + version "0.10.1" + resolved "https://registry.yarnpkg.com/fetch-cookie/-/fetch-cookie-0.10.1.tgz#5ea88f3d36950543c87997c27ae2aeafb4b5c4d4" + integrity sha512-beB+VEd4cNeVG1PY+ee74+PkuCQnik78pgLi5Ah/7qdUfov8IctU0vLUbBT8/10Ma5GMBeI4wtxhGrEfKNYs2g== + dependencies: + tough-cookie "^2.3.3 || ^3.0.1 || ^4.0.0" + fetch-cookie@0.11.0: version "0.11.0" resolved "https://registry.npmjs.org/fetch-cookie/-/fetch-cookie-0.11.0.tgz" @@ -886,11 +1203,25 @@ flatted@^3.1.0: resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz" integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== -follow-redirects@^1.14.0: +follow-redirects@^1.14.0, follow-redirects@^1.14.4: version "1.15.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5" integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA== +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + from2@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz" @@ -936,6 +1267,21 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +gauge@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.2" + console-control-strings "^1.0.0" + has-unicode "^2.0.1" + object-assign "^4.1.1" + signal-exit "^3.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.2" + gauge@~2.7.3: version "2.7.4" resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz" @@ -955,6 +1301,13 @@ get-caller-file@^2.0.5: resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== + dependencies: + assert-plus "^1.0.0" + github-from-package@0.0.0: version "0.0.0" resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz" @@ -1017,11 +1370,60 @@ globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" +google-auth-library@~0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-0.10.0.tgz#6e15babee85fd1dd14d8d128a295b6838d52136e" + integrity sha512-KM54Y9GhdAzfXUHmWEoYmaOykSLuMG7W4HvVLYqyogxOyE6px8oSS8W13ngqW0oDGZ915GFW3V6OM6+qcdvPOA== + dependencies: + gtoken "^1.2.1" + jws "^3.1.4" + lodash.noop "^3.0.1" + request "^2.74.0" + +google-p12-pem@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-0.1.2.tgz#33c46ab021aa734fa0332b3960a9a3ffcb2f3177" + integrity sha512-puhMlJ2+E/rgvxWaqgN/nC7x623OAE8MR9vBUqxF0inCE7HoVfCHvTeQ9+BR+rj9KM0fIg6XV6tmbt7XHHssoQ== + dependencies: + node-forge "^0.7.1" + +googleapis@^16.0.0: + version "16.1.0" + resolved "https://registry.yarnpkg.com/googleapis/-/googleapis-16.1.0.tgz#0f19f2d70572d918881a0f626e3b1a2fa8629576" + integrity sha512-5czmF7xkIlJKc1+/+5tltrI1skoR3HKtkDOld9rk+DOucTpZRjOhCoJzoSjxB3M8rP2tEb1VIr1TPyzR3V2PUQ== + dependencies: + async "~2.1.4" + google-auth-library "~0.10.0" + string-template "~1.0.0" + graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.8" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== +gtoken@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/gtoken/-/gtoken-1.2.3.tgz#5509571b8afd4322e124cf66cf68115284c476d8" + integrity sha512-wQAJflfoqSgMWrSBk9Fg86q+sd6s7y6uJhIvvIPz++RElGlMtEqsdAR2oWwZ/WTEtp7P9xFbJRrT976oRgzJ/w== + dependencies: + google-p12-pem "^0.1.0" + jws "^3.0.0" + mime "^1.4.1" + request "^2.72.0" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + has-flag@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" @@ -1032,7 +1434,7 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-unicode@^2.0.0: +has-unicode@^2.0.0, has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== @@ -1044,6 +1446,15 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + https-proxy-agent@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz" @@ -1059,7 +1470,12 @@ iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.13: +ieee754@1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + +ieee754@^1.1.13, ieee754@^1.1.4: version "1.2.1" resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -1147,6 +1563,23 @@ into-stream@^6.0.0: from2 "^2.3.0" p-is-promise "^3.0.0" +ioredis@4.28.0: + version "4.28.0" + resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-4.28.0.tgz#5a2be3f37ff2075e2332f280eaeb02ab4d9ff0d3" + integrity sha512-I+zkeeWp3XFgPT2CtJKxvaF5FjGBGt4yGYljRjQecdQKteThuAsKqffeF1lgHVlYnuNeozRbPOCDNZ7tDWPeig== + dependencies: + cluster-key-slot "^1.1.0" + debug "^4.3.1" + denque "^1.1.0" + lodash.defaults "^4.2.0" + lodash.flatten "^4.4.0" + lodash.isarguments "^3.1.0" + p-map "^2.1.0" + redis-commands "1.7.0" + redis-errors "^1.2.0" + redis-parser "^3.0.0" + standard-as-callback "^2.1.0" + is-buffer@~1.1.6: version "1.1.6" resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" @@ -1193,12 +1626,17 @@ is-retry-allowed@^2.2.0: resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz" integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + isarray@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== -isarray@~1.0.0: +isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= @@ -1208,6 +1646,27 @@ isexe@^2.0.0: resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== + +jmespath@0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217" + integrity sha512-+kHj8HXArPfpPEKGLZ+kB5ONRTCiGQXo8RQYL0hH8t6pWXUBBK5KkkQmTNOwKK4LEsd0yTsgtjJVm4UBSZea4w== + +joi@17.6.0: + version "17.6.0" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" + integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== + dependencies: + "@hapi/hoek" "^9.0.0" + "@hapi/topo" "^5.0.0" + "@sideway/address" "^4.1.3" + "@sideway/formula" "^3.0.0" + "@sideway/pinpoint" "^2.0.0" + join-component@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/join-component/-/join-component-1.1.0.tgz" @@ -1226,6 +1685,11 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" @@ -1236,12 +1700,17 @@ json-schema-traverse@^1.0.0: resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= -json-stringify-safe@^5.0.1: +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== @@ -1255,6 +1724,56 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" +jsonwebtoken@8.5.1, jsonwebtoken@^8.2.0: + version "8.5.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" + integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== + dependencies: + jws "^3.2.2" + lodash.includes "^4.3.0" + lodash.isboolean "^3.0.3" + lodash.isinteger "^4.0.4" + lodash.isnumber "^3.0.3" + lodash.isplainobject "^4.0.6" + lodash.isstring "^4.0.1" + lodash.once "^4.0.0" + ms "^2.1.1" + semver "^5.6.0" + +jsprim@^1.2.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" + integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.4.0" + verror "1.10.0" + +jwa@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== + dependencies: + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.11" + safe-buffer "^5.0.1" + +jws@^3.0.0, jws@^3.1.4, jws@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== + dependencies: + jwa "^1.4.1" + safe-buffer "^5.0.1" + +koa-passport@4.1.4: + version "4.1.4" + resolved "https://registry.yarnpkg.com/koa-passport/-/koa-passport-4.1.4.tgz#5f1665c1c2a37ace79af9f970b770885ca30ccfa" + integrity sha512-dJBCkl4X+zdYxbI2V2OtoGy0PUenpvp2ZLLWObc8UJhsId0iQpTFT8RVcuA0709AL2txGwRHnSPoT1bYNGa6Kg== + dependencies: + passport "^0.4.0" + level-codec@9.0.2, level-codec@^9.0.0: version "9.0.2" resolved "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz" @@ -1379,11 +1898,66 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== +lodash.defaults@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== + +lodash.flatten@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" + integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== + +lodash.includes@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" + integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== + +lodash.isarguments@3.1.0, lodash.isarguments@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== + +lodash.isboolean@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== + +lodash.isinteger@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" + integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== + +lodash.isnumber@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" + integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== + +lodash.isplainobject@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== + +lodash.isstring@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== + lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== +lodash.noop@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash.noop/-/lodash.noop-3.0.1.tgz#38188f4d650a3a474258439b96ec45b32617133c" + integrity sha512-TmYdmu/pebrdTIBDK/FDx9Bmfzs9x0sZG6QIJuMDTqEPfeciLcN13ij+cOd0i9vwJfBtbG9UQ+C7MkXgYxrIJg== + +lodash.once@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== + lodash.pick@^4.0.0: version "4.4.0" resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz" @@ -1394,7 +1968,7 @@ lodash.truncate@^4.4.2: resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= -lodash@^4.17.21: +lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -1416,6 +1990,13 @@ ltgt@2.2.1, ltgt@^2.1.2: resolved "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz" integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== +make-dir@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + md5@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz" @@ -1438,6 +2019,23 @@ micromatch@^4.0.4: braces "^3.0.1" picomatch "^2.2.3" +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12, mime-types@~2.1.19: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@^1.4.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" @@ -1497,7 +2095,7 @@ ms@2.1.2: resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.3: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -1547,13 +2145,28 @@ node-abi@^2.21.0: dependencies: semver "^5.4.1" -node-fetch@2, node-fetch@2.6.7, node-fetch@^2.6.6: +node-addon-api@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== + +node-fetch@2, node-fetch@2.6.7, node-fetch@^2.6.6, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" +node-fetch@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== + +node-forge@^0.7.1: + version "0.7.6" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.6.tgz#fdf3b418aee1f94f0ef642cd63486c77ca9724ac" + integrity sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw== + node-gyp-build@~4.1.0: version "4.1.1" resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz" @@ -1567,6 +2180,13 @@ noms@0.0.0: inherits "^2.0.1" readable-stream "~1.0.31" +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + npmlog@^4.0.1: version "4.1.2" resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz" @@ -1577,12 +2197,32 @@ npmlog@^4.0.1: gauge "~2.7.3" set-blocking "~2.0.0" +npmlog@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== + dependencies: + are-we-there-yet "^2.0.0" + console-control-strings "^1.1.0" + gauge "^3.0.0" + set-blocking "^2.0.0" + number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= -object-assign@^4.1.0: +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +oauth@0.9.x, oauth@^0.9.15: + version "0.9.15" + resolved "https://registry.yarnpkg.com/oauth/-/oauth-0.9.15.tgz#bd1fefaf686c96b75475aed5196412ff60cfb9c1" + integrity sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA== + +object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== @@ -1635,6 +2275,11 @@ p-is-promise@^3.0.0: resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz" integrity sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ== +p-map@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" @@ -1642,6 +2287,89 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +passport-google-auth@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/passport-google-auth/-/passport-google-auth-1.0.2.tgz#8b300b5aa442ef433de1d832ed3112877d0b2938" + integrity sha512-cfAqna6jZLyMEwUdd4PIwAh2mQKQVEDAaRIaom1pG6h4x4Gwjllf/Jflt3TkR1Sen5Rkvr3l7kSXCWE1EKkh8g== + dependencies: + googleapis "^16.0.0" + passport-strategy "1.x" + +passport-google-oauth1@1.x.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/passport-google-oauth1/-/passport-google-oauth1-1.0.0.tgz#af74a803df51ec646f66a44d82282be6f108e0cc" + integrity sha512-qpCEhuflJgYrdg5zZIpAq/K3gTqa1CtHjbubsEsidIdpBPLkEVq6tB1I8kBNcH89RdSiYbnKpCBXAZXX/dtx1Q== + dependencies: + passport-oauth1 "1.x.x" + +passport-google-oauth20@2.x.x: + version "2.0.0" + resolved "https://registry.yarnpkg.com/passport-google-oauth20/-/passport-google-oauth20-2.0.0.tgz#0d241b2d21ebd3dc7f2b60669ec4d587e3a674ef" + integrity sha512-KSk6IJ15RoxuGq7D1UKK/8qKhNfzbLeLrG3gkLZ7p4A6DBCcv7xpyQwuXtWdpyR0+E0mwkpjY1VfPOhxQrKzdQ== + dependencies: + passport-oauth2 "1.x.x" + +passport-google-oauth@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/passport-google-oauth/-/passport-google-oauth-2.0.0.tgz#f6eb4bc96dd6c16ec0ecfdf4e05ec48ca54d4dae" + integrity sha512-JKxZpBx6wBQXX1/a1s7VmdBgwOugohH+IxCy84aPTZNq/iIPX6u7Mqov1zY7MKRz3niFPol0KJz8zPLBoHKtYA== + dependencies: + passport-google-oauth1 "1.x.x" + passport-google-oauth20 "2.x.x" + +passport-jwt@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/passport-jwt/-/passport-jwt-4.0.0.tgz#7f0be7ba942e28b9f5d22c2ebbb8ce96ef7cf065" + integrity sha512-BwC0n2GP/1hMVjR4QpnvqA61TxenUMlmfNjYNgK0ZAs0HK4SOQkHcSv4L328blNTLtHq7DbmvyNJiH+bn6C5Mg== + dependencies: + jsonwebtoken "^8.2.0" + passport-strategy "^1.0.0" + +passport-local@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/passport-local/-/passport-local-1.0.0.tgz#1fe63268c92e75606626437e3b906662c15ba6ee" + integrity sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow== + dependencies: + passport-strategy "1.x.x" + +passport-oauth1@1.x.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/passport-oauth1/-/passport-oauth1-1.2.0.tgz#5229d431781bf5b265bec86ce9a9cce58a756cf9" + integrity sha512-Sv2YWodC6jN12M/OXwmR4BIXeeIHjjbwYTQw4kS6tHK4zYzSEpxBgSJJnknBjICA5cj0ju3FSnG1XmHgIhYnLg== + dependencies: + oauth "0.9.x" + passport-strategy "1.x.x" + utils-merge "1.x.x" + +passport-oauth2-refresh@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/passport-oauth2-refresh/-/passport-oauth2-refresh-2.1.0.tgz#c31cd133826383f5539d16ad8ab4f35ca73ce4a4" + integrity sha512-4ML7ooCESCqiTgdDBzNUFTBcPR8zQq9iM6eppEUGMMvLdsjqRL93jKwWm4Az3OJcI+Q2eIVyI8sVRcPFvxcF/A== + +passport-oauth2@1.x.x: + version "1.6.1" + resolved "https://registry.yarnpkg.com/passport-oauth2/-/passport-oauth2-1.6.1.tgz#c5aee8f849ce8bd436c7f81d904a3cd1666f181b" + integrity sha512-ZbV43Hq9d/SBSYQ22GOiglFsjsD1YY/qdiptA+8ej+9C1dL1TVB+mBE5kDH/D4AJo50+2i8f4bx0vg4/yDDZCQ== + dependencies: + base64url "3.x.x" + oauth "0.9.x" + passport-strategy "1.x.x" + uid2 "0.0.x" + utils-merge "1.x.x" + +passport-strategy@1.x, passport-strategy@1.x.x, passport-strategy@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/passport-strategy/-/passport-strategy-1.0.0.tgz#b5539aa8fc225a3d1ad179476ddf236b440f52e4" + integrity sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA== + +passport@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/passport/-/passport-0.4.1.tgz#941446a21cb92fc688d97a0861c38ce9f738f270" + integrity sha512-IxXgZZs8d7uFSt3eqNjM9NQ3g3uQCW5avD8mRNoXV99Yig50vjuaez6dQK2qC0kVWPRTujxY0dWgGfT09adjYg== + dependencies: + passport-strategy "1.x.x" + pause "0.0.1" + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" @@ -1662,6 +2390,16 @@ path-type@^4.0.0: resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pause@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/pause/-/pause-0.0.1.tgz#1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d" + integrity sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg== + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== + picomatch@^2.2.3: version "2.3.0" resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" @@ -1715,6 +2453,20 @@ posthog-node@1.0.7: remove-trailing-slash "^0.1.1" uuid "^8.3.2" +posthog-node@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/posthog-node/-/posthog-node-1.3.0.tgz#804ed2f213a2f05253f798bf9569d55a9cad94f7" + integrity sha512-2+VhqiY/rKIqKIXyvemBFHbeijHE25sP7eKltnqcFqAssUE6+sX6vusN9A4luzToOqHQkUZexiCKxvuGagh7JA== + dependencies: + axios "0.24.0" + axios-retry "^3.1.9" + component-type "^1.2.1" + join-component "^1.1.0" + md5 "^2.3.0" + ms "^2.1.3" + remove-trailing-slash "^0.1.1" + uuid "^8.3.2" + pouch-stream@^0.4.0: version "0.4.1" resolved "https://registry.npmjs.org/pouch-stream/-/pouch-stream-0.4.1.tgz" @@ -1723,6 +2475,84 @@ pouch-stream@^0.4.0: inherits "^2.0.1" readable-stream "^1.0.27-1" +pouchdb-abstract-mapreduce@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-abstract-mapreduce/-/pouchdb-abstract-mapreduce-7.2.2.tgz#dd1b10a83f8d24361dce9aaaab054614b39f766f" + integrity sha512-7HWN/2yV2JkwMnGnlp84lGvFtnm0Q55NiBUdbBcaT810+clCGKvhssBCrXnmwShD1SXTwT83aszsgiSfW+SnBA== + dependencies: + pouchdb-binary-utils "7.2.2" + pouchdb-collate "7.2.2" + pouchdb-collections "7.2.2" + pouchdb-errors "7.2.2" + pouchdb-fetch "7.2.2" + pouchdb-mapreduce-utils "7.2.2" + pouchdb-md5 "7.2.2" + pouchdb-utils "7.2.2" + +pouchdb-binary-utils@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-binary-utils/-/pouchdb-binary-utils-7.2.2.tgz#0690b348052c543b1e67f032f47092ca82bcb10e" + integrity sha512-shacxlmyHbUrNfE6FGYpfyAJx7Q0m91lDdEAaPoKZM3SzAmbtB1i+OaDNtYFztXjJl16yeudkDb3xOeokVL3Qw== + dependencies: + buffer-from "1.1.1" + +pouchdb-collate@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-collate/-/pouchdb-collate-7.2.2.tgz#fc261f5ef837c437e3445fb0abc3f125d982c37c" + integrity sha512-/SMY9GGasslknivWlCVwXMRMnQ8myKHs4WryQ5535nq1Wj/ehpqWloMwxEQGvZE1Sda3LOm7/5HwLTcB8Our+w== + +pouchdb-collections@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-collections/-/pouchdb-collections-7.2.2.tgz#aeed77f33322429e3f59d59ea233b48ff0e68572" + integrity sha512-6O9zyAYlp3UdtfneiMYuOCWdUCQNo2bgdjvNsMSacQX+3g8WvIoFQCYJjZZCpTttQGb+MHeRMr8m2U95lhJTew== + +pouchdb-errors@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-errors/-/pouchdb-errors-7.2.2.tgz#80d811d65c766c9d20b755c6e6cc123f8c3c4792" + integrity sha512-6GQsiWc+7uPfgEHeavG+7wuzH3JZW29Dnrvz8eVbDFE50kVFxNDVm3EkYHskvo5isG7/IkOx7PV7RPTA3keG3g== + dependencies: + inherits "2.0.4" + +pouchdb-fetch@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-fetch/-/pouchdb-fetch-7.2.2.tgz#492791236d60c899d7e9973f9aca0d7b9cc02230" + integrity sha512-lUHmaG6U3zjdMkh8Vob9GvEiRGwJfXKE02aZfjiVQgew+9SLkuOxNw3y2q4d1B6mBd273y1k2Lm0IAziRNxQnA== + dependencies: + abort-controller "3.0.0" + fetch-cookie "0.10.1" + node-fetch "2.6.0" + +pouchdb-find@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-find/-/pouchdb-find-7.2.2.tgz#1227afdd761812d508fe0794b3e904518a721089" + integrity sha512-BmFeFVQ0kHmDehvJxNZl9OmIztCjPlZlVSdpijuFbk/Fi1EFPU1BAv3kLC+6DhZuOqU/BCoaUBY9sn66pPY2ag== + dependencies: + pouchdb-abstract-mapreduce "7.2.2" + pouchdb-collate "7.2.2" + pouchdb-errors "7.2.2" + pouchdb-fetch "7.2.2" + pouchdb-md5 "7.2.2" + pouchdb-selector-core "7.2.2" + pouchdb-utils "7.2.2" + +pouchdb-mapreduce-utils@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-mapreduce-utils/-/pouchdb-mapreduce-utils-7.2.2.tgz#13a46a3cc2a3f3b8e24861da26966904f2963146" + integrity sha512-rAllb73hIkU8rU2LJNbzlcj91KuulpwQu804/F6xF3fhZKC/4JQMClahk+N/+VATkpmLxp1zWmvmgdlwVU4HtQ== + dependencies: + argsarray "0.0.1" + inherits "2.0.4" + pouchdb-collections "7.2.2" + pouchdb-utils "7.2.2" + +pouchdb-md5@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-md5/-/pouchdb-md5-7.2.2.tgz#415401acc5a844112d765bd1fb4e5d9f38fb0838" + integrity sha512-c/RvLp2oSh8PLAWU5vFBnp6ejJABIdKqboZwRRUrWcfGDf+oyX8RgmJFlYlzMMOh4XQLUT1IoaDV8cwlsuryZw== + dependencies: + pouchdb-binary-utils "7.2.2" + spark-md5 "3.0.1" + pouchdb-promise@^6.0.4: version "6.4.3" resolved "https://registry.npmjs.org/pouchdb-promise/-/pouchdb-promise-6.4.3.tgz" @@ -1743,6 +2573,28 @@ pouchdb-replication-stream@1.2.9: pouchdb-promise "^6.0.4" through2 "^2.0.0" +pouchdb-selector-core@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-selector-core/-/pouchdb-selector-core-7.2.2.tgz#264d7436a8c8ac3801f39960e79875ef7f3879a0" + integrity sha512-XYKCNv9oiNmSXV5+CgR9pkEkTFqxQGWplnVhO3W9P154H08lU0ZoNH02+uf+NjZ2kjse7Q1fxV4r401LEcGMMg== + dependencies: + pouchdb-collate "7.2.2" + pouchdb-utils "7.2.2" + +pouchdb-utils@7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/pouchdb-utils/-/pouchdb-utils-7.2.2.tgz#c17c4788f1d052b0daf4ef8797bbc4aaa3945aa4" + integrity sha512-XmeM5ioB4KCfyB2MGZXu1Bb2xkElNwF1qG+zVFbQsKQij0zvepdOUfGuWvLRHxTOmt4muIuSOmWZObZa3NOgzQ== + dependencies: + argsarray "0.0.1" + clone-buffer "1.0.0" + immediate "3.3.0" + inherits "2.0.4" + pouchdb-collections "7.2.2" + pouchdb-errors "7.2.2" + pouchdb-md5 "7.2.2" + uuid "8.1.0" + pouchdb@7.3.0: version "7.3.0" resolved "https://registry.yarnpkg.com/pouchdb/-/pouchdb-7.3.0.tgz#440fbef12dfd8f9002320802528665e883a3b7f8" @@ -1818,6 +2670,11 @@ prr@~1.0.1: resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz" integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== +psl@^1.1.28: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + psl@^1.1.33: version "1.8.0" resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" @@ -1831,11 +2688,26 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== + punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== +qs@~6.5.2: + version "6.5.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" @@ -1905,6 +2777,30 @@ readable-stream@~1.0.31: isarray "0.0.1" string_decoder "~0.10.x" +redis-commands@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.7.0.tgz#15a6fea2d58281e27b1cd1acfb4b293e278c3a89" + integrity sha512-nJWqw3bTFy21hX/CPKHth6sfhZbdiHP6bTawSgQBlKOVRG7EZkfHbbHwQJnrE4vsQf0CMNE+3gJ4Fmm16vdVlQ== + +redis-errors@^1.0.0, redis-errors@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz#eb62d2adb15e4eaf4610c04afe1529384250abad" + integrity sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w== + +redis-parser@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz#b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4" + integrity sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A== + dependencies: + redis-errors "^1.0.0" + +redlock@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/redlock/-/redlock-4.2.0.tgz#c26590768559afd5fff76aa1133c94b411ff4f5f" + integrity sha512-j+oQlG+dOwcetUt2WJWttu4CZVeRzUrcVcISFmEmfyuwCVSJ93rDT7YSgg7H7rnxwoRyk/jU46kycVka5tW7jA== + dependencies: + bluebird "^3.7.2" + reduce-flatten@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27" @@ -1943,6 +2839,32 @@ renamer@^4.0.0: stream-read-all "^3.0.1" typical "^7.1.1" +request@^2.72.0, request@^2.74.0, request@^2.88.0: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" @@ -2006,7 +2928,7 @@ rxjs@^6.6.6: dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -2016,16 +2938,43 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -"safer-buffer@>= 2.1.2 < 3": +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -semver@^5.4.1: +sanitize-s3-objectkey@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/sanitize-s3-objectkey/-/sanitize-s3-objectkey-0.0.1.tgz#efa9887cd45275b40234fb4bb12fc5754fe64e7e" + integrity sha512-ZTk7aqLxy4sD40GWcYWoLfbe05XLmkKvh6vGKe13ADlei24xlezcvjgKy1qRArlaIbIMYaqK7PCalvZtulZlaQ== + +sax@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" + integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA== + +sax@>=0.1.1, sax@>=0.6.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +semver@7.3.7: + version "7.3.7" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== + dependencies: + lru-cache "^6.0.0" + +semver@^5.4.1, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== +semver@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + semver@^7.2.1, semver@^7.3.5: version "7.3.5" resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" @@ -2033,7 +2982,7 @@ semver@^7.2.1, semver@^7.3.5: dependencies: lru-cache "^6.0.0" -set-blocking@~2.0.0: +set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== @@ -2050,6 +2999,11 @@ shebang-regex@^3.0.0: resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shimmer@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/shimmer/-/shimmer-1.2.1.tgz#610859f7de327b587efebf501fb43117f9aff337" + integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== + signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.5" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz" @@ -2088,6 +3042,11 @@ source-map@~0.6.1: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +spark-md5@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spark-md5/-/spark-md5-3.0.1.tgz#83a0e255734f2ab4e5c466e5a2cfc9ba2aa2124d" + integrity sha512-0tF3AGSD1ppQeuffsLDIOWlKUd3lS92tFxcsrh5Pe3ZphhnoK+oXIBTzOAThZCiuINZLvpiLH/1VS1/ANEJVig== + spark-md5@3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz" @@ -2105,6 +3064,31 @@ sprintf-js@~1.0.2: resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= +sshpk@^1.7.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" + integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +standard-as-callback@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.1.0.tgz#8953fc05359868a77b5b9739a665c5977bb7df45" + integrity sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A== + +step@0.0.x: + version "0.0.6" + resolved "https://registry.yarnpkg.com/step/-/step-0.0.6.tgz#143e7849a5d7d3f4a088fe29af94915216eeede2" + integrity sha512-qSSeQinUJk2w38vUFobjFoE307GqsozMC8VisOCkJLpklvKPT0ptPHwWOrENoag8rgLudvTkfP3bancwP93/Jw== + stream-meter@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/stream-meter/-/stream-meter-1.0.4.tgz" @@ -2117,6 +3101,11 @@ stream-read-all@^3.0.1: resolved "https://registry.yarnpkg.com/stream-read-all/-/stream-read-all-3.0.1.tgz#60762ae45e61d93ba0978cda7f3913790052ad96" integrity sha512-EWZT9XOceBPlVJRrYcykW8jyRSZYbkb/0ZK36uLEmoWVO5gxBOnntNTseNzfREsqxqdfEGQrD8SXQ3QWbBmq8A== +string-template@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/string-template/-/string-template-1.0.0.tgz#9e9f2233dc00f218718ec379a28a5673ecca8b96" + integrity sha512-SLqR3GBUXuoPP5MmYtD7ompvXiG87QjT6lzOszyXjTM86Uu7At7vNnt2xgyTLq5o9T4IxTYFyGxcULqpsmsfdg== + string-width@^1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" @@ -2218,7 +3207,7 @@ table@^6.0.9: string-width "^4.2.3" strip-ansi "^6.0.1" -tar-fs@^2.0.0, tar-fs@^2.1.1: +tar-fs@2.1.1, tar-fs@^2.0.0, tar-fs@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== @@ -2239,7 +3228,7 @@ tar-stream@^2.1.4: inherits "^2.0.3" readable-stream "^3.1.1" -tar@6.1.11: +tar@6.1.11, tar@^6.1.11: version "6.1.11" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== @@ -2305,6 +3294,14 @@ to-regex-range@^5.0.1: punycode "^2.1.1" universalify "^0.1.2" +tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + tr46@~0.0.3: version "0.0.3" resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" @@ -2322,6 +3319,11 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" @@ -2361,6 +3363,11 @@ typical@^7.1.1: resolved "https://registry.yarnpkg.com/typical/-/typical-7.1.1.tgz#ba177ab7ab103b78534463ffa4c0c9754523ac1f" integrity sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA== +uid2@0.0.x: + version "0.0.4" + resolved "https://registry.yarnpkg.com/uid2/-/uid2-0.0.4.tgz#033f3b1d5d32505f5ce5f888b9f3b667123c0a44" + integrity sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA== + universalify@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" @@ -2383,26 +3390,71 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +url@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" + integrity sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ== + dependencies: + punycode "1.3.2" + querystring "0.2.0" + util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= +utils-merge@1.x.x: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +uuid@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" + integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + +uuid@8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.1.0.tgz#6f1536eb43249f473abc6bd58ff983da1ca30d8d" + integrity sha512-CI18flHDznR0lq54xBycOVmphdCYnQLKn8abKn7PXUiKUGdEd+/l9LWNJmugXel4hXq7S+RMNl34ecyC9TntWg== + uuid@8.3.2, uuid@^8.3.2: version "8.3.2" resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + v8-compile-cache@^2.0.3: version "2.3.0" resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + vuvuzela@1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz" integrity sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ== +webfinger@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/webfinger/-/webfinger-0.4.2.tgz#3477a6d97799461896039fcffc650b73468ee76d" + integrity sha512-PvvQ/k74HkC3q5G7bGu4VYeKDt3ePZMzT5qFPtEnOL8eyIU1/06OtDn9X5vlkQ23BlegA3eN89rDLiYUife3xQ== + dependencies: + step "0.0.x" + xml2js "0.1.x" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" @@ -2423,7 +3475,7 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: +wide-align@^1.1.0, wide-align@^1.1.2: version "1.1.5" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== @@ -2464,6 +3516,26 @@ write-stream@~0.4.3: dependencies: readable-stream "~0.0.2" +xml2js@0.1.x: + version "0.1.14" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.1.14.tgz#5274e67f5a64c5f92974cd85139e0332adc6b90c" + integrity sha512-pbdws4PPPNc1HPluSUKamY4GWMk592K7qwcj6BExbVOhhubub8+pMda/ql68b6L3luZs/OGjGSB5goV7SnmgnA== + dependencies: + sax ">=0.1.1" + +xml2js@0.4.19: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xmlbuilder@~9.0.1: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + integrity sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ== + xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" @@ -2496,3 +3568,8 @@ yargs@^16.1.0, yargs@^16.2.0: string-width "^4.2.0" y18n "^5.0.5" yargs-parser "^20.2.2" + +zlib@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/zlib/-/zlib-1.0.5.tgz#6e7c972fc371c645a6afb03ab14769def114fcc0" + integrity sha512-40fpE2II+Cd3k8HWTWONfeKE2jL+P42iWJ1zzps5W51qcTsOUKM5Q5m2PFb0CLxlmFAaUuUdJGc3OfZy947v0w== diff --git a/packages/client/src/components/Screen.svelte b/packages/client/src/components/Screen.svelte index 3ec8d1ea52..af895c6b82 100644 --- a/packages/client/src/components/Screen.svelte +++ b/packages/client/src/components/Screen.svelte @@ -3,7 +3,7 @@ import Component from "./Component.svelte" import Provider from "./context/Provider.svelte" import { onMount, getContext } from "svelte" - import { enrichButtonActions } from "utils/buttonActions.js" + import { enrichButtonActions } from "../utils/buttonActions.js" export let params = {} @@ -29,7 +29,9 @@ ...$context, url: params, }) - actions() + if (actions != null) { + actions() + } } }) From 2b342a60fcbb30a0ae4dc1bb3bd8d83b7ba85ef0 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Fri, 2 Sep 2022 18:35:06 +0100 Subject: [PATCH 087/162] improvements to redis connector - multi line pipelines and lowercase commands --- packages/server/src/integrations/redis.ts | 20 ++++++++++++++----- .../src/integrations/tests/redis.spec.js | 19 ++++++++++++++++-- 2 files changed, 32 insertions(+), 7 deletions(-) diff --git a/packages/server/src/integrations/redis.ts b/packages/server/src/integrations/redis.ts index e8aa13560c..6764e20dca 100644 --- a/packages/server/src/integrations/redis.ts +++ b/packages/server/src/integrations/redis.ts @@ -132,12 +132,22 @@ module RedisModule { async command(query: { json: string }) { return this.redisContext(async () => { - const commands = query.json.trim().split(" ") - const pipeline = this.client.pipeline([commands]) - const result = await pipeline.exec() - return { - response: result[0][1], + // commands split line by line + const commands = query.json.trim().split("\n") + let pipelineCommands = [] + + // process each command separately + for (let command of commands) { + const tokenised = command.trim().split(" ") + // Pipeline only accepts lower case commands + tokenised[0] = tokenised[0].toLowerCase() + pipelineCommands.push(tokenised) } + + const pipeline = this.client.pipeline(pipelineCommands) + const result = await pipeline.exec() + + return result.map((output: string | string[]) => output[1]) }) } } diff --git a/packages/server/src/integrations/tests/redis.spec.js b/packages/server/src/integrations/tests/redis.spec.js index 219584bdb2..2483ccc382 100644 --- a/packages/server/src/integrations/tests/redis.spec.js +++ b/packages/server/src/integrations/tests/redis.spec.js @@ -46,7 +46,7 @@ describe("Redis Integration", () => { expect(await config.redis.get(body.key)).toEqual(null) }) - it("calls the command method with the correct params", async () => { + it("calls the pipeline method with the correct params", async () => { const body = { json: "KEYS *" } @@ -55,6 +55,21 @@ describe("Redis Integration", () => { config.integration.client.pipeline = jest.fn(() => ({ exec: jest.fn(() => [[]]) })) await config.integration.command(body) - expect(config.integration.client.pipeline).toHaveBeenCalledWith([["KEYS", "*"]]) + expect(config.integration.client.pipeline).toHaveBeenCalledWith([["keys", "*"]]) + }) + + it("calls the pipeline method with several separated commands when there are newlines", async () => { + const body = { + json: 'SET foo "bar"\nGET foo' + } + + // ioredis-mock doesn't support pipelines + config.integration.client.pipeline = jest.fn(() => ({ exec: jest.fn(() => [[]]) })) + + await config.integration.command(body) + expect(config.integration.client.pipeline).toHaveBeenCalledWith([ + ["set", 'foo', '"bar"'], + ["get", 'foo'] + ]) }) }) \ No newline at end of file From 14f5cab2779981201dd2147a77a0bdc56c82400f Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 17:56:19 +0000 Subject: [PATCH 088/162] v1.3.2 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index 9949bcfa80..bc316f6990 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.1", + "version": "1.3.2", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 12d13ca518..e27f5b5218 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.1", + "version": "1.3.2", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.1", + "@budibase/types": "^1.3.2", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 77e5e906d8..7142a08f71 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": "1.3.1", + "version": "1.3.2", "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": "^1.3.1", + "@budibase/string-templates": "^1.3.2", "@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 6463407199..9c7ff37215 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.1", + "version": "1.3.2", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.1", - "@budibase/client": "^1.3.1", - "@budibase/frontend-core": "^1.3.1", - "@budibase/string-templates": "^1.3.1", + "@budibase/bbui": "^1.3.2", + "@budibase/client": "^1.3.2", + "@budibase/frontend-core": "^1.3.2", + "@budibase/string-templates": "^1.3.2", "@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 af28c5f851..e9eb004a6b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.1", + "version": "1.3.2", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 723a9f91f7..94b25d154b 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.1", + "version": "1.3.2", "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": "^1.3.1", - "@budibase/frontend-core": "^1.3.1", - "@budibase/string-templates": "^1.3.1", + "@budibase/bbui": "^1.3.2", + "@budibase/frontend-core": "^1.3.2", + "@budibase/string-templates": "^1.3.2", "@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 8917ae11cf..7b11ea7207 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.1", + "version": "1.3.2", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.1", + "@budibase/bbui": "^1.3.2", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 24878de855..49c245a0aa 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.1", + "version": "1.3.2", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.1", - "@budibase/client": "^1.3.1", + "@budibase/backend-core": "^1.3.2", + "@budibase/client": "^1.3.2", "@budibase/pro": "1.3.1", - "@budibase/string-templates": "^1.3.1", - "@budibase/types": "^1.3.1", + "@budibase/string-templates": "^1.3.2", + "@budibase/types": "^1.3.2", "@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 dfa6736936..fe1b57de65 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.1", + "version": "1.3.2", "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 374989a52d..8a8d76954e 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.1", + "version": "1.3.2", "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 d8f1aa8357..47d11c9693 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.1", + "version": "1.3.2", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.1", + "@budibase/backend-core": "^1.3.2", "@budibase/pro": "1.3.1", - "@budibase/string-templates": "^1.3.1", - "@budibase/types": "^1.3.1", + "@budibase/string-templates": "^1.3.2", + "@budibase/types": "^1.3.2", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 38993ff82d3b2e65142819df3f736cb6ac7eca95 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 17:59:33 +0000 Subject: [PATCH 089/162] Update pro version to 1.3.2 --- 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 49c245a0aa..a5fc2f23ae 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.2", "@budibase/client": "^1.3.2", - "@budibase/pro": "1.3.1", + "@budibase/pro": "1.3.2", "@budibase/string-templates": "^1.3.2", "@budibase/types": "^1.3.2", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 3352038d8e..4f683d03f0 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.1.tgz#7fb6437d9d8926c1500f8dd2ce51bc5e850b354a" - integrity sha512-H9iqfcVX/XSxJr9aWkhIUHD87fdJgDHpd6Gdkjsx/Ua3z3UJeW2dfkcP3so2MM/hPLpP181hOaFjk2/lDBiagw== +"@budibase/backend-core@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.2.tgz#91e61915b8ab1938afea4a6fe5fc9806e6c75e16" + integrity sha512-3keFjRzmRhjwhMaUxLzUF4Osqwxe0ip3USS+hbP5P1kxFtydmCXSCiUovef2JhvjfkCI3JhDOUb/TUDTF6Tc1g== dependencies: - "@budibase/types" "^1.3.1" + "@budibase/types" "^1.3.2" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.1.tgz#5ab732dbdf30a1967ca5e92b4de48518d538cb32" - integrity sha512-ErZhpeMvhiN8bLkoXe0N/yBU1wHDnk962tQ2tzMqlkWE4fCtfvo3SxD7VsYbu6Qmakkys1QPd6lBphnBOw58FQ== +"@budibase/pro@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.2.tgz#6d2fb2f09ff72824e9a72357ed22a993e5e8fbee" + integrity sha512-Is9SA0R/vFTWTMwRCg7TAWK/VW/Ww2zdDrtWwFY6W8uIi8wdv0ca+UUg6L3BgeWcO8Nd79P+8sAyHOe1EnfgCg== dependencies: - "@budibase/backend-core" "1.3.1" - "@budibase/types" "1.3.1" + "@budibase/backend-core" "1.3.2" + "@budibase/types" "1.3.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.1", "@budibase/types@^1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.1.tgz#84a8b0e6c574d6b53c50ffe2c6fba59241ede98b" - integrity sha512-dAZvJzvw0phvLub6nmeH4sPDWKqPQH6QrFjOcgE6XR/7o7QjwTCJ00Jz07FBjh/ax+/9v6y/GauozejoESwA2w== +"@budibase/types@1.3.2", "@budibase/types@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.2.tgz#64b2f3fc6474eecbfb7eb14f209b46c1f828a782" + integrity sha512-IBbfUvk163KZvThsyyDp2W6nlTQnCq4qx2vsO9kxz/pYHe12axYfkQD53w/hc4ZID5F0iA8/oNb3S6gAJjGQfA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 47d11c9693..409d24211e 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.2", - "@budibase/pro": "1.3.1", + "@budibase/pro": "1.3.2", "@budibase/string-templates": "^1.3.2", "@budibase/types": "^1.3.2", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 959b86fa00..3a870a6e98 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.1.tgz#7fb6437d9d8926c1500f8dd2ce51bc5e850b354a" - integrity sha512-H9iqfcVX/XSxJr9aWkhIUHD87fdJgDHpd6Gdkjsx/Ua3z3UJeW2dfkcP3so2MM/hPLpP181hOaFjk2/lDBiagw== +"@budibase/backend-core@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.2.tgz#91e61915b8ab1938afea4a6fe5fc9806e6c75e16" + integrity sha512-3keFjRzmRhjwhMaUxLzUF4Osqwxe0ip3USS+hbP5P1kxFtydmCXSCiUovef2JhvjfkCI3JhDOUb/TUDTF6Tc1g== dependencies: - "@budibase/types" "^1.3.1" + "@budibase/types" "^1.3.2" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.1.tgz#5ab732dbdf30a1967ca5e92b4de48518d538cb32" - integrity sha512-ErZhpeMvhiN8bLkoXe0N/yBU1wHDnk962tQ2tzMqlkWE4fCtfvo3SxD7VsYbu6Qmakkys1QPd6lBphnBOw58FQ== +"@budibase/pro@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.2.tgz#6d2fb2f09ff72824e9a72357ed22a993e5e8fbee" + integrity sha512-Is9SA0R/vFTWTMwRCg7TAWK/VW/Ww2zdDrtWwFY6W8uIi8wdv0ca+UUg6L3BgeWcO8Nd79P+8sAyHOe1EnfgCg== dependencies: - "@budibase/backend-core" "1.3.1" - "@budibase/types" "1.3.1" + "@budibase/backend-core" "1.3.2" + "@budibase/types" "1.3.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.1", "@budibase/types@^1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.1.tgz#84a8b0e6c574d6b53c50ffe2c6fba59241ede98b" - integrity sha512-dAZvJzvw0phvLub6nmeH4sPDWKqPQH6QrFjOcgE6XR/7o7QjwTCJ00Jz07FBjh/ax+/9v6y/GauozejoESwA2w== +"@budibase/types@1.3.2", "@budibase/types@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.2.tgz#64b2f3fc6474eecbfb7eb14f209b46c1f828a782" + integrity sha512-IBbfUvk163KZvThsyyDp2W6nlTQnCq4qx2vsO9kxz/pYHe12axYfkQD53w/hc4ZID5F0iA8/oNb3S6gAJjGQfA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From f2dd8bff0262f7a8708b13a34b8ac116451f5121 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 2 Sep 2022 19:32:15 +0100 Subject: [PATCH 090/162] Updating plugins to not think about versions, only ever one version of each plugin by name, making plugins self host only and adding error checking for datasource implementations. --- .../server/src/api/controllers/component.js | 38 ++++++++++-------- packages/server/src/api/controllers/plugin.ts | 24 ++++++++++-- packages/server/src/db/utils.js | 4 +- packages/server/src/integrations/index.ts | 39 ++++++++++--------- .../server/src/utilities/fileSystem/index.js | 7 ++++ packages/server/src/watch.ts | 5 ++- 6 files changed, 74 insertions(+), 43 deletions(-) diff --git a/packages/server/src/api/controllers/component.js b/packages/server/src/api/controllers/component.js index 108abb38a4..601f39db34 100644 --- a/packages/server/src/api/controllers/component.js +++ b/packages/server/src/api/controllers/component.js @@ -2,6 +2,7 @@ const { DocumentType, getPluginParams } = require("../../db/utils") const { getComponentLibraryManifest } = require("../../utilities/fileSystem") const { getAppDB } = require("@budibase/backend-core/context") const { getGlobalDB } = require("@budibase/backend-core/tenancy") +const env = require("../../environment") exports.fetchAppComponentDefinitions = async function (ctx) { try { @@ -32,23 +33,26 @@ exports.fetchAppComponentDefinitions = async function (ctx) { } } - // Add custom components - const globalDB = getGlobalDB() - const response = await globalDB.allDocs( - getPluginParams(null, { - include_docs: true, - }) - ) - response.rows - .map(row => row.doc) - .filter(plugin => plugin.schema.type === "component") - .forEach(plugin => { - const fullComponentName = `plugin/${plugin.name}/${plugin.version}` - definitions[fullComponentName] = { - component: fullComponentName, - ...plugin.schema.schema, - } - }) + // for now custom components only supported in self-host + if (env.SELF_HOSTED) { + // Add custom components + const globalDB = getGlobalDB() + const response = await globalDB.allDocs( + getPluginParams(null, { + include_docs: true, + }) + ) + response.rows + .map(row => row.doc) + .filter(plugin => plugin.schema.type === "component") + .forEach(plugin => { + const fullComponentName = `plugin/${plugin.name}/${plugin.version}` + definitions[fullComponentName] = { + component: fullComponentName, + ...plugin.schema.schema, + } + }) + } ctx.body = definitions } catch (err) { diff --git a/packages/server/src/api/controllers/plugin.ts b/packages/server/src/api/controllers/plugin.ts index 93e569e0c8..ff606295a2 100644 --- a/packages/server/src/api/controllers/plugin.ts +++ b/packages/server/src/api/controllers/plugin.ts @@ -1,9 +1,10 @@ import { ObjectStoreBuckets } from "../../constants" -import { extractPluginTarball } from "../../utilities/fileSystem" +import { extractPluginTarball, loadJSFile } from "../../utilities/fileSystem" import { getGlobalDB } from "@budibase/backend-core/tenancy" import { generatePluginID, getPluginParams } from "../../db/utils" import { uploadDirectory } from "@budibase/backend-core/objectStore" import { PluginType, FileType } from "@budibase/types" +import env from "../../environment" export async function getPlugins(type?: PluginType) { const db = getGlobalDB() @@ -49,6 +50,9 @@ export async function fetch(ctx: any) { export async function destroy(ctx: any) {} export async function processPlugin(plugin: FileType) { + if (!env.SELF_HOSTED) { + throw new Error("Plugins not supported outside of self-host.") + } const db = getGlobalDB() const { metadata, directory } = await extractPluginTarball(plugin) const version = metadata.package.version, @@ -56,7 +60,7 @@ export async function processPlugin(plugin: FileType) { description = metadata.package.description // first open the tarball into tmp directory - const bucketPath = `${name}/${version}/` + const bucketPath = `${name}/` const files = await uploadDirectory( ObjectStoreBuckets.PLUGINS, directory, @@ -66,8 +70,20 @@ export async function processPlugin(plugin: FileType) { if (!jsFile) { throw new Error(`Plugin missing .js file.`) } + // validate the JS for a datasource + if (metadata.schema.type === PluginType.DATASOURCE) { + const js = loadJSFile(directory, jsFile.name) + // TODO: this isn't safe - but we need full node environment + // in future we should do this in a thread for safety + try { + eval(js) + } catch (err: any) { + const message = err?.message ? err.message : JSON.stringify(err) + throw new Error(`JS invalid: ${message}`) + } + } const jsFileName = jsFile.name - const pluginId = generatePluginID(name, version) + const pluginId = generatePluginID(name) // overwrite existing docs entirely if they exist let rev @@ -80,10 +96,10 @@ export async function processPlugin(plugin: FileType) { const doc = { _id: pluginId, _rev: rev, + ...metadata, name, version, description, - ...metadata, jsUrl: `${bucketPath}${jsFileName}`, } const response = await db.put(doc) diff --git a/packages/server/src/db/utils.js b/packages/server/src/db/utils.js index e9a6a4c0d5..64d206aeb8 100644 --- a/packages/server/src/db/utils.js +++ b/packages/server/src/db/utils.js @@ -371,8 +371,8 @@ exports.getMemoryViewParams = (otherProps = {}) => { return getDocParams(DocumentType.MEM_VIEW, null, otherProps) } -exports.generatePluginID = (name, version) => { - return `${DocumentType.PLUGIN}${SEPARATOR}${name}${SEPARATOR}${version}` +exports.generatePluginID = name => { + return `${DocumentType.PLUGIN}${SEPARATOR}${name}` } /** diff --git a/packages/server/src/integrations/index.ts b/packages/server/src/integrations/index.ts index 7b730a1764..007b7e91e6 100644 --- a/packages/server/src/integrations/index.ts +++ b/packages/server/src/integrations/index.ts @@ -66,18 +66,18 @@ if (environment.SELF_HOSTED) { DEFINITIONS[SourceName.GOOGLE_SHEETS] = googlesheets.schema } -function isIntegrationAvailable(integration: string) {} - module.exports = { getDefinitions: async () => { - const plugins = await getPlugins(PluginType.DATASOURCE) - // extract the actual schema from each custom const pluginSchemas: { [key: string]: Integration } = {} - for (let plugin of plugins) { - const sourceId = plugin.name - pluginSchemas[sourceId] = { - ...plugin.schema["schema"], - custom: true, + if (environment.SELF_HOSTED) { + const plugins = await getPlugins(PluginType.DATASOURCE) + // extract the actual schema from each custom + for (let plugin of plugins) { + const sourceId = plugin.name + pluginSchemas[sourceId] = { + ...plugin.schema["schema"], + custom: true, + } } } return { @@ -89,16 +89,19 @@ module.exports = { if (INTEGRATIONS[integration]) { return INTEGRATIONS[integration] } - const plugins = await getPlugins(PluginType.DATASOURCE) - for (let plugin of plugins) { - if (plugin.name === integration) { - // need to use commonJS require due to its dynamic runtime nature - return getDatasourcePlugin( - plugin.name, - plugin.jsUrl, - plugin.schema?.hash - ) + if (environment.SELF_HOSTED) { + const plugins = await getPlugins(PluginType.DATASOURCE) + for (let plugin of plugins) { + if (plugin.name === integration) { + // need to use commonJS require due to its dynamic runtime nature + return getDatasourcePlugin( + plugin.name, + plugin.jsUrl, + plugin.schema?.hash + ) + } } } + throw new Error("No datasource implementation found.") }, } diff --git a/packages/server/src/utilities/fileSystem/index.js b/packages/server/src/utilities/fileSystem/index.js index 9141d8eebf..e1ac74272b 100644 --- a/packages/server/src/utilities/fileSystem/index.js +++ b/packages/server/src/utilities/fileSystem/index.js @@ -103,6 +103,13 @@ exports.loadHandlebarsFile = path => { return fs.readFileSync(path, "utf8") } +/** + * Same as above just with a different name. + */ +exports.loadJSFile = (directory, name) => { + return fs.readFileSync(join(directory, name), "utf8") +} + /** * When return a file from the API need to write the file to the system temporarily so we * can create a read stream to send. diff --git a/packages/server/src/watch.ts b/packages/server/src/watch.ts index 9821d1127b..a97fda4138 100644 --- a/packages/server/src/watch.ts +++ b/packages/server/src/watch.ts @@ -29,8 +29,9 @@ export function watch() { const name = split[split.length - 1] console.log("Importing plugin:", path) await processPlugin({ name, path }) - } catch (err) { - console.log("Failed to import plugin:", err) + } catch (err: any) { + const message = err?.message ? err?.message : err + console.error("Failed to import plugin:", message) } }) }) From 2b718a495894cc61ee24e6b6054e7fd66aac056d Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 2 Sep 2022 19:47:21 +0100 Subject: [PATCH 091/162] Fixing CLI yarn lock. --- packages/cli/yarn.lock | 829 ++++++++++++++++++++--------------------- 1 file changed, 406 insertions(+), 423 deletions(-) diff --git a/packages/cli/yarn.lock b/packages/cli/yarn.lock index a7559a48da..be18508185 100644 --- a/packages/cli/yarn.lock +++ b/packages/cli/yarn.lock @@ -4,27 +4,22 @@ "@babel/code-frame@7.12.11": version "7.12.11" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== dependencies: "@babel/highlight" "^7.10.4" -"@babel/helper-validator-identifier@^7.15.7": - version "7.15.7" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz" - integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== - -"@babel/helper-validator-identifier@^7.16.7": +"@babel/helper-validator-identifier@^7.16.7", "@babel/helper-validator-identifier@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076" integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g== "@babel/highlight@^7.10.4": - version "7.16.0" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz" - integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== dependencies: - "@babel/helper-validator-identifier" "^7.15.7" + "@babel/helper-validator-identifier" "^7.18.6" chalk "^2.0.0" js-tokens "^4.0.0" @@ -34,9 +29,9 @@ integrity sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ== "@babel/runtime@^7.15.4": - version "7.16.3" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz" - integrity sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ== + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.9.tgz#b4fcfce55db3d2e5e080d2490f608a3b9f407f4a" + integrity sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw== dependencies: regenerator-runtime "^0.13.4" @@ -89,7 +84,7 @@ "@eslint/eslintrc@^0.4.3": version "0.4.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== dependencies: ajv "^6.12.4" @@ -116,7 +111,7 @@ "@humanwhocodes/config-array@^0.5.0": version "0.5.0" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== dependencies: "@humanwhocodes/object-schema" "^1.2.0" @@ -125,7 +120,7 @@ "@humanwhocodes/object-schema@^1.2.0": version "1.2.1" - resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@mapbox/node-pre-gyp@^1.0.0": @@ -145,7 +140,7 @@ "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" @@ -153,12 +148,12 @@ "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": version "1.2.8" - resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -199,14 +194,14 @@ abbrev@1: abort-controller@3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: event-target-shim "^5.0.0" abstract-leveldown@^6.2.1: version "6.3.0" - resolved "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz#d25221d1e6612f820c35963ba4bd739928f6026a" integrity sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ== dependencies: buffer "^5.5.0" @@ -217,7 +212,7 @@ abstract-leveldown@^6.2.1: abstract-leveldown@~6.2.1, abstract-leveldown@~6.2.3: version "6.2.3" - resolved "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz#036543d87e3710f2528e47040bc3261b77a9a8eb" integrity sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ== dependencies: buffer "^5.5.0" @@ -228,17 +223,17 @@ abstract-leveldown@~6.2.1, abstract-leveldown@~6.2.3: acorn-jsx@^5.3.1: version "5.3.2" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn@^7.4.0: version "7.4.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== agent-base@6: version "6.0.2" - resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" @@ -254,9 +249,9 @@ ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4: uri-js "^4.2.2" ajv@^8.0.1: - version "8.8.1" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.8.1.tgz" - integrity sha512-6CiMNDrzv0ZR916u2T+iRunnD60uWmNn8SkdB44/6stVORUg0aAkWO7PkOhpCmjmW8f2I/G/xnowD66fxGyQJg== + version "8.11.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" + integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -264,44 +259,44 @@ ajv@^8.0.1: uri-js "^4.2.2" ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^4.2.1: version "4.3.2" - resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" aproba@^1.0.3: version "1.2.0" - resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== "aproba@^1.0.3 || ^2.0.0": @@ -319,7 +314,7 @@ are-we-there-yet@^2.0.0: are-we-there-yet@~1.1.2: version "1.1.7" - resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== dependencies: delegates "^1.0.0" @@ -327,14 +322,14 @@ are-we-there-yet@~1.1.2: argparse@^1.0.7: version "1.0.10" - resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" argsarray@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/argsarray/-/argsarray-0.0.1.tgz#6e7207b4ecdb39b0af88303fa5ae22bda8df61cb" integrity sha512-u96dg2GcAKtpTrBdDoFIM7PjcBA+6rSP0OR94MOReNRyUECL6MtQt5XXmRr4qrftYaef9+l5hcpO5te7sML1Cg== array-back@^3.0.1, array-back@^3.1.0: @@ -354,13 +349,13 @@ array-back@^6.2.0, array-back@^6.2.2: array-union@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array-uniq@1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz" - integrity sha1-X8w3OSB3VyPP1k1lxkvvU7+eum0= + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.2.tgz#5fcc373920775723cfd64d65c64bef53bf9eba6d" + integrity sha512-GVYjmpL05al4dNlKJm53mKE4w9OOLiuVHWorsIA3YVz+Hu0hcn6PtE3Ydl0EqU7v+7ABC4mjjWsnLUxbpno+CA== asn1@~0.2.3: version "0.2.6" @@ -376,7 +371,7 @@ assert-plus@1.0.0, assert-plus@^1.0.0: astral-regex@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== async@~2.1.4: @@ -393,7 +388,7 @@ asynckit@^0.4.0: at-least-node@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== aws-sdk@2.1030.0: @@ -422,9 +417,9 @@ aws4@^1.8.0: integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== axios-retry@^3.1.9: - version "3.2.4" - resolved "https://registry.npmjs.org/axios-retry/-/axios-retry-3.2.4.tgz" - integrity sha512-Co3UXiv4npi6lM963mfnuH90/YFLKWWDmoBYfxkHT5xtkSSWNqK9zdG3fw5/CP/dsoKB5aMMJCsgab+tp1OxLQ== + version "3.3.1" + resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.3.1.tgz#47624646138aedefbad2ac32f226f4ee94b6dcab" + integrity sha512-RohAUQTDxBSWLFEnoIG/6bvmy8l3TfpkclgStjl5MDCMBDgapAWCmr1r/9harQfWC8bzLC8job6UcL1A1Yc+/Q== dependencies: "@babel/runtime" "^7.15.4" is-retry-allowed "^2.2.0" @@ -445,19 +440,19 @@ axios@0.24.0: axios@^0.21.1: version "0.21.4" - resolved "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== dependencies: follow-redirects "^1.14.0" balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.0.2, base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== base64url@3.x.x, base64url@^3.0.1: @@ -482,7 +477,7 @@ bcrypt@5.0.1: bl@^4.0.3: version "4.1.0" - resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: buffer "^5.5.0" @@ -496,15 +491,15 @@ bluebird@^3.7.2: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^3.0.1: +braces@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" @@ -521,7 +516,7 @@ buffer-from@1.1.1: buffer-from@1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer@4.9.2: @@ -535,7 +530,7 @@ buffer@4.9.2: buffer@^5.5.0, buffer@^5.6.0: version "5.7.1" - resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: base64-js "^1.3.1" @@ -543,7 +538,7 @@ buffer@^5.5.0, buffer@^5.6.0: callsites@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== caseless@~0.12.0: @@ -561,7 +556,7 @@ chalk@4.1.0: chalk@^2.0.0, chalk@^2.4.2: version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -570,7 +565,7 @@ chalk@^2.0.0, chalk@^2.4.2: chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -578,27 +573,27 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: chardet@^0.7.0: version "0.7.0" - resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== charenc@0.0.2: version "0.0.2" - resolved "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz" - integrity sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc= + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== chownr@^1.1.1: version "1.1.4" - resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== chownr@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" @@ -612,12 +607,12 @@ cli-progress@3.11.2: cli-width@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== cliui@^7.0.2: version "7.0.4" - resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -626,7 +621,7 @@ cliui@^7.0.2: clone-buffer@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== cluster-key-slot@^1.1.0: @@ -636,31 +631,31 @@ cluster-key-slot@^1.1.0: code-point-at@^1.0.0: version "1.1.0" - resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@~1.1.4: version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== color-support@^1.1.2: @@ -702,13 +697,13 @@ commander@7.1.0: component-type@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/component-type/-/component-type-1.2.1.tgz" - integrity sha1-ikeQFwAjjk/DIml3EjAibyS0Fak= + resolved "https://registry.yarnpkg.com/component-type/-/component-type-1.2.1.tgz#8a47901700238e4fc32269771230226f24b415a9" + integrity sha512-Kgy+2+Uwr75vAi6ChWXgHuLvd+QLD7ssgpaRq2zCvt80ptvAfMc/hijcJxXkBa2wMlEZcJvC2H8Ubo+A9ATHIg== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0: version "1.1.0" @@ -735,12 +730,12 @@ core-util-is@1.0.2: core-util-is@~1.0.0: version "1.0.3" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== cross-spawn@^7.0.2: version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -749,8 +744,8 @@ cross-spawn@^7.0.2: crypt@0.0.2: version "0.0.2" - resolved "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz" - integrity sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs= + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== current-module-paths@^1.1.0: version "1.1.0" @@ -764,14 +759,7 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -debug@4, debug@^4.0.1, debug@^4.1.1: - version "4.3.2" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== - dependencies: - ms "2.1.2" - -debug@^4.3.1: +debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -780,24 +768,24 @@ debug@^4.3.1: decompress-response@^4.2.0: version "4.2.1" - resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-4.2.1.tgz#414023cc7a302da25ce2ec82d0d5238ccafd8986" integrity sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw== dependencies: mimic-response "^2.0.0" deep-extend@^0.6.0, deep-extend@~0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.4" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deferred-leveldown@~5.3.0: version "5.3.0" - resolved "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz#27a997ad95408b61161aa69bd489b86c71b78058" integrity sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw== dependencies: abstract-leveldown "~6.2.1" @@ -810,8 +798,8 @@ delayed-stream@~1.0.0: delegates@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== denque@^1.1.0: version "1.5.1" @@ -820,8 +808,8 @@ denque@^1.1.0: detect-libc@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== detect-libc@^2.0.0: version "2.0.1" @@ -830,7 +818,7 @@ detect-libc@^2.0.0: dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" @@ -842,7 +830,7 @@ docker-compose@0.23.6: doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" @@ -854,7 +842,7 @@ dotenv@16.0.1: double-ended-queue@2.1.0-0: version "2.1.0-0" - resolved "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz" + resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" integrity sha512-+BNfZ+deCo8hMNpDqDnvT+c0XpJ5cUa6mqYq89bho2Ifze4URTqRkcwR399hWoTrTkbZ/XJYDgP6rc7pRgffEQ== ecc-jsbn@~0.1.1: @@ -881,12 +869,12 @@ emitter-listener@1.1.2: emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== encoding-down@^6.3.0: version "6.3.0" - resolved "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-6.3.0.tgz#b1c4eb0e1728c146ecaef8e32963c549e76d082b" integrity sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw== dependencies: abstract-leveldown "^6.2.1" @@ -896,50 +884,50 @@ encoding-down@^6.3.0: end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" - resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" end-stream@~0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/end-stream/-/end-stream-0.1.0.tgz#32003f3f438a2b0143168137f8fa6e9866c81ed5" integrity sha512-Brl10T8kYnc75IepKizW6Y9liyW8ikz1B7n/xoHrJxoVSSjoqPn30sb7XVFfQERK4QfUMYRGs9dhWwtt2eu6uA== dependencies: write-stream "~0.4.3" enquirer@^2.3.5: version "2.3.6" - resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" errno@~0.1.1: version "0.1.8" - resolved "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== dependencies: prr "~1.0.1" escalade@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== escodegen@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== dependencies: esprima "^4.0.1" @@ -951,7 +939,7 @@ escodegen@^2.0.0: eslint-scope@^5.1.1: version "5.1.1" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -959,24 +947,24 @@ eslint-scope@^5.1.1: eslint-utils@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== eslint-visitor-keys@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== eslint@^7.20.0: version "7.32.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== dependencies: "@babel/code-frame" "7.12.11" @@ -1022,7 +1010,7 @@ eslint@^7.20.0: espree@^7.3.0, espree@^7.3.1: version "7.3.1" - resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== dependencies: acorn "^7.4.0" @@ -1031,41 +1019,41 @@ espree@^7.3.0, espree@^7.3.1: esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== event-target-shim@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== events@1.1.1: @@ -1075,7 +1063,7 @@ events@1.1.1: expand-template@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== extend@~3.0.2: @@ -1085,7 +1073,7 @@ extend@~3.0.2: external-editor@^3.0.3: version "3.1.0" - resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" @@ -1104,7 +1092,7 @@ extsprintf@^1.2.0: fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-diff@^1.2.0: @@ -1125,17 +1113,17 @@ fast-glob@^3.2.9: fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" - resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fastq@^1.6.0: version "1.13.0" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== dependencies: reusify "^1.0.4" @@ -1149,21 +1137,21 @@ fetch-cookie@0.10.1: fetch-cookie@0.11.0: version "0.11.0" - resolved "https://registry.npmjs.org/fetch-cookie/-/fetch-cookie-0.11.0.tgz" + resolved "https://registry.yarnpkg.com/fetch-cookie/-/fetch-cookie-0.11.0.tgz#e046d2abadd0ded5804ce7e2cae06d4331c15407" integrity sha512-BQm7iZLFhMWFy5CZ/162sAGjBfdNWb7a8LEqqnzsHFhxT/X/SVj/z2t2nu3aJvjlbQkrAlTUApplPRjWyH4mhA== dependencies: tough-cookie "^2.3.3 || ^3.0.1 || ^4.0.0" figures@^3.0.0: version "3.2.0" - resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" @@ -1178,7 +1166,7 @@ file-set@^5.1.2: fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" @@ -1192,16 +1180,16 @@ find-replace@^3.0.0: flat-cache@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: flatted "^3.1.0" rimraf "^3.0.2" flatted@^3.1.0: - version "3.2.4" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz" - integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== + version "3.2.7" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== follow-redirects@^1.14.0, follow-redirects@^1.14.4: version "1.15.1" @@ -1224,20 +1212,20 @@ form-data@~2.3.2: from2@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== dependencies: inherits "^2.0.1" readable-stream "^2.0.0" fs-constants@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== fs-extra@^9.1.0: version "9.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== dependencies: at-least-node "^1.0.0" @@ -1247,25 +1235,25 @@ fs-extra@^9.1.0: fs-minipass@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== functional-red-black-tree@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== gauge@^3.0.0: version "3.0.2" @@ -1284,8 +1272,8 @@ gauge@^3.0.0: gauge@~2.7.3: version "2.7.4" - resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg== dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" @@ -1298,7 +1286,7 @@ gauge@~2.7.3: get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== getpass@^0.1.1: @@ -1310,17 +1298,17 @@ getpass@^0.1.1: github-from-package@0.0.0: version "0.0.0" - resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== glob-parent@^5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" -glob@^7.0.5, glob@^7.2.0: +glob@^7.0.5, glob@^7.1.3, glob@^7.2.0: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -1332,18 +1320,6 @@ glob@^7.0.5, glob@^7.2.0: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.3: - version "7.2.0" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - global-dirs@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" @@ -1352,9 +1328,9 @@ global-dirs@^3.0.0: ini "2.0.0" globals@^13.6.0, globals@^13.9.0: - version "13.12.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz" - integrity sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg== + version "13.17.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.17.0.tgz#902eb1e680a41da93945adbdcb5a9f361ba69bd4" + integrity sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw== dependencies: type-fest "^0.20.2" @@ -1397,9 +1373,9 @@ googleapis@^16.0.0: string-template "~1.0.0" graceful-fs@^4.1.6, graceful-fs@^4.2.0: - version "4.2.8" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" - integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== gtoken@^1.2.1: version "1.2.3" @@ -1426,12 +1402,12 @@ har-validator@~5.1.3: has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-unicode@^2.0.0, has-unicode@^2.0.1: @@ -1441,7 +1417,7 @@ has-unicode@^2.0.0, has-unicode@^2.0.1: has@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" @@ -1456,16 +1432,16 @@ http-signature@~1.2.0: sshpk "^1.7.0" https-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz" - integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" debug "4" iconv-lite@^0.4.24: version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" @@ -1477,12 +1453,12 @@ ieee754@1.1.13: ieee754@^1.1.13, ieee754@^1.1.4: version "1.2.1" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== ignore@^4.0.6: version "4.0.6" - resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== ignore@^5.2.0: @@ -1492,17 +1468,17 @@ ignore@^5.2.0: immediate@3.3.0, immediate@^3.2.3: version "3.3.0" - resolved "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== immediate@~3.0.5: version "3.0.6" - resolved "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -1510,20 +1486,20 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@2.0.0: @@ -1533,7 +1509,7 @@ ini@2.0.0: ini@~1.3.0: version "1.3.8" - resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== inquirer@8.0.0: @@ -1557,7 +1533,7 @@ inquirer@8.0.0: into-stream@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/into-stream/-/into-stream-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-6.0.0.tgz#4bfc1244c0128224e18b8870e85b2de8e66c6702" integrity sha512-XHbaOAvP+uFKUFsOgoNPRjLkwB+I22JFPFe5OjTkQ0nwgj6+pSjb4NmB6VMxaPshLiOf+zcpOCBQuLwC1KHhZA== dependencies: from2 "^2.3.0" @@ -1582,48 +1558,55 @@ ioredis@4.28.0: is-buffer@~1.1.6: version "1.1.6" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-core-module@2.9.0, is-core-module@^2.9.0: +is-core-module@2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== dependencies: has "^1.0.3" +is-core-module@^2.9.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" + integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== + dependencies: + has "^1.0.3" + is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-retry-allowed@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== is-typedarray@~1.0.0: @@ -1633,18 +1616,18 @@ is-typedarray@~1.0.0: isarray@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isstream@~0.1.2: version "0.1.2" @@ -1669,17 +1652,17 @@ joi@17.6.0: join-component@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/join-component/-/join-component-1.1.0.tgz" - integrity sha1-uEF7dQZho5K+4sJTfGiyqdSXfNU= + resolved "https://registry.yarnpkg.com/join-component/-/join-component-1.1.0.tgz#b8417b750661a392bee2c2537c68b2a9d4977cd5" + integrity sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ== js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -1692,12 +1675,12 @@ jsbn@~0.1.0: json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-schema@0.4.0: @@ -1707,17 +1690,17 @@ json-schema@0.4.0: json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== jsonfile@^6.0.1: version "6.1.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: universalify "^2.0.0" @@ -1776,26 +1759,26 @@ koa-passport@4.1.4: level-codec@9.0.2, level-codec@^9.0.0: version "9.0.2" - resolved "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz" + resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc" integrity sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ== dependencies: buffer "^5.6.0" level-concat-iterator@~2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz#1d1009cf108340252cb38c51f9727311193e6263" integrity sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw== level-errors@^2.0.0, level-errors@~2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-2.0.1.tgz#2132a677bf4e679ce029f517c2f17432800c05c8" integrity sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw== dependencies: errno "~0.1.1" level-iterator-stream@~4.0.0: version "4.0.2" - resolved "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz#7ceba69b713b0d7e22fcc0d1f128ccdc8a24f79c" integrity sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q== dependencies: inherits "^2.0.4" @@ -1804,7 +1787,7 @@ level-iterator-stream@~4.0.0: level-js@^5.0.0: version "5.0.2" - resolved "https://registry.npmjs.org/level-js/-/level-js-5.0.2.tgz" + resolved "https://registry.yarnpkg.com/level-js/-/level-js-5.0.2.tgz#5e280b8f93abd9ef3a305b13faf0b5397c969b55" integrity sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg== dependencies: abstract-leveldown "~6.2.3" @@ -1814,7 +1797,7 @@ level-js@^5.0.0: level-packager@^5.1.0: version "5.1.1" - resolved "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-5.1.1.tgz#323ec842d6babe7336f70299c14df2e329c18939" integrity sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ== dependencies: encoding-down "^6.3.0" @@ -1822,21 +1805,21 @@ level-packager@^5.1.0: level-supports@~1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-1.0.1.tgz#2f530a596834c7301622521988e2c36bb77d122d" integrity sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg== dependencies: xtend "^4.0.2" level-write-stream@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/level-write-stream/-/level-write-stream-1.0.0.tgz#3f7fbb679a55137c0feb303dee766e12ee13c1dc" integrity sha512-bBNKOEOMl8msO+uIM9YX/gUO6ckokZ/4pCwTm/lwvs46x6Xs8Zy0sn3Vh37eDqse4mhy4fOMIb/JsSM2nyQFtw== dependencies: end-stream "~0.1.0" level@6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/level/-/level-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/level/-/level-6.0.1.tgz#dc34c5edb81846a6de5079eac15706334b0d7cd6" integrity sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw== dependencies: level-js "^5.0.0" @@ -1845,7 +1828,7 @@ level@6.0.1: leveldown@5.6.0, leveldown@^5.4.0: version "5.6.0" - resolved "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz" + resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-5.6.0.tgz#16ba937bb2991c6094e13ac5a6898ee66d3eee98" integrity sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ== dependencies: abstract-leveldown "~6.2.1" @@ -1854,7 +1837,7 @@ leveldown@5.6.0, leveldown@^5.4.0: levelup@4.4.0, levelup@^4.3.2: version "4.4.0" - resolved "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-4.4.0.tgz#f89da3a228c38deb49c48f88a70fb71f01cafed6" integrity sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ== dependencies: deferred-leveldown "~5.3.0" @@ -1865,7 +1848,7 @@ levelup@4.4.0, levelup@^4.3.2: levn@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -1873,15 +1856,15 @@ levn@^0.4.1: levn@~0.3.0: version "0.3.0" - resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" lie@3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e" integrity sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw== dependencies: immediate "~3.0.5" @@ -1945,7 +1928,7 @@ lodash.isstring@^4.0.1: lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.noop@^3.0.1: @@ -1960,13 +1943,13 @@ lodash.once@^4.0.0: lodash.pick@^4.0.0: version "4.4.0" - resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q== lodash.truncate@^4.4.2: version "4.4.2" - resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== lodash@4.17.21, lodash@^4.14.0, lodash@^4.17.21: version "4.17.21" @@ -1980,14 +1963,14 @@ lookpath@1.1.0: lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" ltgt@2.2.1, ltgt@^2.1.2: version "2.2.1" - resolved "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== make-dir@^3.1.0: @@ -1999,7 +1982,7 @@ make-dir@^3.1.0: md5@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== dependencies: charenc "0.0.2" @@ -2012,12 +1995,12 @@ merge2@^1.3.0, merge2@^1.4.1: integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^4.0.4: - version "4.0.4" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz" - integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: - braces "^3.0.1" - picomatch "^2.2.3" + braces "^3.0.2" + picomatch "^2.3.1" mime-db@1.52.0: version "1.52.0" @@ -2038,28 +2021,21 @@ mime@^1.4.1: mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-response@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== -minimatch@^3.0.3, minimatch@^3.1.1: +minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.6: version "1.2.6" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" @@ -2067,14 +2043,14 @@ minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.6: minipass@^3.0.0: version "3.3.4" - resolved "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.4.tgz#ca99f95dd77c43c7a76bf51e6d200025eee0ffae" integrity sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw== dependencies: yallist "^4.0.0" minizlib@^2.1.1: version "2.1.2" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: minipass "^3.0.0" @@ -2082,27 +2058,27 @@ minizlib@^2.1.1: mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: version "0.5.3" - resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== ms@2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.1.1, ms@^2.1.3: version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== multistream@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/multistream/-/multistream-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/multistream/-/multistream-4.1.0.tgz#7bf00dfd119556fbc153cff3de4c6d477909f5a8" integrity sha512-J1XDiAmmNpRCBfIWJv+n0ymC4ABcf/Pl+5YvC5B/D2f/2+8PtHvCNxMPKiQcZyi922Hq69J2YOpb1pTywfifyw== dependencies: once "^1.4.0" @@ -2110,27 +2086,27 @@ multistream@^4.1.0: mute-stream@0.0.8: version "0.0.8" - resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== napi-build-utils@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== napi-macros@~2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== ndjson@^1.4.3: version "1.5.0" - resolved "https://registry.npmjs.org/ndjson/-/ndjson-1.5.0.tgz" + resolved "https://registry.yarnpkg.com/ndjson/-/ndjson-1.5.0.tgz#ae603b36b134bcec347b452422b0bf98d5832ec8" integrity sha512-hUPLuaziboGjNF7wHngkgVc0FOclR8dDk/HfEvTtDr/iUrqBWiRcRSTK3/nLOqKH33th714BrMmTPtObI9gZxQ== dependencies: json-stringify-safe "^5.0.1" @@ -2152,7 +2128,7 @@ node-addon-api@^3.1.0: node-fetch@2, node-fetch@2.6.7, node-fetch@^2.6.6, node-fetch@^2.6.7: version "2.6.7" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" @@ -2169,7 +2145,7 @@ node-forge@^0.7.1: node-gyp-build@~4.1.0: version "4.1.1" - resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.1.1.tgz#d7270b5d86717068d114cc57fff352f96d745feb" integrity sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ== noms@0.0.0: @@ -2189,7 +2165,7 @@ nopt@^5.0.0: npmlog@^4.0.1: version "4.1.2" - resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== dependencies: are-we-there-yet "~1.1.2" @@ -2209,8 +2185,8 @@ npmlog@^5.0.1: number-is-nan@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== oauth-sign@~0.9.0: version "0.9.0" @@ -2229,21 +2205,21 @@ object-assign@^4.1.0, object-assign@^4.1.1: once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" onetime@^5.1.0: version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" optionator@^0.8.1: version "0.8.3" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== dependencies: deep-is "~0.1.3" @@ -2255,7 +2231,7 @@ optionator@^0.8.1: optionator@^0.9.1: version "0.9.1" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: deep-is "^0.1.3" @@ -2267,12 +2243,12 @@ optionator@^0.9.1: os-tmpdir@~1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== p-is-promise@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-3.0.0.tgz#58e78c7dfe2e163cf2a04ff869e7c1dba64a5971" integrity sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ== p-map@^2.1.0: @@ -2282,7 +2258,7 @@ p-map@^2.1.0: parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" @@ -2372,12 +2348,12 @@ passport@^0.4.0: path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.1.0: version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.7: @@ -2387,7 +2363,7 @@ path-parse@^1.0.7: path-type@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== pause@0.0.1: @@ -2400,10 +2376,10 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== -picomatch@^2.2.3: - version "2.3.0" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" - integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== +picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pkg-fetch@3.4.1: version "3.4.1" @@ -2441,7 +2417,7 @@ pkg@5.7.0: posthog-node@1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/posthog-node/-/posthog-node-1.0.7.tgz" + resolved "https://registry.yarnpkg.com/posthog-node/-/posthog-node-1.0.7.tgz#a7a9525eebff23312117e57cff3ddac82afb2262" integrity sha512-KTCwyU+PU1eAQtjy5ZSJ47mrxv2d/mMkxo+vvV5c+YqfE4mBAY1UPEPMv1nElb5Vq0UnxvyQXaUnOn8d8Xr6Eg== dependencies: axios "^0.21.1" @@ -2469,7 +2445,7 @@ posthog-node@1.3.0: pouch-stream@^0.4.0: version "0.4.1" - resolved "https://registry.npmjs.org/pouch-stream/-/pouch-stream-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/pouch-stream/-/pouch-stream-0.4.1.tgz#0c6d8475c9307677627991a2f079b301c3b89bdd" integrity sha512-RAWFhsGDbG4xZQpvrrQlhrITVUNVCKmglfe5WWDnJaDf1u9DMaRLHv//m65tBZevuo4QTGjwcyggwYxd7AGLsg== dependencies: inherits "^2.0.1" @@ -2555,7 +2531,7 @@ pouchdb-md5@7.2.2: pouchdb-promise@^6.0.4: version "6.4.3" - resolved "https://registry.npmjs.org/pouchdb-promise/-/pouchdb-promise-6.4.3.tgz" + resolved "https://registry.yarnpkg.com/pouchdb-promise/-/pouchdb-promise-6.4.3.tgz#74516f4acf74957b54debd0fb2c0e5b5a68ca7b3" integrity sha512-ruJaSFXwzsxRHQfwNHjQfsj58LBOY1RzGzde4PM5CWINZwFjCQAhZwfMrch2o/0oZT6d+Xtt0HTWhq35p3b0qw== dependencies: lie "3.1.1" @@ -2642,13 +2618,13 @@ prebuild-install@6.1.4: prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prelude-ls@~1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== printj@^1.3.0: version "1.3.1" @@ -2657,32 +2633,27 @@ printj@^1.3.0: process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== progress@^2.0.0, progress@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== prr@~1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== -psl@^1.1.28: +psl@^1.1.28, psl@^1.1.33: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== -psl@^1.1.33: - version "1.8.0" - resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== - pump@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" @@ -2695,7 +2666,7 @@ punycode@1.3.2: punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== qs@~6.5.2: @@ -2708,9 +2679,14 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== randomstring@1.1.5: @@ -2722,7 +2698,7 @@ randomstring@1.1.5: rc@^1.2.7: version "1.2.8" - resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: deep-extend "^0.6.0" @@ -2732,7 +2708,7 @@ rc@^1.2.7: readable-stream@1.1.14, readable-stream@^1.0.27-1: version "1.1.14" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" integrity sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ== dependencies: core-util-is "~1.0.0" @@ -2742,7 +2718,7 @@ readable-stream@1.1.14, readable-stream@^1.0.27-1: "readable-stream@2 || 3", readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== dependencies: inherits "^2.0.3" @@ -2751,7 +2727,7 @@ readable-stream@1.1.14, readable-stream@^1.0.27-1: readable-stream@^2.0.0, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@~2.3.6: version "2.3.7" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== dependencies: core-util-is "~1.0.0" @@ -2764,7 +2740,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.6, readable-stream@^2.1.4, readable readable-stream@~0.0.2: version "0.0.4" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-0.0.4.tgz#f32d76e3fb863344a548d79923007173665b3b8d" integrity sha512-azrivNydKRYt7zwLV5wWUK7YzKTWs3q87xSmY6DlHapPrCvaT6ZrukvM5erV+yCSSPmZT8zkSdttOHQpWWm9zw== readable-stream@~1.0.31: @@ -2808,17 +2784,17 @@ reduce-flatten@^2.0.0: regenerator-runtime@^0.13.4: version "0.13.9" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== regexpp@^3.1.0: version "3.2.0" - resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== remove-trailing-slash@^0.1.1: version "0.1.1" - resolved "https://registry.npmjs.org/remove-trailing-slash/-/remove-trailing-slash-0.1.1.tgz" + resolved "https://registry.yarnpkg.com/remove-trailing-slash/-/remove-trailing-slash-0.1.1.tgz#be2285a59f39c74d1bce4f825950061915e3780d" integrity sha512-o4S4Qh6L2jpnCy83ysZDau+VORNvnFw07CKSAymkd6ICNVEPisMyzlc00KlvvicsxKck94SEwhDnMNdICzO+tA== renamer@^4.0.0: @@ -2867,17 +2843,22 @@ request@^2.72.0, request@^2.74.0, request@^2.88.0: require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== + resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve@^1.22.0: @@ -2891,7 +2872,7 @@ resolve@^1.22.0: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -2899,7 +2880,7 @@ restore-cursor@^3.1.0: reusify@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rimraf@^3.0.2: @@ -2911,12 +2892,12 @@ rimraf@^3.0.2: run-async@^2.4.0: version "2.4.1" - resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" @@ -2930,12 +2911,12 @@ rxjs@^6.6.6: safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: @@ -2958,7 +2939,7 @@ sax@>=0.1.1, sax@>=0.6.0: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -semver@7.3.7: +semver@7.3.7, semver@^7.2.1, semver@^7.3.5: version "7.3.7" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== @@ -2975,13 +2956,6 @@ semver@^6.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.2.1, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" - set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -2989,14 +2963,14 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shimmer@^1.2.0: @@ -3005,18 +2979,18 @@ shimmer@^1.2.0: integrity sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw== signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.5" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz" - integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ== + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-concat@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== simple-get@^3.0.3: version "3.1.1" - resolved "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-3.1.1.tgz#cc7ba77cfbe761036fbfce3d021af25fc5584d55" integrity sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA== dependencies: decompress-response "^4.2.0" @@ -3025,12 +2999,12 @@ simple-get@^3.0.3: slash@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== slice-ansi@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: ansi-styles "^4.0.0" @@ -3039,7 +3013,7 @@ slice-ansi@^4.0.0: source-map@~0.6.1: version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== spark-md5@3.0.1: @@ -3049,20 +3023,20 @@ spark-md5@3.0.1: spark-md5@3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/spark-md5/-/spark-md5-3.0.2.tgz#7952c4a30784347abcee73268e473b9c0167e3fc" integrity sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw== split2@^2.1.0: version "2.2.0" - resolved "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== dependencies: through2 "^2.0.2" sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== sshpk@^1.7.0: version "1.17.0" @@ -3091,8 +3065,8 @@ step@0.0.x: stream-meter@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/stream-meter/-/stream-meter-1.0.4.tgz" - integrity sha1-Uq+Vql6nYKJJFxZwTb/5D3Ov3R0= + resolved "https://registry.yarnpkg.com/stream-meter/-/stream-meter-1.0.4.tgz#52af95aa5ea760a2491716704dbff90f73afdd1d" + integrity sha512-4sOEtrbgFotXwnEuzzsQBYEV1elAeFSO8rSGeTwabuX1RRn/kEq9JVH7I0MRBhKVRR0sJkr0M0QCH7yOLf9fhQ== dependencies: readable-stream "^2.1.4" @@ -3108,8 +3082,8 @@ string-template@~1.0.0: string-width@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" @@ -3117,7 +3091,7 @@ string-width@^1.0.1: "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -3126,57 +3100,57 @@ string-width@^1.0.1: string_decoder@^1.1.1: version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" string_decoder@~0.10.x: version "0.10.31" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" @@ -3197,9 +3171,9 @@ table-layout@^1.0.2: wordwrapjs "^4.0.0" table@^6.0.9: - version "6.7.3" - resolved "https://registry.npmjs.org/table/-/table-6.7.3.tgz" - integrity sha512-5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw== + version "6.8.0" + resolved "https://registry.yarnpkg.com/table/-/table-6.8.0.tgz#87e28f14fa4321c3377ba286f07b79b281a3b3ca" + integrity sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA== dependencies: ajv "^8.0.1" lodash.truncate "^4.4.2" @@ -3219,7 +3193,7 @@ tar-fs@2.1.1, tar-fs@^2.0.0, tar-fs@^2.1.1: tar-stream@^2.1.4: version "2.2.0" - resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== dependencies: bl "^4.0.3" @@ -3242,12 +3216,12 @@ tar@6.1.11, tar@^6.1.11: text-table@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== through2@3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== dependencies: inherits "^2.0.4" @@ -3255,7 +3229,7 @@ through2@3.0.2: through2@^2.0.0, through2@^2.0.1, through2@^2.0.2, through2@^2.0.3: version "2.0.5" - resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: readable-stream "~2.3.6" @@ -3263,36 +3237,37 @@ through2@^2.0.0, through2@^2.0.1, through2@^2.0.2, through2@^2.0.3: through@^2.3.6: version "2.3.8" - resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== tmp@^0.0.33: version "0.0.33" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" "tough-cookie@^2.3.3 || ^3.0.1 || ^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + version "4.1.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" + integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== dependencies: psl "^1.1.33" punycode "^2.1.1" - universalify "^0.1.2" + universalify "^0.2.0" + url-parse "^1.5.3" tough-cookie@~2.5.0: version "2.5.0" @@ -3304,8 +3279,8 @@ tough-cookie@~2.5.0: tr46@~0.0.3: version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== tslib@^1.9.0: version "1.14.1" @@ -3314,8 +3289,8 @@ tslib@^1.9.0: tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" @@ -3326,26 +3301,26 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-check@~0.3.2: version "0.3.2" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== dependencies: prelude-ls "~1.1.2" type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== typical@^4.0.0: @@ -3368,14 +3343,14 @@ uid2@0.0.x: resolved "https://registry.yarnpkg.com/uid2/-/uid2-0.0.4.tgz#033f3b1d5d32505f5ce5f888b9f3b667123c0a44" integrity sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA== -universalify@^0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== universalify@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== untildify@^4.0.0: @@ -3385,11 +3360,19 @@ untildify@^4.0.0: uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + url@0.10.3: version "0.10.3" resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" @@ -3400,8 +3383,8 @@ url@0.10.3: util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== utils-merge@1.x.x: version "1.0.1" @@ -3420,7 +3403,7 @@ uuid@8.1.0: uuid@8.3.2, uuid@^8.3.2: version "8.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== uuid@^3.3.2: @@ -3430,7 +3413,7 @@ uuid@^3.3.2: v8-compile-cache@^2.0.3: version "2.3.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== verror@1.10.0: @@ -3444,7 +3427,7 @@ verror@1.10.0: vuvuzela@1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/vuvuzela/-/vuvuzela-1.0.3.tgz#3be145e58271c73ca55279dd851f12a682114b0b" integrity sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ== webfinger@^0.4.2: @@ -3457,20 +3440,20 @@ webfinger@^0.4.2: webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" which@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" @@ -3484,7 +3467,7 @@ wide-align@^1.1.0, wide-align@^1.1.2: word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" - resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wordwrapjs@^4.0.0: @@ -3497,7 +3480,7 @@ wordwrapjs@^4.0.0: wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -3506,12 +3489,12 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-stream@~0.4.3: version "0.4.3" - resolved "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz" + resolved "https://registry.yarnpkg.com/write-stream/-/write-stream-0.4.3.tgz#83cc8c0347d0af6057a93862b4e3ae01de5c81c1" integrity sha512-IJrvkhbAnj89W/GAVdVgbnPiVw5Ntg/B4tc/MUCIEwj/g6JIww1DWJyB/yBMT3yw2/TkT6IUZ0+IYef3flEw8A== dependencies: readable-stream "~0.0.2" @@ -3538,27 +3521,27 @@ xmlbuilder@~9.0.1: xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: version "4.0.2" - resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yargs-parser@^20.2.2: version "20.2.9" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs@^16.1.0, yargs@^16.2.0: version "16.2.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" From b20f6b3d33b52aad8d0b3bae229025a7213844f9 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Fri, 2 Sep 2022 19:52:52 +0100 Subject: [PATCH 092/162] Remove further usages of plugin versions --- .../_components/settings/ComponentSettingsPanel.svelte | 2 +- packages/client/src/stores/components.js | 2 +- packages/server/src/api/controllers/component.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsPanel.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsPanel.svelte index 8ece061f57..688d7c5db9 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsPanel.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/settings/ComponentSettingsPanel.svelte @@ -28,7 +28,7 @@ {#if $selectedComponent} {#key $selectedComponent._id} - + { if (!Component || !schema?.schema?.name) { return } - const component = `plugin/${schema.schema.name}/${version}` + const component = `plugin/${schema.schema.name}` store.update(state => { state.customComponentManifest[component] = { Component, diff --git a/packages/server/src/api/controllers/component.js b/packages/server/src/api/controllers/component.js index 601f39db34..a0db34c9b8 100644 --- a/packages/server/src/api/controllers/component.js +++ b/packages/server/src/api/controllers/component.js @@ -46,7 +46,7 @@ exports.fetchAppComponentDefinitions = async function (ctx) { .map(row => row.doc) .filter(plugin => plugin.schema.type === "component") .forEach(plugin => { - const fullComponentName = `plugin/${plugin.name}/${plugin.version}` + const fullComponentName = `plugin/${plugin.name}` definitions[fullComponentName] = { component: fullComponentName, ...plugin.schema.schema, From 7ccfe189f21639947b7e09d5d8e01b9e87575115 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 2 Sep 2022 19:59:19 +0100 Subject: [PATCH 093/162] Fixing test case. --- .../server/src/api/routes/tests/query.spec.js | 33 +++++-------------- 1 file changed, 8 insertions(+), 25 deletions(-) diff --git a/packages/server/src/api/routes/tests/query.spec.js b/packages/server/src/api/routes/tests/query.spec.js index 45f69de5e9..a5a18ce391 100644 --- a/packages/server/src/api/routes/tests/query.spec.js +++ b/packages/server/src/api/routes/tests/query.spec.js @@ -231,20 +231,6 @@ describe("/queries", () => { url: `/api/queries/preview`, }) }) - - it("should fail with invalid integration type", async () => { - const { datasource } = await createInvalidIntegration() - await request - .post(`/api/queries/preview`) - .send({ - datasourceId: datasource._id, - parameters: {}, - fields: {}, - queryVerb: "read", - }) - .set(config.defaultHeaders()) - .expect(400) - }) }) describe("execute", () => { @@ -261,17 +247,14 @@ describe("/queries", () => { }) it("should fail with invalid integration type", async () => { - const { query, datasource } = await createInvalidIntegration() - await request - .post(`/api/queries/${query._id}`) - .send({ - datasourceId: datasource._id, - parameters: {}, - fields: {}, - queryVerb: "read", - }) - .set(config.defaultHeaders()) - .expect(400) + let error + try { + await createInvalidIntegration() + } catch (err) { + error = err + } + expect(error).toBeDefined() + expect(error.message).toBe("No datasource implementation found.") }) }) From 6f8f76a76420f70ed3f365909daa6b3427eac46f Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 18:59:39 +0000 Subject: [PATCH 094/162] v1.3.3 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 2 +- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lerna.json b/lerna.json index bc316f6990..1601047fab 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.2", + "version": "1.3.3", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index e27f5b5218..d0a283b6c3 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.2", + "version": "1.3.3", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.2", + "@budibase/types": "^1.3.3", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 7142a08f71..1af78bb1af 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": "1.3.2", + "version": "1.3.3", "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": "^1.3.2", + "@budibase/string-templates": "^1.3.3", "@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 9c7ff37215..d36966dd1a 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.2", + "version": "1.3.3", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.2", - "@budibase/client": "^1.3.2", - "@budibase/frontend-core": "^1.3.2", - "@budibase/string-templates": "^1.3.2", + "@budibase/bbui": "^1.3.3", + "@budibase/client": "^1.3.3", + "@budibase/frontend-core": "^1.3.3", + "@budibase/string-templates": "^1.3.3", "@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 e9eb004a6b..18d53bebf6 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.2", + "version": "1.3.3", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 94b25d154b..a3d1178c0e 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.2", + "version": "1.3.3", "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": "^1.3.2", - "@budibase/frontend-core": "^1.3.2", - "@budibase/string-templates": "^1.3.2", + "@budibase/bbui": "^1.3.3", + "@budibase/frontend-core": "^1.3.3", + "@budibase/string-templates": "^1.3.3", "@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 7b11ea7207..cbcf83561f 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.2", + "version": "1.3.3", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.2", + "@budibase/bbui": "^1.3.3", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index a5fc2f23ae..54439cb618 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.2", + "version": "1.3.3", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.2", - "@budibase/client": "^1.3.2", + "@budibase/backend-core": "^1.3.3", + "@budibase/client": "^1.3.3", "@budibase/pro": "1.3.2", - "@budibase/string-templates": "^1.3.2", - "@budibase/types": "^1.3.2", + "@budibase/string-templates": "^1.3.3", + "@budibase/types": "^1.3.3", "@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 fe1b57de65..d3543f1f2a 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.2", + "version": "1.3.3", "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 8a8d76954e..7f91d4118b 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.2", + "version": "1.3.3", "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 409d24211e..5e95759816 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.2", + "version": "1.3.3", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.2", + "@budibase/backend-core": "^1.3.3", "@budibase/pro": "1.3.2", - "@budibase/string-templates": "^1.3.2", - "@budibase/types": "^1.3.2", + "@budibase/string-templates": "^1.3.3", + "@budibase/types": "^1.3.3", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 1c676a62a97768d1b9e72868e76c4fa37d6f8a9a Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 19:03:06 +0000 Subject: [PATCH 095/162] Update pro version to 1.3.3 --- 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 54439cb618..ed696ce90c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.3", "@budibase/client": "^1.3.3", - "@budibase/pro": "1.3.2", + "@budibase/pro": "1.3.3", "@budibase/string-templates": "^1.3.3", "@budibase/types": "^1.3.3", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 4f683d03f0..f8a834c070 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.2.tgz#91e61915b8ab1938afea4a6fe5fc9806e6c75e16" - integrity sha512-3keFjRzmRhjwhMaUxLzUF4Osqwxe0ip3USS+hbP5P1kxFtydmCXSCiUovef2JhvjfkCI3JhDOUb/TUDTF6Tc1g== +"@budibase/backend-core@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" + integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== dependencies: - "@budibase/types" "^1.3.2" + "@budibase/types" "^1.3.3" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.2.tgz#6d2fb2f09ff72824e9a72357ed22a993e5e8fbee" - integrity sha512-Is9SA0R/vFTWTMwRCg7TAWK/VW/Ww2zdDrtWwFY6W8uIi8wdv0ca+UUg6L3BgeWcO8Nd79P+8sAyHOe1EnfgCg== +"@budibase/pro@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" + integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== dependencies: - "@budibase/backend-core" "1.3.2" - "@budibase/types" "1.3.2" + "@budibase/backend-core" "1.3.3" + "@budibase/types" "1.3.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.2", "@budibase/types@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.2.tgz#64b2f3fc6474eecbfb7eb14f209b46c1f828a782" - integrity sha512-IBbfUvk163KZvThsyyDp2W6nlTQnCq4qx2vsO9kxz/pYHe12axYfkQD53w/hc4ZID5F0iA8/oNb3S6gAJjGQfA== +"@budibase/types@1.3.3", "@budibase/types@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" + integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 5e95759816..563693bf39 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.3", - "@budibase/pro": "1.3.2", + "@budibase/pro": "1.3.3", "@budibase/string-templates": "^1.3.3", "@budibase/types": "^1.3.3", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 3a870a6e98..e278668c1b 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.2.tgz#91e61915b8ab1938afea4a6fe5fc9806e6c75e16" - integrity sha512-3keFjRzmRhjwhMaUxLzUF4Osqwxe0ip3USS+hbP5P1kxFtydmCXSCiUovef2JhvjfkCI3JhDOUb/TUDTF6Tc1g== +"@budibase/backend-core@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" + integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== dependencies: - "@budibase/types" "^1.3.2" + "@budibase/types" "^1.3.3" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.2.tgz#6d2fb2f09ff72824e9a72357ed22a993e5e8fbee" - integrity sha512-Is9SA0R/vFTWTMwRCg7TAWK/VW/Ww2zdDrtWwFY6W8uIi8wdv0ca+UUg6L3BgeWcO8Nd79P+8sAyHOe1EnfgCg== +"@budibase/pro@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" + integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== dependencies: - "@budibase/backend-core" "1.3.2" - "@budibase/types" "1.3.2" + "@budibase/backend-core" "1.3.3" + "@budibase/types" "1.3.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.2", "@budibase/types@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.2.tgz#64b2f3fc6474eecbfb7eb14f209b46c1f828a782" - integrity sha512-IBbfUvk163KZvThsyyDp2W6nlTQnCq4qx2vsO9kxz/pYHe12axYfkQD53w/hc4ZID5F0iA8/oNb3S6gAJjGQfA== +"@budibase/types@1.3.3", "@budibase/types@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" + integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 8046ed40f4ad43a251ea1d0e6cf2b32db0644eb6 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Fri, 2 Sep 2022 20:04:38 +0100 Subject: [PATCH 096/162] Fixing CLI version of backend-core. --- packages/cli/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index 18d53bebf6..d9679f7e2c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.2.58-alpha.7", + "@budibase/backend-core": "^1.3.3", "axios": "0.21.2", "chalk": "4.1.0", "cli-progress": "3.11.2", From c96ba7b291455b6956dce5fa43eeb9d02e45c27e Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 2 Sep 2022 19:23:41 +0000 Subject: [PATCH 097/162] v1.3.4-alpha.0 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 1601047fab..2c00056102 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.3", + "version": "1.3.4-alpha.0", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index d0a283b6c3..098ba87298 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.3", + "@budibase/types": "1.3.4-alpha.0", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 1af78bb1af..9602a4f464 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": "1.3.3", + "version": "1.3.4-alpha.0", "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": "^1.3.3", + "@budibase/string-templates": "1.3.4-alpha.0", "@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 d36966dd1a..d638331f62 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.3", - "@budibase/client": "^1.3.3", - "@budibase/frontend-core": "^1.3.3", - "@budibase/string-templates": "^1.3.3", + "@budibase/bbui": "1.3.4-alpha.0", + "@budibase/client": "1.3.4-alpha.0", + "@budibase/frontend-core": "1.3.4-alpha.0", + "@budibase/string-templates": "1.3.4-alpha.0", "@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 d9679f7e2c..72b1ed90c6 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.3", + "@budibase/backend-core": "1.3.4-alpha.0", "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 a3d1178c0e..4f5c5a0552 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "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": "^1.3.3", - "@budibase/frontend-core": "^1.3.3", - "@budibase/string-templates": "^1.3.3", + "@budibase/bbui": "1.3.4-alpha.0", + "@budibase/frontend-core": "1.3.4-alpha.0", + "@budibase/string-templates": "1.3.4-alpha.0", "@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 cbcf83561f..91c6f1807f 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.3", + "@budibase/bbui": "1.3.4-alpha.0", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index ed696ce90c..9c15c3ba40 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.3", - "@budibase/client": "^1.3.3", + "@budibase/backend-core": "1.3.4-alpha.0", + "@budibase/client": "1.3.4-alpha.0", "@budibase/pro": "1.3.3", - "@budibase/string-templates": "^1.3.3", - "@budibase/types": "^1.3.3", + "@budibase/string-templates": "1.3.4-alpha.0", + "@budibase/types": "1.3.4-alpha.0", "@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 d3543f1f2a..2d5a300586 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "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 7f91d4118b..1b6b12e87d 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "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 563693bf39..f4317d6edc 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.3", + "version": "1.3.4-alpha.0", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.3", + "@budibase/backend-core": "1.3.4-alpha.0", "@budibase/pro": "1.3.3", - "@budibase/string-templates": "^1.3.3", - "@budibase/types": "^1.3.3", + "@budibase/string-templates": "1.3.4-alpha.0", + "@budibase/types": "1.3.4-alpha.0", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From a7e451815320f0a646f1276b60c589e3a6be1116 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 19:25:19 +0000 Subject: [PATCH 098/162] v1.3.4 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 1601047fab..bffcb4a06c 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.3", + "version": "1.3.4", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index d0a283b6c3..a338fc950d 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.3", + "version": "1.3.4", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.3", + "@budibase/types": "^1.3.4", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 1af78bb1af..68aaf95155 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": "1.3.3", + "version": "1.3.4", "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": "^1.3.3", + "@budibase/string-templates": "^1.3.4", "@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 d36966dd1a..046fbda883 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.3", + "version": "1.3.4", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.3", - "@budibase/client": "^1.3.3", - "@budibase/frontend-core": "^1.3.3", - "@budibase/string-templates": "^1.3.3", + "@budibase/bbui": "^1.3.4", + "@budibase/client": "^1.3.4", + "@budibase/frontend-core": "^1.3.4", + "@budibase/string-templates": "^1.3.4", "@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 d9679f7e2c..8a8962820f 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.3", + "version": "1.3.4", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.3", + "@budibase/backend-core": "^1.3.4", "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 a3d1178c0e..317f84b1c5 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.3", + "version": "1.3.4", "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": "^1.3.3", - "@budibase/frontend-core": "^1.3.3", - "@budibase/string-templates": "^1.3.3", + "@budibase/bbui": "^1.3.4", + "@budibase/frontend-core": "^1.3.4", + "@budibase/string-templates": "^1.3.4", "@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 cbcf83561f..2b268900bf 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.3", + "version": "1.3.4", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.3", + "@budibase/bbui": "^1.3.4", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index ed696ce90c..828898a073 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.3", + "version": "1.3.4", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.3", - "@budibase/client": "^1.3.3", + "@budibase/backend-core": "^1.3.4", + "@budibase/client": "^1.3.4", "@budibase/pro": "1.3.3", - "@budibase/string-templates": "^1.3.3", - "@budibase/types": "^1.3.3", + "@budibase/string-templates": "^1.3.4", + "@budibase/types": "^1.3.4", "@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 d3543f1f2a..28d68cdd09 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.3", + "version": "1.3.4", "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 7f91d4118b..920c394d0d 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.3", + "version": "1.3.4", "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 563693bf39..ab9d4da20b 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.3", + "version": "1.3.4", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.3", + "@budibase/backend-core": "^1.3.4", "@budibase/pro": "1.3.3", - "@budibase/string-templates": "^1.3.3", - "@budibase/types": "^1.3.3", + "@budibase/string-templates": "^1.3.4", + "@budibase/types": "^1.3.4", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 209be2af9e3c13870acbe6f5e97152f464589134 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Fri, 2 Sep 2022 19:26:39 +0000 Subject: [PATCH 099/162] Update pro version to 1.3.4-alpha.0 --- 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 9c15c3ba40..87391f472a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.4-alpha.0", "@budibase/client": "1.3.4-alpha.0", - "@budibase/pro": "1.3.3", + "@budibase/pro": "1.3.4-alpha.0", "@budibase/string-templates": "1.3.4-alpha.0", "@budibase/types": "1.3.4-alpha.0", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index f8a834c070..15bb54baab 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" - integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== +"@budibase/backend-core@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.0.tgz#630120bbbbeda7e13edc2d3ef878088d64fbdba5" + integrity sha512-LzAnOM06f0nDY76bgLjQuL2ChSOdhLg1zLPnwK07OEfQ9w8ZkkhNwJC/7/FAnnNEMypnKezrxXfhqee341JPZA== dependencies: - "@budibase/types" "^1.3.3" + "@budibase/types" "1.3.4-alpha.0" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" - integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== +"@budibase/pro@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.0.tgz#37af17330c85131be1d2fe3cb5ef9c15bb46ab0a" + integrity sha512-2hM/wXP2UrG52tlnoABdSnEMlk2edEjZF+FdYJGmJWGPkXhfI5sWV6B9a0+v9lH/xazj7Pv0XKdfe/IpfapLyQ== dependencies: - "@budibase/backend-core" "1.3.3" - "@budibase/types" "1.3.3" + "@budibase/backend-core" "1.3.4-alpha.0" + "@budibase/types" "1.3.4-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.3", "@budibase/types@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" - integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== +"@budibase/types@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.0.tgz#954a99cb10e564d8a28e789eced870f7602f092b" + integrity sha512-SXJ3kMBpsIVzXqux3z5X/L4IM5QhhrGNcS03k8pKpfqr5yoDwH+P5S2rAc0qZ7YgqlTBP9TVfzaJntWAc9YtQQ== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index f4317d6edc..cd3d783f58 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.4-alpha.0", - "@budibase/pro": "1.3.3", + "@budibase/pro": "1.3.4-alpha.0", "@budibase/string-templates": "1.3.4-alpha.0", "@budibase/types": "1.3.4-alpha.0", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index e278668c1b..e8b842ac72 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" - integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== +"@budibase/backend-core@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.0.tgz#630120bbbbeda7e13edc2d3ef878088d64fbdba5" + integrity sha512-LzAnOM06f0nDY76bgLjQuL2ChSOdhLg1zLPnwK07OEfQ9w8ZkkhNwJC/7/FAnnNEMypnKezrxXfhqee341JPZA== dependencies: - "@budibase/types" "^1.3.3" + "@budibase/types" "1.3.4-alpha.0" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" - integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== +"@budibase/pro@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.0.tgz#37af17330c85131be1d2fe3cb5ef9c15bb46ab0a" + integrity sha512-2hM/wXP2UrG52tlnoABdSnEMlk2edEjZF+FdYJGmJWGPkXhfI5sWV6B9a0+v9lH/xazj7Pv0XKdfe/IpfapLyQ== dependencies: - "@budibase/backend-core" "1.3.3" - "@budibase/types" "1.3.3" + "@budibase/backend-core" "1.3.4-alpha.0" + "@budibase/types" "1.3.4-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.3", "@budibase/types@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" - integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== +"@budibase/types@1.3.4-alpha.0": + version "1.3.4-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.0.tgz#954a99cb10e564d8a28e789eced870f7602f092b" + integrity sha512-SXJ3kMBpsIVzXqux3z5X/L4IM5QhhrGNcS03k8pKpfqr5yoDwH+P5S2rAc0qZ7YgqlTBP9TVfzaJntWAc9YtQQ== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 08b351e6e4b2ac1d6dffeb9b13bc696f1f41df04 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 2 Sep 2022 19:28:31 +0000 Subject: [PATCH 100/162] Update pro version to 1.3.4 --- 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 828898a073..a104c56c9c 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.4", "@budibase/client": "^1.3.4", - "@budibase/pro": "1.3.3", + "@budibase/pro": "1.3.4", "@budibase/string-templates": "^1.3.4", "@budibase/types": "^1.3.4", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index f8a834c070..bd258ea6d6 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" - integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== +"@budibase/backend-core@1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4.tgz#91de405d2eff963cabe58b286b73711239ffea52" + integrity sha512-csKHVM9H+7s26k0h+kQm1u6qz7A5/TgOUCSyuysR9aUak5rb5klC2/84AUlpRS4RJWQ37/X0QpovbrakAdXzsw== dependencies: - "@budibase/types" "^1.3.3" + "@budibase/types" "^1.3.4" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" - integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== +"@budibase/pro@1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4.tgz#f21c23dcac5dce23d33fb09bc769447a960fc481" + integrity sha512-jOMRYu+7R8Dpn2l1BdwiaXkxQZb78jFEZIF2XJYUBSjKscgAZGgU+OyYYozRWQip563hTU3eZcqAtQKgfchEZg== dependencies: - "@budibase/backend-core" "1.3.3" - "@budibase/types" "1.3.3" + "@budibase/backend-core" "1.3.4" + "@budibase/types" "1.3.4" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.3", "@budibase/types@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" - integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== +"@budibase/types@1.3.4", "@budibase/types@^1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4.tgz#25f087b024e843eb372e50c81f8f925fb39f1dfd" + integrity sha512-ndyWs8yeCS7cpZjApDB1HhY6UUM2SRBUgAMCZOZaWABG9JHeCbx7x0e/pA2SZjswdMXqS5WmnEd3br5wuvUzJw== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index ab9d4da20b..0c89053da1 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.4", - "@budibase/pro": "1.3.3", + "@budibase/pro": "1.3.4", "@budibase/string-templates": "^1.3.4", "@budibase/types": "^1.3.4", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index e278668c1b..e7e258efe6 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.3.tgz#092f5be5277048efd7719a2b0eb995485f6cc446" - integrity sha512-nl2RPKNIMSfDEcj8i09iIbnPzkz9wcLLUvWgK1VXoRt4aI7r6a/OBucCv3+QtbJP5hfG7BJ4ThcunLgttP1IrA== +"@budibase/backend-core@1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4.tgz#91de405d2eff963cabe58b286b73711239ffea52" + integrity sha512-csKHVM9H+7s26k0h+kQm1u6qz7A5/TgOUCSyuysR9aUak5rb5klC2/84AUlpRS4RJWQ37/X0QpovbrakAdXzsw== dependencies: - "@budibase/types" "^1.3.3" + "@budibase/types" "^1.3.4" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.3.tgz#90068258b902b5151633636c0a1131d3e5e3bb01" - integrity sha512-SWbvsS1Ebz5KIgK07YuLR+hWtk0jXUP6rm6koyWebOVJSEudiWUyj839XJzVZxdJsvx9mJIorlHT1aDo0nZCRw== +"@budibase/pro@1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4.tgz#f21c23dcac5dce23d33fb09bc769447a960fc481" + integrity sha512-jOMRYu+7R8Dpn2l1BdwiaXkxQZb78jFEZIF2XJYUBSjKscgAZGgU+OyYYozRWQip563hTU3eZcqAtQKgfchEZg== dependencies: - "@budibase/backend-core" "1.3.3" - "@budibase/types" "1.3.3" + "@budibase/backend-core" "1.3.4" + "@budibase/types" "1.3.4" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.3", "@budibase/types@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.3.tgz#4a0d7e3e50e864aca4fc8c1ef6cc2299e6a68448" - integrity sha512-/Q6iDDSBp002wvkx2wuGcV6hC7/0fRdHApNujOf9QPNdKadO4e1l5BDe3wEvPKrZj0InVnfO48ONDIM864R5ew== +"@budibase/types@1.3.4", "@budibase/types@^1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4.tgz#25f087b024e843eb372e50c81f8f925fb39f1dfd" + integrity sha512-ndyWs8yeCS7cpZjApDB1HhY6UUM2SRBUgAMCZOZaWABG9JHeCbx7x0e/pA2SZjswdMXqS5WmnEd3br5wuvUzJw== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 7eb9cc470bf89081ffe99361009c0de00ca9d545 Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Mon, 5 Sep 2022 09:09:43 +0100 Subject: [PATCH 101/162] Configurable api rate limit through nginx --- hosting/docker-compose.yaml | 1 + hosting/nginx.prod.conf.hbs | 2 +- hosting/proxy/Dockerfile | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hosting/docker-compose.yaml b/hosting/docker-compose.yaml index 7d3e6960dc..c55ca34547 100644 --- a/hosting/docker-compose.yaml +++ b/hosting/docker-compose.yaml @@ -78,6 +78,7 @@ services: image: budibase/proxy environment: - PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 + - PROXY_RATE_LIMIT_API_PER_SECOND=20 depends_on: - minio-service - worker-service diff --git a/hosting/nginx.prod.conf.hbs b/hosting/nginx.prod.conf.hbs index 3c0e34387d..430f452d7f 100644 --- a/hosting/nginx.prod.conf.hbs +++ b/hosting/nginx.prod.conf.hbs @@ -11,7 +11,7 @@ events { http { # rate limiting limit_req_status 429; - limit_req_zone $binary_remote_addr zone=ratelimit:10m rate=20r/s; + limit_req_zone $binary_remote_addr zone=ratelimit:10m rate=${PROXY_RATE_LIMIT_API_PER_SECOND}r/s; limit_req_zone $binary_remote_addr zone=webhooks:10m rate=${PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND}r/s; include /etc/nginx/mime.types; diff --git a/hosting/proxy/Dockerfile b/hosting/proxy/Dockerfile index d9b33e3e9a..298762aaf1 100644 --- a/hosting/proxy/Dockerfile +++ b/hosting/proxy/Dockerfile @@ -10,4 +10,5 @@ COPY .generated-nginx.prod.conf /etc/nginx/templates/nginx.conf.template COPY error.html /usr/share/nginx/html/error.html # Default environment -ENV PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 \ No newline at end of file +ENV PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 +ENV PROXY_RATE_LIMIT_API_PER_SECOND=20 \ No newline at end of file From bc1586761d4f5173b5e1f80abba64c8b61151ef0 Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Mon, 5 Sep 2022 09:46:54 +0100 Subject: [PATCH 102/162] Fix auto user creation for OIDC auth --- packages/worker/src/sdk/users/users.ts | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/packages/worker/src/sdk/users/users.ts b/packages/worker/src/sdk/users/users.ts index 0ea16bf670..a8944b936a 100644 --- a/packages/worker/src/sdk/users/users.ts +++ b/packages/worker/src/sdk/users/users.ts @@ -189,23 +189,34 @@ export const save = async ( const tenantId = tenancy.getTenantId() const db = tenancy.getGlobalDB() let { email, _id } = user + if (!email && !_id) { + throw new Error("_id or email is required") + } let dbUser: User | undefined if (_id) { // try to get existing user from db - dbUser = (await db.get(_id)) as User - if (email && dbUser.email !== email) { - throw "Email address cannot be changed" + try { + dbUser = (await db.get(_id)) as User + if (email && dbUser.email !== email) { + throw "Email address cannot be changed" + } + email = dbUser.email + } catch (e: any) { + if (e.status === 404) { + // do nothing, save this new user with the id specified - required for SSO auth + } else { + throw e + } } - email = dbUser.email - } else if (email) { + } + + if (!dbUser && email) { // no id was specified - load from email instead dbUser = await usersCore.getGlobalUserByEmail(email) if (dbUser && dbUser._id !== _id) { throw `Unavailable` } - } else { - throw new Error("_id or email is required") } await validateUniqueUser(email, tenantId) From c03ac3f23243c544e5cd50950df19680609bfa04 Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Mon, 5 Sep 2022 09:09:43 +0100 Subject: [PATCH 103/162] Configurable api rate limit through nginx --- hosting/docker-compose.yaml | 1 + hosting/nginx.prod.conf.hbs | 2 +- hosting/proxy/Dockerfile | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hosting/docker-compose.yaml b/hosting/docker-compose.yaml index 7d3e6960dc..c55ca34547 100644 --- a/hosting/docker-compose.yaml +++ b/hosting/docker-compose.yaml @@ -78,6 +78,7 @@ services: image: budibase/proxy environment: - PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 + - PROXY_RATE_LIMIT_API_PER_SECOND=20 depends_on: - minio-service - worker-service diff --git a/hosting/nginx.prod.conf.hbs b/hosting/nginx.prod.conf.hbs index 5ecea67c42..0ff986d0a7 100644 --- a/hosting/nginx.prod.conf.hbs +++ b/hosting/nginx.prod.conf.hbs @@ -11,7 +11,7 @@ events { http { # rate limiting limit_req_status 429; - limit_req_zone $binary_remote_addr zone=ratelimit:10m rate=20r/s; + limit_req_zone $binary_remote_addr zone=ratelimit:10m rate=${PROXY_RATE_LIMIT_API_PER_SECOND}r/s; limit_req_zone $binary_remote_addr zone=webhooks:10m rate=${PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND}r/s; include /etc/nginx/mime.types; diff --git a/hosting/proxy/Dockerfile b/hosting/proxy/Dockerfile index d9b33e3e9a..298762aaf1 100644 --- a/hosting/proxy/Dockerfile +++ b/hosting/proxy/Dockerfile @@ -10,4 +10,5 @@ COPY .generated-nginx.prod.conf /etc/nginx/templates/nginx.conf.template COPY error.html /usr/share/nginx/html/error.html # Default environment -ENV PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 \ No newline at end of file +ENV PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10 +ENV PROXY_RATE_LIMIT_API_PER_SECOND=20 \ No newline at end of file From e3ac6893b3d1b008fb89373c1b8759475f22aabd Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 10:40:03 +0000 Subject: [PATCH 104/162] v1.3.5 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index bffcb4a06c..9e1ede8e2d 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.4", + "version": "1.3.5", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index a338fc950d..6e5e8ab92a 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.4", + "version": "1.3.5", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.4", + "@budibase/types": "^1.3.5", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 68aaf95155..b5a4e35683 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": "1.3.4", + "version": "1.3.5", "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": "^1.3.4", + "@budibase/string-templates": "^1.3.5", "@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 046fbda883..007d8aae6b 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.4", + "version": "1.3.5", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.4", - "@budibase/client": "^1.3.4", - "@budibase/frontend-core": "^1.3.4", - "@budibase/string-templates": "^1.3.4", + "@budibase/bbui": "^1.3.5", + "@budibase/client": "^1.3.5", + "@budibase/frontend-core": "^1.3.5", + "@budibase/string-templates": "^1.3.5", "@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 8a8962820f..a86c0b04f9 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.4", + "version": "1.3.5", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.4", + "@budibase/backend-core": "^1.3.5", "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 317f84b1c5..5f930aee94 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.4", + "version": "1.3.5", "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": "^1.3.4", - "@budibase/frontend-core": "^1.3.4", - "@budibase/string-templates": "^1.3.4", + "@budibase/bbui": "^1.3.5", + "@budibase/frontend-core": "^1.3.5", + "@budibase/string-templates": "^1.3.5", "@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 2b268900bf..65729b54ed 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.4", + "version": "1.3.5", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.4", + "@budibase/bbui": "^1.3.5", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index a104c56c9c..06fc5dd0be 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.4", + "version": "1.3.5", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.4", - "@budibase/client": "^1.3.4", + "@budibase/backend-core": "^1.3.5", + "@budibase/client": "^1.3.5", "@budibase/pro": "1.3.4", - "@budibase/string-templates": "^1.3.4", - "@budibase/types": "^1.3.4", + "@budibase/string-templates": "^1.3.5", + "@budibase/types": "^1.3.5", "@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 28d68cdd09..126ad55d19 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.4", + "version": "1.3.5", "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 920c394d0d..38c8754f91 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.4", + "version": "1.3.5", "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 0c89053da1..869e296438 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.4", + "version": "1.3.5", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.4", + "@budibase/backend-core": "^1.3.5", "@budibase/pro": "1.3.4", - "@budibase/string-templates": "^1.3.4", - "@budibase/types": "^1.3.4", + "@budibase/string-templates": "^1.3.5", + "@budibase/types": "^1.3.5", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From e8e4d605e956d9c764460f0f305c1ee9a63dd2b7 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 10:43:12 +0000 Subject: [PATCH 105/162] Update pro version to 1.3.5 --- 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 06fc5dd0be..6dbb7e0d5b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.5", "@budibase/client": "^1.3.5", - "@budibase/pro": "1.3.4", + "@budibase/pro": "1.3.5", "@budibase/string-templates": "^1.3.5", "@budibase/types": "^1.3.5", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index bd258ea6d6..38754c99e4 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4.tgz#91de405d2eff963cabe58b286b73711239ffea52" - integrity sha512-csKHVM9H+7s26k0h+kQm1u6qz7A5/TgOUCSyuysR9aUak5rb5klC2/84AUlpRS4RJWQ37/X0QpovbrakAdXzsw== +"@budibase/backend-core@1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.5.tgz#67f437bfe19f7c8db03f2d64a78be561cd827df5" + integrity sha512-hhEIb1rTOQxE3aj6O2UqklHWd0dcGUBdeoNJrtmWmwSUkqjk+WBZ9WZgzeVUUtSgTUFCjMe7aup6QV+NpEteWg== dependencies: - "@budibase/types" "^1.3.4" + "@budibase/types" "^1.3.5" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4.tgz#f21c23dcac5dce23d33fb09bc769447a960fc481" - integrity sha512-jOMRYu+7R8Dpn2l1BdwiaXkxQZb78jFEZIF2XJYUBSjKscgAZGgU+OyYYozRWQip563hTU3eZcqAtQKgfchEZg== +"@budibase/pro@1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.5.tgz#e828f5f5bbb8db69388df32fa6e7fb4de999a49b" + integrity sha512-3Pn1IW6R6DZ9J+6n2R/F0m357vjrnm/lonXpb6JcpWwSPLI5KtPIVSrKQaRxsSqc76355HSCoryGKorQIRq2Lg== dependencies: - "@budibase/backend-core" "1.3.4" - "@budibase/types" "1.3.4" + "@budibase/backend-core" "1.3.5" + "@budibase/types" "1.3.5" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.4", "@budibase/types@^1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4.tgz#25f087b024e843eb372e50c81f8f925fb39f1dfd" - integrity sha512-ndyWs8yeCS7cpZjApDB1HhY6UUM2SRBUgAMCZOZaWABG9JHeCbx7x0e/pA2SZjswdMXqS5WmnEd3br5wuvUzJw== +"@budibase/types@1.3.5", "@budibase/types@^1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.5.tgz#55cb770527085ab573f15ef0e7b28b9cae2d76ba" + integrity sha512-SSqe8ojEbSNzQHTw2OeXmVWimb/C9Hclcxif0NCCPsan2btx84yMZLO+A3GXanTqzmvSz4ZbkS7/33xwDiOHIA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 869e296438..45fb2336a2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.5", - "@budibase/pro": "1.3.4", + "@budibase/pro": "1.3.5", "@budibase/string-templates": "^1.3.5", "@budibase/types": "^1.3.5", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index e7e258efe6..8f339d2ab1 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4.tgz#91de405d2eff963cabe58b286b73711239ffea52" - integrity sha512-csKHVM9H+7s26k0h+kQm1u6qz7A5/TgOUCSyuysR9aUak5rb5klC2/84AUlpRS4RJWQ37/X0QpovbrakAdXzsw== +"@budibase/backend-core@1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.5.tgz#67f437bfe19f7c8db03f2d64a78be561cd827df5" + integrity sha512-hhEIb1rTOQxE3aj6O2UqklHWd0dcGUBdeoNJrtmWmwSUkqjk+WBZ9WZgzeVUUtSgTUFCjMe7aup6QV+NpEteWg== dependencies: - "@budibase/types" "^1.3.4" + "@budibase/types" "^1.3.5" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4.tgz#f21c23dcac5dce23d33fb09bc769447a960fc481" - integrity sha512-jOMRYu+7R8Dpn2l1BdwiaXkxQZb78jFEZIF2XJYUBSjKscgAZGgU+OyYYozRWQip563hTU3eZcqAtQKgfchEZg== +"@budibase/pro@1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.5.tgz#e828f5f5bbb8db69388df32fa6e7fb4de999a49b" + integrity sha512-3Pn1IW6R6DZ9J+6n2R/F0m357vjrnm/lonXpb6JcpWwSPLI5KtPIVSrKQaRxsSqc76355HSCoryGKorQIRq2Lg== dependencies: - "@budibase/backend-core" "1.3.4" - "@budibase/types" "1.3.4" + "@budibase/backend-core" "1.3.5" + "@budibase/types" "1.3.5" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.4", "@budibase/types@^1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4.tgz#25f087b024e843eb372e50c81f8f925fb39f1dfd" - integrity sha512-ndyWs8yeCS7cpZjApDB1HhY6UUM2SRBUgAMCZOZaWABG9JHeCbx7x0e/pA2SZjswdMXqS5WmnEd3br5wuvUzJw== +"@budibase/types@1.3.5", "@budibase/types@^1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.5.tgz#55cb770527085ab573f15ef0e7b28b9cae2d76ba" + integrity sha512-SSqe8ojEbSNzQHTw2OeXmVWimb/C9Hclcxif0NCCPsan2btx84yMZLO+A3GXanTqzmvSz4ZbkS7/33xwDiOHIA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 0c4937b6fadb2473c1f645ea39f9630e2c03ee67 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Mon, 5 Sep 2022 11:27:59 +0000 Subject: [PATCH 106/162] v1.3.4-alpha.1 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 2c00056102..70a4e77a28 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 098ba87298..b5765805cd 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.4-alpha.0", + "@budibase/types": "1.3.4-alpha.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 9602a4f464..181c2ac0a8 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": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "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": "1.3.4-alpha.0", + "@budibase/string-templates": "1.3.4-alpha.1", "@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 d638331f62..f66178cf58 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.4-alpha.0", - "@budibase/client": "1.3.4-alpha.0", - "@budibase/frontend-core": "1.3.4-alpha.0", - "@budibase/string-templates": "1.3.4-alpha.0", + "@budibase/bbui": "1.3.4-alpha.1", + "@budibase/client": "1.3.4-alpha.1", + "@budibase/frontend-core": "1.3.4-alpha.1", + "@budibase/string-templates": "1.3.4-alpha.1", "@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 72b1ed90c6..9f3c45c2e6 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.0", + "@budibase/backend-core": "1.3.4-alpha.1", "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 4f5c5a0552..f5f4af13d6 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "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": "1.3.4-alpha.0", - "@budibase/frontend-core": "1.3.4-alpha.0", - "@budibase/string-templates": "1.3.4-alpha.0", + "@budibase/bbui": "1.3.4-alpha.1", + "@budibase/frontend-core": "1.3.4-alpha.1", + "@budibase/string-templates": "1.3.4-alpha.1", "@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 91c6f1807f..e894018bd7 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.4-alpha.0", + "@budibase/bbui": "1.3.4-alpha.1", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 87391f472a..f56e50dc1f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.4-alpha.0", - "@budibase/client": "1.3.4-alpha.0", + "@budibase/backend-core": "1.3.4-alpha.1", + "@budibase/client": "1.3.4-alpha.1", "@budibase/pro": "1.3.4-alpha.0", - "@budibase/string-templates": "1.3.4-alpha.0", - "@budibase/types": "1.3.4-alpha.0", + "@budibase/string-templates": "1.3.4-alpha.1", + "@budibase/types": "1.3.4-alpha.1", "@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 2d5a300586..329d78894d 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "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 1b6b12e87d..941860a34e 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "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 cd3d783f58..2c73c8d881 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.4-alpha.0", + "version": "1.3.4-alpha.1", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.0", + "@budibase/backend-core": "1.3.4-alpha.1", "@budibase/pro": "1.3.4-alpha.0", - "@budibase/string-templates": "1.3.4-alpha.0", - "@budibase/types": "1.3.4-alpha.0", + "@budibase/string-templates": "1.3.4-alpha.1", + "@budibase/types": "1.3.4-alpha.1", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 8e49ad5e24ddbcd32da0e062e71014d493f3d0a2 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 5 Sep 2022 12:28:01 +0100 Subject: [PATCH 107/162] Prevent default browser events from firing when using keyboard shortcuts --- .../_components/navigation/ComponentKeyHandler.svelte | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte index 467d9a5a2f..77147d0f9a 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte @@ -54,7 +54,7 @@ }, } - const handleKeyAction = async (component, key, ctrlKey = false) => { + const handleKeyAction = async (event, component, key, ctrlKey = false) => { if (!component || !key) { return false } @@ -70,6 +70,9 @@ const handler = keyHandlers[key] if (!handler) { return false + } else if (event) { + event.preventDefault() + event.stopPropagation() } return handler(component) } catch (error) { @@ -89,14 +92,14 @@ return } // Key events are always for the selected component - return handleKeyAction($selectedComponent, e.key, e.ctrlKey || e.metaKey) + return handleKeyAction(e, $selectedComponent, e.key, e.ctrlKey || e.metaKey) } const handleComponentMenu = async e => { // Menu events can be for any component const { id, key, ctrlKey } = e.detail const component = findComponent($selectedScreen.props, id) - return await handleKeyAction(component, key, ctrlKey) + return await handleKeyAction(null, component, key, ctrlKey) } onMount(() => { From 6bd5be689659ddc9e160703901374aa395a53e60 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Mon, 5 Sep 2022 11:31:57 +0000 Subject: [PATCH 108/162] Update pro version to 1.3.4-alpha.1 --- 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 f56e50dc1f..002328863b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.4-alpha.1", "@budibase/client": "1.3.4-alpha.1", - "@budibase/pro": "1.3.4-alpha.0", + "@budibase/pro": "1.3.4-alpha.1", "@budibase/string-templates": "1.3.4-alpha.1", "@budibase/types": "1.3.4-alpha.1", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 15bb54baab..5e5fd1d7b9 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.0.tgz#630120bbbbeda7e13edc2d3ef878088d64fbdba5" - integrity sha512-LzAnOM06f0nDY76bgLjQuL2ChSOdhLg1zLPnwK07OEfQ9w8ZkkhNwJC/7/FAnnNEMypnKezrxXfhqee341JPZA== +"@budibase/backend-core@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.1.tgz#5c7547bdf22da936ab6fea8c5fc3ad1b9d54a910" + integrity sha512-TH4AyFm31kduVYdciw0TLhkGbilSi6vtE2h0qbnr5QV8SszZ8iKt3vUljTHS0PsH2V/S7qLQVEqZ2blkpRHO0A== dependencies: - "@budibase/types" "1.3.4-alpha.0" + "@budibase/types" "1.3.4-alpha.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.0.tgz#37af17330c85131be1d2fe3cb5ef9c15bb46ab0a" - integrity sha512-2hM/wXP2UrG52tlnoABdSnEMlk2edEjZF+FdYJGmJWGPkXhfI5sWV6B9a0+v9lH/xazj7Pv0XKdfe/IpfapLyQ== +"@budibase/pro@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.1.tgz#fa58c6a0e58d620ddd329389ae896b823a4dd50e" + integrity sha512-e8dReYYw+weqYYAQC0zkatBgACaXcbM71kneUTYaX7DnYg7WGY3EHyfajjlQXq+gxmVuXc6wkY28dIozG+/8TQ== dependencies: - "@budibase/backend-core" "1.3.4-alpha.0" - "@budibase/types" "1.3.4-alpha.0" + "@budibase/backend-core" "1.3.4-alpha.1" + "@budibase/types" "1.3.4-alpha.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.0.tgz#954a99cb10e564d8a28e789eced870f7602f092b" - integrity sha512-SXJ3kMBpsIVzXqux3z5X/L4IM5QhhrGNcS03k8pKpfqr5yoDwH+P5S2rAc0qZ7YgqlTBP9TVfzaJntWAc9YtQQ== +"@budibase/types@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.1.tgz#e75aaf70b5c5a3e7b9fde6f77cb91447dffe0d2d" + integrity sha512-DpjO3bkPiOCDtIsvPWU4p6SGBAsN80vtr7zz3Cjrv7p98050fWzkUBPAISOTCWTq59OpF6dUhmMmOQuN6OrK+g== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 2c73c8d881..8f6d362a0e 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.4-alpha.1", - "@budibase/pro": "1.3.4-alpha.0", + "@budibase/pro": "1.3.4-alpha.1", "@budibase/string-templates": "1.3.4-alpha.1", "@budibase/types": "1.3.4-alpha.1", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index e8b842ac72..4098129265 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.0.tgz#630120bbbbeda7e13edc2d3ef878088d64fbdba5" - integrity sha512-LzAnOM06f0nDY76bgLjQuL2ChSOdhLg1zLPnwK07OEfQ9w8ZkkhNwJC/7/FAnnNEMypnKezrxXfhqee341JPZA== +"@budibase/backend-core@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.1.tgz#5c7547bdf22da936ab6fea8c5fc3ad1b9d54a910" + integrity sha512-TH4AyFm31kduVYdciw0TLhkGbilSi6vtE2h0qbnr5QV8SszZ8iKt3vUljTHS0PsH2V/S7qLQVEqZ2blkpRHO0A== dependencies: - "@budibase/types" "1.3.4-alpha.0" + "@budibase/types" "1.3.4-alpha.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.0.tgz#37af17330c85131be1d2fe3cb5ef9c15bb46ab0a" - integrity sha512-2hM/wXP2UrG52tlnoABdSnEMlk2edEjZF+FdYJGmJWGPkXhfI5sWV6B9a0+v9lH/xazj7Pv0XKdfe/IpfapLyQ== +"@budibase/pro@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.1.tgz#fa58c6a0e58d620ddd329389ae896b823a4dd50e" + integrity sha512-e8dReYYw+weqYYAQC0zkatBgACaXcbM71kneUTYaX7DnYg7WGY3EHyfajjlQXq+gxmVuXc6wkY28dIozG+/8TQ== dependencies: - "@budibase/backend-core" "1.3.4-alpha.0" - "@budibase/types" "1.3.4-alpha.0" + "@budibase/backend-core" "1.3.4-alpha.1" + "@budibase/types" "1.3.4-alpha.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.4-alpha.0": - version "1.3.4-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.0.tgz#954a99cb10e564d8a28e789eced870f7602f092b" - integrity sha512-SXJ3kMBpsIVzXqux3z5X/L4IM5QhhrGNcS03k8pKpfqr5yoDwH+P5S2rAc0qZ7YgqlTBP9TVfzaJntWAc9YtQQ== +"@budibase/types@1.3.4-alpha.1": + version "1.3.4-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.1.tgz#e75aaf70b5c5a3e7b9fde6f77cb91447dffe0d2d" + integrity sha512-DpjO3bkPiOCDtIsvPWU4p6SGBAsN80vtr7zz3Cjrv7p98050fWzkUBPAISOTCWTq59OpF6dUhmMmOQuN6OrK+g== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From e1e4f2cc874b0f28c6a7063ae3f3c90a9e84fe2c Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 5 Sep 2022 13:07:27 +0100 Subject: [PATCH 109/162] Fixing backend-core build, as raised in #7603. --- packages/backend-core/package.json | 2 +- packages/backend-core/tsconfig.build.json | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index a338fc950d..ce3dd11a7c 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -60,7 +60,7 @@ ] }, "devDependencies": { - "@shopify/jest-koa-mocks": "3.1.5", + "@shopify/jest-koa-mocks": "^5.0.1", "@types/jest": "27.5.1", "@types/koa": "2.0.52", "@types/lodash": "4.14.180", diff --git a/packages/backend-core/tsconfig.build.json b/packages/backend-core/tsconfig.build.json index 40ffe6b827..acf93df89e 100644 --- a/packages/backend-core/tsconfig.build.json +++ b/packages/backend-core/tsconfig.build.json @@ -20,6 +20,8 @@ "package.json" ], "exclude": [ + "scripts", + "tests", "node_modules", "dist", "**/*.spec.ts", From b3eb26dfd886763893b704dd9cb709e0d7816e14 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 5 Sep 2022 13:26:35 +0100 Subject: [PATCH 110/162] Pinning. --- packages/backend-core/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index ce3dd11a7c..01be6a2bcd 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -60,7 +60,7 @@ ] }, "devDependencies": { - "@shopify/jest-koa-mocks": "^5.0.1", + "@shopify/jest-koa-mocks": "5.0.1", "@types/jest": "27.5.1", "@types/koa": "2.0.52", "@types/lodash": "4.14.180", From c45973034826df2b7c2c9ff3877afe4083beb8da Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Mon, 5 Sep 2022 13:48:37 +0100 Subject: [PATCH 111/162] Cypress: Smoke Build: Test Changes createComponents - Updated how the test gets nav-items from the side nav bar commands - Updating maximum timeout value for cy.visit instances (this seems specific to the CI runs) - Updated createUser command to ensure better timing between the create user modals --- .../integration/createComponents.spec.js | 14 +++++------ packages/builder/cypress/support/commands.js | 25 +++++++++++-------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/packages/builder/cypress/integration/createComponents.spec.js b/packages/builder/cypress/integration/createComponents.spec.js index 649a77e442..e39ce4a4a8 100644 --- a/packages/builder/cypress/integration/createComponents.spec.js +++ b/packages/builder/cypress/integration/createComponents.spec.js @@ -20,7 +20,7 @@ filterTests(["all"], () => { //Use the tree to delete a selected component const deleteSelectedComponent = () => { cy.get( - ".nav-items-container .nav-item.selected .actions > div > .icon" + ".nav-item.selected .actions > div > .icon" ).click({ force: true, }) @@ -91,7 +91,7 @@ filterTests(["all"], () => { cy.searchAndAddComponent("Paragraph").then(componentId => { cy.get("[data-cy=setting-_instanceName] input").type(componentId).blur() cy.get( - ".nav-items-container .nav-item.selected .actions > div > .icon" + ".nav-item.selected .actions > div > .icon" ).click({ force: true, }) @@ -145,7 +145,7 @@ filterTests(["all"], () => { return testFieldFocusOnCreate(label) }) .then(() => { - cy.get(".nav-items-container .nav-item") + cy.get(".nav-item") .contains(formId) .click({ force: true }) deleteSelectedComponent() @@ -195,7 +195,7 @@ filterTests(["all"], () => { return testFocusOnCreate(label) }) .then(() => { - cy.get(".nav-items-container .nav-item") + cy.get(".nav-item") .contains(providerId) .click({ force: true }) deleteSelectedComponent() @@ -218,7 +218,7 @@ filterTests(["all"], () => { .find(".component-placeholder") .should("not.exist") cy.getComponent(imageId).find(`img[alt=${imageId}]`).should("exist") - cy.get(".nav-items-container .nav-item") + cy.get(".nav-item") .contains(imageId) .click({ force: true }) deleteSelectedComponent() @@ -242,7 +242,7 @@ filterTests(["all"], () => { cy.getComponent(markdownId) .find(".editor-preview-full h1") .contains("Hi") - cy.get(".nav-items-container .nav-item") + cy.get(".nav-item") .contains(markdownId) .click({ force: true }) deleteSelectedComponent() @@ -265,7 +265,7 @@ filterTests(["all"], () => { .find(".component-placeholder") .should("not.exist") cy.getComponent(iconId).find("i.ri-save-fill").should("exist") - cy.get(".nav-items-container .nav-item") + cy.get(".nav-item") .contains(iconId) .click({ force: true }) deleteSelectedComponent() diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index d4b0ec80e8..394d5e9af2 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -4,7 +4,7 @@ Cypress.on("uncaught:exception", () => { // ACCOUNTS & USERS Cypress.Commands.add("login", (email, password) => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 10000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.url() .should("include", "/builder/") .then(url => { @@ -33,7 +33,7 @@ Cypress.Commands.add("login", (email, password) => { }) Cypress.Commands.add("logOut", () => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 2000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.get(".user-dropdown .avatar > .icon").click({ force: true }) cy.get(".spectrum-Popover[data-cy='user-menu']").within(() => { cy.get("li[data-cy='user-logout']").click({ force: true }) @@ -43,7 +43,7 @@ Cypress.Commands.add("logOut", () => { Cypress.Commands.add("logoutNoAppGrid", () => { // Logs user out when app grid is not present - cy.visit(`${Cypress.config().baseUrl}/builder`) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.get(".avatar > .icon").click({ force: true }) cy.get(".spectrum-Popover[data-cy='user-menu']").within(() => { cy.get(".spectrum-Menu-item").contains("Log out").click({ force: true }) @@ -68,11 +68,14 @@ Cypress.Commands.add("createUser", (email, permission) => { .click({ force: true }) }) } - // Add user and wait for modal to change - cy.get(".spectrum-Button").contains("Add user").click({ force: true }) + // Add user + cy.get(".spectrum-Button").contains("Add users").click({ force: true }) cy.get(".spectrum-ActionButton").contains("Add email").should("not.exist") }) // Onboarding modal + cy.get(".spectrum-Dialog-grid", { timeout: 5000 }).contains( + "Choose your onboarding" + ) cy.get(".spectrum-Dialog-grid").within(() => { cy.get(".onboarding-type").eq(1).click() cy.get(".spectrum-Button").contains("Done").click({ force: true }) @@ -163,7 +166,7 @@ Cypress.Commands.add("createApp", (name, addDefaultTable) => { const shouldCreateDefaultTable = typeof addDefaultTable != "boolean" ? true : addDefaultTable - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 10000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.url({ timeout: 30000 }).should("include", "/apps") cy.get(`[data-cy="create-app-btn"]`, { timeout: 5000 }).click({ force: true }) @@ -197,7 +200,7 @@ Cypress.Commands.add("createApp", (name, addDefaultTable) => { }) Cypress.Commands.add("deleteApp", name => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 5000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.wait(2000) cy.request(`${Cypress.config().baseUrl}/api/applications?status=all`) .its("body") @@ -254,7 +257,7 @@ Cypress.Commands.add("deleteApp", name => { }) Cypress.Commands.add("deleteAllApps", () => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 5000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.wait(500) cy.request(`${Cypress.config().baseUrl}/api/applications?status=all`, { timeout: 5000, @@ -351,7 +354,7 @@ Cypress.Commands.add("alterAppVersion", (appId, version) => { }) Cypress.Commands.add("importApp", (exportFilePath, name) => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 5000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.request(`${Cypress.config().baseUrl}/api/applications?status=all`) .its("body") @@ -386,7 +389,7 @@ Cypress.Commands.add("importApp", (exportFilePath, name) => { // Filters visible with 1 or more Cypress.Commands.add("searchForApplication", appName => { - cy.visit(`${Cypress.config().baseUrl}/builder`) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.wait(2000) // No app filter functionality if only 1 app exists @@ -409,7 +412,7 @@ Cypress.Commands.add("searchForApplication", appName => { // Assumes there are no others Cypress.Commands.add("applicationInAppTable", appName => { - cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 10000 }) + cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 30000 }) cy.get(".appTable", { timeout: 5000 }).within(() => { cy.get(".title").contains(appName).should("exist") }) From 7f250766639becde009208a86470e6b68fe436d5 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 5 Sep 2022 14:06:35 +0100 Subject: [PATCH 112/162] Updating backend-core lockfile. --- packages/backend-core/yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/backend-core/yarn.lock b/packages/backend-core/yarn.lock index 9f71691f44..22c17a9444 100644 --- a/packages/backend-core/yarn.lock +++ b/packages/backend-core/yarn.lock @@ -543,13 +543,13 @@ semver "^7.3.5" tar "^6.1.11" -"@shopify/jest-koa-mocks@3.1.5": - version "3.1.5" - resolved "https://registry.yarnpkg.com/@shopify/jest-koa-mocks/-/jest-koa-mocks-3.1.5.tgz#11f77ccfbcaf35cf5ee2c6108a286e61e6bea084" - integrity sha512-gQ3/7ELerv00TWO37AGFX5mT9CsFCS+3/UbKMuoIlKEU0QH2OX8BV9WBf/EKw7adCDNlxss0lqV6J8kf5pgr4A== +"@shopify/jest-koa-mocks@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@shopify/jest-koa-mocks/-/jest-koa-mocks-5.0.1.tgz#fba490b6b7985fbb571eb9974897d396a3642e94" + integrity sha512-4YskS9q8+TEHNoyopmuoy2XyhInyqeOl7CF5ShJs19sm6m0EA/jGGvgf/osv2PeTfuf42/L2G9CzWUSg49yTSg== dependencies: koa "^2.13.4" - node-mocks-http "^1.5.8" + node-mocks-http "^1.11.0" "@sideway/address@^4.1.3": version "4.1.4" @@ -3914,7 +3914,7 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-mocks-http@^1.5.8: +node-mocks-http@^1.11.0: version "1.11.0" resolved "https://registry.yarnpkg.com/node-mocks-http/-/node-mocks-http-1.11.0.tgz#defc0febf6b935f08245397d47534a8de592996e" integrity sha512-jS/WzSOcKbOeGrcgKbenZeNhxUNnP36Yw11+hL4TTxQXErGfqYZ+MaYNNvhaTiGIJlzNSqgQkk9j8dSu1YWSuw== From 6f9f6b54acf28819286ce19e48823b1cd96cea92 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 13:19:34 +0000 Subject: [PATCH 113/162] v1.3.6 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 9e1ede8e2d..721ceba47f 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.5", + "version": "1.3.6", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index e9e242369e..dbfecf37bd 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.5", + "version": "1.3.6", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.5", + "@budibase/types": "^1.3.6", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index b5a4e35683..a23285b479 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": "1.3.5", + "version": "1.3.6", "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": "^1.3.5", + "@budibase/string-templates": "^1.3.6", "@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 007d8aae6b..78cfa9c4c6 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.5", + "version": "1.3.6", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.5", - "@budibase/client": "^1.3.5", - "@budibase/frontend-core": "^1.3.5", - "@budibase/string-templates": "^1.3.5", + "@budibase/bbui": "^1.3.6", + "@budibase/client": "^1.3.6", + "@budibase/frontend-core": "^1.3.6", + "@budibase/string-templates": "^1.3.6", "@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 a86c0b04f9..ea1938256c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.5", + "version": "1.3.6", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.5", + "@budibase/backend-core": "^1.3.6", "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 5f930aee94..05a6a81770 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.5", + "version": "1.3.6", "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": "^1.3.5", - "@budibase/frontend-core": "^1.3.5", - "@budibase/string-templates": "^1.3.5", + "@budibase/bbui": "^1.3.6", + "@budibase/frontend-core": "^1.3.6", + "@budibase/string-templates": "^1.3.6", "@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 65729b54ed..0dfe6b190c 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.5", + "version": "1.3.6", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.5", + "@budibase/bbui": "^1.3.6", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 6dbb7e0d5b..2b0c0eb6f1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.5", + "version": "1.3.6", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.5", - "@budibase/client": "^1.3.5", + "@budibase/backend-core": "^1.3.6", + "@budibase/client": "^1.3.6", "@budibase/pro": "1.3.5", - "@budibase/string-templates": "^1.3.5", - "@budibase/types": "^1.3.5", + "@budibase/string-templates": "^1.3.6", + "@budibase/types": "^1.3.6", "@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 126ad55d19..817c442e01 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.5", + "version": "1.3.6", "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 38c8754f91..a5684d2502 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.5", + "version": "1.3.6", "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 45fb2336a2..35994a67f7 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.5", + "version": "1.3.6", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.5", + "@budibase/backend-core": "^1.3.6", "@budibase/pro": "1.3.5", - "@budibase/string-templates": "^1.3.5", - "@budibase/types": "^1.3.5", + "@budibase/string-templates": "^1.3.6", + "@budibase/types": "^1.3.6", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 3150d86710f859d2535b25d538498f5a810c61e6 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 13:22:34 +0000 Subject: [PATCH 114/162] Update pro version to 1.3.6 --- 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 2b0c0eb6f1..392a1d8b93 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.6", "@budibase/client": "^1.3.6", - "@budibase/pro": "1.3.5", + "@budibase/pro": "1.3.6", "@budibase/string-templates": "^1.3.6", "@budibase/types": "^1.3.6", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 38754c99e4..f91e3a5442 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.5.tgz#67f437bfe19f7c8db03f2d64a78be561cd827df5" - integrity sha512-hhEIb1rTOQxE3aj6O2UqklHWd0dcGUBdeoNJrtmWmwSUkqjk+WBZ9WZgzeVUUtSgTUFCjMe7aup6QV+NpEteWg== +"@budibase/backend-core@1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.6.tgz#340b55a71eba228d44c8dd6107e28872a6f432d6" + integrity sha512-WIGseaoUrUWpqlbKadNuusQa1y9Ucm34AVei6oWRK1czJtLddaEt2zaMlD/qikcBB6XBJE3UML0Z82EvvdZPBQ== dependencies: - "@budibase/types" "^1.3.5" + "@budibase/types" "^1.3.6" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.5.tgz#e828f5f5bbb8db69388df32fa6e7fb4de999a49b" - integrity sha512-3Pn1IW6R6DZ9J+6n2R/F0m357vjrnm/lonXpb6JcpWwSPLI5KtPIVSrKQaRxsSqc76355HSCoryGKorQIRq2Lg== +"@budibase/pro@1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.6.tgz#2ac68b341401003a25619c36137a1960b97ac01d" + integrity sha512-5QFkeR/6DdvXdIgufmqACIEEGvqXlinQrXVV45C0n95gKEXvRybv5eiWR9OO7UyYeJzQOv0PTY8O7ZtOSQrdwg== dependencies: - "@budibase/backend-core" "1.3.5" - "@budibase/types" "1.3.5" + "@budibase/backend-core" "1.3.6" + "@budibase/types" "1.3.6" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.5", "@budibase/types@^1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.5.tgz#55cb770527085ab573f15ef0e7b28b9cae2d76ba" - integrity sha512-SSqe8ojEbSNzQHTw2OeXmVWimb/C9Hclcxif0NCCPsan2btx84yMZLO+A3GXanTqzmvSz4ZbkS7/33xwDiOHIA== +"@budibase/types@1.3.6", "@budibase/types@^1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.6.tgz#b2c8b2cfd7ef37c7803c07499887dfc0a716c2dc" + integrity sha512-gu+G9E04Bumc0oRdXjjKj+FgPGDj/r38iLx7yiHfWIFwaXqn+Lvmljb20nfYTVF49LDVz2jowzACRzVX4rq6kA== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 35994a67f7..9c3a03a675 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.6", - "@budibase/pro": "1.3.5", + "@budibase/pro": "1.3.6", "@budibase/string-templates": "^1.3.6", "@budibase/types": "^1.3.6", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 8f339d2ab1..9647129caf 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.5.tgz#67f437bfe19f7c8db03f2d64a78be561cd827df5" - integrity sha512-hhEIb1rTOQxE3aj6O2UqklHWd0dcGUBdeoNJrtmWmwSUkqjk+WBZ9WZgzeVUUtSgTUFCjMe7aup6QV+NpEteWg== +"@budibase/backend-core@1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.6.tgz#340b55a71eba228d44c8dd6107e28872a6f432d6" + integrity sha512-WIGseaoUrUWpqlbKadNuusQa1y9Ucm34AVei6oWRK1czJtLddaEt2zaMlD/qikcBB6XBJE3UML0Z82EvvdZPBQ== dependencies: - "@budibase/types" "^1.3.5" + "@budibase/types" "^1.3.6" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.5.tgz#e828f5f5bbb8db69388df32fa6e7fb4de999a49b" - integrity sha512-3Pn1IW6R6DZ9J+6n2R/F0m357vjrnm/lonXpb6JcpWwSPLI5KtPIVSrKQaRxsSqc76355HSCoryGKorQIRq2Lg== +"@budibase/pro@1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.6.tgz#2ac68b341401003a25619c36137a1960b97ac01d" + integrity sha512-5QFkeR/6DdvXdIgufmqACIEEGvqXlinQrXVV45C0n95gKEXvRybv5eiWR9OO7UyYeJzQOv0PTY8O7ZtOSQrdwg== dependencies: - "@budibase/backend-core" "1.3.5" - "@budibase/types" "1.3.5" + "@budibase/backend-core" "1.3.6" + "@budibase/types" "1.3.6" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.5", "@budibase/types@^1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.5.tgz#55cb770527085ab573f15ef0e7b28b9cae2d76ba" - integrity sha512-SSqe8ojEbSNzQHTw2OeXmVWimb/C9Hclcxif0NCCPsan2btx84yMZLO+A3GXanTqzmvSz4ZbkS7/33xwDiOHIA== +"@budibase/types@1.3.6", "@budibase/types@^1.3.6": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.6.tgz#b2c8b2cfd7ef37c7803c07499887dfc0a716c2dc" + integrity sha512-gu+G9E04Bumc0oRdXjjKj+FgPGDj/r38iLx7yiHfWIFwaXqn+Lvmljb20nfYTVF49LDVz2jowzACRzVX4rq6kA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From bad727cc95fb56962489ac53198e44ca784c93d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Wei=C3=9F?= Date: Wed, 23 Feb 2022 16:26:09 +0100 Subject: [PATCH 115/162] allow specifying resources on app, worker, proxy deployments --- charts/budibase/templates/app-service-deployment.yaml | 5 ++++- charts/budibase/templates/proxy-service-deployment.yaml | 5 ++++- charts/budibase/templates/worker-service-deployment.yaml | 5 ++++- charts/budibase/values.yaml | 3 +++ 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/charts/budibase/templates/app-service-deployment.yaml b/charts/budibase/templates/app-service-deployment.yaml index 74b98ac008..422097e699 100644 --- a/charts/budibase/templates/app-service-deployment.yaml +++ b/charts/budibase/templates/app-service-deployment.yaml @@ -158,7 +158,10 @@ spec: name: bbapps ports: - containerPort: {{ .Values.services.apps.port }} - resources: {} + {{ with .Values.services.apps.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} {{- with .Values.affinity }} affinity: {{- toYaml . | nindent 8 }} diff --git a/charts/budibase/templates/proxy-service-deployment.yaml b/charts/budibase/templates/proxy-service-deployment.yaml index 505a46f1e8..5588022032 100644 --- a/charts/budibase/templates/proxy-service-deployment.yaml +++ b/charts/budibase/templates/proxy-service-deployment.yaml @@ -30,7 +30,10 @@ spec: name: proxy-service ports: - containerPort: {{ .Values.services.proxy.port }} - resources: {} + {{ with .Values.services.proxy.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} volumeMounts: {{- with .Values.affinity }} affinity: diff --git a/charts/budibase/templates/worker-service-deployment.yaml b/charts/budibase/templates/worker-service-deployment.yaml index 083231eeff..902e9ac03d 100644 --- a/charts/budibase/templates/worker-service-deployment.yaml +++ b/charts/budibase/templates/worker-service-deployment.yaml @@ -151,7 +151,10 @@ spec: name: bbworker ports: - containerPort: {{ .Values.services.worker.port }} - resources: {} + {{ with .Values.services.worker.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} {{- with .Values.affinity }} affinity: {{- toYaml . | nindent 8 }} diff --git a/charts/budibase/values.yaml b/charts/budibase/values.yaml index 9b5e76d0d7..0ebf625abd 100644 --- a/charts/budibase/values.yaml +++ b/charts/budibase/values.yaml @@ -125,16 +125,19 @@ services: proxy: port: 10000 replicaCount: 1 + resources: {} apps: port: 4002 replicaCount: 1 logLevel: info + resources: {} # nodeDebug: "" # set the value of NODE_DEBUG worker: port: 4003 replicaCount: 1 + resources: {} couchdb: enabled: true From 3295c14679bbd84b7e9cfdf20c970368d0372dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Wei=C3=9F?= Date: Mon, 29 Aug 2022 13:51:08 +0200 Subject: [PATCH 116/162] allow specifying resources on minio, redis deployments --- charts/budibase/templates/minio-service-deployment.yaml | 5 ++++- charts/budibase/templates/redis-service-deployment.yaml | 5 ++++- charts/budibase/values.yaml | 2 ++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/charts/budibase/templates/minio-service-deployment.yaml b/charts/budibase/templates/minio-service-deployment.yaml index 103f9e3ed2..144dbe539a 100644 --- a/charts/budibase/templates/minio-service-deployment.yaml +++ b/charts/budibase/templates/minio-service-deployment.yaml @@ -56,7 +56,10 @@ spec: name: minio-service ports: - containerPort: {{ .Values.services.objectStore.port }} - resources: {} + {{ with .Values.services.objectStore.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} volumeMounts: - mountPath: /data name: minio-data diff --git a/charts/budibase/templates/redis-service-deployment.yaml b/charts/budibase/templates/redis-service-deployment.yaml index 6e09346cad..d94e4d70f8 100644 --- a/charts/budibase/templates/redis-service-deployment.yaml +++ b/charts/budibase/templates/redis-service-deployment.yaml @@ -35,7 +35,10 @@ spec: name: redis-service ports: - containerPort: {{ .Values.services.redis.port }} - resources: {} + {{ with .Values.services.redis.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} volumeMounts: - mountPath: /data name: redis-data diff --git a/charts/budibase/values.yaml b/charts/budibase/values.yaml index 0ebf625abd..950a2f838e 100644 --- a/charts/budibase/values.yaml +++ b/charts/budibase/values.yaml @@ -164,6 +164,7 @@ services: ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. storageClass: "" + resources: {} objectStore: minio: true @@ -180,6 +181,7 @@ services: ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. storageClass: "" + resources: {} # Override values in couchDB subchart couchdb: From cfd757d712f03146cabab5f02a766626e7cff601 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Wei=C3=9F?= Date: Mon, 29 Aug 2022 13:52:45 +0200 Subject: [PATCH 117/162] allow specifying resources on couchdb-backup deployment --- charts/budibase/templates/couchdb-backup.yaml | 5 ++++- charts/budibase/values.yaml | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/charts/budibase/templates/couchdb-backup.yaml b/charts/budibase/templates/couchdb-backup.yaml index ae062475ce..68e5eab617 100644 --- a/charts/budibase/templates/couchdb-backup.yaml +++ b/charts/budibase/templates/couchdb-backup.yaml @@ -38,7 +38,10 @@ spec: image: redgeoff/replicate-couchdb-cluster imagePullPolicy: Always name: couchdb-backup - resources: {} + {{ with .Values.services.couchdb.backup.resources }} + resources: + {{- toYaml . | nindent 10 }} + {{ end }} {{- with .Values.affinity }} affinity: {{- toYaml . | nindent 8 }} diff --git a/charts/budibase/values.yaml b/charts/budibase/values.yaml index 950a2f838e..14c18205df 100644 --- a/charts/budibase/values.yaml +++ b/charts/budibase/values.yaml @@ -151,6 +151,7 @@ services: target: "" # backup interval in seconds interval: "" + resources: {} redis: enabled: true # disable if using external redis From 3ce96f4236d5635eb470ba8741144aa8591a2ac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Wei=C3=9F?= Date: Mon, 29 Aug 2022 13:54:21 +0200 Subject: [PATCH 118/162] remove unused value from chart defaults --- charts/budibase/values.yaml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/charts/budibase/values.yaml b/charts/budibase/values.yaml index 14c18205df..a15504d58c 100644 --- a/charts/budibase/values.yaml +++ b/charts/budibase/values.yaml @@ -60,19 +60,6 @@ ingress: port: number: 10000 -resources: - {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - autoscaling: enabled: false minReplicas: 1 From eb3203d3077890f7cbb457cfb854e67eab17aeee Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Mon, 5 Sep 2022 14:55:17 +0100 Subject: [PATCH 119/162] Add missing await statement --- .../_components/navigation/ComponentKeyHandler.svelte | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte index 77147d0f9a..b6bd4286d6 100644 --- a/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte +++ b/packages/builder/src/pages/builder/app/[application]/design/[screenId]/components/[componentId]/_components/navigation/ComponentKeyHandler.svelte @@ -92,7 +92,12 @@ return } // Key events are always for the selected component - return handleKeyAction(e, $selectedComponent, e.key, e.ctrlKey || e.metaKey) + return await handleKeyAction( + e, + $selectedComponent, + e.key, + e.ctrlKey || e.metaKey + ) } const handleComponentMenu = async e => { From 5c3705be0b2f004654f22be1265e0a298224e650 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Mon, 5 Sep 2022 14:58:41 +0100 Subject: [PATCH 120/162] Updating postgreSQL test file Increasing the maximum timeout value after switching schema --- .../cypress/integration/datasources/postgreSql.spec.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/builder/cypress/integration/datasources/postgreSql.spec.js b/packages/builder/cypress/integration/datasources/postgreSql.spec.js index bfb312a0c8..582aa1cd2a 100644 --- a/packages/builder/cypress/integration/datasources/postgreSql.spec.js +++ b/packages/builder/cypress/integration/datasources/postgreSql.spec.js @@ -162,7 +162,7 @@ filterTests(["all"], () => { switchSchema("randomText") // No tables displayed - cy.get(".spectrum-Body", { timeout: 5000 }).eq(2).should("contain", "No tables found") + cy.get(".spectrum-Body", { timeout: 20000 }).eq(2).should("contain", "No tables found") // Previously created query should be visible cy.get(".spectrum-Table").should("contain", queryName) @@ -173,7 +173,7 @@ filterTests(["all"], () => { switchSchema("1") // Confirm tables exist - Check for specific one - cy.get(".spectrum-Table", { timeout: 5000 }).eq(0).should("contain", "test") + cy.get(".spectrum-Table", { timeout: 20000 }).eq(0).should("contain", "test") cy.get(".spectrum-Table") .eq(0) .find(".spectrum-Table-row") @@ -187,7 +187,7 @@ filterTests(["all"], () => { switchSchema("public") // Confirm tables exist - again - cy.get(".spectrum-Table", { timeout: 5000 }).eq(0).should("contain", "REGIONS") + cy.get(".spectrum-Table", { timeout: 20000 }).eq(0).should("contain", "REGIONS") cy.get(".spectrum-Table") .eq(0) .find(".spectrum-Table-row") From 443f0d6360c2a91010d8f13de54a4b35e093a484 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Mon, 5 Sep 2022 14:29:05 +0000 Subject: [PATCH 121/162] v1.3.4-alpha.2 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 70a4e77a28..a2dcf1a4ad 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index b5765805cd..d6d8d83530 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.4-alpha.1", + "@budibase/types": "1.3.4-alpha.2", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 181c2ac0a8..a563b54328 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": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "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": "1.3.4-alpha.1", + "@budibase/string-templates": "1.3.4-alpha.2", "@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 f66178cf58..ac1b15510a 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.4-alpha.1", - "@budibase/client": "1.3.4-alpha.1", - "@budibase/frontend-core": "1.3.4-alpha.1", - "@budibase/string-templates": "1.3.4-alpha.1", + "@budibase/bbui": "1.3.4-alpha.2", + "@budibase/client": "1.3.4-alpha.2", + "@budibase/frontend-core": "1.3.4-alpha.2", + "@budibase/string-templates": "1.3.4-alpha.2", "@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 9f3c45c2e6..95531d91f4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.1", + "@budibase/backend-core": "1.3.4-alpha.2", "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 f5f4af13d6..fa2064c7b7 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "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": "1.3.4-alpha.1", - "@budibase/frontend-core": "1.3.4-alpha.1", - "@budibase/string-templates": "1.3.4-alpha.1", + "@budibase/bbui": "1.3.4-alpha.2", + "@budibase/frontend-core": "1.3.4-alpha.2", + "@budibase/string-templates": "1.3.4-alpha.2", "@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 e894018bd7..9a42c3582b 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.4-alpha.1", + "@budibase/bbui": "1.3.4-alpha.2", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 002328863b..cd42bd910e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.4-alpha.1", - "@budibase/client": "1.3.4-alpha.1", + "@budibase/backend-core": "1.3.4-alpha.2", + "@budibase/client": "1.3.4-alpha.2", "@budibase/pro": "1.3.4-alpha.1", - "@budibase/string-templates": "1.3.4-alpha.1", - "@budibase/types": "1.3.4-alpha.1", + "@budibase/string-templates": "1.3.4-alpha.2", + "@budibase/types": "1.3.4-alpha.2", "@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 329d78894d..3088f43a3e 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "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 941860a34e..f265beffee 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "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 8f6d362a0e..50ee239c65 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.4-alpha.1", + "version": "1.3.4-alpha.2", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.1", + "@budibase/backend-core": "1.3.4-alpha.2", "@budibase/pro": "1.3.4-alpha.1", - "@budibase/string-templates": "1.3.4-alpha.1", - "@budibase/types": "1.3.4-alpha.1", + "@budibase/string-templates": "1.3.4-alpha.2", + "@budibase/types": "1.3.4-alpha.2", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 194701e86058f8879cb2496e08bd45a6b89a0e28 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Mon, 5 Sep 2022 14:32:44 +0000 Subject: [PATCH 122/162] Update pro version to 1.3.4-alpha.2 --- 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 cd42bd910e..0e4bb617fd 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.4-alpha.2", "@budibase/client": "1.3.4-alpha.2", - "@budibase/pro": "1.3.4-alpha.1", + "@budibase/pro": "1.3.4-alpha.2", "@budibase/string-templates": "1.3.4-alpha.2", "@budibase/types": "1.3.4-alpha.2", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 5e5fd1d7b9..9d8abf464d 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.1.tgz#5c7547bdf22da936ab6fea8c5fc3ad1b9d54a910" - integrity sha512-TH4AyFm31kduVYdciw0TLhkGbilSi6vtE2h0qbnr5QV8SszZ8iKt3vUljTHS0PsH2V/S7qLQVEqZ2blkpRHO0A== +"@budibase/backend-core@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.2.tgz#82d8dc09b84c5e0d610211ee94eb296c8ad1a041" + integrity sha512-ML8d/B8Im+jUbOHR1E6NFQmqo+M31tatqKNgMTfrPyVwf6B5OsAL2EnUh2EjdgIcL3xpF1jFeqvDG+Il+rc/Bw== dependencies: - "@budibase/types" "1.3.4-alpha.1" + "@budibase/types" "1.3.4-alpha.2" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.1.tgz#fa58c6a0e58d620ddd329389ae896b823a4dd50e" - integrity sha512-e8dReYYw+weqYYAQC0zkatBgACaXcbM71kneUTYaX7DnYg7WGY3EHyfajjlQXq+gxmVuXc6wkY28dIozG+/8TQ== +"@budibase/pro@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.2.tgz#676fbb758addac6a78769b3cfb6589550500576d" + integrity sha512-+pKNsy5dkjHUXlxpEosp07ypP9mbpFrJvyRDIcAzl8YJ3qoMB23EziG3Ld4+FwTe8vz/mTxqZc0VWPjBWZhw1g== dependencies: - "@budibase/backend-core" "1.3.4-alpha.1" - "@budibase/types" "1.3.4-alpha.1" + "@budibase/backend-core" "1.3.4-alpha.2" + "@budibase/types" "1.3.4-alpha.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.1.tgz#e75aaf70b5c5a3e7b9fde6f77cb91447dffe0d2d" - integrity sha512-DpjO3bkPiOCDtIsvPWU4p6SGBAsN80vtr7zz3Cjrv7p98050fWzkUBPAISOTCWTq59OpF6dUhmMmOQuN6OrK+g== +"@budibase/types@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.2.tgz#0832b88c3c74289b331aa11f1e127b3cbaf78b0a" + integrity sha512-Z9AbIBMamsun+OePbNSDt1+cCK61yCzsLZB6aHcLso3SG5/sezIzZ9PA5lLvb4G4PZJ25e74JT53DjHpw1LE+w== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 50ee239c65..8177171425 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.4-alpha.2", - "@budibase/pro": "1.3.4-alpha.1", + "@budibase/pro": "1.3.4-alpha.2", "@budibase/string-templates": "1.3.4-alpha.2", "@budibase/types": "1.3.4-alpha.2", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 4098129265..6ce7a18fdb 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.1.tgz#5c7547bdf22da936ab6fea8c5fc3ad1b9d54a910" - integrity sha512-TH4AyFm31kduVYdciw0TLhkGbilSi6vtE2h0qbnr5QV8SszZ8iKt3vUljTHS0PsH2V/S7qLQVEqZ2blkpRHO0A== +"@budibase/backend-core@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.2.tgz#82d8dc09b84c5e0d610211ee94eb296c8ad1a041" + integrity sha512-ML8d/B8Im+jUbOHR1E6NFQmqo+M31tatqKNgMTfrPyVwf6B5OsAL2EnUh2EjdgIcL3xpF1jFeqvDG+Il+rc/Bw== dependencies: - "@budibase/types" "1.3.4-alpha.1" + "@budibase/types" "1.3.4-alpha.2" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.1.tgz#fa58c6a0e58d620ddd329389ae896b823a4dd50e" - integrity sha512-e8dReYYw+weqYYAQC0zkatBgACaXcbM71kneUTYaX7DnYg7WGY3EHyfajjlQXq+gxmVuXc6wkY28dIozG+/8TQ== +"@budibase/pro@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.2.tgz#676fbb758addac6a78769b3cfb6589550500576d" + integrity sha512-+pKNsy5dkjHUXlxpEosp07ypP9mbpFrJvyRDIcAzl8YJ3qoMB23EziG3Ld4+FwTe8vz/mTxqZc0VWPjBWZhw1g== dependencies: - "@budibase/backend-core" "1.3.4-alpha.1" - "@budibase/types" "1.3.4-alpha.1" + "@budibase/backend-core" "1.3.4-alpha.2" + "@budibase/types" "1.3.4-alpha.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.4-alpha.1": - version "1.3.4-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.1.tgz#e75aaf70b5c5a3e7b9fde6f77cb91447dffe0d2d" - integrity sha512-DpjO3bkPiOCDtIsvPWU4p6SGBAsN80vtr7zz3Cjrv7p98050fWzkUBPAISOTCWTq59OpF6dUhmMmOQuN6OrK+g== +"@budibase/types@1.3.4-alpha.2": + version "1.3.4-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.2.tgz#0832b88c3c74289b331aa11f1e127b3cbaf78b0a" + integrity sha512-Z9AbIBMamsun+OePbNSDt1+cCK61yCzsLZB6aHcLso3SG5/sezIzZ9PA5lLvb4G4PZJ25e74JT53DjHpw1LE+w== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 3271b295d43764f58756554e5674894836ad54c5 Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Mon, 5 Sep 2022 16:17:58 +0100 Subject: [PATCH 123/162] Clear quota cache on deprovision + gracefully handle account metadata doc deletion --- packages/worker/src/api/controllers/system/tenants.js | 2 ++ .../src/api/routes/system/tests/accounts.spec.ts | 5 +---- packages/worker/src/sdk/accounts/accounts.ts | 10 ++++++++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/worker/src/api/controllers/system/tenants.js b/packages/worker/src/api/controllers/system/tenants.js index 8c0e3c5bfd..c54a3d9834 100644 --- a/packages/worker/src/api/controllers/system/tenants.js +++ b/packages/worker/src/api/controllers/system/tenants.js @@ -1,6 +1,7 @@ const { StaticDatabases, doWithDB } = require("@budibase/backend-core/db") const { getTenantId } = require("@budibase/backend-core/tenancy") const { deleteTenant } = require("@budibase/backend-core/deprovision") +const { quotas } = require("@budibase/pro") exports.exists = async ctx => { const tenantId = ctx.request.params @@ -48,6 +49,7 @@ exports.delete = async ctx => { try { await deleteTenant(tenantId) + await quotas.bustCache() ctx.status = 204 } catch (err) { ctx.log.error(err) diff --git a/packages/worker/src/api/routes/system/tests/accounts.spec.ts b/packages/worker/src/api/routes/system/tests/accounts.spec.ts index b20b7a6472..e3a6141cb7 100644 --- a/packages/worker/src/api/routes/system/tests/accounts.spec.ts +++ b/packages/worker/src/api/routes/system/tests/accounts.spec.ts @@ -47,10 +47,7 @@ describe("accounts", () => { const response = await api.accounts.destroyMetadata(id) - expect(response.status).toBe(404) - expect(response.body.message).toBe( - `id=${accounts.formatAccountMetadataId(id)} does not exist` - ) + expect(response.status).toBe(204) }) }) }) diff --git a/packages/worker/src/sdk/accounts/accounts.ts b/packages/worker/src/sdk/accounts/accounts.ts index d18317aeb2..e43285087b 100644 --- a/packages/worker/src/sdk/accounts/accounts.ts +++ b/packages/worker/src/sdk/accounts/accounts.ts @@ -46,8 +46,14 @@ export const destroyMetadata = async (accountId: string) => { await db.doWithDB(StaticDatabases.PLATFORM_INFO.name, async (db: any) => { const metadata = await getMetadata(accountId) if (!metadata) { - throw new HTTPError(`id=${accountId} does not exist`, 404) + return + } + try { + await db.remove(accountId, metadata._rev) + } catch (e: any) { + if (e.status !== 404) { + throw e + } } - await db.remove(accountId, metadata._rev) }) } From 094bfd337b484ace734f09b01c01283ffd04ef11 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 17:01:52 +0000 Subject: [PATCH 124/162] v1.3.7 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 721ceba47f..c8c63e6f58 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.6", + "version": "1.3.7", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index dbfecf37bd..a3b27c8408 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.6", + "version": "1.3.7", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.6", + "@budibase/types": "^1.3.7", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index a23285b479..82918d9314 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": "1.3.6", + "version": "1.3.7", "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": "^1.3.6", + "@budibase/string-templates": "^1.3.7", "@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 78cfa9c4c6..4f1f63d217 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.6", + "version": "1.3.7", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.6", - "@budibase/client": "^1.3.6", - "@budibase/frontend-core": "^1.3.6", - "@budibase/string-templates": "^1.3.6", + "@budibase/bbui": "^1.3.7", + "@budibase/client": "^1.3.7", + "@budibase/frontend-core": "^1.3.7", + "@budibase/string-templates": "^1.3.7", "@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 ea1938256c..cbee106782 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.6", + "version": "1.3.7", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.6", + "@budibase/backend-core": "^1.3.7", "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 05a6a81770..9aa3a27bbe 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.6", + "version": "1.3.7", "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": "^1.3.6", - "@budibase/frontend-core": "^1.3.6", - "@budibase/string-templates": "^1.3.6", + "@budibase/bbui": "^1.3.7", + "@budibase/frontend-core": "^1.3.7", + "@budibase/string-templates": "^1.3.7", "@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 0dfe6b190c..fcbea06680 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.6", + "version": "1.3.7", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.6", + "@budibase/bbui": "^1.3.7", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 392a1d8b93..2a3576beda 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.6", + "version": "1.3.7", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.6", - "@budibase/client": "^1.3.6", + "@budibase/backend-core": "^1.3.7", + "@budibase/client": "^1.3.7", "@budibase/pro": "1.3.6", - "@budibase/string-templates": "^1.3.6", - "@budibase/types": "^1.3.6", + "@budibase/string-templates": "^1.3.7", + "@budibase/types": "^1.3.7", "@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 817c442e01..be793deae1 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.6", + "version": "1.3.7", "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 a5684d2502..1ff52462d2 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.6", + "version": "1.3.7", "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 9c3a03a675..6ec8018442 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.6", + "version": "1.3.7", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.6", + "@budibase/backend-core": "^1.3.7", "@budibase/pro": "1.3.6", - "@budibase/string-templates": "^1.3.6", - "@budibase/types": "^1.3.6", + "@budibase/string-templates": "^1.3.7", + "@budibase/types": "^1.3.7", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 1ef399d64d1ddc24e5f59978f0b46c3f65379532 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 17:05:11 +0000 Subject: [PATCH 125/162] Update pro version to 1.3.7 --- 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 2a3576beda..627065c688 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.7", "@budibase/client": "^1.3.7", - "@budibase/pro": "1.3.6", + "@budibase/pro": "1.3.7", "@budibase/string-templates": "^1.3.7", "@budibase/types": "^1.3.7", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index f91e3a5442..dae43bb5f2 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.6.tgz#340b55a71eba228d44c8dd6107e28872a6f432d6" - integrity sha512-WIGseaoUrUWpqlbKadNuusQa1y9Ucm34AVei6oWRK1czJtLddaEt2zaMlD/qikcBB6XBJE3UML0Z82EvvdZPBQ== +"@budibase/backend-core@1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.7.tgz#511eba14331e7f0a7a2d6b755663fc2c2f71de18" + integrity sha512-cOMKTULI75Ii3oBSQsokcsR8A2SvMD+bitOECO17KT+JSelW+z/jqrDNlpqStNaVeBcPx2PPXrv5B9dfvQ07rA== dependencies: - "@budibase/types" "^1.3.6" + "@budibase/types" "^1.3.7" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.6.tgz#2ac68b341401003a25619c36137a1960b97ac01d" - integrity sha512-5QFkeR/6DdvXdIgufmqACIEEGvqXlinQrXVV45C0n95gKEXvRybv5eiWR9OO7UyYeJzQOv0PTY8O7ZtOSQrdwg== +"@budibase/pro@1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.7.tgz#4f8f431556accaf2b3aa74e15d68c8de368f7aa3" + integrity sha512-0UeCQjSwx2v+NrVrS4CRc518JNywm081S6GNoj+v6qM7ZDHRslvUrNcxToRFVo36McsC51IVxAFwi1T7T3B8qQ== dependencies: - "@budibase/backend-core" "1.3.6" - "@budibase/types" "1.3.6" + "@budibase/backend-core" "1.3.7" + "@budibase/types" "1.3.7" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.6", "@budibase/types@^1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.6.tgz#b2c8b2cfd7ef37c7803c07499887dfc0a716c2dc" - integrity sha512-gu+G9E04Bumc0oRdXjjKj+FgPGDj/r38iLx7yiHfWIFwaXqn+Lvmljb20nfYTVF49LDVz2jowzACRzVX4rq6kA== +"@budibase/types@1.3.7", "@budibase/types@^1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.7.tgz#8957e0a3281901a7ad8226302dfbbcacc017f0d1" + integrity sha512-qzqpP6SL0qdyKRI8TJnL9dnBKN0d75vZCEVNw3T3yAlWZU/yT9zrjDUk8zZFBjV/q6U5IxPgQD1/h+VhpgnZzg== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 6ec8018442..7b6036180a 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.7", - "@budibase/pro": "1.3.6", + "@budibase/pro": "1.3.7", "@budibase/string-templates": "^1.3.7", "@budibase/types": "^1.3.7", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 9647129caf..6d2af49b07 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.6.tgz#340b55a71eba228d44c8dd6107e28872a6f432d6" - integrity sha512-WIGseaoUrUWpqlbKadNuusQa1y9Ucm34AVei6oWRK1czJtLddaEt2zaMlD/qikcBB6XBJE3UML0Z82EvvdZPBQ== +"@budibase/backend-core@1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.7.tgz#511eba14331e7f0a7a2d6b755663fc2c2f71de18" + integrity sha512-cOMKTULI75Ii3oBSQsokcsR8A2SvMD+bitOECO17KT+JSelW+z/jqrDNlpqStNaVeBcPx2PPXrv5B9dfvQ07rA== dependencies: - "@budibase/types" "^1.3.6" + "@budibase/types" "^1.3.7" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.6.tgz#2ac68b341401003a25619c36137a1960b97ac01d" - integrity sha512-5QFkeR/6DdvXdIgufmqACIEEGvqXlinQrXVV45C0n95gKEXvRybv5eiWR9OO7UyYeJzQOv0PTY8O7ZtOSQrdwg== +"@budibase/pro@1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.7.tgz#4f8f431556accaf2b3aa74e15d68c8de368f7aa3" + integrity sha512-0UeCQjSwx2v+NrVrS4CRc518JNywm081S6GNoj+v6qM7ZDHRslvUrNcxToRFVo36McsC51IVxAFwi1T7T3B8qQ== dependencies: - "@budibase/backend-core" "1.3.6" - "@budibase/types" "1.3.6" + "@budibase/backend-core" "1.3.7" + "@budibase/types" "1.3.7" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.6", "@budibase/types@^1.3.6": - version "1.3.6" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.6.tgz#b2c8b2cfd7ef37c7803c07499887dfc0a716c2dc" - integrity sha512-gu+G9E04Bumc0oRdXjjKj+FgPGDj/r38iLx7yiHfWIFwaXqn+Lvmljb20nfYTVF49LDVz2jowzACRzVX4rq6kA== +"@budibase/types@1.3.7", "@budibase/types@^1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.7.tgz#8957e0a3281901a7ad8226302dfbbcacc017f0d1" + integrity sha512-qzqpP6SL0qdyKRI8TJnL9dnBKN0d75vZCEVNw3T3yAlWZU/yT9zrjDUk8zZFBjV/q6U5IxPgQD1/h+VhpgnZzg== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 02b16f22c16115566d4b066aa3a69c57698eb676 Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Mon, 5 Sep 2022 16:55:38 +0100 Subject: [PATCH 126/162] Parse incoming row as JSON --- packages/server/src/integrations/googlesheets.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/integrations/googlesheets.ts b/packages/server/src/integrations/googlesheets.ts index 129ab485cd..00a0b7f753 100644 --- a/packages/server/src/integrations/googlesheets.ts +++ b/packages/server/src/integrations/googlesheets.ts @@ -379,7 +379,7 @@ module GoogleSheetsModule { const rows = await sheet.getRows() const row = rows[query.rowIndex] if (row) { - const updateValues = query.row + const updateValues = JSON.parse(query.row) for (let key in updateValues) { row[key] = updateValues[key] } From 6a60aec78b5f112a21c99969a0b400177049375b Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Mon, 5 Sep 2022 16:57:50 +0100 Subject: [PATCH 127/162] type check --- packages/server/src/integrations/googlesheets.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/integrations/googlesheets.ts b/packages/server/src/integrations/googlesheets.ts index 00a0b7f753..65b4325c72 100644 --- a/packages/server/src/integrations/googlesheets.ts +++ b/packages/server/src/integrations/googlesheets.ts @@ -379,7 +379,7 @@ module GoogleSheetsModule { const rows = await sheet.getRows() const row = rows[query.rowIndex] if (row) { - const updateValues = JSON.parse(query.row) + const updateValues = typeof query.row === "string" ? JSON.parse(query.row) : query.row for (let key in updateValues) { row[key] = updateValues[key] } From 0f46e02e73456f31de3f7d35bc9ad9864d1501ba Mon Sep 17 00:00:00 2001 From: Mel O'Hagan Date: Mon, 5 Sep 2022 16:58:35 +0100 Subject: [PATCH 128/162] lint --- packages/server/src/integrations/googlesheets.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/server/src/integrations/googlesheets.ts b/packages/server/src/integrations/googlesheets.ts index 65b4325c72..868a9e08ce 100644 --- a/packages/server/src/integrations/googlesheets.ts +++ b/packages/server/src/integrations/googlesheets.ts @@ -379,7 +379,8 @@ module GoogleSheetsModule { const rows = await sheet.getRows() const row = rows[query.rowIndex] if (row) { - const updateValues = typeof query.row === "string" ? JSON.parse(query.row) : query.row + const updateValues = + typeof query.row === "string" ? JSON.parse(query.row) : query.row for (let key in updateValues) { row[key] = updateValues[key] } From 1142dff43086090a96ade22cdad43d0a8ace988a Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 18:00:50 +0000 Subject: [PATCH 129/162] v1.3.8 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index c8c63e6f58..f971c2d4c1 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.7", + "version": "1.3.8", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index a3b27c8408..94ec4a1550 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.7", + "version": "1.3.8", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.7", + "@budibase/types": "^1.3.8", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 82918d9314..4019ef65a8 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": "1.3.7", + "version": "1.3.8", "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": "^1.3.7", + "@budibase/string-templates": "^1.3.8", "@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 4f1f63d217..6c6c3f9878 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.7", + "version": "1.3.8", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.7", - "@budibase/client": "^1.3.7", - "@budibase/frontend-core": "^1.3.7", - "@budibase/string-templates": "^1.3.7", + "@budibase/bbui": "^1.3.8", + "@budibase/client": "^1.3.8", + "@budibase/frontend-core": "^1.3.8", + "@budibase/string-templates": "^1.3.8", "@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 cbee106782..3cb67bb40d 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.7", + "version": "1.3.8", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.7", + "@budibase/backend-core": "^1.3.8", "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 9aa3a27bbe..f3e34e40c8 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.7", + "version": "1.3.8", "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": "^1.3.7", - "@budibase/frontend-core": "^1.3.7", - "@budibase/string-templates": "^1.3.7", + "@budibase/bbui": "^1.3.8", + "@budibase/frontend-core": "^1.3.8", + "@budibase/string-templates": "^1.3.8", "@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 fcbea06680..5b7ad3049e 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.7", + "version": "1.3.8", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.7", + "@budibase/bbui": "^1.3.8", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 627065c688..1587e47557 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.7", + "version": "1.3.8", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.7", - "@budibase/client": "^1.3.7", + "@budibase/backend-core": "^1.3.8", + "@budibase/client": "^1.3.8", "@budibase/pro": "1.3.7", - "@budibase/string-templates": "^1.3.7", - "@budibase/types": "^1.3.7", + "@budibase/string-templates": "^1.3.8", + "@budibase/types": "^1.3.8", "@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 be793deae1..4c6021a797 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.7", + "version": "1.3.8", "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 1ff52462d2..6c4d66e294 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.7", + "version": "1.3.8", "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 7b6036180a..4cf91fa031 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.7", + "version": "1.3.8", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.7", + "@budibase/backend-core": "^1.3.8", "@budibase/pro": "1.3.7", - "@budibase/string-templates": "^1.3.7", - "@budibase/types": "^1.3.7", + "@budibase/string-templates": "^1.3.8", + "@budibase/types": "^1.3.8", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From e097c79028a1a98ed8bd7b79d14c1f2386ea302e Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Mon, 5 Sep 2022 18:04:02 +0000 Subject: [PATCH 130/162] Update pro version to 1.3.8 --- 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 1587e47557..784920fa1e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.8", "@budibase/client": "^1.3.8", - "@budibase/pro": "1.3.7", + "@budibase/pro": "1.3.8", "@budibase/string-templates": "^1.3.8", "@budibase/types": "^1.3.8", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index dae43bb5f2..8d9f8b1bcf 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.7.tgz#511eba14331e7f0a7a2d6b755663fc2c2f71de18" - integrity sha512-cOMKTULI75Ii3oBSQsokcsR8A2SvMD+bitOECO17KT+JSelW+z/jqrDNlpqStNaVeBcPx2PPXrv5B9dfvQ07rA== +"@budibase/backend-core@1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.8.tgz#8a430766743cfce5836e15154b1e4283c28018fd" + integrity sha512-L2sxqipZiwWrQfoyfjFIjMULQXylO2VtwGWqKxk+dNsTIddmYOgZ8S6MJo0sm/Oh8rfegppm9GVAd0flbzXpZw== dependencies: - "@budibase/types" "^1.3.7" + "@budibase/types" "^1.3.8" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.7.tgz#4f8f431556accaf2b3aa74e15d68c8de368f7aa3" - integrity sha512-0UeCQjSwx2v+NrVrS4CRc518JNywm081S6GNoj+v6qM7ZDHRslvUrNcxToRFVo36McsC51IVxAFwi1T7T3B8qQ== +"@budibase/pro@1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.8.tgz#7d933655c85814b3489a72995b549e502163a4d4" + integrity sha512-n1IUL7hdmUC0RYK/jVE3A1M0MX6cM7tsADfHW7I0CD8hF9svhLWDWCoRTK6kc44DqWRKYq7uJjQlWsfWoJ2CWQ== dependencies: - "@budibase/backend-core" "1.3.7" - "@budibase/types" "1.3.7" + "@budibase/backend-core" "1.3.8" + "@budibase/types" "1.3.8" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.7", "@budibase/types@^1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.7.tgz#8957e0a3281901a7ad8226302dfbbcacc017f0d1" - integrity sha512-qzqpP6SL0qdyKRI8TJnL9dnBKN0d75vZCEVNw3T3yAlWZU/yT9zrjDUk8zZFBjV/q6U5IxPgQD1/h+VhpgnZzg== +"@budibase/types@1.3.8", "@budibase/types@^1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.8.tgz#bae414289c19f891ae2bc2129598430e8521a120" + integrity sha512-GCfbqssnLmgwPJgoi4rJnw+VqY0I39iTxiUhDiGj9A2hEOiMuH9eRkgKnwPJO+4xfqYK5VA6w+vbqwyDTWA2fQ== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 4cf91fa031..7452e5a817 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.8", - "@budibase/pro": "1.3.7", + "@budibase/pro": "1.3.8", "@budibase/string-templates": "^1.3.8", "@budibase/types": "^1.3.8", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 6d2af49b07..58066f1418 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.7.tgz#511eba14331e7f0a7a2d6b755663fc2c2f71de18" - integrity sha512-cOMKTULI75Ii3oBSQsokcsR8A2SvMD+bitOECO17KT+JSelW+z/jqrDNlpqStNaVeBcPx2PPXrv5B9dfvQ07rA== +"@budibase/backend-core@1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.8.tgz#8a430766743cfce5836e15154b1e4283c28018fd" + integrity sha512-L2sxqipZiwWrQfoyfjFIjMULQXylO2VtwGWqKxk+dNsTIddmYOgZ8S6MJo0sm/Oh8rfegppm9GVAd0flbzXpZw== dependencies: - "@budibase/types" "^1.3.7" + "@budibase/types" "^1.3.8" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.7.tgz#4f8f431556accaf2b3aa74e15d68c8de368f7aa3" - integrity sha512-0UeCQjSwx2v+NrVrS4CRc518JNywm081S6GNoj+v6qM7ZDHRslvUrNcxToRFVo36McsC51IVxAFwi1T7T3B8qQ== +"@budibase/pro@1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.8.tgz#7d933655c85814b3489a72995b549e502163a4d4" + integrity sha512-n1IUL7hdmUC0RYK/jVE3A1M0MX6cM7tsADfHW7I0CD8hF9svhLWDWCoRTK6kc44DqWRKYq7uJjQlWsfWoJ2CWQ== dependencies: - "@budibase/backend-core" "1.3.7" - "@budibase/types" "1.3.7" + "@budibase/backend-core" "1.3.8" + "@budibase/types" "1.3.8" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.7", "@budibase/types@^1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.7.tgz#8957e0a3281901a7ad8226302dfbbcacc017f0d1" - integrity sha512-qzqpP6SL0qdyKRI8TJnL9dnBKN0d75vZCEVNw3T3yAlWZU/yT9zrjDUk8zZFBjV/q6U5IxPgQD1/h+VhpgnZzg== +"@budibase/types@1.3.8", "@budibase/types@^1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.8.tgz#bae414289c19f891ae2bc2129598430e8521a120" + integrity sha512-GCfbqssnLmgwPJgoi4rJnw+VqY0I39iTxiUhDiGj9A2hEOiMuH9eRkgKnwPJO+4xfqYK5VA6w+vbqwyDTWA2fQ== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From a506ce05a17384537e6d9600a355cccb0caa291c Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 5 Sep 2022 19:04:45 +0100 Subject: [PATCH 131/162] Fixing issue with string templates importing vm2 which requires other prebuilts for JS in the CLI - no need for these to add to build size when JS is unused. --- packages/cli/src/environment.js | 1 + packages/cli/src/index.js | 1 + packages/cli/src/prebuilds.js | 11 +++++++- .../src/helpers/javascript.js | 3 ++ packages/string-templates/src/index.cjs | 24 ++++++++-------- packages/string-templates/src/index.mjs | 28 ++++++++++--------- 6 files changed, 43 insertions(+), 25 deletions(-) create mode 100644 packages/cli/src/environment.js diff --git a/packages/cli/src/environment.js b/packages/cli/src/environment.js new file mode 100644 index 0000000000..a42eceb07e --- /dev/null +++ b/packages/cli/src/environment.js @@ -0,0 +1 @@ +process.env.NO_JS = "1" diff --git a/packages/cli/src/index.js b/packages/cli/src/index.js index 0a3ced4200..691fc71928 100644 --- a/packages/cli/src/index.js +++ b/packages/cli/src/index.js @@ -1,5 +1,6 @@ #!/usr/bin/env node require("./prebuilds") +require("./environment") const { getCommands } = require("./options") const { Command } = require("commander") const { getHelpDescription } = require("./utils") diff --git a/packages/cli/src/prebuilds.js b/packages/cli/src/prebuilds.js index b8f380a937..b582b090e7 100644 --- a/packages/cli/src/prebuilds.js +++ b/packages/cli/src/prebuilds.js @@ -1,6 +1,7 @@ const os = require("os") const { join } = require("path") const fs = require("fs") +const { error } = require("./utils") const PREBUILDS = "prebuilds" const ARCH = `${os.platform()}-${os.arch()}` const PREBUILD_DIR = join(process.execPath, "..", PREBUILDS, ARCH) @@ -25,7 +26,15 @@ function checkForBinaries() { } } -function cleanup() { +function cleanup(evt) { + if (evt && evt.errno) { + console.error( + error( + "Failed to run CLI command - please report with the following message:" + ) + ) + console.error(error(evt)) + } if (fs.existsSync(PREBUILD_DIR)) { fs.rmSync(PREBUILD_DIR, { recursive: true }) } diff --git a/packages/string-templates/src/helpers/javascript.js b/packages/string-templates/src/helpers/javascript.js index 951a9f534a..c5996c25f0 100644 --- a/packages/string-templates/src/helpers/javascript.js +++ b/packages/string-templates/src/helpers/javascript.js @@ -36,6 +36,9 @@ const getContextValue = (path, context) => { // Evaluates JS code against a certain context module.exports.processJS = (handlebars, context) => { + if (process && process.env.NO_JS) { + throw new Error("JS disabled in environment.") + } try { // Wrap JS in a function and immediately invoke it. // This is required to allow the final `return` statement to be valid. diff --git a/packages/string-templates/src/index.cjs b/packages/string-templates/src/index.cjs index 870e14493a..12fd86b6cb 100644 --- a/packages/string-templates/src/index.cjs +++ b/packages/string-templates/src/index.cjs @@ -1,6 +1,4 @@ -const { VM } = require("vm2") const templates = require("./index.js") -const { setJSRunner } = require("./helpers/javascript") /** * CJS entrypoint for rollup @@ -21,13 +19,17 @@ module.exports.disableEscaping = templates.disableEscaping module.exports.findHBSBlocks = templates.findHBSBlocks module.exports.convertToJS = templates.convertToJS -/** - * Use vm2 to run JS scripts in a node env - */ -setJSRunner((js, context) => { - const vm = new VM({ - sandbox: context, - timeout: 1000 +if (!process.env.NO_JS) { + const { VM } = require("vm2") + const { setJSRunner } = require("./helpers/javascript") + /** + * Use vm2 to run JS scripts in a node env + */ + setJSRunner((js, context) => { + const vm = new VM({ + sandbox: context, + timeout: 1000 + }) + return vm.run(js) }) - return vm.run(js) -}) +} diff --git a/packages/string-templates/src/index.mjs b/packages/string-templates/src/index.mjs index 34cb90ea34..58b0c9dde4 100644 --- a/packages/string-templates/src/index.mjs +++ b/packages/string-templates/src/index.mjs @@ -21,16 +21,18 @@ export const disableEscaping = templates.disableEscaping export const findHBSBlocks = templates.findHBSBlocks export const convertToJS = templates.convertToJS -/** - * Use polyfilled vm to run JS scripts in a browser Env - */ -setJSRunner((js, context) => { - context = { - ...context, - alert: undefined, - setInterval: undefined, - setTimeout: undefined, - } - vm.createContext(context) - return vm.runInNewContext(js, context, { timeout: 1000 }) -}) +if (process && !process.env.NO_JS) { + /** + * Use polyfilled vm to run JS scripts in a browser Env + */ + setJSRunner((js, context) => { + context = { + ...context, + alert: undefined, + setInterval: undefined, + setTimeout: undefined, + } + vm.createContext(context) + return vm.runInNewContext(js, context, { timeout: 1000 }) + }) +} From 2d19d885fce434249a88840db60386befbf91914 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 07:35:26 +0000 Subject: [PATCH 132/162] v1.3.9 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index f971c2d4c1..b214a59850 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.8", + "version": "1.3.9", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 94ec4a1550..2f283070dc 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.8", + "version": "1.3.9", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.8", + "@budibase/types": "^1.3.9", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 4019ef65a8..6aa4765b15 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": "1.3.8", + "version": "1.3.9", "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": "^1.3.8", + "@budibase/string-templates": "^1.3.9", "@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 6c6c3f9878..564b8e88c8 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.8", + "version": "1.3.9", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.8", - "@budibase/client": "^1.3.8", - "@budibase/frontend-core": "^1.3.8", - "@budibase/string-templates": "^1.3.8", + "@budibase/bbui": "^1.3.9", + "@budibase/client": "^1.3.9", + "@budibase/frontend-core": "^1.3.9", + "@budibase/string-templates": "^1.3.9", "@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 3cb67bb40d..e15f86fe83 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.8", + "version": "1.3.9", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.8", + "@budibase/backend-core": "^1.3.9", "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 f3e34e40c8..0ff51b613a 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.8", + "version": "1.3.9", "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": "^1.3.8", - "@budibase/frontend-core": "^1.3.8", - "@budibase/string-templates": "^1.3.8", + "@budibase/bbui": "^1.3.9", + "@budibase/frontend-core": "^1.3.9", + "@budibase/string-templates": "^1.3.9", "@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 5b7ad3049e..ac37508298 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.8", + "version": "1.3.9", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.8", + "@budibase/bbui": "^1.3.9", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 784920fa1e..3c81b6b92a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.8", + "version": "1.3.9", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.8", - "@budibase/client": "^1.3.8", + "@budibase/backend-core": "^1.3.9", + "@budibase/client": "^1.3.9", "@budibase/pro": "1.3.8", - "@budibase/string-templates": "^1.3.8", - "@budibase/types": "^1.3.8", + "@budibase/string-templates": "^1.3.9", + "@budibase/types": "^1.3.9", "@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 4c6021a797..78fcc88822 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.8", + "version": "1.3.9", "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 6c4d66e294..c7956a5a16 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.8", + "version": "1.3.9", "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 7452e5a817..ed5465bd01 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.8", + "version": "1.3.9", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.8", + "@budibase/backend-core": "^1.3.9", "@budibase/pro": "1.3.8", - "@budibase/string-templates": "^1.3.8", - "@budibase/types": "^1.3.8", + "@budibase/string-templates": "^1.3.9", + "@budibase/types": "^1.3.9", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From ee24dba12415bf079c2c3d7a14cfdfead35ccc59 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 07:39:20 +0000 Subject: [PATCH 133/162] Update pro version to 1.3.9 --- 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 3c81b6b92a..d7a883b329 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.9", "@budibase/client": "^1.3.9", - "@budibase/pro": "1.3.8", + "@budibase/pro": "1.3.9", "@budibase/string-templates": "^1.3.9", "@budibase/types": "^1.3.9", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 8d9f8b1bcf..f6b5e529c5 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.8.tgz#8a430766743cfce5836e15154b1e4283c28018fd" - integrity sha512-L2sxqipZiwWrQfoyfjFIjMULQXylO2VtwGWqKxk+dNsTIddmYOgZ8S6MJo0sm/Oh8rfegppm9GVAd0flbzXpZw== +"@budibase/backend-core@1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.9.tgz#22c6dbf4b7c207c18640c72300b790f5885def39" + integrity sha512-M7jezhBe7LmlPmWBn4iJHnvXSwXlLn8xbmk/UbSRy6HmOnsQdf+dHUHwKBt8bKQIqVG9GfM/tliwBwNvqM7lVw== dependencies: - "@budibase/types" "^1.3.8" + "@budibase/types" "^1.3.9" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.8.tgz#7d933655c85814b3489a72995b549e502163a4d4" - integrity sha512-n1IUL7hdmUC0RYK/jVE3A1M0MX6cM7tsADfHW7I0CD8hF9svhLWDWCoRTK6kc44DqWRKYq7uJjQlWsfWoJ2CWQ== +"@budibase/pro@1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.9.tgz#fffc0e1ebe45f287af2601963f791e9616c55118" + integrity sha512-zgNIGdNJ1MnNUlSn1wp+uba6K3pDKB7o/l1okeUKtVnoQpIPg4QbPjH3KgfOSrUT90g/Ipbyw5DdyaMsdJyvoQ== dependencies: - "@budibase/backend-core" "1.3.8" - "@budibase/types" "1.3.8" + "@budibase/backend-core" "1.3.9" + "@budibase/types" "1.3.9" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.8", "@budibase/types@^1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.8.tgz#bae414289c19f891ae2bc2129598430e8521a120" - integrity sha512-GCfbqssnLmgwPJgoi4rJnw+VqY0I39iTxiUhDiGj9A2hEOiMuH9eRkgKnwPJO+4xfqYK5VA6w+vbqwyDTWA2fQ== +"@budibase/types@1.3.9", "@budibase/types@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.9.tgz#3cca4441e29c37fd370205cb3b97d99c7ea97b31" + integrity sha512-ahcITe3EZtf64bcoIoXaECkn6PNF8sYS1XWlRxDOmFhjVPw2GeydCW86lZ/Y1o1BbBtXqbVgq8+8rmjsJ02Z2g== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index ed5465bd01..8ad57fb369 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.9", - "@budibase/pro": "1.3.8", + "@budibase/pro": "1.3.9", "@budibase/string-templates": "^1.3.9", "@budibase/types": "^1.3.9", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 58066f1418..a153c7728b 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.8.tgz#8a430766743cfce5836e15154b1e4283c28018fd" - integrity sha512-L2sxqipZiwWrQfoyfjFIjMULQXylO2VtwGWqKxk+dNsTIddmYOgZ8S6MJo0sm/Oh8rfegppm9GVAd0flbzXpZw== +"@budibase/backend-core@1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.9.tgz#22c6dbf4b7c207c18640c72300b790f5885def39" + integrity sha512-M7jezhBe7LmlPmWBn4iJHnvXSwXlLn8xbmk/UbSRy6HmOnsQdf+dHUHwKBt8bKQIqVG9GfM/tliwBwNvqM7lVw== dependencies: - "@budibase/types" "^1.3.8" + "@budibase/types" "^1.3.9" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.8.tgz#7d933655c85814b3489a72995b549e502163a4d4" - integrity sha512-n1IUL7hdmUC0RYK/jVE3A1M0MX6cM7tsADfHW7I0CD8hF9svhLWDWCoRTK6kc44DqWRKYq7uJjQlWsfWoJ2CWQ== +"@budibase/pro@1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.9.tgz#fffc0e1ebe45f287af2601963f791e9616c55118" + integrity sha512-zgNIGdNJ1MnNUlSn1wp+uba6K3pDKB7o/l1okeUKtVnoQpIPg4QbPjH3KgfOSrUT90g/Ipbyw5DdyaMsdJyvoQ== dependencies: - "@budibase/backend-core" "1.3.8" - "@budibase/types" "1.3.8" + "@budibase/backend-core" "1.3.9" + "@budibase/types" "1.3.9" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.8", "@budibase/types@^1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.8.tgz#bae414289c19f891ae2bc2129598430e8521a120" - integrity sha512-GCfbqssnLmgwPJgoi4rJnw+VqY0I39iTxiUhDiGj9A2hEOiMuH9eRkgKnwPJO+4xfqYK5VA6w+vbqwyDTWA2fQ== +"@budibase/types@1.3.9", "@budibase/types@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.9.tgz#3cca4441e29c37fd370205cb3b97d99c7ea97b31" + integrity sha512-ahcITe3EZtf64bcoIoXaECkn6PNF8sYS1XWlRxDOmFhjVPw2GeydCW86lZ/Y1o1BbBtXqbVgq8+8rmjsJ02Z2g== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 892f00b3ce7d4a9731e507836558d29e2f086200 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Tue, 6 Sep 2022 07:54:34 +0000 Subject: [PATCH 134/162] v1.3.4-alpha.3 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index a2dcf1a4ad..6e75704980 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index d6d8d83530..f16b83b713 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.4-alpha.2", + "@budibase/types": "1.3.4-alpha.3", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index a563b54328..08e308d0ab 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": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "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": "1.3.4-alpha.2", + "@budibase/string-templates": "1.3.4-alpha.3", "@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 ac1b15510a..167bb6d510 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.4-alpha.2", - "@budibase/client": "1.3.4-alpha.2", - "@budibase/frontend-core": "1.3.4-alpha.2", - "@budibase/string-templates": "1.3.4-alpha.2", + "@budibase/bbui": "1.3.4-alpha.3", + "@budibase/client": "1.3.4-alpha.3", + "@budibase/frontend-core": "1.3.4-alpha.3", + "@budibase/string-templates": "1.3.4-alpha.3", "@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 95531d91f4..5f7ee289bf 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.2", + "@budibase/backend-core": "1.3.4-alpha.3", "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 fa2064c7b7..21719d4b57 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "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": "1.3.4-alpha.2", - "@budibase/frontend-core": "1.3.4-alpha.2", - "@budibase/string-templates": "1.3.4-alpha.2", + "@budibase/bbui": "1.3.4-alpha.3", + "@budibase/frontend-core": "1.3.4-alpha.3", + "@budibase/string-templates": "1.3.4-alpha.3", "@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 9a42c3582b..a01c7bf38e 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.4-alpha.2", + "@budibase/bbui": "1.3.4-alpha.3", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 0e4bb617fd..b135e45a88 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.4-alpha.2", - "@budibase/client": "1.3.4-alpha.2", + "@budibase/backend-core": "1.3.4-alpha.3", + "@budibase/client": "1.3.4-alpha.3", "@budibase/pro": "1.3.4-alpha.2", - "@budibase/string-templates": "1.3.4-alpha.2", - "@budibase/types": "1.3.4-alpha.2", + "@budibase/string-templates": "1.3.4-alpha.3", + "@budibase/types": "1.3.4-alpha.3", "@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 3088f43a3e..8b0ccca5c7 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "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 f265beffee..6124245584 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "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 8177171425..43cb2631f7 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.4-alpha.2", + "version": "1.3.4-alpha.3", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.4-alpha.2", + "@budibase/backend-core": "1.3.4-alpha.3", "@budibase/pro": "1.3.4-alpha.2", - "@budibase/string-templates": "1.3.4-alpha.2", - "@budibase/types": "1.3.4-alpha.2", + "@budibase/string-templates": "1.3.4-alpha.3", + "@budibase/types": "1.3.4-alpha.3", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 41ab50f24db5d672be999fafe7c133701dc11fe6 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Tue, 6 Sep 2022 07:57:40 +0000 Subject: [PATCH 135/162] Update pro version to 1.3.4-alpha.3 --- 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 b135e45a88..4b180c7160 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.4-alpha.3", "@budibase/client": "1.3.4-alpha.3", - "@budibase/pro": "1.3.4-alpha.2", + "@budibase/pro": "1.3.4-alpha.3", "@budibase/string-templates": "1.3.4-alpha.3", "@budibase/types": "1.3.4-alpha.3", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 9d8abf464d..ca0a456a09 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.2.tgz#82d8dc09b84c5e0d610211ee94eb296c8ad1a041" - integrity sha512-ML8d/B8Im+jUbOHR1E6NFQmqo+M31tatqKNgMTfrPyVwf6B5OsAL2EnUh2EjdgIcL3xpF1jFeqvDG+Il+rc/Bw== +"@budibase/backend-core@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.3.tgz#2adcd2e111287ffd91a964325f59c8b904b158ae" + integrity sha512-CBlpSQODyG7qGH5jIQlRchQ6xWRTi2B+2eD2IoeI9j2duoNKPxkpvGAzh0NaFEwfmShSfNrC/yrr4YKkMnV3/g== dependencies: - "@budibase/types" "1.3.4-alpha.2" + "@budibase/types" "1.3.4-alpha.3" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.2.tgz#676fbb758addac6a78769b3cfb6589550500576d" - integrity sha512-+pKNsy5dkjHUXlxpEosp07ypP9mbpFrJvyRDIcAzl8YJ3qoMB23EziG3Ld4+FwTe8vz/mTxqZc0VWPjBWZhw1g== +"@budibase/pro@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.3.tgz#64d46b83ee658635ae32441e3ed97b2902de5286" + integrity sha512-SYmaTMIXDJSRZLXKQrtLEmIeigrL6biiVizDXqo4FbJgNIQg0UVdVP7mTO3sEg1VCbqEB89DEZ1tTaPgmKmgSA== dependencies: - "@budibase/backend-core" "1.3.4-alpha.2" - "@budibase/types" "1.3.4-alpha.2" + "@budibase/backend-core" "1.3.4-alpha.3" + "@budibase/types" "1.3.4-alpha.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.2.tgz#0832b88c3c74289b331aa11f1e127b3cbaf78b0a" - integrity sha512-Z9AbIBMamsun+OePbNSDt1+cCK61yCzsLZB6aHcLso3SG5/sezIzZ9PA5lLvb4G4PZJ25e74JT53DjHpw1LE+w== +"@budibase/types@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.3.tgz#198d00ea7cdc4393044c07ee301f176f0b391378" + integrity sha512-ThpEPNC2vQunqJ6G2avwCqh3zr6Lo28G5CEJUBNrUpnAyJ/Pvw0DPU6shN9loVxR3fmGtWKoU0sA/mapH8QWCg== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 43cb2631f7..3dfe23fc05 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.4-alpha.3", - "@budibase/pro": "1.3.4-alpha.2", + "@budibase/pro": "1.3.4-alpha.3", "@budibase/string-templates": "1.3.4-alpha.3", "@budibase/types": "1.3.4-alpha.3", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 6ce7a18fdb..f092b8eefd 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.2.tgz#82d8dc09b84c5e0d610211ee94eb296c8ad1a041" - integrity sha512-ML8d/B8Im+jUbOHR1E6NFQmqo+M31tatqKNgMTfrPyVwf6B5OsAL2EnUh2EjdgIcL3xpF1jFeqvDG+Il+rc/Bw== +"@budibase/backend-core@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.4-alpha.3.tgz#2adcd2e111287ffd91a964325f59c8b904b158ae" + integrity sha512-CBlpSQODyG7qGH5jIQlRchQ6xWRTi2B+2eD2IoeI9j2duoNKPxkpvGAzh0NaFEwfmShSfNrC/yrr4YKkMnV3/g== dependencies: - "@budibase/types" "1.3.4-alpha.2" + "@budibase/types" "1.3.4-alpha.3" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.2.tgz#676fbb758addac6a78769b3cfb6589550500576d" - integrity sha512-+pKNsy5dkjHUXlxpEosp07ypP9mbpFrJvyRDIcAzl8YJ3qoMB23EziG3Ld4+FwTe8vz/mTxqZc0VWPjBWZhw1g== +"@budibase/pro@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.4-alpha.3.tgz#64d46b83ee658635ae32441e3ed97b2902de5286" + integrity sha512-SYmaTMIXDJSRZLXKQrtLEmIeigrL6biiVizDXqo4FbJgNIQg0UVdVP7mTO3sEg1VCbqEB89DEZ1tTaPgmKmgSA== dependencies: - "@budibase/backend-core" "1.3.4-alpha.2" - "@budibase/types" "1.3.4-alpha.2" + "@budibase/backend-core" "1.3.4-alpha.3" + "@budibase/types" "1.3.4-alpha.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.4-alpha.2": - version "1.3.4-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.2.tgz#0832b88c3c74289b331aa11f1e127b3cbaf78b0a" - integrity sha512-Z9AbIBMamsun+OePbNSDt1+cCK61yCzsLZB6aHcLso3SG5/sezIzZ9PA5lLvb4G4PZJ25e74JT53DjHpw1LE+w== +"@budibase/types@1.3.4-alpha.3": + version "1.3.4-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.4-alpha.3.tgz#198d00ea7cdc4393044c07ee301f176f0b391378" + integrity sha512-ThpEPNC2vQunqJ6G2avwCqh3zr6Lo28G5CEJUBNrUpnAyJ/Pvw0DPU6shN9loVxR3fmGtWKoU0sA/mapH8QWCg== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 985f74467fb3462ad1e761d164296f50df578706 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Sep 2022 07:59:05 +0000 Subject: [PATCH 136/162] Bump node-fetch from 3.2.2 to 3.2.10 in /examples/nextjs-api-sales Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 3.2.2 to 3.2.10. - [Release notes](https://github.com/node-fetch/node-fetch/releases) - [Commits](https://github.com/node-fetch/node-fetch/compare/v3.2.2...v3.2.10) --- updated-dependencies: - dependency-name: node-fetch dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- examples/nextjs-api-sales/package.json | 2 +- examples/nextjs-api-sales/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/nextjs-api-sales/package.json b/examples/nextjs-api-sales/package.json index 6d75c85f01..777d07f968 100644 --- a/examples/nextjs-api-sales/package.json +++ b/examples/nextjs-api-sales/package.json @@ -11,7 +11,7 @@ "dependencies": { "bulma": "^0.9.3", "next": "12.1.0", - "node-fetch": "^3.2.2", + "node-fetch": "^3.2.10", "node-sass": "^7.0.1", "react": "17.0.2", "react-dom": "17.0.2", diff --git a/examples/nextjs-api-sales/yarn.lock b/examples/nextjs-api-sales/yarn.lock index 52c89967b2..f47fb84e33 100644 --- a/examples/nextjs-api-sales/yarn.lock +++ b/examples/nextjs-api-sales/yarn.lock @@ -2020,10 +2020,10 @@ node-domexception@^1.0.0: resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== -node-fetch@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.2.tgz#16d33fbe32ca7c6ca1ca8ba5dfea1dd885c59f04" - integrity sha512-Cwhq1JFIoon15wcIkFzubVNFE5GvXGV82pKf4knXXjvGmn7RJKcypeuqcVNZMGDZsAFWyIRya/anwAJr7TWJ7w== +node-fetch@^3.2.10: + version "3.2.10" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.10.tgz#e8347f94b54ae18b57c9c049ef641cef398a85c8" + integrity sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA== dependencies: data-uri-to-buffer "^4.0.0" fetch-blob "^3.1.4" From 39b29fd8b925a3c3bad5cd1a3eada32db1d45b36 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 08:01:24 +0000 Subject: [PATCH 137/162] v1.3.10 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index b214a59850..64d71d67a1 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.9", + "version": "1.3.10", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 2f283070dc..4b62dd6070 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.9", + "version": "1.3.10", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.9", + "@budibase/types": "^1.3.10", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 6aa4765b15..4bee823809 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": "1.3.9", + "version": "1.3.10", "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": "^1.3.9", + "@budibase/string-templates": "^1.3.10", "@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 564b8e88c8..490e34746b 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.9", + "version": "1.3.10", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.9", - "@budibase/client": "^1.3.9", - "@budibase/frontend-core": "^1.3.9", - "@budibase/string-templates": "^1.3.9", + "@budibase/bbui": "^1.3.10", + "@budibase/client": "^1.3.10", + "@budibase/frontend-core": "^1.3.10", + "@budibase/string-templates": "^1.3.10", "@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 e15f86fe83..de837598a4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.9", + "version": "1.3.10", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.9", + "@budibase/backend-core": "^1.3.10", "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 0ff51b613a..d49a1722b3 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.9", + "version": "1.3.10", "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": "^1.3.9", - "@budibase/frontend-core": "^1.3.9", - "@budibase/string-templates": "^1.3.9", + "@budibase/bbui": "^1.3.10", + "@budibase/frontend-core": "^1.3.10", + "@budibase/string-templates": "^1.3.10", "@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 ac37508298..e730fa3662 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.9", + "version": "1.3.10", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.9", + "@budibase/bbui": "^1.3.10", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index d7a883b329..e006013253 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.9", + "version": "1.3.10", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.9", - "@budibase/client": "^1.3.9", + "@budibase/backend-core": "^1.3.10", + "@budibase/client": "^1.3.10", "@budibase/pro": "1.3.9", - "@budibase/string-templates": "^1.3.9", - "@budibase/types": "^1.3.9", + "@budibase/string-templates": "^1.3.10", + "@budibase/types": "^1.3.10", "@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 78fcc88822..86883f8637 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.9", + "version": "1.3.10", "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 c7956a5a16..a77824b2a8 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.9", + "version": "1.3.10", "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 8ad57fb369..3c4c50aec7 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.9", + "version": "1.3.10", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.9", + "@budibase/backend-core": "^1.3.10", "@budibase/pro": "1.3.9", - "@budibase/string-templates": "^1.3.9", - "@budibase/types": "^1.3.9", + "@budibase/string-templates": "^1.3.10", + "@budibase/types": "^1.3.10", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 8d669a8298db37850b5c6a5d442a9c4a7fb9b206 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 08:04:29 +0000 Subject: [PATCH 138/162] Update pro version to 1.3.10 --- 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 e006013253..d4727b4b28 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.10", "@budibase/client": "^1.3.10", - "@budibase/pro": "1.3.9", + "@budibase/pro": "1.3.10", "@budibase/string-templates": "^1.3.10", "@budibase/types": "^1.3.10", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index f6b5e529c5..5349398982 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.9.tgz#22c6dbf4b7c207c18640c72300b790f5885def39" - integrity sha512-M7jezhBe7LmlPmWBn4iJHnvXSwXlLn8xbmk/UbSRy6HmOnsQdf+dHUHwKBt8bKQIqVG9GfM/tliwBwNvqM7lVw== +"@budibase/backend-core@1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.10.tgz#7c73740460178e1b19f1186ae92b6605dffe1e1d" + integrity sha512-Z5jyjK3L0NBLhrf6JcX0Szn/pkapE2ELnpkqWwRucc+pngBEvUen6/tEWCV4K33Ddd8Oma/GK12KcWZ4FKWSXg== dependencies: - "@budibase/types" "^1.3.9" + "@budibase/types" "^1.3.10" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1178,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.9.tgz#fffc0e1ebe45f287af2601963f791e9616c55118" - integrity sha512-zgNIGdNJ1MnNUlSn1wp+uba6K3pDKB7o/l1okeUKtVnoQpIPg4QbPjH3KgfOSrUT90g/Ipbyw5DdyaMsdJyvoQ== +"@budibase/pro@1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.10.tgz#6d6946ca8c0f76fb16bfc657950892b1ab4f74a3" + integrity sha512-2B0fciZFs2WyyxifwtfBMpElrFBmnXYNtuHI3F2SS14rOIfjSITLAy5+UPvlZE7SSSNwnVpMoCc6EkF6BEzUtQ== dependencies: - "@budibase/backend-core" "1.3.9" - "@budibase/types" "1.3.9" + "@budibase/backend-core" "1.3.10" + "@budibase/types" "1.3.10" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1207,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.9", "@budibase/types@^1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.9.tgz#3cca4441e29c37fd370205cb3b97d99c7ea97b31" - integrity sha512-ahcITe3EZtf64bcoIoXaECkn6PNF8sYS1XWlRxDOmFhjVPw2GeydCW86lZ/Y1o1BbBtXqbVgq8+8rmjsJ02Z2g== +"@budibase/types@1.3.10", "@budibase/types@^1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.10.tgz#9bcf6014eac345bdb26a355db6d6872f8918f16e" + integrity sha512-0EnRwMpFfFtla7Piu22DHMztMEZjn8y+gAHkvjMr3OQRb7jNwWUJBss3NbNK2VInfIxvDkXrCJgiZ6/lVC3alQ== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 3c4c50aec7..ed180691b4 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.10", - "@budibase/pro": "1.3.9", + "@budibase/pro": "1.3.10", "@budibase/string-templates": "^1.3.10", "@budibase/types": "^1.3.10", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index a153c7728b..40cbb7c5a2 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.9.tgz#22c6dbf4b7c207c18640c72300b790f5885def39" - integrity sha512-M7jezhBe7LmlPmWBn4iJHnvXSwXlLn8xbmk/UbSRy6HmOnsQdf+dHUHwKBt8bKQIqVG9GfM/tliwBwNvqM7lVw== +"@budibase/backend-core@1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.10.tgz#7c73740460178e1b19f1186ae92b6605dffe1e1d" + integrity sha512-Z5jyjK3L0NBLhrf6JcX0Szn/pkapE2ELnpkqWwRucc+pngBEvUen6/tEWCV4K33Ddd8Oma/GK12KcWZ4FKWSXg== dependencies: - "@budibase/types" "^1.3.9" + "@budibase/types" "^1.3.10" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +325,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.9.tgz#fffc0e1ebe45f287af2601963f791e9616c55118" - integrity sha512-zgNIGdNJ1MnNUlSn1wp+uba6K3pDKB7o/l1okeUKtVnoQpIPg4QbPjH3KgfOSrUT90g/Ipbyw5DdyaMsdJyvoQ== +"@budibase/pro@1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.10.tgz#6d6946ca8c0f76fb16bfc657950892b1ab4f74a3" + integrity sha512-2B0fciZFs2WyyxifwtfBMpElrFBmnXYNtuHI3F2SS14rOIfjSITLAy5+UPvlZE7SSSNwnVpMoCc6EkF6BEzUtQ== dependencies: - "@budibase/backend-core" "1.3.9" - "@budibase/types" "1.3.9" + "@budibase/backend-core" "1.3.10" + "@budibase/types" "1.3.10" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.9", "@budibase/types@^1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.9.tgz#3cca4441e29c37fd370205cb3b97d99c7ea97b31" - integrity sha512-ahcITe3EZtf64bcoIoXaECkn6PNF8sYS1XWlRxDOmFhjVPw2GeydCW86lZ/Y1o1BbBtXqbVgq8+8rmjsJ02Z2g== +"@budibase/types@1.3.10", "@budibase/types@^1.3.10": + version "1.3.10" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.10.tgz#9bcf6014eac345bdb26a355db6d6872f8918f16e" + integrity sha512-0EnRwMpFfFtla7Piu22DHMztMEZjn8y+gAHkvjMr3OQRb7jNwWUJBss3NbNK2VInfIxvDkXrCJgiZ6/lVC3alQ== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From a4c51b7f0b64a5796c9b37ae0bef21b705cc4118 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Tue, 6 Sep 2022 09:12:34 +0100 Subject: [PATCH 139/162] closeModal Command Update Adding a line to verify that the modal was closed userManagement.spec.js - Increasing timeouts --- .../integration/adminAndManagement/userManagement.spec.js | 6 +++--- packages/builder/cypress/support/commands.js | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/builder/cypress/integration/adminAndManagement/userManagement.spec.js b/packages/builder/cypress/integration/adminAndManagement/userManagement.spec.js index 5a864e3bb3..000ca7cb54 100644 --- a/packages/builder/cypress/integration/adminAndManagement/userManagement.spec.js +++ b/packages/builder/cypress/integration/adminAndManagement/userManagement.spec.js @@ -74,11 +74,11 @@ filterTests(["smoke", "all"], () => { .contains("Update role") .click({ force: true }) }) - cy.reload({ timeout: 5000 }) + cy.reload() cy.wait(1000) } // Confirm roles exist within Configure roles table - cy.get(interact.SPECTRUM_TABLE, { timeout: 2000 }) + cy.get(interact.SPECTRUM_TABLE, { timeout: 20000 }) .eq(0) .within(assginedRoles => { expect(assginedRoles).to.contain("Admin") @@ -180,7 +180,7 @@ filterTests(["smoke", "all"], () => { cy.reload() // Confirm details have been saved - cy.get(interact.FIELD, { timeout: 1000 }).eq(1).within(() => { + cy.get(interact.FIELD, { timeout: 20000 }).eq(1).within(() => { cy.get(interact.SPECTRUM_TEXTFIELD_INPUT).should('have.value', "bb") }) cy.get(interact.FIELD, { timeout: 1000 }).eq(2).within(() => { diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index 394d5e9af2..3e935ee3d9 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -915,8 +915,9 @@ Cypress.Commands.add("createRestQuery", (method, restUrl, queryPrettyName) => { Cypress.Commands.add("closeModal", () => { cy.get(".spectrum-Modal", { timeout: 2000 }).within(() => { cy.get(".close-icon").click() - cy.wait(1000) // Wait for modal to close }) + // Confirm modal has closed + cy.get(".spectrum-Modal", { timeout: 10000 }).should("not.exist") }) Cypress.Commands.add("expandBudibaseConnection", () => { From ad30fe1799cdd20266b47c4aff9ef3525cad346c Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Tue, 6 Sep 2022 09:50:02 +0100 Subject: [PATCH 140/162] Cypress Command + Rest Timeout update rest.spec.js - Test was flakey on last nights smoke run - Updated to specifically search for query-buttons and then add query commands.js - Increasing timeout values for createTable & createDatasourceScreen commands --- .../integration/datasources/rest.spec.js | 2 +- packages/builder/cypress/support/commands.js | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/builder/cypress/integration/datasources/rest.spec.js b/packages/builder/cypress/integration/datasources/rest.spec.js index 488c30c0cf..7a145049e2 100644 --- a/packages/builder/cypress/integration/datasources/rest.spec.js +++ b/packages/builder/cypress/integration/datasources/rest.spec.js @@ -14,7 +14,7 @@ filterTests(["smoke", "all"], () => { // Select REST data source cy.selectExternalDatasource(datasource) // Enter incorrect api & attempt to send query - cy.get(".spectrum-Button", { timeout: 500 }).contains("Add query").click({ force: true }) + cy.get(".query-buttons", { timeout: 1000 }).contains("Add query").click({ force: true }) cy.intercept("**/preview").as("queryError") cy.get("input").clear().type("random text") cy.get(".spectrum-Button").contains("Send").click({ force: true }) diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index 3e935ee3d9..37f085082a 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -457,8 +457,8 @@ Cypress.Commands.add("createTable", (tableName, initialTable) => { cy.get(".spectrum-ButtonGroup").contains("Create").click() }) // Ensure modal has closed and table is created - cy.get(".spectrum-Modal").should("not.exist") - cy.get(".spectrum-Tabs-content", { timeout: 1000 }).should( + cy.get(".spectrum-Modal", { timeout: 2000 }).should("not.exist") + cy.get(".spectrum-Tabs-content", { timeout: 2000 }).should( "contain", tableName ) @@ -642,25 +642,25 @@ Cypress.Commands.add( cy.get(".spectrum-Button").contains("Continue").click({ force: true }) }) cy.get(".spectrum-Modal [data-cy='data-source-modal']", { - timeout: 500, + timeout: 20000, }).within(() => { for (let i = 0; i < datasourceNames.length; i++) { - cy.wait(500) - cy.get(".data-source-entry").contains(datasourceNames[i]).click() + cy.get(".data-source-entry", { timeout: 10000 }) + .contains(datasourceNames[i]) + .click({ force: true }) //Ensure the check mark is visible cy.get(".data-source-entry") .contains(datasourceNames[i]) - .get(".data-source-check") + .get(".data-source-check", { timeout: 10000 }) .should("exist") } cy.get(".spectrum-Button").contains("Confirm").click({ force: true }) }) - cy.get(".spectrum-Modal").within(() => { + cy.get(".spectrum-Modal", { timeout: 10000 }).within(() => { if (accessLevelLabel) { - cy.get(".spectrum-Picker-label").click() - cy.wait(500) + cy.get(".spectrum-Picker-label", { timeout: 10000 }).click() cy.contains(accessLevelLabel).click() } cy.get(".spectrum-Button").contains("Done").click({ force: true }) From 8dfb861e7f532c66cee0791f102c4250fa5c3bbc Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Tue, 6 Sep 2022 10:22:14 +0100 Subject: [PATCH 141/162] Exclude test utils from server and worker builds --- packages/backend-core/package.json | 2 +- packages/backend-core/tsconfig.build.json | 2 -- packages/server/tsconfig.build.json | 1 + packages/worker/tsconfig.build.json | 1 + 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 4b62dd6070..23f5755e8c 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -21,6 +21,7 @@ }, "dependencies": { "@budibase/types": "^1.3.10", + "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", "bcrypt": "5.0.1", @@ -60,7 +61,6 @@ ] }, "devDependencies": { - "@shopify/jest-koa-mocks": "5.0.1", "@types/jest": "27.5.1", "@types/koa": "2.0.52", "@types/lodash": "4.14.180", diff --git a/packages/backend-core/tsconfig.build.json b/packages/backend-core/tsconfig.build.json index acf93df89e..40ffe6b827 100644 --- a/packages/backend-core/tsconfig.build.json +++ b/packages/backend-core/tsconfig.build.json @@ -20,8 +20,6 @@ "package.json" ], "exclude": [ - "scripts", - "tests", "node_modules", "dist", "**/*.spec.ts", diff --git a/packages/server/tsconfig.build.json b/packages/server/tsconfig.build.json index a3cdb163d6..1ccdbfe0da 100644 --- a/packages/server/tsconfig.build.json +++ b/packages/server/tsconfig.build.json @@ -19,6 +19,7 @@ "exclude": [ "node_modules", "dist", + "src/tests", "**/*.spec.ts", "**/*.spec.js" ] diff --git a/packages/worker/tsconfig.build.json b/packages/worker/tsconfig.build.json index a3cdb163d6..1ccdbfe0da 100644 --- a/packages/worker/tsconfig.build.json +++ b/packages/worker/tsconfig.build.json @@ -19,6 +19,7 @@ "exclude": [ "node_modules", "dist", + "src/tests", "**/*.spec.ts", "**/*.spec.js" ] From 19f29789e65f08fb9e76ebdfc4c49e38b12d4443 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Tue, 6 Sep 2022 10:23:04 +0100 Subject: [PATCH 142/162] createDatasourceScreen - increase timeouts --- packages/builder/cypress/support/commands.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index 37f085082a..651ff7eabe 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -646,11 +646,11 @@ Cypress.Commands.add( }).within(() => { for (let i = 0; i < datasourceNames.length; i++) { cy.get(".data-source-entry", { timeout: 10000 }) - .contains(datasourceNames[i]) + .contains(datasourceNames[i], { timeout: 10000 }) .click({ force: true }) //Ensure the check mark is visible cy.get(".data-source-entry") - .contains(datasourceNames[i]) + .contains(datasourceNames[i], { timeout: 10000 }) .get(".data-source-check", { timeout: 10000 }) .should("exist") } From 22784948170277305fc43d240a5518ad1cbbed02 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Tue, 6 Sep 2022 11:15:52 +0100 Subject: [PATCH 143/162] Increase timeout for PostgreSQL test --- .../builder/cypress/integration/datasources/postgreSql.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/builder/cypress/integration/datasources/postgreSql.spec.js b/packages/builder/cypress/integration/datasources/postgreSql.spec.js index 582aa1cd2a..622c3ade73 100644 --- a/packages/builder/cypress/integration/datasources/postgreSql.spec.js +++ b/packages/builder/cypress/integration/datasources/postgreSql.spec.js @@ -162,7 +162,7 @@ filterTests(["all"], () => { switchSchema("randomText") // No tables displayed - cy.get(".spectrum-Body", { timeout: 20000 }).eq(2).should("contain", "No tables found") + cy.get(".spectrum-Body", { timeout: 10000 }).eq(2, { timeout: 10000 }).should("contain", "No tables found") // Previously created query should be visible cy.get(".spectrum-Table").should("contain", queryName) From 4011bfe1995a18043e71ff95e1f52ee73166a8a8 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 10:39:42 +0000 Subject: [PATCH 144/162] v1.3.11 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 64d71d67a1..9db7c460c1 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.10", + "version": "1.3.11", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 23f5755e8c..8fc87a240f 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.10", + "version": "1.3.11", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.10", + "@budibase/types": "^1.3.11", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 4bee823809..6b36546696 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": "1.3.10", + "version": "1.3.11", "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": "^1.3.10", + "@budibase/string-templates": "^1.3.11", "@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 490e34746b..74d247e60a 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.10", + "version": "1.3.11", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.10", - "@budibase/client": "^1.3.10", - "@budibase/frontend-core": "^1.3.10", - "@budibase/string-templates": "^1.3.10", + "@budibase/bbui": "^1.3.11", + "@budibase/client": "^1.3.11", + "@budibase/frontend-core": "^1.3.11", + "@budibase/string-templates": "^1.3.11", "@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 de837598a4..bab850c5eb 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.10", + "version": "1.3.11", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.10", + "@budibase/backend-core": "^1.3.11", "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 d49a1722b3..e37168e86c 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.10", + "version": "1.3.11", "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": "^1.3.10", - "@budibase/frontend-core": "^1.3.10", - "@budibase/string-templates": "^1.3.10", + "@budibase/bbui": "^1.3.11", + "@budibase/frontend-core": "^1.3.11", + "@budibase/string-templates": "^1.3.11", "@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 e730fa3662..68877b4f36 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.10", + "version": "1.3.11", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.10", + "@budibase/bbui": "^1.3.11", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index d4727b4b28..c2a6a7622b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.10", + "version": "1.3.11", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.10", - "@budibase/client": "^1.3.10", + "@budibase/backend-core": "^1.3.11", + "@budibase/client": "^1.3.11", "@budibase/pro": "1.3.10", - "@budibase/string-templates": "^1.3.10", - "@budibase/types": "^1.3.10", + "@budibase/string-templates": "^1.3.11", + "@budibase/types": "^1.3.11", "@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 86883f8637..a392aa8c2d 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.10", + "version": "1.3.11", "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 a77824b2a8..89e6dc9a47 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.10", + "version": "1.3.11", "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 ed180691b4..511b10d257 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.10", + "version": "1.3.11", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.10", + "@budibase/backend-core": "^1.3.11", "@budibase/pro": "1.3.10", - "@budibase/string-templates": "^1.3.10", - "@budibase/types": "^1.3.10", + "@budibase/string-templates": "^1.3.11", + "@budibase/types": "^1.3.11", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 4ba16eaf0ae6ddd68546f902c4c04116c71ac9ba Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 6 Sep 2022 10:42:55 +0000 Subject: [PATCH 145/162] Update pro version to 1.3.11 --- packages/server/package.json | 2 +- packages/server/yarn.lock | 79 +++++++++++++++++++++++++---------- packages/worker/package.json | 2 +- packages/worker/yarn.lock | 81 ++++++++++++++++++++++++++---------- 4 files changed, 117 insertions(+), 47 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index c2a6a7622b..06e9beaa61 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "^1.3.11", "@budibase/client": "^1.3.11", - "@budibase/pro": "1.3.10", + "@budibase/pro": "1.3.11", "@budibase/string-templates": "^1.3.11", "@budibase/types": "^1.3.11", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 5349398982..18f2df4194 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.10.tgz#7c73740460178e1b19f1186ae92b6605dffe1e1d" - integrity sha512-Z5jyjK3L0NBLhrf6JcX0Szn/pkapE2ELnpkqWwRucc+pngBEvUen6/tEWCV4K33Ddd8Oma/GK12KcWZ4FKWSXg== +"@budibase/backend-core@1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.11.tgz#ecd2125a97d7edd8c290caea659af01b08d456f7" + integrity sha512-JwZlHml5E4BCSRc94dUvM88ZWb6ZKogdaws366XQy0aa70z7M191LpsPP3x3mKZDg4H2hNNv2k4mQZBQBv0l8A== dependencies: - "@budibase/types" "^1.3.10" + "@budibase/types" "^1.3.11" + "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -1178,13 +1179,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.10.tgz#6d6946ca8c0f76fb16bfc657950892b1ab4f74a3" - integrity sha512-2B0fciZFs2WyyxifwtfBMpElrFBmnXYNtuHI3F2SS14rOIfjSITLAy5+UPvlZE7SSSNwnVpMoCc6EkF6BEzUtQ== +"@budibase/pro@1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.11.tgz#f21a31b13557effd6694c19c56aa6abca1853f93" + integrity sha512-L1UpN81SX3XKoMr9YqHQpOTKnxe3j0hixlOlJlFTU5bVWPVv0CGFAWnc7cDXlpVT8frgpyajNwrf6irNB4P7zw== dependencies: - "@budibase/backend-core" "1.3.10" - "@budibase/types" "1.3.10" + "@budibase/backend-core" "1.3.11" + "@budibase/types" "1.3.11" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1207,10 +1208,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.10", "@budibase/types@^1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.10.tgz#9bcf6014eac345bdb26a355db6d6872f8918f16e" - integrity sha512-0EnRwMpFfFtla7Piu22DHMztMEZjn8y+gAHkvjMr3OQRb7jNwWUJBss3NbNK2VInfIxvDkXrCJgiZ6/lVC3alQ== +"@budibase/types@1.3.11", "@budibase/types@^1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.11.tgz#41f2a5c7274e305751636df4aa645d5b418cbe7f" + integrity sha512-hXDqWxH0nVRlgU7CiaqAbD7txdctBed6ZSLmNUD0a2LGY/yueR6MbAO04TD5kXDGvLsEnjxcSWI2N+/GvzqluA== "@bull-board/api@3.7.0": version "3.7.0" @@ -2274,6 +2275,14 @@ "@sentry/types" "6.17.7" tslib "^1.9.3" +"@shopify/jest-koa-mocks@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@shopify/jest-koa-mocks/-/jest-koa-mocks-5.0.1.tgz#fba490b6b7985fbb571eb9974897d396a3642e94" + integrity sha512-4YskS9q8+TEHNoyopmuoy2XyhInyqeOl7CF5ShJs19sm6m0EA/jGGvgf/osv2PeTfuf42/L2G9CzWUSg49yTSg== + dependencies: + koa "^2.13.4" + node-mocks-http "^1.11.0" + "@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" @@ -3283,7 +3292,7 @@ abstract-leveldown@~6.2.1, abstract-leveldown@~6.2.3: level-supports "~1.0.0" xtend "~4.0.0" -accepts@^1.3.5: +accepts@^1.3.5, accepts@^1.3.7: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -4838,7 +4847,7 @@ container-info@^1.0.1: resolved "https://registry.yarnpkg.com/container-info/-/container-info-1.1.0.tgz#6fcb94e93eacd397c6316ca2834491ede44e55ee" integrity sha512-eD2zLAmxGS2kmL4f1jY8BdOqnmpL6X70kvzTBW/9FIQnxoxiBJ4htMsTmtPLPWRs7NHYFvqKQ1VtppV08mdsQA== -content-disposition@^0.5.2, content-disposition@~0.5.2: +content-disposition@^0.5.2, content-disposition@^0.5.3, content-disposition@~0.5.2: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== @@ -5290,7 +5299,7 @@ depd@2.0.0, depd@^2.0.0, depd@~2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@^1.1.2, depd@~1.1.2: +depd@^1.1.0, depd@^1.1.2, depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== @@ -6615,7 +6624,7 @@ fragment-cache@^0.2.1: dependencies: map-cache "^0.2.2" -fresh@~0.5.2: +fresh@^0.5.2, fresh@~0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== @@ -9458,7 +9467,7 @@ koa@2.7.0: type-is "^1.6.16" vary "^1.1.2" -koa@^2.13.1: +koa@^2.13.1, koa@^2.13.4: version "2.13.4" resolved "https://registry.yarnpkg.com/koa/-/koa-2.13.4.tgz#ee5b0cb39e0b8069c38d115139c774833d32462e" integrity sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g== @@ -10037,6 +10046,11 @@ memorystream@0.3.1: resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== +merge-descriptors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -10440,6 +10454,22 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== +node-mocks-http@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/node-mocks-http/-/node-mocks-http-1.11.0.tgz#defc0febf6b935f08245397d47534a8de592996e" + integrity sha512-jS/WzSOcKbOeGrcgKbenZeNhxUNnP36Yw11+hL4TTxQXErGfqYZ+MaYNNvhaTiGIJlzNSqgQkk9j8dSu1YWSuw== + dependencies: + accepts "^1.3.7" + content-disposition "^0.5.3" + depd "^1.1.0" + fresh "^0.5.2" + merge-descriptors "^1.0.1" + methods "^1.1.2" + mime "^1.3.4" + parseurl "^1.3.3" + range-parser "^1.2.0" + type-is "^1.6.18" + node-releases@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" @@ -10986,7 +11016,7 @@ parse5@6.0.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -parseurl@^1.3.2: +parseurl@^1.3.2, parseurl@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== @@ -11845,6 +11875,11 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" +range-parser@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + raw-body@^2.2.0: version "2.5.1" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" @@ -13893,7 +13928,7 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-is@^1.6.14, type-is@^1.6.16: +type-is@^1.6.14, type-is@^1.6.16, type-is@^1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== diff --git a/packages/worker/package.json b/packages/worker/package.json index 511b10d257..cfecf680c2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "^1.3.11", - "@budibase/pro": "1.3.10", + "@budibase/pro": "1.3.11", "@budibase/string-templates": "^1.3.11", "@budibase/types": "^1.3.11", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 40cbb7c5a2..08f9cfa1bd 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.10.tgz#7c73740460178e1b19f1186ae92b6605dffe1e1d" - integrity sha512-Z5jyjK3L0NBLhrf6JcX0Szn/pkapE2ELnpkqWwRucc+pngBEvUen6/tEWCV4K33Ddd8Oma/GK12KcWZ4FKWSXg== +"@budibase/backend-core@1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.11.tgz#ecd2125a97d7edd8c290caea659af01b08d456f7" + integrity sha512-JwZlHml5E4BCSRc94dUvM88ZWb6ZKogdaws366XQy0aa70z7M191LpsPP3x3mKZDg4H2hNNv2k4mQZBQBv0l8A== dependencies: - "@budibase/types" "^1.3.10" + "@budibase/types" "^1.3.11" + "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" bcrypt "5.0.1" @@ -325,21 +326,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.10.tgz#6d6946ca8c0f76fb16bfc657950892b1ab4f74a3" - integrity sha512-2B0fciZFs2WyyxifwtfBMpElrFBmnXYNtuHI3F2SS14rOIfjSITLAy5+UPvlZE7SSSNwnVpMoCc6EkF6BEzUtQ== +"@budibase/pro@1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.11.tgz#f21a31b13557effd6694c19c56aa6abca1853f93" + integrity sha512-L1UpN81SX3XKoMr9YqHQpOTKnxe3j0hixlOlJlFTU5bVWPVv0CGFAWnc7cDXlpVT8frgpyajNwrf6irNB4P7zw== dependencies: - "@budibase/backend-core" "1.3.10" - "@budibase/types" "1.3.10" + "@budibase/backend-core" "1.3.11" + "@budibase/types" "1.3.11" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.10", "@budibase/types@^1.3.10": - version "1.3.10" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.10.tgz#9bcf6014eac345bdb26a355db6d6872f8918f16e" - integrity sha512-0EnRwMpFfFtla7Piu22DHMztMEZjn8y+gAHkvjMr3OQRb7jNwWUJBss3NbNK2VInfIxvDkXrCJgiZ6/lVC3alQ== +"@budibase/types@1.3.11", "@budibase/types@^1.3.11": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.11.tgz#41f2a5c7274e305751636df4aa645d5b418cbe7f" + integrity sha512-hXDqWxH0nVRlgU7CiaqAbD7txdctBed6ZSLmNUD0a2LGY/yueR6MbAO04TD5kXDGvLsEnjxcSWI2N+/GvzqluA== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" @@ -741,6 +742,14 @@ "@sentry/types" "6.17.7" tslib "^1.9.3" +"@shopify/jest-koa-mocks@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@shopify/jest-koa-mocks/-/jest-koa-mocks-5.0.1.tgz#fba490b6b7985fbb571eb9974897d396a3642e94" + integrity sha512-4YskS9q8+TEHNoyopmuoy2XyhInyqeOl7CF5ShJs19sm6m0EA/jGGvgf/osv2PeTfuf42/L2G9CzWUSg49yTSg== + dependencies: + koa "^2.13.4" + node-mocks-http "^1.11.0" + "@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" @@ -1208,7 +1217,7 @@ abstract-leveldown@~6.2.1, abstract-leveldown@~6.2.3: level-supports "~1.0.0" xtend "~4.0.0" -accepts@^1.3.5: +accepts@^1.3.5, accepts@^1.3.7: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -2054,7 +2063,7 @@ container-info@^1.0.1: resolved "https://registry.yarnpkg.com/container-info/-/container-info-1.1.0.tgz#6fcb94e93eacd397c6316ca2834491ede44e55ee" integrity sha512-eD2zLAmxGS2kmL4f1jY8BdOqnmpL6X70kvzTBW/9FIQnxoxiBJ4htMsTmtPLPWRs7NHYFvqKQ1VtppV08mdsQA== -content-disposition@~0.5.2: +content-disposition@^0.5.3, content-disposition@~0.5.2: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== @@ -2308,7 +2317,7 @@ depd@2.0.0, depd@^2.0.0, depd@~2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@^1.1.2, depd@~1.1.2: +depd@^1.1.0, depd@^1.1.2, depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== @@ -3045,7 +3054,7 @@ forwarded-parse@^2.1.0: resolved "https://registry.yarnpkg.com/forwarded-parse/-/forwarded-parse-2.1.2.tgz#08511eddaaa2ddfd56ba11138eee7df117a09325" integrity sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw== -fresh@~0.5.2: +fresh@^0.5.2, fresh@~0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== @@ -4653,7 +4662,7 @@ koa-static@5.0.0: debug "^3.1.0" koa-send "^5.0.0" -koa@2.13.4: +koa@2.13.4, koa@^2.13.4: version "2.13.4" resolved "https://registry.yarnpkg.com/koa/-/koa-2.13.4.tgz#ee5b0cb39e0b8069c38d115139c774833d32462e" integrity sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g== @@ -5000,6 +5009,11 @@ memdown@1.4.1: ltgt "~2.2.0" safe-buffer "~5.1.1" +merge-descriptors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5040,7 +5054,7 @@ mime@2.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== -mime@^1.4.1: +mime@^1.3.4, mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -5201,6 +5215,22 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== +node-mocks-http@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/node-mocks-http/-/node-mocks-http-1.11.0.tgz#defc0febf6b935f08245397d47534a8de592996e" + integrity sha512-jS/WzSOcKbOeGrcgKbenZeNhxUNnP36Yw11+hL4TTxQXErGfqYZ+MaYNNvhaTiGIJlzNSqgQkk9j8dSu1YWSuw== + dependencies: + accepts "^1.3.7" + content-disposition "^0.5.3" + depd "^1.1.0" + fresh "^0.5.2" + merge-descriptors "^1.0.1" + methods "^1.1.2" + mime "^1.3.4" + parseurl "^1.3.3" + range-parser "^1.2.0" + type-is "^1.6.18" + node-releases@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" @@ -5468,7 +5498,7 @@ parse5@6.0.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -parseurl@^1.3.2: +parseurl@^1.3.2, parseurl@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== @@ -6061,6 +6091,11 @@ quick-lru@^5.1.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== +range-parser@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + raw-body@^2.2.0: version "2.5.1" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" @@ -7168,7 +7203,7 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-is@^1.6.14, type-is@^1.6.16: +type-is@^1.6.14, type-is@^1.6.16, type-is@^1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== From d7c55b0968f3f1b09569254ba38cb2682e8b3708 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Tue, 6 Sep 2022 12:14:17 +0100 Subject: [PATCH 146/162] Updating commands.js - createDatasourceScreen These changes are related to the autoScreensUI tests failing on the smoke build CI run. I've changed timeout values and reworking data-cy IDs --- packages/builder/cypress/support/commands.js | 21 ++++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index 651ff7eabe..e7f753fdb0 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -637,21 +637,20 @@ Cypress.Commands.add( (datasourceNames, accessLevelLabel) => { cy.contains("Design").click() cy.get(".spectrum-Button").contains("Add screen").click({ force: true }) - cy.get(".spectrum-Modal").within(() => { - cy.get(".item").contains("Autogenerated screens").click() + cy.get(".spectrum-Dialog-grid").within(() => { + cy.get("[data-cy='autogenerated-screens']").click() cy.get(".spectrum-Button").contains("Continue").click({ force: true }) }) - cy.get(".spectrum-Modal [data-cy='data-source-modal']", { - timeout: 20000, - }).within(() => { + cy.get("[data-cy='autogenerated-screens']").should("not.exist") + cy.get("[data-cy='data-source-modal']", { timeout: 10000 }).within(() => { for (let i = 0; i < datasourceNames.length; i++) { - cy.get(".data-source-entry", { timeout: 10000 }) - .contains(datasourceNames[i], { timeout: 10000 }) - .click({ force: true }) - //Ensure the check mark is visible cy.get(".data-source-entry") - .contains(datasourceNames[i], { timeout: 10000 }) - .get(".data-source-check", { timeout: 10000 }) + .contains(datasourceNames[i], { timeout: 20000 }) + .click({ force: true }) + // Ensure the check mark is visible + cy.get(".data-source-entry") + .contains(datasourceNames[i]) + .get(".data-source-check", { timeout: 20000 }) .should("exist") } From 23073179ebf8af23d7138fc2b6be88d3f87ae009 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Tue, 6 Sep 2022 13:36:58 +0000 Subject: [PATCH 147/162] v1.3.12-alpha.0 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 9db7c460c1..24bf633827 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.11", + "version": "1.3.12-alpha.0", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 8fc87a240f..714181650b 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "^1.3.11", + "@budibase/types": "1.3.12-alpha.0", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 6b36546696..9e40006728 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": "1.3.11", + "version": "1.3.12-alpha.0", "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": "^1.3.11", + "@budibase/string-templates": "1.3.12-alpha.0", "@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 74d247e60a..8d78d0b263 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.3.11", - "@budibase/client": "^1.3.11", - "@budibase/frontend-core": "^1.3.11", - "@budibase/string-templates": "^1.3.11", + "@budibase/bbui": "1.3.12-alpha.0", + "@budibase/client": "1.3.12-alpha.0", + "@budibase/frontend-core": "1.3.12-alpha.0", + "@budibase/string-templates": "1.3.12-alpha.0", "@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 bab850c5eb..eb5f9c2a4b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.11", + "@budibase/backend-core": "1.3.12-alpha.0", "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 e37168e86c..766fed6c84 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "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": "^1.3.11", - "@budibase/frontend-core": "^1.3.11", - "@budibase/string-templates": "^1.3.11", + "@budibase/bbui": "1.3.12-alpha.0", + "@budibase/frontend-core": "1.3.12-alpha.0", + "@budibase/string-templates": "1.3.12-alpha.0", "@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 68877b4f36..49b8774045 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "^1.3.11", + "@budibase/bbui": "1.3.12-alpha.0", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 06e9beaa61..d4543437eb 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "^1.3.11", - "@budibase/client": "^1.3.11", + "@budibase/backend-core": "1.3.12-alpha.0", + "@budibase/client": "1.3.12-alpha.0", "@budibase/pro": "1.3.11", - "@budibase/string-templates": "^1.3.11", - "@budibase/types": "^1.3.11", + "@budibase/string-templates": "1.3.12-alpha.0", + "@budibase/types": "1.3.12-alpha.0", "@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 a392aa8c2d..5abad0e898 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "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 89e6dc9a47..856721f74c 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "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 cfecf680c2..2dc87a3939 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.11", + "version": "1.3.12-alpha.0", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.3.11", + "@budibase/backend-core": "1.3.12-alpha.0", "@budibase/pro": "1.3.11", - "@budibase/string-templates": "^1.3.11", - "@budibase/types": "^1.3.11", + "@budibase/string-templates": "1.3.12-alpha.0", + "@budibase/types": "1.3.12-alpha.0", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 0c7eedd7a5e772eeb31d8f503157aba91d8379a1 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Tue, 6 Sep 2022 13:40:42 +0000 Subject: [PATCH 148/162] Update pro version to 1.3.12-alpha.0 --- 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 d4543437eb..54ec525cce 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.12-alpha.0", "@budibase/client": "1.3.12-alpha.0", - "@budibase/pro": "1.3.11", + "@budibase/pro": "1.3.12-alpha.0", "@budibase/string-templates": "1.3.12-alpha.0", "@budibase/types": "1.3.12-alpha.0", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 18f2df4194..071d2a350b 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.11.tgz#ecd2125a97d7edd8c290caea659af01b08d456f7" - integrity sha512-JwZlHml5E4BCSRc94dUvM88ZWb6ZKogdaws366XQy0aa70z7M191LpsPP3x3mKZDg4H2hNNv2k4mQZBQBv0l8A== +"@budibase/backend-core@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.0.tgz#b86c3efb0952c55eb9f3c9f63298d9163005a71c" + integrity sha512-1xTXtyZC+PLz83XjvH4yf7q9z9z/TSKTnCfVEJlP63gmSg9T8BlUdgyx+bk1EnZIzznqv/9RKH24sT5hBV3h2Q== dependencies: - "@budibase/types" "^1.3.11" + "@budibase/types" "1.3.12-alpha.0" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -1179,13 +1179,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.11.tgz#f21a31b13557effd6694c19c56aa6abca1853f93" - integrity sha512-L1UpN81SX3XKoMr9YqHQpOTKnxe3j0hixlOlJlFTU5bVWPVv0CGFAWnc7cDXlpVT8frgpyajNwrf6irNB4P7zw== +"@budibase/pro@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.0.tgz#b595fc893ebe998c98a8171fb99566192e36ed14" + integrity sha512-Bb/6h0znMKJ/fOhGE0CJy8MHc5PF/N6QHnb2s43Y8FCYDZ74DOy8swb48V61oUv3bbFS874sl20kLJpbxHjMFA== dependencies: - "@budibase/backend-core" "1.3.11" - "@budibase/types" "1.3.11" + "@budibase/backend-core" "1.3.12-alpha.0" + "@budibase/types" "1.3.12-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1208,10 +1208,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.11", "@budibase/types@^1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.11.tgz#41f2a5c7274e305751636df4aa645d5b418cbe7f" - integrity sha512-hXDqWxH0nVRlgU7CiaqAbD7txdctBed6ZSLmNUD0a2LGY/yueR6MbAO04TD5kXDGvLsEnjxcSWI2N+/GvzqluA== +"@budibase/types@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.0.tgz#794e1b3b5633a38421283b516f74556c5ae3bcf8" + integrity sha512-nWaaZV284CXdF1n7yAQ2xekh4MGhyCukLEswDeiKEyxR5/riBtebp6wvBZvR+SL3cBc0ueCnE7eQfcQYrn7R1Q== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 2dc87a3939..3c12998c5b 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.12-alpha.0", - "@budibase/pro": "1.3.11", + "@budibase/pro": "1.3.12-alpha.0", "@budibase/string-templates": "1.3.12-alpha.0", "@budibase/types": "1.3.12-alpha.0", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 08f9cfa1bd..7d3e9cd51a 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.11.tgz#ecd2125a97d7edd8c290caea659af01b08d456f7" - integrity sha512-JwZlHml5E4BCSRc94dUvM88ZWb6ZKogdaws366XQy0aa70z7M191LpsPP3x3mKZDg4H2hNNv2k4mQZBQBv0l8A== +"@budibase/backend-core@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.0.tgz#b86c3efb0952c55eb9f3c9f63298d9163005a71c" + integrity sha512-1xTXtyZC+PLz83XjvH4yf7q9z9z/TSKTnCfVEJlP63gmSg9T8BlUdgyx+bk1EnZIzznqv/9RKH24sT5hBV3h2Q== dependencies: - "@budibase/types" "^1.3.11" + "@budibase/types" "1.3.12-alpha.0" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -326,21 +326,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.11.tgz#f21a31b13557effd6694c19c56aa6abca1853f93" - integrity sha512-L1UpN81SX3XKoMr9YqHQpOTKnxe3j0hixlOlJlFTU5bVWPVv0CGFAWnc7cDXlpVT8frgpyajNwrf6irNB4P7zw== +"@budibase/pro@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.0.tgz#b595fc893ebe998c98a8171fb99566192e36ed14" + integrity sha512-Bb/6h0znMKJ/fOhGE0CJy8MHc5PF/N6QHnb2s43Y8FCYDZ74DOy8swb48V61oUv3bbFS874sl20kLJpbxHjMFA== dependencies: - "@budibase/backend-core" "1.3.11" - "@budibase/types" "1.3.11" + "@budibase/backend-core" "1.3.12-alpha.0" + "@budibase/types" "1.3.12-alpha.0" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.11", "@budibase/types@^1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.11.tgz#41f2a5c7274e305751636df4aa645d5b418cbe7f" - integrity sha512-hXDqWxH0nVRlgU7CiaqAbD7txdctBed6ZSLmNUD0a2LGY/yueR6MbAO04TD5kXDGvLsEnjxcSWI2N+/GvzqluA== +"@budibase/types@1.3.12-alpha.0": + version "1.3.12-alpha.0" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.0.tgz#794e1b3b5633a38421283b516f74556c5ae3bcf8" + integrity sha512-nWaaZV284CXdF1n7yAQ2xekh4MGhyCukLEswDeiKEyxR5/riBtebp6wvBZvR+SL3cBc0ueCnE7eQfcQYrn7R1Q== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From 82795b50ef66e1c4ae4b4dccb04178560fa13993 Mon Sep 17 00:00:00 2001 From: ChukwuEmeka Date: Tue, 6 Sep 2022 21:51:45 +0100 Subject: [PATCH 149/162] switched from deprecated node-sass to sass library --- examples/nextjs-api-sales/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/nextjs-api-sales/package.json b/examples/nextjs-api-sales/package.json index 777d07f968..41ce52e952 100644 --- a/examples/nextjs-api-sales/package.json +++ b/examples/nextjs-api-sales/package.json @@ -12,7 +12,7 @@ "bulma": "^0.9.3", "next": "12.1.0", "node-fetch": "^3.2.10", - "node-sass": "^7.0.1", + "sass": "^1.52.3", "react": "17.0.2", "react-dom": "17.0.2", "react-notifications-component": "^3.4.1" @@ -24,4 +24,4 @@ "eslint-config-next": "12.1.0", "typescript": "4.6.2" } -} +} \ No newline at end of file From 6dc3739a340ecfd9be373afeadcec9ea65985091 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 7 Sep 2022 08:48:29 +0100 Subject: [PATCH 150/162] Inject process env vars into ES6 bundle to fix crash --- packages/string-templates/package.json | 1 + packages/string-templates/rollup.config.js | 4 ++++ packages/string-templates/yarn.lock | 23 ++++++++++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 329d78894d..4eca9f1081 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -39,6 +39,7 @@ "jest": "^26.6.3", "marked": "^4.0.10", "rollup": "^2.36.2", + "rollup-plugin-inject-process-env": "^1.3.1", "rollup-plugin-node-builtins": "^2.1.2", "rollup-plugin-node-globals": "^1.4.0", "rollup-plugin-node-resolve": "^5.2.0", diff --git a/packages/string-templates/rollup.config.js b/packages/string-templates/rollup.config.js index 5625f8180c..d7f45489c9 100644 --- a/packages/string-templates/rollup.config.js +++ b/packages/string-templates/rollup.config.js @@ -4,6 +4,7 @@ import json from "@rollup/plugin-json" import { terser } from "rollup-plugin-terser" import builtins from "rollup-plugin-node-builtins" import globals from "rollup-plugin-node-globals" +import injectProcessEnv from "rollup-plugin-inject-process-env" const production = !process.env.ROLLUP_WATCH @@ -24,6 +25,9 @@ export default [ globals(), builtins(), json(), + injectProcessEnv({ + NO_JS: process.env.NO_JS, + }), production && terser(), ], }, diff --git a/packages/string-templates/yarn.lock b/packages/string-templates/yarn.lock index 7647fa1928..dc7e8f1852 100644 --- a/packages/string-templates/yarn.lock +++ b/packages/string-templates/yarn.lock @@ -568,6 +568,15 @@ magic-string "^0.25.7" resolve "^1.17.0" +"@rollup/plugin-inject@^4.0.0": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@rollup/plugin-inject/-/plugin-inject-4.0.4.tgz#fbeee66e9a700782c4f65c8b0edbafe58678fbc2" + integrity sha512-4pbcU4J/nS+zuHk+c+OL3WtmEQhqxlZ9uqfjQMQDOHOPld7PsCd8k5LWs8h5wjwJN7MgnAn768F2sDxEP4eNFQ== + dependencies: + "@rollup/pluginutils" "^3.1.0" + estree-walker "^2.0.1" + magic-string "^0.25.7" + "@rollup/plugin-json@^4.1.0": version "4.1.0" resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3" @@ -3747,6 +3756,13 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" +rollup-plugin-inject-process-env@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/rollup-plugin-inject-process-env/-/rollup-plugin-inject-process-env-1.3.1.tgz#2d7660fe76f2b221b976cb35597763ffcaad3db3" + integrity sha512-kKDoL30IZr0wxbNVJjq+OS92RJSKRbKV6B5eNW4q3mZTFqoWDh6lHy+mPDYuuGuERFNKXkG+AKxvYqC9+DRpKQ== + dependencies: + magic-string "^0.25.7" + rollup-plugin-node-builtins@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz#24a1fed4a43257b6b64371d8abc6ce1ab14597e9" @@ -3780,6 +3796,13 @@ rollup-plugin-node-resolve@^5.2.0: resolve "^1.11.1" rollup-pluginutils "^2.8.1" +rollup-plugin-polyfill-node@^0.10.2: + version "0.10.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-polyfill-node/-/rollup-plugin-polyfill-node-0.10.2.tgz#b2128646851fcb9475ddfd5bc22ca1a8c568738d" + integrity sha512-5GMywXiLiuQP6ZzED/LO/Q0HyDi2W6b8VN+Zd3oB0opIjyRs494Me2ZMaqKWDNbGiW4jvvzl6L2n4zRgxS9cSQ== + dependencies: + "@rollup/plugin-inject" "^4.0.0" + rollup-plugin-terser@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d" From 494fc29311578199337edf3ca9cb5ab8b3dab8c8 Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Wed, 7 Sep 2022 09:50:02 +0100 Subject: [PATCH 151/162] Cypress: Smoke: autoScreensUI Updating createDatasourceScreen command to assist with timing issues against the smoke CI run - Only occurs on the smoke build, passes locally --- packages/builder/cypress/support/commands.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index e7f753fdb0..bb26e53d80 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -639,7 +639,9 @@ Cypress.Commands.add( cy.get(".spectrum-Button").contains("Add screen").click({ force: true }) cy.get(".spectrum-Dialog-grid").within(() => { cy.get("[data-cy='autogenerated-screens']").click() + cy.intercept("**/api/datasources").as("autoScreens") cy.get(".spectrum-Button").contains("Continue").click({ force: true }) + cy.wait("@autoScreens") }) cy.get("[data-cy='autogenerated-screens']").should("not.exist") cy.get("[data-cy='data-source-modal']", { timeout: 10000 }).within(() => { From ffd077a86e91b5f54a7bae3b51d1520c89044f64 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 10:16:09 +0000 Subject: [PATCH 152/162] v1.3.12-alpha.1 --- lerna.json | 2 +- packages/backend-core/package.json | 4 ++-- packages/bbui/package.json | 4 ++-- packages/builder/package.json | 10 +++++----- packages/cli/package.json | 4 ++-- packages/client/package.json | 8 ++++---- packages/frontend-core/package.json | 4 ++-- packages/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lerna.json b/lerna.json index 24bf633827..efbd4520e1 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 714181650b..0b58e3497e 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.12-alpha.0", + "@budibase/types": "1.3.12-alpha.1", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 9e40006728..ee0b00a2b5 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": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "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": "1.3.12-alpha.0", + "@budibase/string-templates": "1.3.12-alpha.1", "@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 8d78d0b263..69bf164f50 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.12-alpha.0", - "@budibase/client": "1.3.12-alpha.0", - "@budibase/frontend-core": "1.3.12-alpha.0", - "@budibase/string-templates": "1.3.12-alpha.0", + "@budibase/bbui": "1.3.12-alpha.1", + "@budibase/client": "1.3.12-alpha.1", + "@budibase/frontend-core": "1.3.12-alpha.1", + "@budibase/string-templates": "1.3.12-alpha.1", "@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 eb5f9c2a4b..4d896e26ab 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,7 +26,7 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.3.12-alpha.0", + "@budibase/backend-core": "1.3.12-alpha.1", "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 766fed6c84..139ee20c9c 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "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": "1.3.12-alpha.0", - "@budibase/frontend-core": "1.3.12-alpha.0", - "@budibase/string-templates": "1.3.12-alpha.0", + "@budibase/bbui": "1.3.12-alpha.1", + "@budibase/frontend-core": "1.3.12-alpha.1", + "@budibase/string-templates": "1.3.12-alpha.1", "@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 49b8774045..e3a888a4e4 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.12-alpha.0", + "@budibase/bbui": "1.3.12-alpha.1", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 54ec525cce..ddfd99bdce 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.12-alpha.0", - "@budibase/client": "1.3.12-alpha.0", + "@budibase/backend-core": "1.3.12-alpha.1", + "@budibase/client": "1.3.12-alpha.1", "@budibase/pro": "1.3.12-alpha.0", - "@budibase/string-templates": "1.3.12-alpha.0", - "@budibase/types": "1.3.12-alpha.0", + "@budibase/string-templates": "1.3.12-alpha.1", + "@budibase/types": "1.3.12-alpha.1", "@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 5abad0e898..ff7e799b38 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "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 856721f74c..6af650da47 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "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 3c12998c5b..9308dfb7e5 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.12-alpha.0", + "version": "1.3.12-alpha.1", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.12-alpha.0", + "@budibase/backend-core": "1.3.12-alpha.1", "@budibase/pro": "1.3.12-alpha.0", - "@budibase/string-templates": "1.3.12-alpha.0", - "@budibase/types": "1.3.12-alpha.0", + "@budibase/string-templates": "1.3.12-alpha.1", + "@budibase/types": "1.3.12-alpha.1", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From 026450c23d25ff0de2c9c83b12e01cc1f0ba624d Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 10:19:31 +0000 Subject: [PATCH 153/162] Update pro version to 1.3.12-alpha.1 --- 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 ddfd99bdce..0071e1924b 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.12-alpha.1", "@budibase/client": "1.3.12-alpha.1", - "@budibase/pro": "1.3.12-alpha.0", + "@budibase/pro": "1.3.12-alpha.1", "@budibase/string-templates": "1.3.12-alpha.1", "@budibase/types": "1.3.12-alpha.1", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 071d2a350b..296008dfc1 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.0.tgz#b86c3efb0952c55eb9f3c9f63298d9163005a71c" - integrity sha512-1xTXtyZC+PLz83XjvH4yf7q9z9z/TSKTnCfVEJlP63gmSg9T8BlUdgyx+bk1EnZIzznqv/9RKH24sT5hBV3h2Q== +"@budibase/backend-core@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.1.tgz#a38f36610a4880b5f8c18192d82244a431c28a86" + integrity sha512-V1rtNBMob3BJjOGeMyvro2tqYoC85TSIO8wyJf1c4DRpPN0rW3s6MjSmVItqtZlbrcnHmxKFr4PDFDIBJaHnbg== dependencies: - "@budibase/types" "1.3.12-alpha.0" + "@budibase/types" "1.3.12-alpha.1" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -1179,13 +1179,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.0.tgz#b595fc893ebe998c98a8171fb99566192e36ed14" - integrity sha512-Bb/6h0znMKJ/fOhGE0CJy8MHc5PF/N6QHnb2s43Y8FCYDZ74DOy8swb48V61oUv3bbFS874sl20kLJpbxHjMFA== +"@budibase/pro@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.1.tgz#5161f3c646e275fd7f9a72abf817fb407cfd6efe" + integrity sha512-lzsZeZuUGqs8eRsCB3T7yBo4yS7z7L3N2qW9Pzh7/VBwFv4NdQH56tniXCf3oFfxsQ+6xH++vklfRxddID/Dfg== dependencies: - "@budibase/backend-core" "1.3.12-alpha.0" - "@budibase/types" "1.3.12-alpha.0" + "@budibase/backend-core" "1.3.12-alpha.1" + "@budibase/types" "1.3.12-alpha.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1208,10 +1208,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.0.tgz#794e1b3b5633a38421283b516f74556c5ae3bcf8" - integrity sha512-nWaaZV284CXdF1n7yAQ2xekh4MGhyCukLEswDeiKEyxR5/riBtebp6wvBZvR+SL3cBc0ueCnE7eQfcQYrn7R1Q== +"@budibase/types@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.1.tgz#18fda1652a757479be45fe096235af1b966ca49c" + integrity sha512-dNP+9zRKX7cYjwL+0/zdlYnMGMUWSyw3Vi+YmWNdXVcQnMXsc9gSbODBQMNv4YNqXBBC+0xgo/A5wRqWhZFL6g== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 9308dfb7e5..d0f391ed41 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.12-alpha.1", - "@budibase/pro": "1.3.12-alpha.0", + "@budibase/pro": "1.3.12-alpha.1", "@budibase/string-templates": "1.3.12-alpha.1", "@budibase/types": "1.3.12-alpha.1", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 7d3e9cd51a..431c655d1f 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.0.tgz#b86c3efb0952c55eb9f3c9f63298d9163005a71c" - integrity sha512-1xTXtyZC+PLz83XjvH4yf7q9z9z/TSKTnCfVEJlP63gmSg9T8BlUdgyx+bk1EnZIzznqv/9RKH24sT5hBV3h2Q== +"@budibase/backend-core@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.1.tgz#a38f36610a4880b5f8c18192d82244a431c28a86" + integrity sha512-V1rtNBMob3BJjOGeMyvro2tqYoC85TSIO8wyJf1c4DRpPN0rW3s6MjSmVItqtZlbrcnHmxKFr4PDFDIBJaHnbg== dependencies: - "@budibase/types" "1.3.12-alpha.0" + "@budibase/types" "1.3.12-alpha.1" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -326,21 +326,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.0.tgz#b595fc893ebe998c98a8171fb99566192e36ed14" - integrity sha512-Bb/6h0znMKJ/fOhGE0CJy8MHc5PF/N6QHnb2s43Y8FCYDZ74DOy8swb48V61oUv3bbFS874sl20kLJpbxHjMFA== +"@budibase/pro@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.1.tgz#5161f3c646e275fd7f9a72abf817fb407cfd6efe" + integrity sha512-lzsZeZuUGqs8eRsCB3T7yBo4yS7z7L3N2qW9Pzh7/VBwFv4NdQH56tniXCf3oFfxsQ+6xH++vklfRxddID/Dfg== dependencies: - "@budibase/backend-core" "1.3.12-alpha.0" - "@budibase/types" "1.3.12-alpha.0" + "@budibase/backend-core" "1.3.12-alpha.1" + "@budibase/types" "1.3.12-alpha.1" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.12-alpha.0": - version "1.3.12-alpha.0" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.0.tgz#794e1b3b5633a38421283b516f74556c5ae3bcf8" - integrity sha512-nWaaZV284CXdF1n7yAQ2xekh4MGhyCukLEswDeiKEyxR5/riBtebp6wvBZvR+SL3cBc0ueCnE7eQfcQYrn7R1Q== +"@budibase/types@1.3.12-alpha.1": + version "1.3.12-alpha.1" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.1.tgz#18fda1652a757479be45fe096235af1b966ca49c" + integrity sha512-dNP+9zRKX7cYjwL+0/zdlYnMGMUWSyw3Vi+YmWNdXVcQnMXsc9gSbODBQMNv4YNqXBBC+0xgo/A5wRqWhZFL6g== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From f9a604e7040f104a13d94b1b2a1b64061b87c99e Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 7 Sep 2022 12:06:05 +0100 Subject: [PATCH 154/162] Fix version being referenced in app plugin metadata --- packages/server/src/api/controllers/screen.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/api/controllers/screen.js b/packages/server/src/api/controllers/screen.js index 07b15dd8a1..c49d64484f 100644 --- a/packages/server/src/api/controllers/screen.js +++ b/packages/server/src/api/controllers/screen.js @@ -55,7 +55,7 @@ exports.save = async ctx => { .filter(plugin => { return ( plugin.schema.type === "component" && - pluginNames.includes(`plugin/${plugin.name}/${plugin.version}`) + pluginNames.includes(`plugin/${plugin.name}`) ) }) From 142c277fabddc280a8731b85d3512e02558676e8 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 7 Sep 2022 12:40:32 +0100 Subject: [PATCH 155/162] Fix spacing for custom datasources in new datasource modal --- .../modals/CreateDatasourceModal.svelte | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte index 8454f3b3d5..1c9d3c76a8 100644 --- a/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte +++ b/packages/builder/src/components/backend/DatasourceNavigator/modals/CreateDatasourceModal.svelte @@ -166,7 +166,10 @@ /> {/each}
- {#if customIntegrations.length > 0} + + + {#if customIntegrations.length > 0} + Custom data source
{#each customIntegrations as [integrationType, schema]} @@ -178,8 +181,8 @@ /> {/each}
- {/if} -
+ + {/if} From 67c21f7808b5ff6551d56a145ef358e7008d6640 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 7 Sep 2022 13:37:45 +0100 Subject: [PATCH 156/162] Sort plugins alphabetically in new component panel --- .../new/_components/NewComponentPanel.svelte | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) 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 c18df34556..8cef10fb26 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 @@ -58,10 +58,14 @@ enrichedStructure.push({ name: "Plugins", isCategory: true, - children: customComponents.map(x => ({ - ...definitions[x], - name: definitions[x].friendlyName || definitions[x].name, - })), + children: customComponents + .map(x => ({ + ...definitions[x], + name: definitions[x].friendlyName || definitions[x].name, + })) + .sort((a, b) => { + return a.name.toLowerCase() < b.name.toLowerCase() ? -1 : 1 + }), }) } From 524669082e217d108b5c4a1586de74cb6f9d7a5f Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Wed, 7 Sep 2022 13:52:05 +0100 Subject: [PATCH 157/162] Update createDatasourceScreen Adding a manual wait this time go better determine the timing issue occurring against the CI runs --- packages/builder/cypress/support/commands.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js index bb26e53d80..a07a22188f 100644 --- a/packages/builder/cypress/support/commands.js +++ b/packages/builder/cypress/support/commands.js @@ -642,6 +642,7 @@ Cypress.Commands.add( cy.intercept("**/api/datasources").as("autoScreens") cy.get(".spectrum-Button").contains("Continue").click({ force: true }) cy.wait("@autoScreens") + cy.wait(5000) }) cy.get("[data-cy='autogenerated-screens']").should("not.exist") cy.get("[data-cy='data-source-modal']", { timeout: 10000 }).within(() => { From 76870217376710fa1a8bf554fdfcc5f446dbde6c Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 13:27:13 +0000 Subject: [PATCH 158/162] v1.3.12-alpha.2 --- 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/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 31 insertions(+), 31 deletions(-) diff --git a/lerna.json b/lerna.json index efbd4520e1..a74e653725 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 0b58e3497e..5f3414bab9 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.12-alpha.1", + "@budibase/types": "1.3.12-alpha.2", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index ee0b00a2b5..95fb5c855b 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": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "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": "1.3.12-alpha.1", + "@budibase/string-templates": "1.3.12-alpha.2", "@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 c596412bc7..3d7e34b8d7 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.12-alpha.1", - "@budibase/client": "1.3.12-alpha.1", - "@budibase/frontend-core": "1.3.12-alpha.1", - "@budibase/string-templates": "1.3.12-alpha.1", + "@budibase/bbui": "1.3.12-alpha.2", + "@budibase/client": "1.3.12-alpha.2", + "@budibase/frontend-core": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.2", "@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 cef8ddfd72..3c11d7d624 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "^1.3.12-alpha.1", - "@budibase/string-templates": "^1.3.12-alpha.1", - "@budibase/types": "^1.3.12-alpha.1", + "@budibase/backend-core": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.2", + "@budibase/types": "1.3.12-alpha.2", "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 139ee20c9c..1df066dbdb 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "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": "1.3.12-alpha.1", - "@budibase/frontend-core": "1.3.12-alpha.1", - "@budibase/string-templates": "1.3.12-alpha.1", + "@budibase/bbui": "1.3.12-alpha.2", + "@budibase/frontend-core": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.2", "@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 e3a888a4e4..b686e3cea5 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.12-alpha.1", + "@budibase/bbui": "1.3.12-alpha.2", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index 127945266f..5c0b41c805 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.12-alpha.1", - "@budibase/client": "1.3.12-alpha.1", + "@budibase/backend-core": "1.3.12-alpha.2", + "@budibase/client": "1.3.12-alpha.2", "@budibase/pro": "1.3.12-alpha.1", - "@budibase/string-templates": "1.3.12-alpha.1", - "@budibase/types": "1.3.12-alpha.1", + "@budibase/string-templates": "1.3.12-alpha.2", + "@budibase/types": "1.3.12-alpha.2", "@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 fa20295974..3c2e35aba6 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "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 6af650da47..c5164852ed 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "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 d0f391ed41..1547f24b30 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.12-alpha.1", + "version": "1.3.12-alpha.2", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.12-alpha.1", + "@budibase/backend-core": "1.3.12-alpha.2", "@budibase/pro": "1.3.12-alpha.1", - "@budibase/string-templates": "1.3.12-alpha.1", - "@budibase/types": "1.3.12-alpha.1", + "@budibase/string-templates": "1.3.12-alpha.2", + "@budibase/types": "1.3.12-alpha.2", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From b0ed4970fc5537c933887b560f569eb9925b2f8c Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 13:30:26 +0000 Subject: [PATCH 159/162] Update pro version to 1.3.12-alpha.2 --- 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 5c0b41c805..c72c68817d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.12-alpha.2", "@budibase/client": "1.3.12-alpha.2", - "@budibase/pro": "1.3.12-alpha.1", + "@budibase/pro": "1.3.12-alpha.2", "@budibase/string-templates": "1.3.12-alpha.2", "@budibase/types": "1.3.12-alpha.2", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index ff811617dc..2a3db0f037 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.1.tgz#a38f36610a4880b5f8c18192d82244a431c28a86" - integrity sha512-V1rtNBMob3BJjOGeMyvro2tqYoC85TSIO8wyJf1c4DRpPN0rW3s6MjSmVItqtZlbrcnHmxKFr4PDFDIBJaHnbg== +"@budibase/backend-core@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.2.tgz#cab9edd5bde68c245c1b01e29bdd1468cfb10031" + integrity sha512-8NEGk71xnctP9xHGhC9Y5Dy3ilBE8HAW6WtWueOv7SZupa6Y5x0hdtzaJJY1/6oEqnhW/eGYXvPQpffOtfpgYg== dependencies: - "@budibase/types" "1.3.12-alpha.1" + "@budibase/types" "1.3.12-alpha.2" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -1179,13 +1179,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.1.tgz#5161f3c646e275fd7f9a72abf817fb407cfd6efe" - integrity sha512-lzsZeZuUGqs8eRsCB3T7yBo4yS7z7L3N2qW9Pzh7/VBwFv4NdQH56tniXCf3oFfxsQ+6xH++vklfRxddID/Dfg== +"@budibase/pro@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.2.tgz#d49accc3c6258e4a258ed60046aa8756f2993895" + integrity sha512-gu/nKTKtHIhqeLrvQfB1z6sIEePWN3453TtVldPgDdl4luVcax4RhktWAw4/Bxyn/NyU80rNjcmBTlMh59Hj0A== dependencies: - "@budibase/backend-core" "1.3.12-alpha.1" - "@budibase/types" "1.3.12-alpha.1" + "@budibase/backend-core" "1.3.12-alpha.2" + "@budibase/types" "1.3.12-alpha.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1208,10 +1208,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.1.tgz#18fda1652a757479be45fe096235af1b966ca49c" - integrity sha512-dNP+9zRKX7cYjwL+0/zdlYnMGMUWSyw3Vi+YmWNdXVcQnMXsc9gSbODBQMNv4YNqXBBC+0xgo/A5wRqWhZFL6g== +"@budibase/types@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.2.tgz#e95c6d963000c5b561e8c3007df02ae8fd2a4869" + integrity sha512-pyw10xOPb78deK3aZzhpYuXMGBVrUzAb7Z5AANzDFvi4ggInY6c2GGjrzL/PfHy3DeLZkYnPDxkvaF6GNF6Txw== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index 1547f24b30..85b7e4be7e 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.12-alpha.2", - "@budibase/pro": "1.3.12-alpha.1", + "@budibase/pro": "1.3.12-alpha.2", "@budibase/string-templates": "1.3.12-alpha.2", "@budibase/types": "1.3.12-alpha.2", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 431c655d1f..52ab196d8f 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.1.tgz#a38f36610a4880b5f8c18192d82244a431c28a86" - integrity sha512-V1rtNBMob3BJjOGeMyvro2tqYoC85TSIO8wyJf1c4DRpPN0rW3s6MjSmVItqtZlbrcnHmxKFr4PDFDIBJaHnbg== +"@budibase/backend-core@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.2.tgz#cab9edd5bde68c245c1b01e29bdd1468cfb10031" + integrity sha512-8NEGk71xnctP9xHGhC9Y5Dy3ilBE8HAW6WtWueOv7SZupa6Y5x0hdtzaJJY1/6oEqnhW/eGYXvPQpffOtfpgYg== dependencies: - "@budibase/types" "1.3.12-alpha.1" + "@budibase/types" "1.3.12-alpha.2" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -326,21 +326,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.1.tgz#5161f3c646e275fd7f9a72abf817fb407cfd6efe" - integrity sha512-lzsZeZuUGqs8eRsCB3T7yBo4yS7z7L3N2qW9Pzh7/VBwFv4NdQH56tniXCf3oFfxsQ+6xH++vklfRxddID/Dfg== +"@budibase/pro@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.2.tgz#d49accc3c6258e4a258ed60046aa8756f2993895" + integrity sha512-gu/nKTKtHIhqeLrvQfB1z6sIEePWN3453TtVldPgDdl4luVcax4RhktWAw4/Bxyn/NyU80rNjcmBTlMh59Hj0A== dependencies: - "@budibase/backend-core" "1.3.12-alpha.1" - "@budibase/types" "1.3.12-alpha.1" + "@budibase/backend-core" "1.3.12-alpha.2" + "@budibase/types" "1.3.12-alpha.2" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.12-alpha.1": - version "1.3.12-alpha.1" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.1.tgz#18fda1652a757479be45fe096235af1b966ca49c" - integrity sha512-dNP+9zRKX7cYjwL+0/zdlYnMGMUWSyw3Vi+YmWNdXVcQnMXsc9gSbODBQMNv4YNqXBBC+0xgo/A5wRqWhZFL6g== +"@budibase/types@1.3.12-alpha.2": + version "1.3.12-alpha.2" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.2.tgz#e95c6d963000c5b561e8c3007df02ae8fd2a4869" + integrity sha512-pyw10xOPb78deK3aZzhpYuXMGBVrUzAb7Z5AANzDFvi4ggInY6c2GGjrzL/PfHy3DeLZkYnPDxkvaF6GNF6Txw== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0" From ae3463fc7b3e4a887d3621cf7fe2ebf0bbb100bd Mon Sep 17 00:00:00 2001 From: Mitch-Budibase Date: Wed, 7 Sep 2022 15:42:45 +0100 Subject: [PATCH 160/162] Oracle + datasource Wizard Test skips Skipping tests for Oracle & datasourceWizard Both are covered during general regressions There are timing issues associated with the CI Smoke run This will help reduce the smoke build run time The oracle test file was only covering a basic check of invalid configuration (Not essential for the smoke run) --- .../cypress/integration/datasources/datasourceWizard.spec.js | 2 +- packages/builder/cypress/integration/datasources/oracle.spec.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/builder/cypress/integration/datasources/datasourceWizard.spec.js b/packages/builder/cypress/integration/datasources/datasourceWizard.spec.js index 14653d8286..837a433951 100644 --- a/packages/builder/cypress/integration/datasources/datasourceWizard.spec.js +++ b/packages/builder/cypress/integration/datasources/datasourceWizard.spec.js @@ -1,7 +1,7 @@ import filterTests from "../../support/filterTests" filterTests(['all'], () => { - context("Datasource Wizard", () => { + xcontext("Datasource Wizard", () => { if (Cypress.env("TEST_ENV")) { before(() => { cy.login() diff --git a/packages/builder/cypress/integration/datasources/oracle.spec.js b/packages/builder/cypress/integration/datasources/oracle.spec.js index 92a5737ff9..5d92d6b217 100644 --- a/packages/builder/cypress/integration/datasources/oracle.spec.js +++ b/packages/builder/cypress/integration/datasources/oracle.spec.js @@ -1,7 +1,7 @@ import filterTests from "../../support/filterTests" filterTests(["all"], () => { - context("Oracle Datasource Testing", () => { + xcontext("Oracle Datasource Testing", () => { if (Cypress.env("TEST_ENV")) { before(() => { cy.login() From ae578a3a01f5f2b190daa56f90836f3fe674d4e5 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 15:10:29 +0000 Subject: [PATCH 161/162] v1.3.12-alpha.3 --- 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/server/package.json | 10 +++++----- packages/string-templates/package.json | 2 +- packages/types/package.json | 2 +- packages/worker/package.json | 8 ++++---- 11 files changed, 31 insertions(+), 31 deletions(-) diff --git a/lerna.json b/lerna.json index a74e653725..bee30cbc57 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 5f3414bab9..3f5cb33241 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "description": "Budibase backend core libraries used in server and worker", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@budibase/types": "1.3.12-alpha.2", + "@budibase/types": "1.3.12-alpha.3", "@shopify/jest-koa-mocks": "5.0.1", "@techpass/passport-openidconnect": "0.3.2", "aws-sdk": "2.1030.0", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 95fb5c855b..c9e35848f3 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": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "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": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.3", "@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 3d7e34b8d7..fb5a3d2244 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "license": "GPL-3.0", "private": true, "scripts": { @@ -69,10 +69,10 @@ } }, "dependencies": { - "@budibase/bbui": "1.3.12-alpha.2", - "@budibase/client": "1.3.12-alpha.2", - "@budibase/frontend-core": "1.3.12-alpha.2", - "@budibase/string-templates": "1.3.12-alpha.2", + "@budibase/bbui": "1.3.12-alpha.3", + "@budibase/client": "1.3.12-alpha.3", + "@budibase/frontend-core": "1.3.12-alpha.3", + "@budibase/string-templates": "1.3.12-alpha.3", "@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 3c11d7d624..497933ea76 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { @@ -26,9 +26,9 @@ "outputPath": "build" }, "dependencies": { - "@budibase/backend-core": "1.3.12-alpha.2", - "@budibase/string-templates": "1.3.12-alpha.2", - "@budibase/types": "1.3.12-alpha.2", + "@budibase/backend-core": "1.3.12-alpha.3", + "@budibase/string-templates": "1.3.12-alpha.3", + "@budibase/types": "1.3.12-alpha.3", "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 1df066dbdb..9166a8ead2 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "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": "1.3.12-alpha.2", - "@budibase/frontend-core": "1.3.12-alpha.2", - "@budibase/string-templates": "1.3.12-alpha.2", + "@budibase/bbui": "1.3.12-alpha.3", + "@budibase/frontend-core": "1.3.12-alpha.3", + "@budibase/string-templates": "1.3.12-alpha.3", "@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 b686e3cea5..823a6a7458 100644 --- a/packages/frontend-core/package.json +++ b/packages/frontend-core/package.json @@ -1,12 +1,12 @@ { "name": "@budibase/frontend-core", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "description": "Budibase frontend core libraries used in builder and client", "author": "Budibase", "license": "MPL-2.0", "svelte": "src/index.js", "dependencies": { - "@budibase/bbui": "1.3.12-alpha.2", + "@budibase/bbui": "1.3.12-alpha.3", "lodash": "^4.17.21", "svelte": "^3.46.2" } diff --git a/packages/server/package.json b/packages/server/package.json index c72c68817d..8524eebe27 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -77,11 +77,11 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "10.0.3", - "@budibase/backend-core": "1.3.12-alpha.2", - "@budibase/client": "1.3.12-alpha.2", + "@budibase/backend-core": "1.3.12-alpha.3", + "@budibase/client": "1.3.12-alpha.3", "@budibase/pro": "1.3.12-alpha.2", - "@budibase/string-templates": "1.3.12-alpha.2", - "@budibase/types": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.3", + "@budibase/types": "1.3.12-alpha.3", "@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 3c2e35aba6..da6ace54e7 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "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 c5164852ed..84f7431d7d 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/types", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "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 85b7e4be7e..e5a5968084 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.3.12-alpha.2", + "version": "1.3.12-alpha.3", "description": "Budibase background service", "main": "src/index.ts", "repository": { @@ -35,10 +35,10 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "1.3.12-alpha.2", + "@budibase/backend-core": "1.3.12-alpha.3", "@budibase/pro": "1.3.12-alpha.2", - "@budibase/string-templates": "1.3.12-alpha.2", - "@budibase/types": "1.3.12-alpha.2", + "@budibase/string-templates": "1.3.12-alpha.3", + "@budibase/types": "1.3.12-alpha.3", "@koa/router": "8.0.8", "@sentry/node": "6.17.7", "@techpass/passport-openidconnect": "0.3.2", From c737168718ca4d3599afec93fb5748b17f93786a Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Wed, 7 Sep 2022 15:13:50 +0000 Subject: [PATCH 162/162] Update pro version to 1.3.12-alpha.3 --- 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 8524eebe27..896d920045 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -79,7 +79,7 @@ "@apidevtools/swagger-parser": "10.0.3", "@budibase/backend-core": "1.3.12-alpha.3", "@budibase/client": "1.3.12-alpha.3", - "@budibase/pro": "1.3.12-alpha.2", + "@budibase/pro": "1.3.12-alpha.3", "@budibase/string-templates": "1.3.12-alpha.3", "@budibase/types": "1.3.12-alpha.3", "@bull-board/api": "3.7.0", diff --git a/packages/server/yarn.lock b/packages/server/yarn.lock index 2a3db0f037..d89a21f0d3 100644 --- a/packages/server/yarn.lock +++ b/packages/server/yarn.lock @@ -1094,12 +1094,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.2.tgz#cab9edd5bde68c245c1b01e29bdd1468cfb10031" - integrity sha512-8NEGk71xnctP9xHGhC9Y5Dy3ilBE8HAW6WtWueOv7SZupa6Y5x0hdtzaJJY1/6oEqnhW/eGYXvPQpffOtfpgYg== +"@budibase/backend-core@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.3.tgz#baf7ea0590db9e49db08e4e05b7d374a2ed05f20" + integrity sha512-8xkaJX2kA2n7LKNXJ9SSyQnvOYRPDxiZ6BKDEPNoOa0WjYZ/htCnUJxgjdnSSzSojqfdDf8eqxa+pGXA87ZU6Q== dependencies: - "@budibase/types" "1.3.12-alpha.2" + "@budibase/types" "1.3.12-alpha.3" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -1179,13 +1179,13 @@ svelte-flatpickr "^3.2.3" svelte-portal "^1.0.0" -"@budibase/pro@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.2.tgz#d49accc3c6258e4a258ed60046aa8756f2993895" - integrity sha512-gu/nKTKtHIhqeLrvQfB1z6sIEePWN3453TtVldPgDdl4luVcax4RhktWAw4/Bxyn/NyU80rNjcmBTlMh59Hj0A== +"@budibase/pro@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.3.tgz#30dce4ba54aa7c19b60d6faf2852e3402c81ee50" + integrity sha512-qDddYE6XNbiNIpADUIhXWvgBjJMNxWhHdCpS7Qoci2tmoS4ofLlh5C8qKJuddg3RaLkWIQmII/p/ZnZ0uQ3E9A== dependencies: - "@budibase/backend-core" "1.3.12-alpha.2" - "@budibase/types" "1.3.12-alpha.2" + "@budibase/backend-core" "1.3.12-alpha.3" + "@budibase/types" "1.3.12-alpha.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" @@ -1208,10 +1208,10 @@ svelte-apexcharts "^1.0.2" svelte-flatpickr "^3.1.0" -"@budibase/types@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.2.tgz#e95c6d963000c5b561e8c3007df02ae8fd2a4869" - integrity sha512-pyw10xOPb78deK3aZzhpYuXMGBVrUzAb7Z5AANzDFvi4ggInY6c2GGjrzL/PfHy3DeLZkYnPDxkvaF6GNF6Txw== +"@budibase/types@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.3.tgz#26c5f168281f5ead4a108af2918ce9810d92d239" + integrity sha512-dvs+KWlu+DdaVKAA6vU2qTZJmS4ACIllBSSjDeG0sGOBkIlGJSi5aC6zvkPXpaaZlbDQpDwao/9xNP+Ub8wj1g== "@bull-board/api@3.7.0": version "3.7.0" diff --git a/packages/worker/package.json b/packages/worker/package.json index e5a5968084..79754d4ee0 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -36,7 +36,7 @@ "license": "GPL-3.0", "dependencies": { "@budibase/backend-core": "1.3.12-alpha.3", - "@budibase/pro": "1.3.12-alpha.2", + "@budibase/pro": "1.3.12-alpha.3", "@budibase/string-templates": "1.3.12-alpha.3", "@budibase/types": "1.3.12-alpha.3", "@koa/router": "8.0.8", diff --git a/packages/worker/yarn.lock b/packages/worker/yarn.lock index 52ab196d8f..02d5bc0e3a 100644 --- a/packages/worker/yarn.lock +++ b/packages/worker/yarn.lock @@ -291,12 +291,12 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@budibase/backend-core@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.2.tgz#cab9edd5bde68c245c1b01e29bdd1468cfb10031" - integrity sha512-8NEGk71xnctP9xHGhC9Y5Dy3ilBE8HAW6WtWueOv7SZupa6Y5x0hdtzaJJY1/6oEqnhW/eGYXvPQpffOtfpgYg== +"@budibase/backend-core@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/backend-core/-/backend-core-1.3.12-alpha.3.tgz#baf7ea0590db9e49db08e4e05b7d374a2ed05f20" + integrity sha512-8xkaJX2kA2n7LKNXJ9SSyQnvOYRPDxiZ6BKDEPNoOa0WjYZ/htCnUJxgjdnSSzSojqfdDf8eqxa+pGXA87ZU6Q== dependencies: - "@budibase/types" "1.3.12-alpha.2" + "@budibase/types" "1.3.12-alpha.3" "@shopify/jest-koa-mocks" "5.0.1" "@techpass/passport-openidconnect" "0.3.2" aws-sdk "2.1030.0" @@ -326,21 +326,21 @@ uuid "8.3.2" zlib "1.0.5" -"@budibase/pro@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.2.tgz#d49accc3c6258e4a258ed60046aa8756f2993895" - integrity sha512-gu/nKTKtHIhqeLrvQfB1z6sIEePWN3453TtVldPgDdl4luVcax4RhktWAw4/Bxyn/NyU80rNjcmBTlMh59Hj0A== +"@budibase/pro@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/pro/-/pro-1.3.12-alpha.3.tgz#30dce4ba54aa7c19b60d6faf2852e3402c81ee50" + integrity sha512-qDddYE6XNbiNIpADUIhXWvgBjJMNxWhHdCpS7Qoci2tmoS4ofLlh5C8qKJuddg3RaLkWIQmII/p/ZnZ0uQ3E9A== dependencies: - "@budibase/backend-core" "1.3.12-alpha.2" - "@budibase/types" "1.3.12-alpha.2" + "@budibase/backend-core" "1.3.12-alpha.3" + "@budibase/types" "1.3.12-alpha.3" "@koa/router" "8.0.8" joi "17.6.0" node-fetch "^2.6.1" -"@budibase/types@1.3.12-alpha.2": - version "1.3.12-alpha.2" - resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.2.tgz#e95c6d963000c5b561e8c3007df02ae8fd2a4869" - integrity sha512-pyw10xOPb78deK3aZzhpYuXMGBVrUzAb7Z5AANzDFvi4ggInY6c2GGjrzL/PfHy3DeLZkYnPDxkvaF6GNF6Txw== +"@budibase/types@1.3.12-alpha.3": + version "1.3.12-alpha.3" + resolved "https://registry.yarnpkg.com/@budibase/types/-/types-1.3.12-alpha.3.tgz#26c5f168281f5ead4a108af2918ce9810d92d239" + integrity sha512-dvs+KWlu+DdaVKAA6vU2qTZJmS4ACIllBSSjDeG0sGOBkIlGJSi5aC6zvkPXpaaZlbDQpDwao/9xNP+Ub8wj1g== "@cspotcode/source-map-consumer@0.8.0": version "0.8.0"