# Felder und Eingabehilfen für Entwicklerwerkzeuge -> Aktionen.
# Namen und Beschreibungen stehen in strings.json bzw. translations/, nicht
# hier - so steht jeder Text genau einmal.
#
# Beide Oberflächen rufen diese Dienste über die WebSocket- bzw. REST-API auf
# und brauchen diese Datei nicht. Sie ist dafür da, dass die Dienste in Home
# Assistant selbst bedienbar und nachvollziehbar sind - zum Nachschauen, zum
# Ausprobieren und für eigene Automationen des Nutzers.

jetzt_aktualisieren:
screening_jetzt:
backup_jetzt:
update_pruefen:
update_installieren:

profil_schreiben:
  fields:
    profil_json:
      required: true
      selector:
        object:

entitaeten_schreiben:
  fields:
    zuordnung_json:
      required: true
      selector:
        object:

fahrt_manuell_anlegen:
  fields:
    ts_start:
      required: true
      example: "2026-08-23T07:30:00+02:00"
      selector:
        text:
    ts_end:
      required: true
      example: "2026-08-23T08:05:00+02:00"
      selector:
        text:
    art:
      selector:
        select:
          options: ["privat", "arbeitsweg"]
    start_ort:
      selector:
        text:
    ziel_ort:
      selector:
        text:
    odo_start:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    odo_end:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    distanz:
      selector:
        number: { min: 0, max: 10000, step: 0.1, mode: box, unit_of_measurement: km }

fahrt_aktualisieren:
  fields:
    trip_id:
      required: true
      example: t-4f2a91c30b7e
      selector:
        text:
    ts_start:
      selector:
        text:
    ts_end:
      selector:
        text:
    art:
      selector:
        select:
          options: ["privat", "arbeitsweg"]
    start_ort:
      selector:
        text:
    ziel_ort:
      selector:
        text:
    odo_start:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    odo_end:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    distanz:
      selector:
        number: { min: 0, max: 10000, step: 0.1, mode: box, unit_of_measurement: km }

fahrt_loeschen:
  fields:
    trip_id:
      required: true
      selector:
        text:

beleg_hochladen:
  fields:
    pdf_base64:
      required: true
      selector:
        text:
          multiline: true
    dateiname:
      selector:
        text:
    tank_id:
      selector:
        text:

tankvorgang_manuell:
  fields:
    ts:
      selector:
        text:
    liter:
      selector:
        number: { min: 0, max: 200, step: 0.01, mode: box, unit_of_measurement: L }
    kosten:
      selector:
        number: { min: 0, max: 2000, step: 0.01, mode: box, unit_of_measurement: EUR }
    km:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    ersparnis:
      selector:
        number: { min: 0, max: 500, step: 0.01, mode: box, unit_of_measurement: EUR }
    station:
      selector:
        text:
    distanz:
      selector:
        number: { min: 0, max: 10000, step: 0.1, mode: box, unit_of_measurement: km }
    kraftstoff:
      selector:
        text:
    receipt_key:
      selector:
        text:
    receipt_file:
      selector:
        text:

tankvorgang_aktualisieren:
  fields:
    tank_id:
      required: true
      selector:
        text:
    ts:
      selector:
        text:
    liter:
      selector:
        number: { min: 0, max: 200, step: 0.01, mode: box, unit_of_measurement: L }
    kosten:
      selector:
        number: { min: 0, max: 2000, step: 0.01, mode: box, unit_of_measurement: EUR }
    km:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    ersparnis:
      selector:
        number: { min: 0, max: 500, step: 0.01, mode: box, unit_of_measurement: EUR }
    station:
      selector:
        text:
    distanz:
      selector:
        number: { min: 0, max: 10000, step: 0.1, mode: box, unit_of_measurement: km }
    kraftstoff:
      selector:
        text:
    receipt_key:
      selector:
        text:
    receipt_file:
      selector:
        text:

tankvorgang_loeschen:
  fields:
    tank_id:
      required: true
      selector:
        text:

bild_hochladen:
  fields:
    dateiname:
      required: true
      example: seitenansicht.webp
      selector:
        text:
    daten_base64:
      required: true
      selector:
        text:
          multiline: true

bild_loeschen:
  fields:
    dateiname:
      required: true
      selector:
        text:

reifen_wechseln:
  fields:
    satz:
      required: true
      selector:
        select:
          options: ["sommer", "winter"]

reifen_km_setzen:
  fields:
    satz:
      required: true
      selector:
        select:
          options: ["sommer", "winter"]
    km:
      required: true
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }

reifen_archivieren:
  fields:
    satz:
      required: true
      selector:
        select:
          options: ["sommer", "winter"]

reifen_archiv_aktualisieren:
  fields:
    id:
      required: true
      selector:
        text:
    ersetzt_am:
      selector:
        text:
    km:
      selector:
        number: { min: 0, max: 2000000, step: 0.1, mode: box, unit_of_measurement: km }
    marke:
      selector:
        text:
    modell:
      selector:
        text:
    dot:
      selector:
        text:
    mass:
      selector:
        text:
    druck_vorne:
      selector:
        text:
    druck_hinten:
      selector:
        text:
    kommentar:
      selector:
        text:

reifen_archiv_loeschen:
  fields:
    id:
      required: true
      selector:
        text:

batterieverlauf_loeschen:
  fields:
    datum:
      required: true
      selector:
        text:

backup_wiederherstellen:
  fields:
    profil_json:
      selector:
        object:
    fahrten_json:
      selector:
        object:
    tankvorgaenge_json:
      selector:
        object:
    entitaeten_json:
      selector:
        object:

historie_importieren:
  fields:
    start:
      required: true
      example: "2026-01-01T00:00:00"
      selector:
        text:
    ende:
      required: true
      example: "2026-08-23T00:00:00"
      selector:
        text:

csv_importieren:
  fields:
    art:
      required: true
      example: "fahrten"
      selector:
        select:
          options:
            - "fahrten"
            - "tanken"
            - "service"
    inhalt:
      required: true
      selector:
        text:
          multiline: true
