AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

El Popover

skill-jiaiyan-element-plus-skills-el-popover · by jiaiyan

Popover component for displaying rich content in a popup. Invoke when user needs to show complex content, nested operations, or rich information in a popup.

No reviews yet
0 installs
37 views
0.0% view→install

Install

$ agentstack add skill-jiaiyan-element-plus-skills-el-popover

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-jiaiyan-element-plus-skills-el-popover)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
6mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of El Popover? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Element Plus Popover Component

Display rich content in a popup, triggered by hover, click, focus, or contextmenu.

When to Invoke

Invoke this skill when:

  • User needs to show rich content in a popup
  • User wants to create nested operations
  • User needs to display tables or forms in a popup
  • User wants to trigger popup by click or hover
  • User asks about virtual triggering

Features

  • 9 Placements: Same as Tooltip
  • Multiple Triggers: hover, click, focus, contextmenu
  • Rich Content: Support for complex content like tables, forms
  • Virtual Triggering: Separate trigger and content elements
  • Nested Components: Can nest other components
  • Customizable Width: Configurable width

API Reference

Attributes

| Name | Description | Type | Default | |------|-------------|------|---------| | trigger | How popover is triggered | 'click' \| 'focus' \| 'hover' \| 'contextmenu' \| Array | hover | | trigger-keys | Keyboard codes to control display | Array | ['Enter', 'Space'] | | title | Popover title | string | — | | effect | Tooltip theme | 'dark' \| 'light' | light | | content | Popover content | string | '' | | width | Popover width | string \| number | 150 | | placement | Popover placement | 'top' \| 'top-start' \| 'top-end' \| 'bottom' \| 'bottom-start' \| 'bottom-end' \| 'left' \| 'left-start' \| 'left-end' \| 'right' \| 'right-start' \| 'right-end' | bottom | | disabled | Whether Popover is disabled | boolean | false | | visible / v-model:visible | Whether popover is visible | boolean \| null | null | | offset | Popover offset | number | undefined | | transition | Transition animation | string | — | | show-arrow | Whether arrow is displayed | boolean | true | | popper-options | popper.js parameters | object | {} | | popper-class | Custom class for popover | string | — | | popper-style | Custom style for popover | string \| object | — | | show-after | Delay of appearance (ms) | number | 0 | | hide-after | Delay of disappear (ms) | number | 200 | | auto-close | Timeout to hide (ms) | number | 0 | | tabindex | tabindex of Popover | number \| string | 0 | | teleported | Whether popover is teleported | boolean | true | | append-to | Which element popover appends to | CSSSelector \| HTMLElement | body | | persistent | Whether popover persists when inactive | boolean | true | | virtual-triggering | Whether virtual triggering is enabled | boolean | — | | virtual-ref | Reference element for virtual triggering | HTMLElement | — |

Slots

| Name | Description | Type | |------|-------------|------| | default | Content of popover | {hide: () => void} | | reference | HTML element that triggers popover | — |

Events

| Name | Description | Type | |------|-------------|------| | show | Triggers when popover shows | () => void | | before-enter | Triggers before entering transition | () => void | | after-enter | Triggers after entering transition | () => void | | hide | Triggers when popover hides | () => void | | before-leave | Triggers before leaving transition | () => void | | after-leave | Triggers after leaving transition | () => void |

Exposes

| Name | Description | Type | |------|-------------|------| | hide | Hide popover | () => void |

Usage Examples

Basic Usage


  
    
      Click to activate
    
  

Hover Trigger


  
    
      Hover to activate
    
  

Rich Content


  
    
      Click to see table
    
    
      
      
    
  

const tableData = [
  { name: 'Tom', address: 'No. 189, Grove St' },
  { name: 'Jack', address: 'No. 189, Grove St' }
]

Nested Operations


  
    
      Delete
    
    Are you sure to delete this?
    
      Cancel
      
        Confirm
      
    
  

import { ref } from 'vue'

const visible = ref(false)

With Form


  
    
      Open Form
    
    
      
        
      
      
        
      
      
        Submit
      
    
  

import { reactive } from 'vue'

const form = reactive({
  name: '',
  email: ''
})

const submitForm = () => {
  console.log('Form submitted:', form)
}

Virtual Triggering


  Trigger
  
  

import { ref } from 'vue'

const buttonRef = ref()

Controlled Visibility


  
    
      Toggle
    
  

import { ref } from 'vue'

const visible = ref(false)

Multiple Triggers


  
    
      Click or Hover
    
  

Custom Width


  
    
      Wide Popover
    
  

No Arrow


  
    
      No Arrow
    
  

Close from Content


  
    
      Click
    
    
      Click button to close
      Close
    
  

Common Issues

1. Popover Not Closing

Use hide function from slot:


  
    Close
  

2. Popover Position Issues

Use placement and fallback-placements:

3. Click Outside Not Closing

Set trigger="click":

Best Practices

  1. Use appropriate trigger: Choose trigger based on use case
  2. Set width: Set appropriate width for content
  3. Close from content: Use hide function for custom close
  4. Virtual triggering: Use for complex trigger scenarios
  5. Controlled visibility: Use v-model:visible for programmatic control

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.