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

graphql-crud-sveltekit

v0.0.9

Published

fonction crud utilisant graphql, créer un client graphql et vous fournis des fonctions crud déja préparées, package utiliser pour graphcms

Downloads

7

Readme

crud sveltekit

ce package est à utiliser avec graphcms

IMPORTANT : il existe une " vulnerabilities "
sur le package node-fetch qui est contenu
dans le package cross-fetch utiliser par graphql-request
ceci ne concerne pas notre package, car nous n'utilisons pas
ce coté de graphql-request, la redirection, la creation de cookies
ou autre ne sont pas utiliser ici, et ne le sera jamais
le package sera mis à jour régulèrement, un correctif est en cours
donc cette " vulnerabilities " à terme disparaitra

fonctionnement / utilisation

  • creation du client graphql
const client = WooGraphqlCrud('myUrlEndPoint');
  • creation d'un nouveau client graphql depuis un client existant

    si vous avez besoin de creer vos propres fonction de requetes
    basé sur le meme endPoint
    car peut-etre que celle fournis par la fonction WooGraphqlCrud
    ne vous convienne pas, alors creer un nouveau client
    comme le montre le code ci-dessous

// 1er client
const client = WooGraphqlCrud('myUrlEndPoint');

// nouveau client creer avec le premier
const client2 = client.client();

/*
...
// creer votre nouvelle request comme bon vous semble
// comme un client graphql basic
client2.request()
...
*/
  • utilisation d'une fonction

// creation client
const client = WooGraphqlCrud('myUrlEndPoint');

// utilisation
const res = await client1.create<typeOfReturn, typeOfData>(myData, myQuery);

console.log(res);

/*
output ...

le model creer

...
*/
  • fonctions mise à disposition par la fonction WooGraphqlCrud

    je rappelle que ce package est utiliser pour travailler
    avec graphcms donc toute les fonctions sont implementées dans ce sens
    toutes les fonctions utilise async / await et elles peuvent toutes être typer

  1. client: () => GraphQLClient;
    creation d'une nouvelle instance graphql avec le meme endPoint
    fournis à l'instance utiliser pour la création de la nouvelle.
  2. publish: <T>(id: string, query: string) => Promise<T>;
    passe en mode " publié " le model ciblé avec son id
  3. create: <T, I>(data: I, query: string) => Promise<T>;
    creation d'un model
  4. getOne: <T>(where: string, query: string) => Promise<T>;
    recuperation d'un model ciblé avec une proprieter de votre choix
  5. deleteOne: <T>(where: string, query: string) => Promise<T>; suppression d'un model ciblé avec une proprieter de votre choix
  6. getAll: <T>(query: string) => Promise<T[]>;
    recuperation de tous les models ciblé avec votre request
  7. setheader: (token: string) => void;
    ajoute authorization au headers du graphqlClient

request graphql avec un cas d'utilisation

graphql-crud-sveltekit utilise des mots clés pour réduire les efforts des développeurs
chaque crud possède un mot clé pour les arguments
un exemple sera mieux qu'un grand discours

  • request graphql
// utilisation du mot " new " pour le crud " create "
export const ReqCreatePerson = gql`
  mutation createPerson($new: PersonCreateInput!) {
    createPerson(data: $new) {
      id
    }
  }
`;

Voila vous n'avez plus rien à vous souciez

donner cette request à la fonction create de ce package
et il fera le travaille pour vous

  • mot clé par CRUD
  1. create => $new
  2. publish => $id
  3. getOne => $where
  4. delete => $where
  5. getAll => pas d'argument

mise à jour

ce package à pour but de réduire la dificulté de la mise en place des requetes graphql
les arguments de requetes peuvent devenir un probleme entre developpeur si les noms
d'argument diffère il peut y avoir des erreurs
avec ce package il suffis d'utiliser les mots clef fournis pour nommée vos arguments
et il y aura plus d'erreur possible.
apporter vos idées, forker le projet et apporter votre contribution

le crud update est en cours de développement