diff --git a/src/client/components/AppDetail.tsx b/src/client/components/AppDetail.tsx
index 77f5079..edecd9c 100644
--- a/src/client/components/AppDetail.tsx
+++ b/src/client/components/AppDetail.tsx
@@ -64,7 +64,7 @@ export function AppDetail({ app, render }: { app: App, render: () => void }) {
openRenameAppModal(app)}>{app.name}
- {!app.tool && (
+ {(!app.tool || app.share) && (
app.tunnelUrl
?
: app.tunnelEnabled
diff --git a/src/server/api/apps.ts b/src/server/api/apps.ts
index f8bd9b7..5f9a54c 100644
--- a/src/server/api/apps.ts
+++ b/src/server/api/apps.ts
@@ -29,9 +29,9 @@ router.sse('/stream', (send) => {
let queue = Promise.resolve()
const broadcast = () => {
const apps: SharedApp[] = allApps().map(({
- name, state, icon, error, port, started, logs, tool, apps: apps_, dashboard, tunnelEnabled, tunnelUrl
+ name, state, icon, error, port, started, logs, tool, apps: apps_, dashboard, share, tunnelEnabled, tunnelUrl
}) => ({
- name, state, icon, error, port, started, logs, tool, apps: apps_, dashboard, tunnelEnabled, tunnelUrl,
+ name, state, icon, error, port, started, logs, tool, apps: apps_, dashboard, share, tunnelEnabled, tunnelUrl,
}))
queue = queue.then(() => send(apps))
}
diff --git a/src/server/apps.ts b/src/server/apps.ts
index 1382c46..5fee129 100644
--- a/src/server/apps.ts
+++ b/src/server/apps.ts
@@ -162,7 +162,8 @@ export function registerApp(dir: string) {
const tool = pkg.toes?.tool
const apps = pkg.toes?.apps
const dashboard = pkg.toes?.dashboard
- _apps.set(dir, { name: dir, state, icon, error, tool, apps, dashboard })
+ const share = pkg.toes?.share
+ _apps.set(dir, { name: dir, state, icon, error, tool, apps, dashboard, share })
update()
emit({ type: 'app:create', app: dir })
if (!error) {
@@ -353,7 +354,8 @@ function discoverApps() {
const tool = pkg.toes?.tool
const apps = pkg.toes?.apps
const dashboard = pkg.toes?.dashboard
- _apps.set(dir, { name: dir, state, icon, error, tool, apps, dashboard })
+ const share = pkg.toes?.share
+ _apps.set(dir, { name: dir, state, icon, error, tool, apps, dashboard, share })
}
update()
}
diff --git a/src/shared/types.ts b/src/shared/types.ts
index 5438fa6..43f8fb9 100644
--- a/src/shared/types.ts
+++ b/src/shared/types.ts
@@ -31,6 +31,7 @@ export type App = {
tool?: boolean | string
apps?: boolean
dashboard?: boolean
+ share?: boolean
tunnelEnabled?: boolean
tunnelUrl?: string
}