Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions modules/vue-nuxt-permission.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: vue-nuxt-permission
description: >-
A unified permission system for Vue 3 and Nuxt 3 with directives, guards, and
async support.
repo: keroloszakaria/vue-nuxt-permission
npm: vue-permission
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify the npm package information for vue-nuxt-permission
curl -s https://registry.npmjs.org/vue-nuxt-permission/latest | \
  python3 -c "import sys, json; d = json.load(sys.stdin); print('name:', d.get('name')); print('repo:', d.get('repository', {}).get('url', 'N/A')); print('author:', d.get('author', 'N/A'))" 2>/dev/null || echo "Failed to fetch npm package info"

Repository: nuxt/modules

Length of output: 267


🏁 Script executed:

#!/bin/bash
# Check if vue-permission package exists and its details
curl -s https://registry.npmjs.org/vue-permission/latest | \
  python3 -c "import sys, json; d = json.load(sys.stdin); print('name:', d.get('name')); print('description:', d.get('description', 'N/A')); print('time.modified:', d.get('time', {}).get('modified', 'N/A'))" 2>/dev/null || echo "Failed to fetch vue-permission package info"

Repository: nuxt/modules

Length of output: 144


🏁 Script executed:

#!/bin/bash
# Search for icon files in the repository to understand naming convention
find . -type f -name "*.png" | head -20

Repository: nuxt/modules

Length of output: 461


🏁 Script executed:

#!/bin/bash
# Find and examine other module YAML files to see icon naming patterns
fd "\.yml$" modules/ | head -5 | xargs -I {} sh -c 'echo "=== {} ===" && grep -E "^icon:|^npm:" {}'

Repository: nuxt/modules

Length of output: 379


🏁 Script executed:

#!/bin/bash
# Check if nuxt-signupgate.png exists and search for similar patterns
ls -la ./icons/ | grep -i signupgate || echo "nuxt-signupgate.png not found"

Repository: nuxt/modules

Length of output: 127


🏁 Script executed:

#!/bin/bash
# Search for any icon file that might match vue-nuxt-permission or permission
ls -la ./icons/ | grep -iE "(permission|vue|kerolos)" || echo "No matching permission/vue icons found"

Repository: nuxt/modules

Length of output: 1262


🏁 Script executed:

#!/bin/bash
# Check the complete YAML file to understand its full contents
cat modules/vue-nuxt-permission.yml

Repository: nuxt/modules

Length of output: 708


🏁 Script executed:

#!/bin/bash
# Search for what other modules reference signupgate
rg "signupgate" modules/ || echo "No references to signupgate found"

Repository: nuxt/modules

Length of output: 570


Fix incorrect npm package name and copy-pasted icon reference.

The npm field incorrectly references vue-permission, an unrelated Vue 2 permission plugin. The correct package is vue-nuxt-permission, as confirmed on npm. Additionally, the icon field points to nuxt-signupgate.png, which belongs to the entirely different nuxt-signupgate module—this is a copy-paste artifact from using another module as a template.

Proposed fixes
-npm: vue-permission
+npm: vue-nuxt-permission
-icon: nuxt-signupgate.png
+icon: [appropriate-icon-name.extension]

The npm field must be corrected to ensure users install the correct package via the Nuxt modules directory. The icon field requires an appropriate icon file (or empty string if no custom icon exists).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@modules/vue-nuxt-permission.yml` at line 6, Update the module metadata to
point to the correct npm package name and remove the copy-pasted icon: change
the npm field value from "vue-permission" to "vue-nuxt-permission" and replace
the incorrect icon reference "nuxt-signupgate.png" with the correct icon
filename for this module (or set icon to an empty string if no icon exists);
target the metadata fields named "npm" and "icon" in the
modules/vue-nuxt-permission.yml content to make these edits.

icon: nuxt-signupgate.png
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify if nuxt-signupgate.png exists and check icon conventions in other module YAMLs.

# 1. Check if the icon file exists anywhere in the repo
echo "=== Checking if nuxt-signupgate.png exists ==="
fd -t f "nuxt-signupgate.png"

# 2. See what icon filenames other module YAMLs use for reference
echo ""
echo "=== Icon filenames in module YAMLs ==="
rg -n "^icon:" modules/ 

# 3. Let's also check the content of the permission module file to understand context
echo ""
echo "=== Content of vue-nuxt-permission.yml ==="
cat -n modules/vue-nuxt-permission.yml

Repository: nuxt/modules

Length of output: 19786


icon filename is a copy-paste artifact from the nuxt-signupgate module.

The icon nuxt-signupgate.png belongs to a different module (nuxt-signupgate) and is semantically unrelated to vue-nuxt-permission, which is a permissions/RBAC system. Either replace with an appropriate icon or remove the icon field (use empty string like other modules do).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@modules/vue-nuxt-permission.yml` at line 7, The module manifest for
vue-nuxt-permission contains an incorrect icon entry: the `icon` field is set to
`nuxt-signupgate.png` (a copy-paste from nuxt-signupgate); update the `icon`
property in the vue-nuxt-permission module YAML to either an appropriate
permission-related icon filename or remove it by setting `icon: ""` so it
matches other modules and avoids referencing an unrelated asset.

github: https://github.com/keroloszakaria/vue-nuxt-permission
website: https://github.com/keroloszakaria/vue-nuxt-permission
learn_more: https://github.com/keroloszakaria/vue-nuxt-permission#readme
category: Security
type: 3rd-party
maintainers:
- name: Kerolos Zakaria
github: KerolosZakaria
avatar: https://avatars.githubusercontent.com/u/61479752?v=4
compatibility:
nuxt: ^3.0.0
requires:
bridge: optional
Loading