From 1d4039d49ee5fbff71dce35e3e802614c375c64b Mon Sep 17 00:00:00 2001 From: Miguel Frias <31300198+MiguelFrias97@users.noreply.github.com> Date: Tue, 11 Jun 2024 19:08:25 -0700 Subject: [PATCH] Fixed: Issues with stimulus controllers (#409) * Fixed issue * Fixed issues * Fixed issues * Updated version * Fixed standard js * Fixed changelog --- CHANGELOG.md | 6 ++++++ Gemfile.lock | 4 ++-- .../bali/controllers/datepicker-controller.js | 2 +- .../bali/controllers/slim-select-controller.js | 2 +- app/components/bali/chart/index.js | 2 +- .../bali/filters/controllers/popup-controller.js | 2 +- app/components/bali/hover_card/index.js | 2 +- app/components/bali/navbar/index.js | 5 ++++- app/components/bali/rich_text_editor/index.js | 2 +- app/components/bali/side_menu/index.js | 9 +++++++-- lib/bali/version.rb | 2 +- package.json | 2 +- 12 files changed, 27 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6967f131..d3b57373 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.2.2] - 2024-06-06 + +### Fixed +- Cannot read properties of undefined (reading 'destroy') in `stimulus` controllers. +- Missing target element "menu" for "navbar" controller + ## [1.2.1] - 2024-05-20 ### Fixed diff --git a/Gemfile.lock b/Gemfile.lock index be00c313..a3b34ce0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - bali_view_components (1.2.1) + bali_view_components (1.2.2) caxlsx rails (>= 7.0.2) ransack @@ -171,7 +171,7 @@ GEM mini_portile2 (2.8.6) minitest (5.22.3) mutex_m (0.2.0) - net-imap (0.4.11) + net-imap (0.4.12) date net-protocol net-pop (0.1.2) diff --git a/app/assets/javascripts/bali/controllers/datepicker-controller.js b/app/assets/javascripts/bali/controllers/datepicker-controller.js index ad3f1db3..b63b99ff 100644 --- a/app/assets/javascripts/bali/controllers/datepicker-controller.js +++ b/app/assets/javascripts/bali/controllers/datepicker-controller.js @@ -79,7 +79,7 @@ export class DatepickerController extends Controller { } disconnect () { - this.flatpickr.destroy() + this.flatpickr?.destroy() } defaultDates () { diff --git a/app/assets/javascripts/bali/controllers/slim-select-controller.js b/app/assets/javascripts/bali/controllers/slim-select-controller.js index df87fdc3..6bf8d486 100644 --- a/app/assets/javascripts/bali/controllers/slim-select-controller.js +++ b/app/assets/javascripts/bali/controllers/slim-select-controller.js @@ -57,7 +57,7 @@ export class SlimSelectController extends Controller { } disconnect () { - this.select.destroy() + this.select?.destroy() } dataWithHTML () { diff --git a/app/components/bali/chart/index.js b/app/components/bali/chart/index.js index db97e7b8..34fc8295 100644 --- a/app/components/bali/chart/index.js +++ b/app/components/bali/chart/index.js @@ -37,7 +37,7 @@ export class ChartController extends Controller { } disconnect () { - this.chart.destroy() + this.chart?.destroy() this.chart = undefined } diff --git a/app/components/bali/filters/controllers/popup-controller.js b/app/components/bali/filters/controllers/popup-controller.js index cc52b7e2..307f5a2c 100644 --- a/app/components/bali/filters/controllers/popup-controller.js +++ b/app/components/bali/filters/controllers/popup-controller.js @@ -37,7 +37,7 @@ export class PopupController extends Controller { } disconnect () { - this.popperInstance.destroy() + this.popperInstance?.destroy() } open () { diff --git a/app/components/bali/hover_card/index.js b/app/components/bali/hover_card/index.js index 3ed95a81..915fff16 100644 --- a/app/components/bali/hover_card/index.js +++ b/app/components/bali/hover_card/index.js @@ -60,7 +60,7 @@ export class HovercardController extends Controller { } disconnect () { - this.tippy.destroy() + this.tippy?.destroy() } onCreate = instance => { diff --git a/app/components/bali/navbar/index.js b/app/components/bali/navbar/index.js index 3877ce7e..d2a39360 100644 --- a/app/components/bali/navbar/index.js +++ b/app/components/bali/navbar/index.js @@ -58,7 +58,10 @@ export class NavbarController extends Controller { if (!this.altMenuActive) { this.element.classList.toggle('is-active') } - this.menuTarget.classList.toggle('is-active') + + if (this.hasMenuTarget) { + this.menuTarget.classList.toggle('is-active') + } if (this.hasBurgerTarget) { this.burgerTarget.classList.toggle('is-active') diff --git a/app/components/bali/rich_text_editor/index.js b/app/components/bali/rich_text_editor/index.js index 6af9b8a0..038bd350 100644 --- a/app/components/bali/rich_text_editor/index.js +++ b/app/components/bali/rich_text_editor/index.js @@ -79,7 +79,7 @@ export class RichTextEditorController extends Controller { } disconnect () { - this.editor.destroy() + this.editor?.destroy() } onUpdate = ({ editor }) => { diff --git a/app/components/bali/side_menu/index.js b/app/components/bali/side_menu/index.js index 1fd051d2..ca217aed 100644 --- a/app/components/bali/side_menu/index.js +++ b/app/components/bali/side_menu/index.js @@ -19,10 +19,15 @@ export class SideMenuController extends Controller { toggleMenu (e) { e.stopPropagation() - this.containerTarget.classList.toggle('is-active') + + if (this.hasContainerTarget) { + this.containerTarget.classList.toggle('is-active') + } } closeMenu = e => { - this.containerTarget.classList.remove('is-active') + if (this.hasContainerTarget) { + this.containerTarget.classList.remove('is-active') + } } } diff --git a/lib/bali/version.rb b/lib/bali/version.rb index c154bfcd..39342be6 100644 --- a/lib/bali/version.rb +++ b/lib/bali/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Bali - VERSION = '1.2.1' + VERSION = '1.2.2' end diff --git a/package.json b/package.json index c453b929..94273241 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bali-view-components", - "version": "1.2.1", + "version": "1.2.2", "description": "Bali ViewComponents", "repository": "git@github.com:Grupo-AFAL/bali.git", "author": "Federico Gonzalez ",