[FR] Add WebApps support to project_management

Aperta
#772 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python
Ambito
api, backend

Direzione di ricerca

Inizia dal package project_management e confronta le API iOSApps e AndroidApps esistenti con il WebAppsService proposto. Esamina la risorsa webApps della REST API di Firebase e determina l'intera superficie dell'API oltre ai metadati e alla configurazione; il lavoro è completo quando il supporto per WebApps è esposto in modo coerente con i servizi di piattaforma esistenti e coperto dai test pertinenti.

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

Descrizione

type: feature request

Is your feature request related to a problem? Please describe.
The project_management package miss API to work with webApps resource

Describe the solution you'd like
API to work with WebApps similar to the ones available for iOSApps and AndroidApps

Describe alternatives you've considered
The single alternative I considered was to use the REST requests by hands

Additional context
I implemented a bare minimum solution just extending _ProjectManagementService

from firebase_admin import project_management


class WebApp:
    def __init__(self, app_id, service) -> None:
        self._app_id = app_id
        self._service = service

    @property
    def app_id(self):
        return self._app_id

    def get_metadata(self):
        return self._service.get_web_app_metadata(self._app_id)

    def get_config(self):
        return self._service.get_web_app_config(self._app_id)


class WebAppsService(project_management._ProjectManagementService):
    WEB_APPS_RESOURCE_NAME = 'webApps'

    def __init__(self, app):
        super().__init__(app)

    def list_web_apps(self) -> list[WebApp]:
        return self._list_apps(
            platform_resource_name=WebAppsService.WEB_APPS_RESOURCE_NAME,
            app_class=WebApp
        )

    def get_web_app_metadata(self, app_id):
        path = '/v1beta1/projects/-/{0}/{1}'.format(
            WebAppsService.WEB_APPS_RESOURCE_NAME,
            app_id,
        )
        return self._make_request('get', path)

    def get_web_app_config(self, app_id):
        path = '/v1beta1/projects/-/{0}/{1}/config'.format(
            WebAppsService.WEB_APPS_RESOURCE_NAME,
            app_id,
        )
        return self._make_request('get', path)

but it can be completed with all APIs

Lingua principale
Python
Stelle
1.2k
Fork
359
Merge medio
5g 6m
PR unite (30g)
2

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.

Altre issue di firebase/firebase-admin-python

Tutte le issue di firebase/firebase-admin-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.