Modifica di Basso Livello delle Persisted Queries
Rende visibili le direttive normalmente nascoste (che iniettano alcune funzionalità nel server GraphQL) durante la modifica di una persisted query.
Descrizione
In GraphQL, le direttive sono funzioni che permettono di modificare il risultato di un campo. Ad esempio, una direttiva @strUpperCase trasformerà il valore del campo in formato maiuscolo.
Esistono 2 tipi di direttive: quelle che vengono applicate allo schema e vengono eseguite sempre, a ogni query; e quelle che vengono applicate alla query, dall'utente o dall'applicazione lato client.
In Gato GraphQL, molte delle funzionalità coinvolte nella risoluzione di una query vengono eseguite tramite direttive applicate allo schema.
Ad esempio, Cache Control funziona applicando la direttiva @cacheControl allo schema. Questa configurazione è nascosta per impostazione predefinita ed è gestita dal plugin tramite l'interfaccia utente:

Allo stesso modo, queste direttive forniscono il controllo degli accessi per i campi (e direttive simili forniscono il controllo degli accessi per le direttive):
@disableAccess@validateIsUserLoggedIn@validateIsUserNotLoggedIn@validateDoesLoggedInUserHaveAnyRole.@validateDoesLoggedInUserHaveAnyCapability@validateDoesVisitorComeFromAnyAllowedIP@validateDoesVisitorNotComeFromAnyDeniedIP
Questa estensione Modifica di Basso Livello delle Persisted Queries rende tutte le direttive applicate allo schema disponibili nell'editor GraphiQL durante la modifica delle persisted queries, permettendoti di evitare l'interfaccia utente e di aggiungere direttamente le direttive di tipo schema nella persisted query.

Ad esempio, la definizione del Cache Control può essere effettuata direttamente nella persisted query, impostando la direttiva @cacheControl con l'argomento maxAge sul campo; oppure il controllo degli accessi può essere definito direttamente, aggiungendo la corrispondente direttiva @validate... direttamente sul campo:
