Appearance
apps/panel 0.81.0
Released on 14 September 2026. Previous release: 0.80.5.
What changed
- The new
operatorTerminalpanel type is a demonstration operator terminal. The operator finds an operation by search, filters and sorting, opens it, reads its document and instruction tasks, starts work, pauses and resumes it, and registers good items as a batch quantity or by choosing serial material instances. The footer shows the operator, a countdown timer with colour states, the quantities and the operation fields. - When the root panel of an application is
operatorTerminal, the application hides its global menu and header and gives the terminal the whole browser window.Exitreturns to the home page and restores the menu and header. - In this full-screen mode the terminal is sized for 10-inch touch tablets. The application raises its root scale from 0.75 to 1, so text and controls grow together; primary controls are at least 48 CSS pixels high.
Canceland the batchStartconfirmation stay in a sticky footer,Goodis confirmed withOKinside the quantity keypad, andSelectstays visible above the list of serial items while the list scrolls. Leaving the terminal restores the normal scale. - The terminal reads operations through
panel.request, the same request settings that Table uses:metaTypeNamewithattributeList,findAttributesandsortParams, orcustomRequest. The card, header and footer fields interminalConfigare composed ofattributepaths of the returned object, such asselectedWorkUnit.name, and literaltext. The{ "context": "materialInstance" }part shows the serial or batch number: the operation'smaterialInstanceItemIdsfor batch operations, and the serial item that the operator confirms in theItemform for serial operations. The built-in demonstration uses the same settings. - The card title and each card value show at most two lines. A value that does not fit next to its label moves under it, and cut text ends with an ellipsis. Hovering over the cut text with a mouse, or tapping it on a touch screen, shows the full value in a tooltip.
- Before loading data, the panel checks
panel.requestandterminalConfig. If the configuration is invalid, the panel lists every invalid path with its reason, for examplepanel.terminalConfig.cardFields[0].parts[0], and loads no operations. The application then keeps its usual menu and header, so the application editor stays available for the correction.
Open the demonstration
The demonstration runs on an isolated demo deployment. Start the panel with NUXT_LOCAL_FIXTURE_API_ENABLED=true and NUXT_PUBLIC_API_PREFIX=/local-api, sign in with any non-empty username and password, and choose Терминал оператора · demo in the application list. Its route is /app/local-operator-terminal. The demo server creates 30 operations when it starts and keeps command results until it restarts.
Known limitations
- With
metaTypeName, the terminal lists and shows real operations read-only: documents, tasks, commands and the timer work only in the demonstration, and the terminal is not connected to SignalR. My operations, measurement forms, scanning, scrap and pending-item commands, and specialised task content are not available.- When the last good items are registered, the demonstration marks the operation completed even if some of its tasks are still open, and those tasks can no longer be completed. The completion rule is being agreed.
Updated documentation
- The operator terminal guide describes the demonstration, the request and field configuration, the validation errors and the limitations.