Feat/community marketplace (#1790)

* add community marketplace

* Update embassy-mock-api.service.ts

* expect ui/marketplace to be undefined

* possible undefined from getpackage

* fix marketplace pages

* rework marketplace infrastructure

* fix bugs

Co-authored-by: Lucy C <12953208+elvece@users.noreply.github.com>
This commit is contained in:
Matt Hill
2022-10-06 17:27:17 -06:00
committed by Aiden McClelland
parent e2db3d84d8
commit 9998ed177b
55 changed files with 754 additions and 879 deletions

View File

@@ -1,20 +1,26 @@
import { Observable } from 'rxjs'
import { MarketplaceInfo } from '../types/marketplace-info'
import { MarketplacePkg } from '../types/marketplace-pkg'
import { Marketplace } from '../types/marketplace'
export abstract class AbstractMarketplaceService {
abstract getMarketplace(): Observable<Marketplace>
abstract getMarketplaceInfo$(): Observable<MarketplaceInfo>
abstract getReleaseNotes(id: string): Observable<Record<string, string>>
abstract getCategories(): Observable<Set<string>>
abstract getPackages(): Observable<MarketplacePkg[]>
abstract getPackageMarkdown(type: string, pkgId: string): Observable<string>
abstract getPackages$(): Observable<MarketplacePkg[]>
abstract getPackage(
id: string,
version: string,
): Observable<MarketplacePkg | null>
url?: string,
): Observable<MarketplacePkg | undefined>
abstract fetchReleaseNotes(
id: string,
url?: string,
): Observable<Record<string, string>>
abstract fetchPackageMarkdown(
id: string,
type: string,
url?: string,
): Observable<string>
}