npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@hedhog/permission

v0.0.25

Published

<p align="center"> <img src="https://avatars.githubusercontent.com/u/177489127?s=200&v=4" alt="Hedhog Avatar" /> </p>

Downloads

962

Readme

hedhog/permission

Hedhog Permission provides essential functionality for managing permissions within HedHog-based projects. It supports CRUD operations for permissions, including the ability to read, create, update, and delete permissions.

Features

  • CRUD Operations: Easily create, read, update, and delete permissions.
  • Pagination: Efficiently paginate through permissions data with flexible options.
  • Search: Perform search operations on permissions based on name and description.

Installation

This library is an integral part of the HedHog framework and should be installed as a dependency in your HedHog project. Ensure that the necessary dependencies are configured in your HedHog project.

npm i @hedhog/permission

Endpoints

The PermissionController exposes the following API endpoints:

  • GET /permissions: Retrieves a list of permissions. Supports pagination and search.
  • GET /permissions/:permissionId: Retrieves a single permission by its ID.
  • POST /permissions: Creates a new permission. Expects data in the request body.
  • PATCH /permissions/:permissionId: Updates an existing permission by its ID. Expects update data in the request body.
  • DELETE /permissions: Deletes one or more permissions. Expects an array of permission IDs in the request body.

Methods

The PermissionService provides the following methods:

  • getPermissions(paginationParams: PaginationDTO): Fetches a list of permissions based on provided pagination parameters and search criteria.
  • get(permissionId: number): Retrieves a specific permission by its ID.
  • create(data: CreateDTO): Creates a new permission with the given data.
  • update(id: number, data: UpdateDTO): Updates an existing permission with the specified ID and new data.
  • delete(data: DeleteDTO): Deletes permissions based on provided IDs.

Folder Structure

permission/
├── dist/                         # Compiled JavaScript files
├── node_modules/                 # Node.js modules
├── src/
│ ├── dto/                        # Data Transfer Objects (DTOs) for permissions
│ │ ├── create.dto.ts             # DTO for creating permissions
│ │ ├── delete.dto.ts             # DTO for deleting permissions
│ │ ├── update.dto.ts             # DTO for updating permissions
│ ├── migrations/                 # Database migration files
│ ├── types/                      # Type definitions related to permissions
│ │ └── permission.types.ts       # Type definitions for permissions
│ ├── permission.controller.ts    # Controller class for handling permission-related HTTP requests
│ ├── permission.module.ts        # Module definition for permissions
│ ├── permission.service.spec.ts  # Unit tests for PermissionService
│ ├── permission.service.ts       # Service class for permission-related business logic
│ └── index.ts                    # Entry point for permission files
├── .gitignore                    # Specifies which files Git should ignore
├── package.json                  # Manages dependencies and scripts for the library
├── package-lock.json             # Lock file for dependencies
├── tsconfig.lib.json             # TypeScript configuration for library builds
├── tsconfig.production.json      # TypeScript configuration for production builds