re-add community marketplace and handle missing dependency (#2110)

* re-add community marketplace and handle missing dependency

* feat: Add in the community to migration

* chore: Add in the community marketplace_url update

* change var name to hidden

* chore: Add in the down

Co-authored-by: BluJ <mogulslayer@gmail.com>
This commit is contained in:
Matt Hill
2023-01-16 17:02:57 -07:00
committed by Aiden McClelland
parent 06cf83b901
commit 730a55e721
8 changed files with 142 additions and 39 deletions

View File

@@ -4,7 +4,8 @@
"marketplace": {
"selected-url": "https://registry.start9.com/",
"known-hosts": {
"https://registry.start9.com/": {}
"https://registry.start9.com/": {},
"https://community-registry.start9.com/": {}
}
},
"dev": {},

View File

@@ -27,14 +27,17 @@ export interface MarketplacePkg {
categories: string[]
versions: string[]
'dependency-metadata': {
[id: string]: {
title: string
icon: Url
}
[id: string]: DependencyMetadata
}
'published-at': string
}
export interface DependencyMetadata {
title: string
icon: Url
hidden: boolean
}
export interface MarketplaceManifest<T = unknown> {
id: string
title: string

View File

@@ -18,6 +18,7 @@ const ICONS = [
'chevron-up',
'chevron-forward',
'close',
'close-circle-outline',
'cloud-outline',
'cloud-done',
'cloud-done-outline',

View File

@@ -3,12 +3,20 @@
<ion-content class="ion-padding">
<ng-container *ngIf="pkg$ | async as pkg else loading">
<ng-container *ngIf="pkg | empty; else show">
<ng-container *ngIf="loadVersion$ | async as version">
<div
*ngIf="loadVersion$ | async as version"
class="ion-text-center"
style="padding-top: 64px"
>
<ion-icon
name="close-circle-outline"
style="font-size: 48px"
></ion-icon>
<h2>
{{ pkgId }} version {{ version === '*' ? 'latest' : version }} not
found in this registry
{{ pkgId }} @{{ version === '*' ? 'latest' : version }} not found in
this registry
</h2>
</ng-container>
</div>
</ng-container>
<ng-template #show>

View File

@@ -10,7 +10,7 @@ import {
import { Metric, RR, NotificationLevel, ServerNotifications } from './api.types'
import { BTC_ICON, LND_ICON, PROXY_ICON } from './api-icons'
import { MarketplacePkg } from '@start9labs/marketplace'
import { DependencyMetadata, MarketplacePkg } from '@start9labs/marketplace'
import { Log } from '@start9labs/shared'
export module Mock {
@@ -626,6 +626,18 @@ export module Mock {
},
}
export const BitcoinDep: DependencyMetadata = {
title: 'Bitcoin Core',
icon: BTC_ICON,
hidden: true,
}
export const ProxyDep: DependencyMetadata = {
title: 'Bitcoin Proxy',
icon: PROXY_ICON,
hidden: false,
}
export const MarketplacePkgs: {
[id: string]: {
[version: string]: MarketplacePkg
@@ -701,14 +713,8 @@ export module Mock {
categories: ['bitcoin', 'lightning', 'cryptocurrency'],
versions: ['0.11.0', '0.11.1'],
'dependency-metadata': {
bitcoind: {
title: 'Bitcoin Core',
icon: BTC_ICON,
},
'btc-rpc-proxy': {
title: 'Bitcoin Proxy',
icon: PROXY_ICON,
},
bitcoind: BitcoinDep,
'btc-rpc-proxy': ProxyDep,
},
'published-at': new Date().toISOString(),
},
@@ -724,14 +730,8 @@ export module Mock {
categories: ['bitcoin', 'lightning', 'cryptocurrency'],
versions: ['0.11.0', '0.11.1'],
'dependency-metadata': {
bitcoind: {
title: 'Bitcoin Core',
icon: BTC_ICON,
},
'btc-rpc-proxy': {
title: 'Bitcoin Proxy',
icon: PROXY_ICON,
},
bitcoind: BitcoinDep,
'btc-rpc-proxy': ProxyDep,
},
'published-at': new Date().toISOString(),
},
@@ -743,14 +743,8 @@ export module Mock {
categories: ['bitcoin', 'lightning', 'cryptocurrency'],
versions: ['0.11.0', '0.11.1'],
'dependency-metadata': {
bitcoind: {
title: 'Bitcoin Core',
icon: BTC_ICON,
},
'btc-rpc-proxy': {
title: 'Bitcoin Proxy',
icon: PROXY_ICON,
},
bitcoind: BitcoinDep,
'btc-rpc-proxy': ProxyDep,
},
'published-at': new Date(new Date().valueOf() + 10).toISOString(),
},
@@ -764,10 +758,7 @@ export module Mock {
categories: ['bitcoin'],
versions: ['0.2.2'],
'dependency-metadata': {
bitcoind: {
title: 'Bitcoin Core',
icon: BTC_ICON,
},
bitcoind: BitcoinDep,
},
'published-at': new Date().toISOString(),
},

View File

@@ -26,7 +26,7 @@ export interface UIMarketplaceData {
'selected-url': string
'known-hosts': {
'https://registry.start9.com/': UIStore
// 'https://community-registry.start9.com/': UIStore
'https://community-registry.start9.com/': UIStore
[url: string]: UIStore
}
}