diff --git a/hosting/proxy/nginx.prod.conf b/hosting/proxy/nginx.prod.conf
index 79007da311..12b8df049f 100644
--- a/hosting/proxy/nginx.prod.conf
+++ b/hosting/proxy/nginx.prod.conf
@@ -61,7 +61,7 @@ http {
set $csp_img "img-src http: https: data: blob:";
set $csp_manifest "manifest-src 'self'";
set $csp_media "media-src 'self' https://js.intercomcdn.com https://cdn.budi.live";
- set $csp_worker "worker-src 'none'";
+ set $csp_worker "worker-src blob:";
error_page 502 503 504 /error.html;
location = /error.html {
diff --git a/lerna.json b/lerna.json
index cba15492eb..9488ebe3a0 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,5 +1,5 @@
{
- "version": "2.26.4",
+ "version": "2.27.3",
"npmClient": "yarn",
"packages": [
"packages/*",
@@ -22,4 +22,4 @@
"loadEnvFiles": false
}
}
-}
\ No newline at end of file
+}
diff --git a/packages/backend-core/src/docIds/ids.ts b/packages/backend-core/src/docIds/ids.ts
index 9627b2b94c..a828c1b91e 100644
--- a/packages/backend-core/src/docIds/ids.ts
+++ b/packages/backend-core/src/docIds/ids.ts
@@ -18,6 +18,14 @@ export const generateAppID = (tenantId?: string | null) => {
return `${id}${newid()}`
}
+/**
+ * Generates a new table ID.
+ * @returns The new table ID which the table doc can be stored under.
+ */
+export function generateTableID() {
+ return `${DocumentType.TABLE}${SEPARATOR}${newid()}`
+}
+
/**
* Gets a new row ID for the specified table.
* @param tableId The table which the row is being created for.
diff --git a/packages/bbui/src/Form/Core/DatePicker/NumberInput.svelte b/packages/bbui/src/Form/Core/DatePicker/NumberInput.svelte
index dc4886d28d..6c06ce4e79 100644
--- a/packages/bbui/src/Form/Core/DatePicker/NumberInput.svelte
+++ b/packages/bbui/src/Form/Core/DatePicker/NumberInput.svelte
@@ -4,13 +4,14 @@
export let max
export let hideArrows = false
export let width
+ export let type = "number"
$: style = width ? `width:${width}px;` : ""
diff --git a/packages/bbui/src/Form/Core/DatePicker/TimePicker.svelte b/packages/bbui/src/Form/Core/DatePicker/TimePicker.svelte
index 047e5a4f08..4f070bdcfb 100644
--- a/packages/bbui/src/Form/Core/DatePicker/TimePicker.svelte
+++ b/packages/bbui/src/Form/Core/DatePicker/TimePicker.svelte
@@ -1,5 +1,4 @@
- :
-
@@ -50,10 +36,4 @@
flex-direction: row;
align-items: center;
}
- .time-picker span {
- font-weight: bold;
- font-size: 18px;
- z-index: 0;
- margin-bottom: 1px;
- }
diff --git a/packages/bbui/src/helpers.js b/packages/bbui/src/helpers.js
index 90b447f3c1..0f912a7161 100644
--- a/packages/bbui/src/helpers.js
+++ b/packages/bbui/src/helpers.js
@@ -166,9 +166,14 @@ export const stringifyDate = (
const offsetForTimezone = (enableTime && ignoreTimezones) || timeOnly
if (offsetForTimezone) {
// Ensure we use the correct offset for the date
- const referenceDate = timeOnly ? new Date() : value.toDate()
+ const referenceDate = value.toDate()
const offset = referenceDate.getTimezoneOffset() * 60000
- return new Date(value.valueOf() - offset).toISOString().slice(0, -1)
+ const date = new Date(value.valueOf() - offset)
+ if (timeOnly) {
+ // Extract HH:mm
+ return date.toISOString().slice(11, 16)
+ }
+ return date.toISOString().slice(0, -1)
}
// For date-only fields, construct a manual timestamp string without a time
@@ -177,7 +182,7 @@ export const stringifyDate = (
const year = value.year()
const month = `${value.month() + 1}`.padStart(2, "0")
const day = `${value.date()}`.padStart(2, "0")
- return `${year}-${month}-${day}T00:00:00.000`
+ return `${year}-${month}-${day}`
}
// Otherwise use a normal ISO string with time and timezone
diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
index e88c28a9d9..8583dbcab7 100644
--- a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
+++ b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
@@ -586,13 +586,17 @@
bind:constraints={editableColumn.constraints}
bind:optionColors={editableColumn.optionColors}
/>
- {:else if editableColumn.type === FieldType.DATETIME && !editableColumn.autocolumn}
+ {:else if editableColumn.type === DATE_TYPE && !editableColumn.autocolumn}
@@ -601,30 +605,36 @@
-
-
-
- {#if datasource?.source !== SourceName.ORACLE && datasource?.source !== SourceName.SQL_SERVER && !editableColumn.dateOnly}
-
+
+ {#if !editableColumn.timeOnly}
+ {#if datasource?.source !== SourceName.ORACLE && datasource?.source !== SourceName.SQL_SERVER && !editableColumn.dateOnly}
+
+ {/if}
+
{/if}
-
{:else if editableColumn.type === FieldType.NUMBER && !editableColumn.autocolumn}
diff --git a/packages/builder/src/components/common/NavItem.svelte b/packages/builder/src/components/common/NavItem.svelte
index 5cc6db65a0..5a04907570 100644
--- a/packages/builder/src/components/common/NavItem.svelte
+++ b/packages/builder/src/components/common/NavItem.svelte
@@ -1,5 +1,5 @@