From 67def8ac19085c849e6c0eae2434fc7ea47ff519 Mon Sep 17 00:00:00 2001 From: jtricerolph Date: Tue, 1 Sep 2026 20:35:54 +0000 Subject: [PATCH] Move extension download from Settings to Terminals page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Makes more sense there — creating a terminal key and installing the extension are the same setup workflow, not two unrelated things on separate pages. Co-Authored-By: Claude Sonnet 5 --- frontend/src/pages/Settings.tsx | 18 ++---------------- frontend/src/pages/Terminals.tsx | 17 +++++++++++++++-- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/frontend/src/pages/Settings.tsx b/frontend/src/pages/Settings.tsx index 0808fa0..9ba23c4 100644 --- a/frontend/src/pages/Settings.tsx +++ b/frontend/src/pages/Settings.tsx @@ -1,8 +1,8 @@ import { useEffect, useState } from 'react' -import { MonitorCog, Download } from 'lucide-react' +import { MonitorCog } from 'lucide-react' import { fetchSettings, updateSettings, testNewbookConnection, - fetchKioskPasswordStatus, setKioskPassword, extensionDownloadUrl, + fetchKioskPasswordStatus, setKioskPassword, } from '../api' import type { AppSettings } from '../types' @@ -120,20 +120,6 @@ export default function Settings() { -
Push Extension
-

- Standalone Chrome extension — adds a "Send to Check-In Tablet" button when a NewBook booking - is open. Not published anywhere yet, so it needs installing manually on each reception PC: - download, unzip, then chrome://extensions → enable Developer mode → Load - unpacked → select the unzipped folder. It'll need a Terminal API key from the Terminals page - to actually authorize pushes — create one there first. -

-
- - Download Extension (.zip) - -
-
Kiosk Tablets

A shared password every check-in tablet uses to set itself up at /tablet-checkin/kiosk — diff --git a/frontend/src/pages/Terminals.tsx b/frontend/src/pages/Terminals.tsx index 773dffa..04abba5 100644 --- a/frontend/src/pages/Terminals.tsx +++ b/frontend/src/pages/Terminals.tsx @@ -1,6 +1,6 @@ import { useEffect, useState } from 'react' -import { RefreshCw, KeyRound, Ban, Trash2, Copy } from 'lucide-react' -import { fetchTerminals, createTerminal, revokeTerminal, deleteTerminal } from '../api' +import { RefreshCw, KeyRound, Ban, Trash2, Copy, Download } from 'lucide-react' +import { fetchTerminals, createTerminal, revokeTerminal, deleteTerminal, extensionDownloadUrl } from '../api' import type { Terminal } from '../types' export default function Terminals() { @@ -69,6 +69,19 @@ export default function Terminals() { (hotel-owned hardware gets a device credential, same trust tier as the tablets themselves).

+
+
Chrome Extension
+

+ Not published anywhere yet, so it needs installing manually on each reception PC: download, + unzip, then chrome://extensions → enable Developer mode → Load unpacked → + select the unzipped folder. It'll need a terminal key from below to actually authorize + pushes — create one first if you haven't already. +

+ + Download Extension (.zip) + +
+ {error &&
{error}
} {revealedKey && (