Skip to content

fix: flatpickr popup closes immediately when options are passed inline#262

Open
iahmedgamal wants to merge 1 commit into
haoxins:masterfrom
iahmedgamal:fix/261-popup-closes-on-time-change
Open

fix: flatpickr popup closes immediately when options are passed inline#262
iahmedgamal wants to merge 1 commit into
haoxins:masterfrom
iahmedgamal:fix/261-popup-closes-on-time-change

Conversation

@iahmedgamal

Copy link
Copy Markdown

Description

The lifecycle effect depended on mergedOptions, onCreate, and onDestroy. When an inline prop changed, it created a new reference on every render, causing the effect to re-run and destroy/recreate the flatpickr instance mid-interaction.

To fix this, the values were moved into refs that update on every render. The effect dependencies were changed to [], so the instance now lives for the full component lifetime, regardless of prop memoization.

Issue

closes #261

This fixes the problem where the flatpickr popup would close immediately after selecting a time or changing AM/PM when options were passed inline without memoization. The same issue occurred with inline onCreate and onDestroy callbacks.

Change Type

  • Bug fix

How Has This Been Tested?

A regression test was added to render the component with inline options, trigger a re-render, and check that onCreate was called exactly once, confirming the flatpickr instance was not destroyed and recreated. The fix was also tested locally.

- add regression test for passing options call the component once
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The popup disappears immediately after the time and AM/PM are changed

1 participant