Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

backmerge master #11281

Merged
merged 2 commits into from
Jul 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/release-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ jobs:
git fetch
mkdir sync
echo "Packaging chart to sync dir"
helm package charts/budibase --version 0.0.0-master --app-version v"$RELEASE_VERSION" --destination sync
helm package charts/budibase --version 0.0.0-master --app-version "$RELEASE_VERSION" --destination sync
echo "Packaging successful"
git checkout gh-pages
echo "Indexing helm repo"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release-selfhost.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
run: |
docker login -u $DOCKER_USER -p $DOCKER_PASSWORD

release_tag=v${{ env.RELEASE_VERSION }}
release_tag=${{ env.RELEASE_VERSION }}

# Pull apps and worker images
docker pull budibase/apps:$release_tag
Expand Down Expand Up @@ -108,8 +108,8 @@ jobs:
- name: Perform Github Release
uses: softprops/action-gh-release@v1
with:
name: v${{ env.RELEASE_VERSION }}
tag_name: v${{ env.RELEASE_VERSION }}
name: ${{ env.RELEASE_VERSION }}
tag_name: ${{ env.RELEASE_VERSION }}
generate_release_notes: true
files: |
packages/cli/build/cli-win.exe
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-singleimage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ jobs:
context: .
push: true
platforms: linux/amd64,linux/arm64
tags: budibase/budibase,budibase/budibase:v${{ env.RELEASE_VERSION }}
tags: budibase/budibase,budibase/budibase:${{ env.RELEASE_VERSION }}
file: ./hosting/single/Dockerfile
- name: Tag and release Budibase Azure App Service docker image
uses: docker/build-push-action@v2
Expand All @@ -80,5 +80,5 @@ jobs:
push: true
platforms: linux/amd64
build-args: TARGETBUILD=aas
tags: budibase/budibase-aas,budibase/budibase-aas:v${{ env.RELEASE_VERSION }}
tags: budibase/budibase-aas,budibase/budibase-aas:${{ env.RELEASE_VERSION }}
file: ./hosting/single/Dockerfile
2 changes: 1 addition & 1 deletion charts/budibase/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ services:
# Override values in couchDB subchart
couchdb:
## clusterSize is the initial size of the CouchDB cluster.
clusterSize: 3
clusterSize: 1
allowAdminParty: false

# Secret Management
Expand Down
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "2.8.12-alpha.6",
"version": "2.8.15",
"npmClient": "yarn",
"packages": [
"packages/*"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
Icon,
Checkbox,
DatePicker,
Detail,
} from "@budibase/bbui"
import CreateWebhookModal from "components/automation/Shared/CreateWebhookModal.svelte"
import { automationStore, selectedAutomation } from "builderStore"
Expand All @@ -32,7 +33,7 @@
import CodeEditor from "components/common/CodeEditor/CodeEditor.svelte"
import {
bindingsToCompletions,
jsAutocomplete,
hbAutocomplete,
EditorModes,
} from "components/common/CodeEditor"
import FilterDrawer from "components/design/settings/controls/FilterEditor/FilterDrawer.svelte"
Expand All @@ -55,6 +56,7 @@
let drawer
let fillWidth = true
let inputData
let codeBindingOpen = false

$: filters = lookForFilters(schemaProperties) || []
$: tempFilters = filters
Expand All @@ -70,6 +72,13 @@
$: queryLimit = tableId?.includes("datasource") ? "∞" : "1000"
$: isTrigger = block?.type === "TRIGGER"
$: isUpdateRow = stepId === ActionStepID.UPDATE_ROW
$: codeMode =
stepId === "EXECUTE_BASH" ? EditorModes.Handlebars : EditorModes.JS

$: stepCompletions =
codeMode === EditorModes.Handlebars
? [hbAutocomplete([...bindingsToCompletions(bindings, codeMode)])]
: []

