DVKioskPolicy class
One kiosk's declared policy.
Never throws on bad input: a policy that cannot be read has to report what is wrong with it, because the alternative is a device that will not boot with no way to see why.
Constructors
-
DVKioskPolicy({required bool enabled, required DVKioskScope scope, required String home, required List<
String> allow, required DVKioskExternal external, required List<String> externalAllow, required bool blockSystemGestures, required bool blockHardwareKeys, required bool blockShortcuts, required bool blockClipboard, required bool blockTextSelection, required DVKioskCursor hideCursor, required Duration? screenDim, required Duration idleTimeout, required Duration idleWarning, required DVKioskIdleAction onIdle, required Set<DVKioskClearable> clearOnReset, required bool fullscreen, required DVKioskExitMethod exitMethod, required String? exitPinSecret, required int maxAttempts, required Duration lockoutFor, required bool audit, required DVKioskUpdateApply updatesApply, required DVMaintenanceWindow? updatesWindow, required List<String> problems}) -
const
Properties
-
allow
→ List<
String> -
Route patterns the kiosk permits. Empty means every application route,
which is the documented default -- read as "allow nothing" it would make
a kiosk show its home route and refuse every link on it.
final
- audit → bool
-
final
- blockClipboard → bool
-
Whether the clipboard is locked, from
input.clipboard.final - blockHardwareKeys → bool
-
final
- blockShortcuts → bool
-
final
- blockSystemGestures → bool
-
final
- blockTextSelection → bool
-
Whether page text can be selected, from
input.textSelection.final -
clearOnReset
→ Set<
DVKioskClearable> -
final
- enabled → bool
-
final
- exitMethod → DVKioskExitMethod
-
final
- exitPinSecret → String?
-
The name of the secret holding the exit PIN, never the PIN.
final
- external → DVKioskExternal
-
Whether a URL that is not this application may be opened, from
routes.external.final -
externalAllow
→ List<
String> -
The addresses DVKioskExternal.allowlist permits, from
routes.externalAllow.final - fullscreen → bool
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- hideCursor → DVKioskCursor
-
Whether the pointer is hidden over the application, from
display.hideCursor.final - home → String
-
The attract route, returned to on idle and after a reset.
final
- idleTimeout → Duration
-
final
- idleWarning → Duration
-
final
- lockoutFor → Duration
-
final
- maxAttempts → int
-
final
- onIdle → DVKioskIdleAction
-
final
-
problems
→ List<
String> -
Declarations that cannot be honoured, in the specification's terms.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scope → DVKioskScope
-
final
- screenDim → Duration?
-
How long the surface stays lit with nobody there, or null for never.
final
- updatesApply → DVKioskUpdateApply
-
When this kiosk may apply an update it has found.
final
- updatesWindow → DVMaintenanceWindow?
-
The span of the day DVKioskUpdateApply.maintenanceWindow waits for.
final
Methods
-
allowsExternal(
String url) → bool -
Whether
urlmay be handed to something that is not this application. -
allowsRoute(
String route) → bool -
Whether
routeis inside the allowlist. -
decideUpdate(
{required DVUpdateInfo update, required DVKioskState state, required DateTime now}) → DVKioskUpdateDecision -
What this kiosk should do with
update, under its declared policy. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
parse(
Object? dartvelSection) → DVKioskPolicy -
Reads
dartvel.kiosk.