PosDeviceSettings.fromJson constructor

PosDeviceSettings.fromJson(
  1. Map<String, dynamic> raw
)

Aus der Drahtform (schon mit den Standardwerten gemischt oder nicht).

Implementation

factory PosDeviceSettings.fromJson(Map<String, dynamic> raw) {
  const s = PosDeviceSettings();
  final g = _mische(s.toJson(), raw);
  final fremd = <String, Object>{};
  return PosDeviceSettings(
    layout: _wahl(g, 'layout', PosLayout.values, s.layout, fremd),
    categoryPosition: _wahl(g, 'categoryPosition', PosCategoryPosition.values, s.categoryPosition, fremd),
    extraColumns: _ganz(g, 'extraColumns', -2, 4, s.extraColumns, fremd),
    tileHeight: _wahl(g, 'tileHeight', PosTileHeight.values, s.tileHeight, fremd),
    touch: _bool(g['touch'], s.touch),
    shortcuts: _tastenkarte(g['shortcuts'], s.shortcuts),
    printerEnabled: _bool(g['printerEnabled'], s.printerEnabled),
    printerType: _wahl(g, 'printerType', PosPrinterType.values, s.printerType, fremd),
    printerIp: _text(g['printerIp'], s.printerIp),
    printerPort: _ganz(g, 'printerPort', 1, 65535, s.printerPort, fremd),
    printerBluetoothId: _text(g['printerBluetoothId'], s.printerBluetoothId),
    printerName: _text(g['printerName'], s.printerName),
    printerId: _text(g['printerId'], s.printerId),
    printerDeviceId: _text(g['printerDeviceId'], s.printerDeviceId),
    connectPrinterId: _text(g['connectPrinterId'], s.connectPrinterId),
    paperSize: _wahl(g, 'paperSize', PosPaperSize.values, s.paperSize, fremd),
    codePage: _wahl(g, 'codePage', PosCodePage.values, s.codePage, fremd),
    cut: _wahl(g, 'cut', PosCut.values, s.cut, fremd),
    qrMode: _wahl(g, 'qrMode', PosQrMode.values, s.qrMode, fremd),
    drawerEnabled: _bool(g['drawerEnabled'], s.drawerEnabled),
    drawerAutoOpen: _wahl(g, 'drawerAutoOpen', PosDrawerAutoOpen.values, s.drawerAutoOpen, fremd),
    terminalIp: _text(g['terminalIp'], s.terminalIp),
    terminalPort: _ganz(g, 'terminalPort', 1, 65535, s.terminalPort, fremd),
    terminalTid: _text(g['terminalTid'], s.terminalTid),
    terminalVia: _wahl(g, 'terminalVia', PosTerminalVia.values, s.terminalVia, fremd),
    terminalType: _wahl(g, 'terminalType', PosTerminalType.values, s.terminalType, fremd),
    shortcutHints: _bool(g['shortcutHints'], s.shortcutHints),
    unknownValues: Map.unmodifiable(fremd),
  );
}