@kreiseck/kasseneck-api 0.30.0 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +146 -0
- package/dist/cjs/kasse/index.d.ts +1 -1
- package/dist/cjs/kasse/index.js +5 -1
- package/dist/cjs/kasse/settings.d.ts +4 -2
- package/dist/cjs/kasse/settings.js +5 -2
- package/dist/cjs/kasse/texte.d.ts +444 -34
- package/dist/cjs/kasse/texte.js +265 -35
- package/dist/cjs/models/cancellation.d.ts +18 -5
- package/dist/cjs/models/cancellation.js +9 -4
- package/dist/cjs/models/payment-errors.js +1 -1
- package/dist/cjs/models/receipt-payment.d.ts +2 -1
- package/dist/cjs/models/receipt.js +16 -0
- package/dist/cjs/payments/hobex-hps/transaction-response.js +28 -28
- package/dist/cjs/rechnung/index.d.ts +2 -2
- package/dist/cjs/rechnung/index.js +3 -1
- package/dist/cjs/rechnung/typen.d.ts +13 -2
- package/dist/cjs/rechnung/vertrag.d.ts +5 -0
- package/dist/cjs/rechnung/vertrag.js +27 -2
- package/dist/esm/kasse/index.d.ts +1 -1
- package/dist/esm/kasse/index.js +1 -1
- package/dist/esm/kasse/settings.d.ts +4 -2
- package/dist/esm/kasse/settings.js +5 -2
- package/dist/esm/kasse/texte.d.ts +444 -34
- package/dist/esm/kasse/texte.js +262 -34
- package/dist/esm/models/cancellation.d.ts +18 -5
- package/dist/esm/models/cancellation.js +9 -4
- package/dist/esm/models/payment-errors.js +1 -1
- package/dist/esm/models/receipt-payment.d.ts +2 -1
- package/dist/esm/models/receipt.js +16 -0
- package/dist/esm/payments/hobex-hps/transaction-response.js +28 -28
- package/dist/esm/rechnung/index.d.ts +2 -2
- package/dist/esm/rechnung/index.js +1 -1
- package/dist/esm/rechnung/typen.d.ts +13 -2
- package/dist/esm/rechnung/vertrag.d.ts +5 -0
- package/dist/esm/rechnung/vertrag.js +26 -1
- package/fixtures/hobex-hps-codes.json +29 -29
- package/fixtures/kasse-settings-standard.json +4 -2
- package/fixtures/kasse-texte.json +479 -35
- package/fixtures/oberflaeche.json +8 -2
- package/fixtures/rechnung-api-beispiele/credit-fehler-rueckgabe.json +26 -0
- package/fixtures/rechnung-api-beispiele/credit-rueckgabe.json +23 -0
- package/fixtures/rechnung-api-beispiele/issue-fehler-lagerkennung.json +27 -0
- package/fixtures/rechnung-api-beispiele/issue-fehler-rueckgabe.json +25 -0
- package/fixtures/rechnung-api-beispiele/issue-lager.json +22 -0
- package/fixtures/rechnung-api-beispiele/storno-fehler-rueckgabe.json +17 -0
- package/fixtures/rechnung-api.schema.json +37 -1
- package/fixtures/rechnung-texte.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,152 @@ Was vor 0.7.0 geschah, steht in der Commit-Historie (`git log`); ab hier wird
|
|
|
4
4
|
es hier geführt. Ein Eintrag nennt die Änderung **und ihren Grund** —
|
|
5
5
|
nur der Grund überlebt den nächsten Umbau.
|
|
6
6
|
|
|
7
|
+
## 0.32.0
|
|
8
|
+
|
|
9
|
+
Vertragsgleichstand mit dem Backend für Lager-Kern Stufe 2. Das Backend vendort nur die 0.x-Linie und
|
|
10
|
+
prüft daran seine Zwillingstests; darum kommen hier genau die Teile hinzu, die es dafür braucht – kein
|
|
11
|
+
neuer Aufruf, kein neues Verhalten der Kasse. Die Kassen-Aufrufe des Lagers gibt es nur in 1.x (ab 1.2.0).
|
|
12
|
+
|
|
13
|
+
- **Storno-Code `rueckgabe_ungueltig`** am Ende von `CANCELLATION_ERROR_CODES` (Zwilling von
|
|
14
|
+
`STORNO_FEHLERCODES`; unter `/v3` `invalid_return_disposition`). Grund: das Backend weist eine
|
|
15
|
+
Rückgabe-Wahl außerhalb von `lager|defekt|entsorgt` mit diesem Code ab, und die Kasse entscheidet am Code.
|
|
16
|
+
- **Rechnungs-API:** `items[].articleId`, `stockLocationId` an `issueInvoice`, `returnDisposition`
|
|
17
|
+
(`restock|defective|disposed`) an `cancelInvoice` und `createCreditNote`, dort auch je Position
|
|
18
|
+
(`CreditNoteItemInput`, `GUTSCHRIFT_POSITION_FELDER`); Schema `fixtures/rechnung-api.schema.json` und
|
|
19
|
+
sechs Beispiele. Grund: das Backend nimmt die Felder seit Stufe 2 an und vergleicht sein Schema in beide
|
|
20
|
+
Richtungen mit dem vendorierten.
|
|
21
|
+
|
|
22
|
+
## 0.31.0
|
|
23
|
+
|
|
24
|
+
Texte und Einstellung für „Getrennt zahlen" an der Kasse (ein Tisch zahlt in Teilen, ein Beleg mit
|
|
25
|
+
mehreren Zahlungen). Nur Texte, eine Einstellung und eine Tasten-Aktion; kein Aufruf und kein
|
|
26
|
+
Rechenweg ändert sich.
|
|
27
|
+
|
|
28
|
+
- **`tenderedCents` an jeder Barzahlung**: die Doku an `ReceiptPaymentInput` und
|
|
29
|
+
`PAYMENT_TENDERED_INVALID` sagte „höchstens an einer Zahlung“. Das Backend erlaubt jetzt jeder
|
|
30
|
+
Barzahlung ihren eigenen gegebenen Betrag. Grund: beim getrennten Zahlen gibt jeder Gast selbst,
|
|
31
|
+
der Bon zeigte Gegeben/Rückgeld aber nur beim letzten. Der Bon druckte schon je Zahlung; ein Test
|
|
32
|
+
hält drei Barzahlungen mit je eigenem Rückgeld fest.
|
|
33
|
+
- **Neue Sätze in `MELDUNGEN`** unter `getrennt.*` (Hinweis zur Einstellung, Prüfungen der
|
|
34
|
+
Teilzahlung, gesperrter Warenkorb, Rückbuchung bar/Terminal/Karte ohne Anbindung, angefangene
|
|
35
|
+
Sitzung nach dem Neuladen) und unter `storno.*` (Rückgabe je Zahlung, Karten nach dem Storno von Hand gutschreiben).
|
|
36
|
+
Grund: Browser-Kasse und Kassen-App sollen am Tresen dieselben Worte sagen; eine schon belastete
|
|
37
|
+
Karte nennt in jedem Satz den Betrag, und keiner rät zum zweiten Kassieren.
|
|
38
|
+
- **`STORNO_ZAHLUNG_FEHLER`**: Zuordnung der Backend-Codes `STORNO_PAYMENTS_REQUIRED`,
|
|
39
|
+
`STORNO_REFUND_EXCEEDS_PAYMENT`, `STORNO_REFUND_REFERENCE_REQUIRED`,
|
|
40
|
+
`STORNO_REFUND_REFERENCE_UNKNOWN` und `PAYMENTS_SUM_MISMATCH` zu ihrem Satz, auch in
|
|
41
|
+
`fixtures/kasse-texte.json` (`stornoZahlungFehler`). Grund: beide Kassen entscheiden am Code,
|
|
42
|
+
nie am Wortlaut des Backends. `stornoZahlungFehler(code)` liefert den Schlüssel dazu, ein
|
|
43
|
+
unbekannter Code fällt auf `storno.fehlgeschlagen` (wie `belegMailFehler`).
|
|
44
|
+
- **Neuer Storno-Code `STORNO_OUTCOME_UNKNOWN`** am Ende von `CANCELLATION_ERROR_CODES` (Zwilling
|
|
45
|
+
von `STORNO_FEHLERCODES` in `functions/gemeinsam/storno-core.js`; unter `/v3`
|
|
46
|
+
`cancellation_outcome_unknown`, `isCancellationErrorCode` prüft weiter exakt) mit dem Satz
|
|
47
|
+
`storno.ergebnis_unklar`. Grund: der Storno-Beleg kann schon signiert sein, obwohl der Ausgang
|
|
48
|
+
offen ist; wer dann noch einmal storniert, storniert womöglich doppelt. Der Satz rät darum,
|
|
49
|
+
nicht zu wiederholen und die Belegliste später neu zu laden.
|
|
50
|
+
- **Aufteilung als eigener Schritt**: neue Beschriftungen `getrennt.weiter` („Weiter · {betrag}
|
|
51
|
+
getrennt“), `getrennt.aufteilung`, `getrennt.zurueck_zahlart`, `getrennt.tab_positionen`,
|
|
52
|
+
`getrennt.tab_betrag`, `getrennt.stueck_mehr`/`_weniger`,
|
|
53
|
+
`getrennt.gegeben`, `getrennt.gegeben_rueckgeld` und die Sätze
|
|
54
|
+
`getrennt.positionen_gesperrt` und `getrennt.positionen_waehlen`. Grund: Nutzertest – erst
|
|
55
|
+
„Weiter“, dann je Zahlung nach Positionen (stückweise) oder als Betrag. Nach einer Zahlung als
|
|
56
|
+
Betrag ist „Nach Positionen“ gesperrt, weil sich Beträge keinen Stücken zuordnen lassen; der
|
|
57
|
+
Satz sagt das.
|
|
58
|
+
- **Zahlart je Zahlung, ein Knopf zum Hinzufügen**: `getrennt.zahlart` („Zahlart“),
|
|
59
|
+
`getrennt.art_bar`/`getrennt.art_karte` („Bar“/„Karte“) als Umschalter oben in der Zahlung,
|
|
60
|
+
`getrennt.zahlung_hinzufuegen` („Zahlung hinzufügen · {betrag}“) für den einen Knopf unten
|
|
61
|
+
rechts und der Satz `getrennt.gegeben_fehlt` (Barzahlung ohne „Gegeben“ bei eingeschaltetem
|
|
62
|
+
Rückgeld-Rechner, Wortlaut wie beim Abschluss). `getrennt.bar_kassieren`/`getrennt.karte_kassieren`
|
|
63
|
+
und `getrennt.kassieren` („Zahlung {n} kassieren“) entfallen (noch nie veröffentlicht). Grund: Nutzertest – zwei Knöpfe, die sofort kassieren,
|
|
64
|
+
lagen zu nah beieinander; jetzt wählt der Kassier die Zahlart wie jede andere Eingabe, und nur
|
|
65
|
+
ein Knopf löst die Zahlung aus. Offen 0 macht aus demselben Knopf „Abschließen“.
|
|
66
|
+
- **Nach Positionen als Kacheln**: `getrennt.offene_positionen`, `getrennt.stueck_offen`
|
|
67
|
+
(„{n} offen“), `getrennt.stueck_gewaehlt` („{n} von {offen}“), `getrennt.nichts_gewaehlt` und
|
|
68
|
+
`getrennt.alles_bezahlt`. `getrennt.stueck_bezahlt` entfällt (noch nie veröffentlicht): bezahlte
|
|
69
|
+
Stück verschwinden aus der Auswahl. Grund: Nutzertest – in der großen Fläche stehen nur noch die
|
|
70
|
+
offenen Produkte als Kacheln, der Kassier tippt dort an, was dieser Gast zahlt.
|
|
71
|
+
- **`BESCHRIFTUNGEN` und `beschriftung()`**: ein zweiter Katalog für Knöpfe und Zeilennamen
|
|
72
|
+
(„Getrennt", „Zahlung {n}", „Offen", „Rest", „÷ {n}", „davon Trinkgeld {betrag}", „Wie
|
|
73
|
+
zurückgeben?", „Alles bar", „Mehrere" …), in `fixtures/kasse-texte.json` unter `beschriftungen`.
|
|
74
|
+
Grund: `MELDUNGEN` führt nur Sätze (die Wächter beider Kassen erkennen Sätze daran), „Rest" ist
|
|
75
|
+
keiner – muss aber in beiden Kassen gleich heißen. Die Zahlarten folgen dem Bon
|
|
76
|
+
(„Kartenzahlung", „Barzahlung").
|
|
77
|
+
- **Vier weitere Sätze unter `getrennt.*`**: `sitzung_unlesbar` (eine auf dem Gerät abgelegte
|
|
78
|
+
Sitzung lässt sich nicht mehr lesen – auf schon belastete Karten hinweisen, im Panel oder am
|
|
79
|
+
Terminal nachsehen lassen), `ablage_fehlgeschlagen` (die Ablage schlägt fehl – vor dem
|
|
80
|
+
Neuladen warnen, sonst verschwinden belastete Karten aus der Liste), `zu_viele_zahlungen`
|
|
81
|
+
(höchstens 20 Zahlungen je Beleg) und `entkoppeln_offene_karten` (ein entkoppeltes Gerät hatte
|
|
82
|
+
noch offene Kartenzahlungen – die Beträge stehen daneben, der Satz selbst bleibt ohne
|
|
83
|
+
Platzhalter). Grund: die Ablage der Teilzahlung läuft rein lokal auf dem Gerät; geht sie
|
|
84
|
+
verloren oder lässt sie sich nicht lesen, ist eine schon belastete Karte das teure Risiko, und
|
|
85
|
+
der Satz muss zum Nachschauen anleiten statt zum Weiterkassieren zu verleiten.
|
|
86
|
+
- **Einstellung `zahlGetrennt`** (Betrieb, Standard `false`) und **Tasten-Aktion `getrennt`**
|
|
87
|
+
(ohne Vorgabe-Taste). Grund: für Betriebe ohne Bedarf bleibt die Kasse, wie sie ist; eine
|
|
88
|
+
unerprobte Vorgabe-Taste finge womöglich der Browser ab. Das Backend (`kasse-settings-core.js`)
|
|
89
|
+
muss beide nachziehen, sonst verwirft sein Validator den Wert beim Speichern.
|
|
90
|
+
- **Vorgabe `kassierenModus` jetzt `'panel'`** (vorher `'seite'`): kassiert wird im Korb-Panel,
|
|
91
|
+
die Kacheln bleiben stehen. Grund: Nutzertest – so bleibt der Kachelbereich beim Kassieren
|
|
92
|
+
sichtbar, auch beim getrennten Zahlen. Ein gespeichertes `'seite'` bleibt; gespeichert werden
|
|
93
|
+
aber nur geänderte Felder, darum wechselt jedes Konto, das den Schalter nie angefasst hat, mit
|
|
94
|
+
dem Backend-Standard auf das Korb-Panel. Das Backend (`BETRIEB_STANDARD` in
|
|
95
|
+
`kasse-settings-core.js`) und der Dart-Zwilling ziehen denselben Wert nach.
|
|
96
|
+
- **Texte, die bisher nur in der Browser-Kasse standen, jetzt im Katalog**: Sätze
|
|
97
|
+
`kassieren.nichts_erfasst`, `kassieren.gegeben_fehlt`, `kassieren.gegeben_zu_wenig`,
|
|
98
|
+
`kassieren.gesperrt` („Kassieren gesperrt: {grund}“), `trinkgeld.ueber_haelfte`,
|
|
99
|
+
`sitzung.meldet_ab` („Kasse meldet in {sekunden} s ab …“), `abmelden.noch_einmal`,
|
|
100
|
+
`kartenzahlung.terminal_bricht_ab` und `connect.entkoppeln_frage` (nur Web); Beschriftungen
|
|
101
|
+
`kassieren.trinkgeld`, `kassieren.kein`, `kassieren.eigener_betrag`, `kassieren.passend`,
|
|
102
|
+
`kassieren.gegeben_loeschen`, `kassieren.es_fehlen_noch`, `kassieren.rueckgeld`,
|
|
103
|
+
`kartenzahlung.betrag_am_terminal`, `kartenzahlung.karte_vorhalten` („… · noch {zeit}“),
|
|
104
|
+
`kopplung.neu_koppeln`, `abmelden.frage`, `abmelden.weiter_arbeiten`, `geraet.entkoppeln`,
|
|
105
|
+
`connect.entkoppeln_bestaetigen` (nur Web), `storno.titel` („Storno zu {beleg}“),
|
|
106
|
+
`meldung.ausblenden` („Meldung ausblenden: {meldung}“) und `meldung.warnung_ausblenden`
|
|
107
|
+
(„Verstanden – Warnung ausblenden: {meldung}“). Wortlaut wie bisher in der Browser-Kasse.
|
|
108
|
+
Grund: Oberflächen-Vertrag – beide Kassen zeigen dieselben Wörter; das X an einer Meldung nennt
|
|
109
|
+
jetzt, welche Meldung es ausblendet (in der Ecke stehen oft mehrere).
|
|
110
|
+
- **Halbgeviertstrich statt Geviertstrich** in allen sichtbaren Texten von `MELDUNGEN` (u. a.
|
|
111
|
+
`abschluss.unklar`, `kartenzahlung.unklar`, `kartenzahlung.karte_gebucht_beleg_offen`,
|
|
112
|
+
`connect.*`, `druck.*`) und in den Sätzen der Hobex-Antwortcodes (`transaction-response.ts`,
|
|
113
|
+
auch `fixtures/hobex-hps-codes.json`): „ – “ statt „ — “. Nur das Zeichen ändert sich, kein
|
|
114
|
+
Wortlaut und kein Schlüssel. Wer einen dieser Sätze wörtlich vergleicht, muss nachziehen.
|
|
115
|
+
Grund: einheitliche Typografie am Bildschirm; der Geviertstrich wirkt dort wie ein
|
|
116
|
+
Maschinenzeichen. Die Rechnungstexte (`rechnung/texte.ts`, PDF) bleiben unverändert.
|
|
117
|
+
- **`Cancellation` trägt `refundedByPayment`** (Zahlungs-ID auf positive Cent), Zwilling der
|
|
118
|
+
gleichnamigen Backend-Ablage (`functions/gemeinsam/storno-core.js`). Die Lesung
|
|
119
|
+
(`fromReceiptPayload`) behält nur ganzzahlige, nicht negative Werte, verwirft ungültige
|
|
120
|
+
Einträge einzeln statt den ganzen Eintrag zu verwerfen, und lässt das Feld weg, wenn die
|
|
121
|
+
Nutzlast es nicht trägt – bestehende Belege lesen sich unverändert. Auch am `pending`-Eintrag
|
|
122
|
+
vorhanden. Grund: über alle Storno-Einträge darf je Zahlung nie mehr zurückgehen, als bezahlt
|
|
123
|
+
wurde; ohne das Feld ließe sich das am Client nicht nachvollziehen.
|
|
124
|
+
- **Weitere Sätze in `MELDUNGEN`**: `getrennt.karte_bereits_zurueckgebucht` (das Terminal meldet
|
|
125
|
+
eine Gutschrift, die hier noch als offene Rückbuchung steht), `abschluss.erledigen_frage` (nur erledigen, was wirklich in der Belegliste steht),
|
|
126
|
+
`kartenzahlung.korb_gesperrt_karte_belastet` und `kartenzahlung.entkoppeln_karte_belastet`.
|
|
127
|
+
Grund: jeder dieser Zustände ist eine schon belastete oder gutgeschriebene Karte ohne
|
|
128
|
+
passenden Beleg – der teuerste Fehler am Tresen ist die doppelte Buchung, und kein Satz davon
|
|
129
|
+
darf zum Wiederholen raten, ohne vorher den Terminal-Beleg zu nennen.
|
|
130
|
+
- **Weitere `BESCHRIFTUNGEN`**: `allgemein.abbrechen`, `abschluss.beleg_vorhanden`,
|
|
131
|
+
`abschluss.erledigen`, `getrennt.karte_zurueckbuchen`, `getrennt.trotzdem_neu_koppeln`,
|
|
132
|
+
`getrennt.zahlung_behalten`, `getrennt.klaeren`, `getrennt.wurde_belastet`,
|
|
133
|
+
`getrennt.nicht_belastet`, `getrennt.erneut_zurueckbuchen`, `storno.differenz`. Grund: Knöpfe
|
|
134
|
+
zu den neuen Sätzen oben, in beiden Kassen gleich beschriftet.
|
|
135
|
+
- **Storno eines Belegs mit mehreren Zahlungen: Karten gehen von Hand zurück.**
|
|
136
|
+
`storno.karten_gutschreiben` steht nach dem gebuchten Storno über der Liste der Karten zum
|
|
137
|
+
Abhaken (eine oder mehrere, mit oder ohne Anbindung); `storno.ergebnis_unklar_karten` ersetzt
|
|
138
|
+
`storno.ergebnis_unklar`, wenn der gesendete Vorschlag Karten enthielt – erst die Belegliste
|
|
139
|
+
neu laden, erst dann gutschreiben (`STORNO_ZAHLUNG_FEHLER` zeigt weiter auf
|
|
140
|
+
`storno.ergebnis_unklar`, die Wahl trifft die Kasse am Vorschlag). Die Sätze und Knöpfe einer
|
|
141
|
+
Gutschrift am Terminal VOR dem Senden (`storno.gutschrift_laeuft`,
|
|
142
|
+
`storno.gutschrift_fehlgeschlagen`, `storno.gutschrift_unklar`,
|
|
143
|
+
`storno.gutgeschrieben_nicht_gebucht`, `storno.gutschrift_pruefen`,
|
|
144
|
+
`storno.extern_gutschreiben`, `storno.am_terminal_gutgeschrieben`,
|
|
145
|
+
`storno.nicht_gutgeschrieben`) sind wieder entfernt; sie waren nie veröffentlicht. Grund:
|
|
146
|
+
eine Gutschrift vor dem gebuchten Storno lässt Geld zurückgehen, ohne dass ein Storno-Beleg
|
|
147
|
+
sicher entsteht; die automatische Gutschrift kommt als eigener Schritt mit
|
|
148
|
+
Server-Unterstützung.
|
|
149
|
+
- **`storno.karten_nicht_abgehakt`**: wird die Liste der Karten nach dem gebuchten Storno
|
|
150
|
+
geschlossen, obwohl nicht jede Karte abgehakt ist, fragt die Kasse einmal nach. Grund: eine
|
|
151
|
+
vergessene Gutschrift fällt sonst erst dem Gast auf, und am Storno-Beleg sieht sie niemand mehr.
|
|
152
|
+
|
|
7
153
|
## 0.30.0
|
|
8
154
|
|
|
9
155
|
Mehrere Zahlungen je Beleg. Setzt ein Backend mit `payments` voraus (keck, live seit
|
|
@@ -10,4 +10,4 @@ export { verteileRabatt } from '../receipt/discount.js';
|
|
|
10
10
|
export { cancelScopeOf, receiptsScopeOf, type RegisterScope, type RegisterUserPerms } from '../register/pairing.js';
|
|
11
11
|
export { type NetzDrucker, type DruckJob, type DruckJobStatus, type CreatePrintJobOptions, listMyPrinters, createPrintJob, getPrintJob } from './drucker.js';
|
|
12
12
|
export { listMyTipRecipients } from './trinkgeld.js';
|
|
13
|
-
export { MELDUNGEN, FEHLERREGELN, meldung, meldungGiltFuer, BELEG_MAIL_FEHLER, belegMailFehler, type Meldung, type MeldungsSchluessel, type Fehlerart, type Seite, type BelegMailFehlercode, } from './texte.js';
|
|
13
|
+
export { MELDUNGEN, FEHLERREGELN, meldung, meldungGiltFuer, BELEG_MAIL_FEHLER, belegMailFehler, STORNO_ZAHLUNG_FEHLER, stornoZahlungFehler, BESCHRIFTUNGEN, beschriftung, type Meldung, type MeldungsSchluessel, type Fehlerart, type Seite, type BelegMailFehlercode, type StornoZahlungFehlercode, type BeschriftungsSchluessel, } from './texte.js';
|
package/dist/cjs/kasse/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createPrintJob = exports.listMyPrinters = exports.receiptsScopeOf = exports.cancelScopeOf = exports.verteileRabatt = exports.setMyRegisterDeviceSettings = exports.setMyKasseSettings = exports.getKasseSettings = exports.mengeErlaubt = exports.mengenVorgabe = exports.mengenregelFuerEinheit = exports.listMyArticles = exports.listMyArticleGroups = exports.fromKasseArtikelPayload = exports.fromArticleGroupPayload = exports.FERTIG_SEKUNDEN = exports.WZ_SKALA = exports.LOGO_SKALA = exports.WZ_STAERKE = exports.WZ_SEITE = exports.RABATT = exports.AUTO_AB_MIN = exports.KACHELSTIL = exports.SCHRIFT_EINST = exports.LOGO_GROESSE = exports.TASTEN_AKTIONEN = exports.QR_MODUS = exports.LADE_AUTO = exports.SCHNITT = exports.ZEICHENSATZ = exports.PAPIER = exports.TERMINAL_ART = exports.TERMINAL_VIA = exports.DRUCKER_ART = exports.HOEHE = exports.KATPOS = exports.LAYOUT = exports.BELEG_AUSGABE = exports.KASSIEREN_MODUS = exports.TG_MODUS = exports.MENGE = exports.WASSERZEICHEN = exports.SCHRIFT = exports.STIL = exports.mergeKasseSettings = exports.KASSE_GERAET_STANDARD = exports.KASSE_BETRIEB_STANDARD = exports.KASSE_TASTEN_STANDARD = exports.KASSE_TASTEN_AKTIONEN = exports.KARTENANBIETER = void 0;
|
|
4
|
-
exports.belegMailFehler = exports.BELEG_MAIL_FEHLER = exports.meldungGiltFuer = exports.meldung = exports.FEHLERREGELN = exports.MELDUNGEN = exports.listMyTipRecipients = exports.getPrintJob = void 0;
|
|
4
|
+
exports.beschriftung = exports.BESCHRIFTUNGEN = exports.stornoZahlungFehler = exports.STORNO_ZAHLUNG_FEHLER = exports.belegMailFehler = exports.BELEG_MAIL_FEHLER = exports.meldungGiltFuer = exports.meldung = exports.FEHLERREGELN = exports.MELDUNGEN = exports.listMyTipRecipients = exports.getPrintJob = void 0;
|
|
5
5
|
/**
|
|
6
6
|
* Kachel-Kasse: Einstellungen, Artikelgruppen/Artikel fuer Kacheln,
|
|
7
7
|
* Rabattverteilung. Die Aufrufe heissen 1:1 wie die Backend-Functions
|
|
@@ -77,3 +77,7 @@ Object.defineProperty(exports, "meldung", { enumerable: true, get: function () {
|
|
|
77
77
|
Object.defineProperty(exports, "meldungGiltFuer", { enumerable: true, get: function () { return texte_js_1.meldungGiltFuer; } });
|
|
78
78
|
Object.defineProperty(exports, "BELEG_MAIL_FEHLER", { enumerable: true, get: function () { return texte_js_1.BELEG_MAIL_FEHLER; } });
|
|
79
79
|
Object.defineProperty(exports, "belegMailFehler", { enumerable: true, get: function () { return texte_js_1.belegMailFehler; } });
|
|
80
|
+
Object.defineProperty(exports, "STORNO_ZAHLUNG_FEHLER", { enumerable: true, get: function () { return texte_js_1.STORNO_ZAHLUNG_FEHLER; } });
|
|
81
|
+
Object.defineProperty(exports, "stornoZahlungFehler", { enumerable: true, get: function () { return texte_js_1.stornoZahlungFehler; } });
|
|
82
|
+
Object.defineProperty(exports, "BESCHRIFTUNGEN", { enumerable: true, get: function () { return texte_js_1.BESCHRIFTUNGEN; } });
|
|
83
|
+
Object.defineProperty(exports, "beschriftung", { enumerable: true, get: function () { return texte_js_1.beschriftung; } });
|
|
@@ -156,6 +156,8 @@ export interface KasseSettingsBetrieb {
|
|
|
156
156
|
rueckgeld: boolean;
|
|
157
157
|
schnellbar: boolean;
|
|
158
158
|
kassierenModus: KasseKassierenModus;
|
|
159
|
+
/** Getrennt zahlen: dritter Knopf neben Bar und Karte, ein Beleg mit mehreren Zahlungen. */
|
|
160
|
+
zahlGetrennt: boolean;
|
|
159
161
|
/** Trinkgeld-Chips in Prozent (eine Nachkommastelle, max 5, eindeutig, Reihenfolge des Chefs). */
|
|
160
162
|
tgChips: number[];
|
|
161
163
|
/** Rabatt-Chips in Prozent — dieselben Regeln wie tgChips, vom Chef einstellbar. */
|
|
@@ -168,10 +170,10 @@ export interface KasseSettingsBetrieb {
|
|
|
168
170
|
hinweise: boolean;
|
|
169
171
|
}
|
|
170
172
|
/** Aktionen der Kasse, die eine Taste bekommen koennen. */
|
|
171
|
-
export declare const KASSE_TASTEN_AKTIONEN: readonly ["kassieren", "abschliessen", "abbrechen", "frei", "bar", "karte", "passend", "belege", "letzteZurueck", "einstellungen", "abmelden", "trinkgeld", "vollbild", "gegebenLeeren", "korbLeeren"];
|
|
173
|
+
export declare const KASSE_TASTEN_AKTIONEN: readonly ["kassieren", "abschliessen", "abbrechen", "frei", "bar", "karte", "passend", "belege", "letzteZurueck", "einstellungen", "abmelden", "trinkgeld", "vollbild", "gegebenLeeren", "korbLeeren", "getrennt"];
|
|
172
174
|
export type KasseTastenAktion = typeof KASSE_TASTEN_AKTIONEN[number];
|
|
173
175
|
/** Kurzer Name, damit alle Enum-Listen gleich heissen; der alte bleibt gueltig. */
|
|
174
|
-
export declare const TASTEN_AKTIONEN: readonly ["kassieren", "abschliessen", "abbrechen", "frei", "bar", "karte", "passend", "belege", "letzteZurueck", "einstellungen", "abmelden", "trinkgeld", "vollbild", "gegebenLeeren", "korbLeeren"];
|
|
176
|
+
export declare const TASTEN_AKTIONEN: readonly ["kassieren", "abschliessen", "abbrechen", "frei", "bar", "karte", "passend", "belege", "letzteZurueck", "einstellungen", "abmelden", "trinkgeld", "vollbild", "gegebenLeeren", "korbLeeren", "getrennt"];
|
|
175
177
|
/** Tastenkarte: Aktion -> Tasten (`Mod+F`, `Enter`, `Escape`, `F5` ...; `Mod` = ⌘ auf dem Mac, Strg sonst). */
|
|
176
178
|
export type KasseTastenkarte = Record<KasseTastenAktion, string[]>;
|
|
177
179
|
export declare const KASSE_TASTEN_STANDARD: Readonly<KasseTastenkarte>;
|
|
@@ -92,7 +92,7 @@ exports.WZ_SKALA = ['S', 'M', 'L', 'XL'];
|
|
|
92
92
|
/** Wie lange die Fertig-Seite stehen bleibt, in Sekunden; 0 = bis zum Tippen. */
|
|
93
93
|
exports.FERTIG_SEKUNDEN = [0, 3, 5, 10, 15, 30, 60];
|
|
94
94
|
/** Aktionen der Kasse, die eine Taste bekommen koennen. */
|
|
95
|
-
exports.KASSE_TASTEN_AKTIONEN = ['kassieren', 'abschliessen', 'abbrechen', 'frei', 'bar', 'karte', 'passend', 'belege', 'letzteZurueck', 'einstellungen', 'abmelden', 'trinkgeld', 'vollbild', 'gegebenLeeren', 'korbLeeren'];
|
|
95
|
+
exports.KASSE_TASTEN_AKTIONEN = ['kassieren', 'abschliessen', 'abbrechen', 'frei', 'bar', 'karte', 'passend', 'belege', 'letzteZurueck', 'einstellungen', 'abmelden', 'trinkgeld', 'vollbild', 'gegebenLeeren', 'korbLeeren', 'getrennt'];
|
|
96
96
|
/** Kurzer Name, damit alle Enum-Listen gleich heissen; der alte bleibt gueltig. */
|
|
97
97
|
exports.TASTEN_AKTIONEN = exports.KASSE_TASTEN_AKTIONEN;
|
|
98
98
|
exports.KASSE_TASTEN_STANDARD = Object.freeze({
|
|
@@ -114,6 +114,9 @@ exports.KASSE_TASTEN_STANDARD = Object.freeze({
|
|
|
114
114
|
// verschiedenen Momenten (Korb vor dem Kassieren, Gegeben-Feld darin) —
|
|
115
115
|
// der Verteiler laesst die nicht zustaendige Aktion durchfallen.
|
|
116
116
|
korbLeeren: ['Mod+C'],
|
|
117
|
+
// Bewusst ohne Vorgabe: jede freie Mod-Taste ist in irgendeinem Browser
|
|
118
|
+
// belegt oder am Geraet unerprobt. Der Chef vergibt sie, wenn er sie braucht.
|
|
119
|
+
getrennt: [],
|
|
117
120
|
});
|
|
118
121
|
exports.KASSE_BETRIEB_STANDARD = Object.freeze({
|
|
119
122
|
// Das Petrol der Marke: die Aktionsfarbe des Design-Systems (Rolle `brand`).
|
|
@@ -128,7 +131,7 @@ exports.KASSE_BETRIEB_STANDARD = Object.freeze({
|
|
|
128
131
|
menge: 'x', notiz: false, suche: false, rabatt: 'aus',
|
|
129
132
|
zahlBar: true, zahlKarte: false, kartenanbieter: 'keiner', trinkgeld: false, tgModus: 'beides',
|
|
130
133
|
tgStufen: { 5: true, 10: true, 15: false, 20: false }, tgChips: [5, 10], tgSplit: true, rueckgeld: true,
|
|
131
|
-
schnellbar: false, kassierenModus: '
|
|
134
|
+
schnellbar: false, kassierenModus: 'panel', zahlGetrennt: false,
|
|
132
135
|
// 'fragen' = Fertig-Seite bietet QR und Bon an — sicherster Standard.
|
|
133
136
|
logoBild: '', wzSeite: 'mitte', wzPos: 50, wzPosV: 50, wzStaerke: 6, logoSkala: 'M', wzSkala: 'M',
|
|
134
137
|
glas: true, hinweise: true,
|