diff --git a/frontend/projects/ui/src/app/app/preloader/preloader.component.ts b/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
index 062a890fa..e18e96ba7 100644
--- a/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
+++ b/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
@@ -57,6 +57,7 @@ const ICONS = [
'pencil',
'phone-portrait-outline',
'play-circle-outline',
+ 'play-outline',
'power',
'pulse',
'qr-code-outline',
diff --git a/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces-item.component.html b/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces-item.component.html
index f96831c89..71589eb28 100644
--- a/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces-item.component.html
+++ b/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces-item.component.html
@@ -1,11 +1,15 @@
-
+
{{ interface.def.name }}
{{ interface.def.description }}
-
+
@@ -16,6 +20,13 @@ Tor Address
+
+
+
@@ -39,6 +50,13 @@ LAN Address
+
+
+
@@ -51,4 +69,4 @@ LAN Address
N/A
-
\ No newline at end of file
+
diff --git a/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces.page.ts b/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces.page.ts
index 0ebe2a175..7a5f3f201 100644
--- a/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces.page.ts
+++ b/frontend/projects/ui/src/app/pages/apps-routes/app-interfaces/app-interfaces.page.ts
@@ -1,6 +1,6 @@
import { Component, Input, ViewChild } from '@angular/core'
import { ActivatedRoute } from '@angular/router'
-import { IonContent, ToastController } from '@ionic/angular'
+import { IonContent, ModalController, ToastController } from '@ionic/angular'
import { getPkgId } from '@start9labs/shared'
import { getUiInterfaceKey } from 'src/app/services/config.service'
import {
@@ -9,6 +9,7 @@ import {
} from 'src/app/services/patch-db/data-model'
import { PatchDbService } from 'src/app/services/patch-db/patch-db.service'
import { copyToClipboard } from 'src/app/util/web.util'
+import { QRComponent } from 'src/app/components/qr/qr.component'
interface LocalInterface {
def: InterfaceDef
@@ -90,12 +91,26 @@ export class AppInterfacesPage {
export class AppInterfacesItemComponent {
@Input() interface: LocalInterface
- constructor(private readonly toastCtrl: ToastController) {}
+ constructor(
+ private readonly toastCtrl: ToastController,
+ private readonly modalCtrl: ModalController,
+ ) {}
launch(url: string): void {
window.open(url, '_blank', 'noreferrer')
}
+ async showQR(text: string): Promise {
+ const modal = await this.modalCtrl.create({
+ component: QRComponent,
+ componentProps: {
+ text,
+ },
+ cssClass: 'qr-modal',
+ })
+ await modal.present()
+ }
+
async copy(address: string): Promise {
let message = ''
await copyToClipboard(address || '').then(success => {