diff --git a/builder/builder/doctype/builder_settings/builder_settings.json b/builder/builder/doctype/builder_settings/builder_settings.json index bb1cbc2f7..cc9776850 100644 --- a/builder/builder/doctype/builder_settings/builder_settings.json +++ b/builder/builder/doctype/builder_settings/builder_settings.json @@ -19,7 +19,6 @@ "home_page", "developer_options_section", "execute_block_scripts_in_editor", - "restrict_click_handlers", "ai_section", "ai_api_key", "persona_survey_done" @@ -106,17 +105,11 @@ "label": "Developer Options" }, { - "default": "Restricted", + "default": "Enable", "fieldname": "execute_block_scripts_in_editor", "fieldtype": "Select", - "label": "Execute Block Scripts in Editor", - "options": "Don't Execute\nRestricted\nUnrestricted" - }, - { - "default": "1", - "fieldname": "restrict_click_handlers", - "fieldtype": "Check", - "label": "Restrict Click Handlers" + "label": "Client Script Emulation", + "options": "Enable\nDisable" }, { "fieldname": "ai_section", diff --git a/builder/builder/doctype/builder_settings/builder_settings.py b/builder/builder/doctype/builder_settings/builder_settings.py index c28489429..a57074f5c 100644 --- a/builder/builder/doctype/builder_settings/builder_settings.py +++ b/builder/builder/doctype/builder_settings/builder_settings.py @@ -23,11 +23,10 @@ class BuilderSettings(Document): body_html: DF.Code | None default_language: DF.Data | None disable_auto_dark_mode: DF.Check - execute_block_scripts_in_editor: DF.Literal["Don't Execute", "Restricted", "Unrestricted"] + execute_block_scripts_in_editor: DF.Literal["Disable", "Enable"] favicon: DF.AttachImage | None head_html: DF.Code | None home_page: DF.Data | None - restrict_click_handlers: DF.Check script: DF.Code | None script_public_url: DF.ReadOnly | None style: DF.Code | None diff --git a/builder/builder/patches/migrate_client_script_emulation_setting.py b/builder/builder/patches/migrate_client_script_emulation_setting.py new file mode 100644 index 000000000..557a6b82d --- /dev/null +++ b/builder/builder/patches/migrate_client_script_emulation_setting.py @@ -0,0 +1,16 @@ +import frappe + + +def execute(): + current_value = frappe.db.get_single_value( + "Builder Settings", + "execute_block_scripts_in_editor", + ) + value = "Disable" if current_value in {"Don't Execute", "Disable"} else "Enable" + frappe.db.set_value( + "Builder Settings", + None, + "execute_block_scripts_in_editor", + value, + update_modified=False, + ) diff --git a/builder/patches.txt b/builder/patches.txt index 392fc318d..7c3fc0321 100644 --- a/builder/patches.txt +++ b/builder/patches.txt @@ -13,5 +13,6 @@ builder.builder.doctype.builder_client_script.patches.trigger_asset_compression builder.builder.patches.add_composite_index_to_web_page_view builder.builder.patches.refactor_builder_variables builder.builder.patches.reset_builder_page_clicks +builder.builder.patches.migrate_client_script_emulation_setting execute:frappe.call("builder.builder_analytics.enqueue_web_page_view_ingesion") -execute:frappe.call("builder.builder_analytics.setup_duckdb_table") \ No newline at end of file +execute:frappe.call("builder.builder_analytics.setup_duckdb_table") diff --git a/frontend/components.d.ts b/frontend/components.d.ts index 197005627..c2bea1fa2 100644 --- a/frontend/components.d.ts +++ b/frontend/components.d.ts @@ -39,6 +39,7 @@ declare module 'vue' { BuilderBlock: typeof import('./src/components/BuilderBlock.vue')['default'] BuilderBlockTemplates: typeof import('./src/components/BuilderBlockTemplates.vue')['default'] BuilderCanvas: typeof import('./src/components/BuilderCanvas.vue')['default'] + BuilderCanvasFrame: typeof import('./src/components/BuilderCanvasFrame.vue')['default'] BuilderCommandPalette: typeof import('./src/components/BuilderCommandPalette.vue')['default'] BuilderLeftPanel: typeof import('./src/components/BuilderLeftPanel.vue')['default'] BuilderRightPanel: typeof import('./src/components/BuilderRightPanel.vue')['default'] diff --git a/frontend/src/builder.d.ts b/frontend/src/builder.d.ts index a8023140e..1141ae5df 100644 --- a/frontend/src/builder.d.ts +++ b/frontend/src/builder.d.ts @@ -130,7 +130,7 @@ declare interface CanvasProps { panning: boolean; background: string; settingCanvas: boolean; - overlayElement: HTMLElement | null; + frameRoots?: Map; breakpoints: Breakpoint[]; } diff --git a/frontend/src/components/BlockEditor.vue b/frontend/src/components/BlockEditor.vue index af93e4483..e31570a26 100644 --- a/frontend/src/components/BlockEditor.vue +++ b/frontend/src/components/BlockEditor.vue @@ -1,6 +1,6 @@