loopbackio / loopbackio/loopback-next

Filter/Where as a standalone concept

Aperta
#5,957 4 commenti 3 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

epic feature
Lingua principale
TypeScript
Stelle
5.1k
Fork
1.1k
Merge medio
2g 21h
PR unite (30g)
27

Descrizione

Refactor the current implementation of LoopBack's Filter to allow other packages to leverage the filtering implementation and/or support LoopBack's Filter syntax.

  1. The syntax of Filter/Where objects should be well defined and properly documented, to allow 3rd-party implementations to understand all possible values.

  2. There should be TypeScript typings describing Filter, Where, etc., these typings must be accessible independently on @loopback/repository (e.g. via a new package).

  3. The implementation used by our memory connector should be refactored/extracted into a package that can be used independently from juggler (something like https://www.npmjs.com/package/loopback-filters). It's important to update the connector to use that new package, to ensure there is only single reference implementation.

Nice to have:

  • JSON Schema describing Filter syntax
  • Some sort of a test suite to allow 3rd-party implementations to verify conformance

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia individuando l’implementazione esistente di Filter/Where di LoopBack e il connettore di memoria in juggler, quindi esamina come @loopback/repository espone i propri tipi. Il lavoro è completato quando la sintassi è documentata, esistono definizioni di tipi TypeScript indipendenti e un pacchetto di filtraggio riutilizzabile, il connettore di memoria utilizza l’implementazione condivisa e sono stati affrontati i test proposti di JSON Schema o di conformità.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
backend-api-design, documentation
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.