diff --git a/assets/controllers/elements/attachment_autocomplete_controller.js b/assets/controllers/elements/attachment_autocomplete_controller.js index 51c44299..fe44baee 100644 --- a/assets/controllers/elements/attachment_autocomplete_controller.js +++ b/assets/controllers/elements/attachment_autocomplete_controller.js @@ -79,4 +79,10 @@ export default class extends Controller { this._tomSelect = new TomSelect(this.element, settings); } + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } + } diff --git a/assets/controllers/elements/part_select_controller.js b/assets/controllers/elements/part_select_controller.js index ee13b4b9..c7507636 100644 --- a/assets/controllers/elements/part_select_controller.js +++ b/assets/controllers/elements/part_select_controller.js @@ -65,4 +65,10 @@ export default class extends Controller { //this._tomSelect.clearOptions(); } } + + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } } \ No newline at end of file diff --git a/assets/controllers/elements/select_controller.js b/assets/controllers/elements/select_controller.js index 2f1983c1..a96bca10 100644 --- a/assets/controllers/elements/select_controller.js +++ b/assets/controllers/elements/select_controller.js @@ -84,4 +84,10 @@ export default class extends Controller { return '
' + escape(data.text) + '
'; } + + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } } \ No newline at end of file diff --git a/assets/controllers/elements/select_multiple_controller.js b/assets/controllers/elements/select_multiple_controller.js index 7850a9b7..85680af0 100644 --- a/assets/controllers/elements/select_multiple_controller.js +++ b/assets/controllers/elements/select_multiple_controller.js @@ -31,4 +31,10 @@ export default class extends Controller { }); } + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } + } \ No newline at end of file diff --git a/assets/controllers/elements/structural_entity_select_controller.js b/assets/controllers/elements/structural_entity_select_controller.js index 41b0f7f7..38480cfa 100644 --- a/assets/controllers/elements/structural_entity_select_controller.js +++ b/assets/controllers/elements/structural_entity_select_controller.js @@ -127,4 +127,10 @@ export default class extends Controller { return '
' + level_html + escape(data.text) + image + symbol_badge + parent_badge + filter_badge + '
'; } + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } + } diff --git a/assets/controllers/elements/tagsinput_controller.js b/assets/controllers/elements/tagsinput_controller.js index d91e0d40..acfcd0fa 100644 --- a/assets/controllers/elements/tagsinput_controller.js +++ b/assets/controllers/elements/tagsinput_controller.js @@ -60,4 +60,10 @@ export default class extends Controller { this._tomSelect = new TomSelect(this.element, settings); } + + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } } \ No newline at end of file diff --git a/assets/controllers/pages/parameters_autocomplete_controller.js b/assets/controllers/pages/parameters_autocomplete_controller.js index a21a0d09..f6504990 100644 --- a/assets/controllers/pages/parameters_autocomplete_controller.js +++ b/assets/controllers/pages/parameters_autocomplete_controller.js @@ -31,6 +31,8 @@ export default class extends Controller static targets = ["name", "symbol", "unit"] + _tomSelect; + onItemAdd(value, item) { //Retrieve the unit and symbol from the item const symbol = item.dataset.symbol; @@ -116,4 +118,10 @@ export default class extends Controller this._tomSelect = new TomSelect(this.nameTarget, settings); } + + disconnect() { + super.disconnect(); + //Destroy the TomSelect instance + this._tomSelect.destroy(); + } } \ No newline at end of file