/**
* TODO - Remove after November 2023
Expand Down Expand Up @@ -489,26 +498,41 @@
/>
{:else if value.customType === "code"}
<CodeEditorModal>
{#if codeMode == EditorModes.JS}
<ActionButton
on:click={() => (codeBindingOpen = !codeBindingOpen)}
quiet
icon={codeBindingOpen ? "ChevronDown" : "ChevronRight"}
>
<Detail size="S">Bindings</Detail>
</ActionButton>
{#if codeBindingOpen}
<pre>{JSON.stringify(bindings, null, 2)}</pre>
{/if}
{/if}
<CodeEditor
value={inputData[key]}
on:change={e => {
// need to pass without the value inside
onChange({ detail: e.detail }, key)
inputData[key] = e.detail
}}
completions={[
jsAutocomplete([
...bindingsToCompletions(bindings, EditorModes.JS),
]),
]}
mode={EditorModes.JS}
completions={stepCompletions}
mode={codeMode}
autocompleteEnabled={codeMode != EditorModes.JS}
height={500}
/>
<div class="messaging">
<Icon name="FlashOn" />
<div class="messaging-wrap">
<div>Add available bindings by typing <strong>$</strong></div>
</div>
{#if codeMode == EditorModes.Handlebars}
<Icon name="FlashOn" />
<div class="messaging-wrap">
<div>
Add available bindings by typing <strong>
&#125;&#125;
</strong>
</div>
</div>
{/if}
</div>
</CodeEditorModal>
{:else if value.customType === "loopOption"}
Expand Down
29 changes: 18 additions & 11 deletions packages/builder/src/components/common/CodeEditor/CodeEditor.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
export let mode = EditorModes.Handlebars
export let value = ""
export let placeholder = null
export let autocompleteEnabled = true

// Export a function to expose caret position
export const getCaretPosition = () => {
Expand Down Expand Up @@ -150,12 +151,6 @@
syntaxHighlighting(oneDarkHighlightStyle, { fallback: true }),
highlightActiveLineGutter(),
highlightSpecialChars(),
autocompletion({
override: [...completions],
closeOnBlur: true,
icons: false,
optionClass: () => "autocomplete-option",
}),
EditorView.lineWrapping,
EditorView.updateListener.of(v => {
const docStr = v.state.doc?.toString()
Expand All @@ -178,11 +173,16 @@

const buildExtensions = base => {
const complete = [...base]
if (mode.name == "javascript") {
complete.push(javascript())
complete.push(highlightWhitespace())
complete.push(lineNumbers())
complete.push(foldGutter())

if (autocompleteEnabled) {
complete.push(
autocompletion({
override: [...completions],
closeOnBlur: true,
icons: false,
optionClass: () => "autocomplete-option",
})
)
complete.push(
EditorView.inputHandler.of((view, from, to, insert) => {
if (insert === "$") {
Expand Down Expand Up @@ -212,6 +212,13 @@
)
}

if (mode.name == "javascript") {
complete.push(javascript())
complete.push(highlightWhitespace())
complete.push(lineNumbers())
complete.push(foldGutter())
}

if (placeholder) {
complete.push(placeholderFn(placeholder))
}
Expand Down
19 changes: 10 additions & 9 deletions packages/client/src/components/Block.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,31 @@

let structureLookupMap = {}

const registerBlockComponent = (id, order, parentId, instance) => {
const registerBlockComponent = (id, parentId, order, instance) => {
// Ensure child map exists
if (!structureLookupMap[parentId]) {
structureLookupMap[parentId] = {}
}
// Add this instance in this order, overwriting any existing instance in
// this order in case of repeaters
structureLookupMap[parentId][order] = instance
structureLookupMap[parentId][id] = { order, instance }
}

const unregisterBlockComponent = (order, parentId) => {
const unregisterBlockComponent = (id, parentId) => {
// Ensure child map exists
if (!structureLookupMap[parentId]) {
return
}
delete structureLookupMap[parentId][order]
delete structureLookupMap[parentId][id]
}

const eject = () => {
// Start the new structure with the root component
let definition = structureLookupMap[$component.id][0]
const rootMap = structureLookupMap[$component.id] || {}
let definition = Object.values(rootMap)[0]?.instance
if (!definition) {
return
}

// Copy styles from block to root component
definition._styles = {
Expand All @@ -49,10 +53,7 @@
const attachChildren = (rootComponent, map) => {
// Transform map into children array
let id = rootComponent._id
const children = Object.entries(map[id] || {}).map(([order, instance]) => ({
order,
instance,
}))
const children = Object.values(map[id] || {})
if (!children.length) {
return
}
Expand Down
10 changes: 6 additions & 4 deletions packages/client/src/components/BlockComponent.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
// Create a fake component instance so that we can use the core Component
// to render this part of the block, taking advantage of binding enrichment
$: id = `${block.id}-${context ?? rand}`
$: parentId = $component?.id
$: inBuilder = $builderStore.inBuilder
$: instance = {
_component: `@budibase/standard-components/${type}`,
_id: id,
Expand All @@ -38,14 +40,14 @@
// Register this block component if we're inside the builder so it can be
// ejected later
$: {
if ($builderStore.inBuilder) {
block.registerComponent(id, order ?? 0, $component?.id, instance)
if (inBuilder) {
block.registerComponent(id, parentId, order ?? 0, instance)
}
}

onDestroy(() => {
if ($builderStore.inBuilder) {
block.unregisterComponent(order ?? 0, $component?.id)
if (inBuilder) {
block.unregisterComponent(id, parentId)
}
})
</script>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@
order={1}
>
{#if enrichedSearchColumns?.length}
{#each enrichedSearchColumns as column, idx}
{#each enrichedSearchColumns as column, idx (column.name)}
<BlockComponent
type={column.componentType}
props={{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@
order={1}
>
{#if enrichedSearchColumns?.length}
{#each enrichedSearchColumns as column, idx}
{#each enrichedSearchColumns as column, idx (column.name)}
<BlockComponent
type={column.componentType}
props={{
Expand Down
2 changes: 1 addition & 1 deletion packages/client/src/utils/buttonActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ export const enrichButtonActions = (actions, context) => {
actions.slice(i + 1),
newContext
)
resolve(await next())
resolve(typeof next === "function" ? await next() : true)
} else {
resolve(false)
}
Expand Down
2 changes: 1 addition & 1 deletion scripts/versionCommit.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ node ./bumpVersion.js $1
NEW_VERSION=$(node -p "require('../lerna.json').version")
git add ../lerna.json
git commit -m "Bump version to $NEW_VERSION"
git tag v$NEW_VERSION
git tag $NEW_VERSION
git push
git push --tags
Loading