Skip to content

Commit

Permalink
* popover: update nav options from element on open again.
Browse files Browse the repository at this point in the history
  • Loading branch information
catouse committed Aug 7, 2024
1 parent b906848 commit 3961c82
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions lib/popover/src/vanilla/popover.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {arrow, computePosition, flip, shift, size, autoUpdate, offset, VirtualElement, ReferenceElement, ComputePositionConfig} from '@floating-ui/dom';
import {Component, $, ComponentEvents, JSX} from '@zui/core';
import {Component, $, ComponentEvents, JSX, evalValue} from '@zui/core';
import {PopoverEvents, PopoverOptions, PopoverPanelOptions} from '../types';
import {PopoverPanel} from './popover-panel';
import {isElementDetached} from '@zui/core/src/dom';
Expand Down Expand Up @@ -105,9 +105,13 @@ export class Popover<O extends PopoverOptions = PopoverOptions, E extends Compon
if ($triggerElement.is('[disabled],.disabled')) {
return;
}
const target = $triggerElement.dataset('target');
if (!this.shown && target) {
this.setOptions({target} as Partial<O>);
if (!this.shown) {
let options = $triggerElement.dataset();
const toggleOptions = $triggerElement.attr(`zui-toggle-${this.constructor.ZUI}`);
if (toggleOptions) {
options = $.extend(options, evalValue(toggleOptions));
}
this.setOptions(options as Partial<O>);
}
this.toggle({event, delay: true});
event.preventDefault();
Expand Down

0 comments on commit 3961c82

Please sign in to comment.