Add share field to app type and show share button
This commit is contained in:
parent
423c9588da
commit
e0347444aa
|
|
@ -64,7 +64,7 @@ export function AppDetail({ app, render }: { app: App, render: () => void }) {
|
||||||
<ClickableAppName onClick={() => openRenameAppModal(app)}>{app.name}</ClickableAppName>
|
<ClickableAppName onClick={() => openRenameAppModal(app)}>{app.name}</ClickableAppName>
|
||||||
</MainTitle>
|
</MainTitle>
|
||||||
<HeaderActions>
|
<HeaderActions>
|
||||||
{!app.tool && (
|
{(!app.tool || app.share) && (
|
||||||
app.tunnelUrl
|
app.tunnelUrl
|
||||||
? <Button onClick={() => { unshareApp(app.name) }}>Unshare</Button>
|
? <Button onClick={() => { unshareApp(app.name) }}>Unshare</Button>
|
||||||
: app.tunnelEnabled
|
: app.tunnelEnabled
|
||||||
|
|
|
||||||
|
|
@ -29,9 +29,9 @@ router.sse('/stream', (send) => {
|
||||||
let queue = Promise.resolve()
|
let queue = Promise.resolve()
|
||||||
const broadcast = () => {
|
const broadcast = () => {
|
||||||
const apps: SharedApp[] = allApps().map(({
|
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))
|
queue = queue.then(() => send(apps))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -162,7 +162,8 @@ export function registerApp(dir: string) {
|
||||||
const tool = pkg.toes?.tool
|
const tool = pkg.toes?.tool
|
||||||
const apps = pkg.toes?.apps
|
const apps = pkg.toes?.apps
|
||||||
const dashboard = pkg.toes?.dashboard
|
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()
|
update()
|
||||||
emit({ type: 'app:create', app: dir })
|
emit({ type: 'app:create', app: dir })
|
||||||
if (!error) {
|
if (!error) {
|
||||||
|
|
@ -353,7 +354,8 @@ function discoverApps() {
|
||||||
const tool = pkg.toes?.tool
|
const tool = pkg.toes?.tool
|
||||||
const apps = pkg.toes?.apps
|
const apps = pkg.toes?.apps
|
||||||
const dashboard = pkg.toes?.dashboard
|
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()
|
update()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,7 @@ export type App = {
|
||||||
tool?: boolean | string
|
tool?: boolean | string
|
||||||
apps?: boolean
|
apps?: boolean
|
||||||
dashboard?: boolean
|
dashboard?: boolean
|
||||||
|
share?: boolean
|
||||||
tunnelEnabled?: boolean
|
tunnelEnabled?: boolean
|
||||||
tunnelUrl?: string
|
tunnelUrl?: string
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user