loopbackio / loopbackio/loopback-next

Storage component

Offen
#4,854 3 Kommentare 3 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature
Vorherrschende Sprache
TypeScript
Sterne
5.1k
Forks
1.1k
Ø Merge
2 T. 21 Std.
Gemergte PRs (30 T.)
27

Beschreibung

Suggestion

Hello i'm writting a new component called Storage under /packages/storage folder and i want to know if you're okay with my implementation.

Use Cases

For store files, images, videos. providers could be added through extensions thanks to Storage extension point.

Examples


// application.ts
import { StorageComponent } from '@loopback/storage'
import { S3Storage } from '@loopback/storage-s3'

export class App extends Application {
  constructor(opt: ApplicationConfig = {}) {
      super(options);
      this.component(StorageComponent)
      app.add(createBindingFromClass(S3Storage))
  }
}
// controller
import { StorageService } from '@loopback/storage'
import { LOCAL_STORAGE } from '@loopback/storage-local' // could be @loopback/storage-s3 or @loopback/storage-gcs

class UploadController {
  constructor(
    @service()
    public storageService: StorageService,
  ) {}

  async upload() {
   // here LOCAL_STORAGE provide a key and type signatures for that provider
    await this.storageService.create(LOCAL_STORAGE, { 
      filename: '/tmp/test.txt',
     content: new Buffer(10)
    });
  }
}```

## Acceptance criteria

TBD - will be filled by the team.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Überprüfung des Vorschlags für die neue /packages/storage-Komponente und ihrer TypeScript-Nutzungsbeispiele. Das Issue nennt keine Implementierungsdateien oder Tests, und seine Abnahmekriterien sind noch TBD, daher ist die Arbeit nicht bereit, begonnen zu werden, bis das Team den Erweiterungspunkt für Provider, die unterstützten Speicheroperationen und die Abschlussprüfungen definiert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
backend
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
15/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.