@kreiseck/kasseneck-api 0.31.0 → 1.0.0-rc.2
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 +317 -0
- package/README.de.md +11 -7
- package/README.md +509 -126
- package/dist/cjs/client/api.d.ts +7 -6
- package/dist/cjs/client/api.js +2 -2
- package/dist/cjs/client/aufrufe.d.ts +29 -5
- package/dist/cjs/client/aufrufe.js +114 -2
- package/dist/cjs/client/auth.d.ts +2 -0
- package/dist/cjs/client/auth.js +17 -1
- package/dist/cjs/client/cashregisters.d.ts +1 -1
- package/dist/cjs/client/cashregisters.js +2 -2
- package/dist/cjs/client/errors.d.ts +94 -19
- package/dist/cjs/client/errors.js +132 -28
- package/dist/cjs/client/fehlercodes.d.ts +9 -0
- package/dist/cjs/client/fehlercodes.js +36 -0
- package/dist/cjs/client/index.d.ts +5 -5
- package/dist/cjs/client/index.js +11 -3
- package/dist/cjs/client/receipts.d.ts +131 -124
- package/dist/cjs/client/receipts.js +196 -137
- package/dist/cjs/client/reports.d.ts +26 -4
- package/dist/cjs/client/reports.js +37 -4
- package/dist/cjs/client/status.d.ts +3 -3
- package/dist/cjs/client/status.js +7 -7
- package/dist/cjs/client/transport.d.ts +56 -4
- package/dist/cjs/client/transport.js +234 -25
- package/dist/cjs/enums/vat-rate.d.ts +2 -2
- package/dist/cjs/enums/vat-rate.js +1 -1
- package/dist/cjs/index.d.ts +4 -3
- package/dist/cjs/index.js +42 -13
- package/dist/{esm/rechnung → cjs/invoice}/api.d.ts +18 -17
- package/dist/cjs/{rechnung → invoice}/api.js +6 -6
- package/dist/{esm/rechnung → cjs/invoice}/auth.d.ts +2 -2
- package/dist/cjs/{rechnung → invoice}/auth.js +5 -5
- package/dist/{esm/rechnung/rechnen.d.ts → cjs/invoice/calc.d.ts} +27 -27
- package/dist/cjs/{rechnung/rechnen.js → invoice/calc.js} +54 -54
- package/dist/{esm/rechnung → cjs/invoice}/endpunkte.d.ts +23 -21
- package/dist/cjs/{rechnung → invoice}/endpunkte.js +52 -42
- package/dist/cjs/invoice/fehler.d.ts +31 -0
- package/dist/cjs/invoice/fehler.js +39 -0
- package/dist/cjs/invoice/index.d.ts +21 -0
- package/dist/cjs/invoice/index.js +86 -0
- package/dist/cjs/{rechnung → invoice}/summen.d.ts +12 -12
- package/dist/cjs/{rechnung → invoice}/summen.js +14 -14
- package/dist/cjs/invoice/texte.d.ts +224 -0
- package/dist/cjs/invoice/texte.js +425 -0
- package/dist/{esm/rechnung → cjs/invoice}/typen.d.ts +32 -11
- package/dist/cjs/{rechnung → invoice}/vertrag.d.ts +97 -71
- package/dist/cjs/{rechnung → invoice}/vertrag.js +144 -82
- package/dist/cjs/models/cancellation.d.ts +43 -24
- package/dist/cjs/models/cancellation.js +94 -46
- package/dist/cjs/models/hobex-receipt.d.ts +3 -3
- package/dist/cjs/models/hobex-receipt.js +35 -35
- package/dist/cjs/models/index.d.ts +6 -5
- package/dist/cjs/models/index.js +22 -2
- package/dist/cjs/models/payment-errors.d.ts +32 -15
- package/dist/cjs/models/payment-errors.js +80 -32
- package/dist/cjs/models/receipt-company.d.ts +6 -5
- package/dist/cjs/models/receipt-company.js +4 -4
- package/dist/cjs/models/receipt-email.d.ts +32 -18
- package/dist/cjs/models/receipt-email.js +69 -24
- package/dist/cjs/models/receipt-errors.d.ts +39 -0
- package/dist/cjs/models/receipt-errors.js +94 -0
- package/dist/cjs/models/receipt-item.d.ts +9 -1
- package/dist/cjs/models/receipt-item.js +3 -0
- package/dist/cjs/models/receipt-summary.d.ts +10 -4
- package/dist/cjs/models/receipt-summary.js +10 -4
- package/dist/cjs/models/receipt.d.ts +31 -2
- package/dist/cjs/models/receipt.js +12 -1
- package/dist/cjs/models/voucher.d.ts +7 -6
- package/dist/cjs/models/voucher.js +2 -7
- package/dist/cjs/partner/ablauf.d.ts +10 -10
- package/dist/cjs/partner/ablauf.js +29 -29
- package/dist/cjs/partner/api.d.ts +26 -23
- package/dist/cjs/partner/api.js +11 -13
- package/dist/cjs/partner/auth.d.ts +1 -1
- package/dist/cjs/partner/auth.js +2 -2
- package/dist/cjs/partner/betrieb.d.ts +7 -7
- package/dist/cjs/partner/betrieb.js +10 -10
- package/dist/cjs/partner/endpunkte.d.ts +27 -14
- package/dist/cjs/partner/endpunkte.js +80 -39
- package/dist/cjs/partner/fehler.d.ts +60 -30
- package/dist/cjs/partner/fehler.js +99 -43
- package/dist/cjs/partner/index.d.ts +13 -12
- package/dist/cjs/partner/index.js +35 -22
- package/dist/cjs/partner/secret.d.ts +3 -3
- package/dist/cjs/partner/secret.js +6 -6
- package/dist/cjs/partner/typen.d.ts +129 -71
- package/dist/cjs/partner/typen.js +76 -3
- package/dist/cjs/partner/webhook-signatur.d.ts +2 -2
- package/dist/cjs/partner/webhook-signatur.js +12 -12
- package/dist/cjs/partner/webhooks.d.ts +60 -32
- package/dist/cjs/partner/webhooks.js +40 -34
- package/dist/cjs/payments/hobex.d.ts +11 -3
- package/dist/cjs/payments/hobex.js +17 -5
- package/dist/cjs/payments/stripe.d.ts +5 -2
- package/dist/cjs/payments/stripe.js +10 -5
- package/dist/cjs/pos/artikel.d.ts +90 -0
- package/dist/cjs/pos/artikel.js +89 -0
- package/dist/cjs/pos/client.d.ts +27 -0
- package/dist/cjs/pos/client.js +144 -0
- package/dist/cjs/pos/drucker.d.ts +86 -0
- package/dist/cjs/pos/drucker.js +78 -0
- package/dist/cjs/pos/errors.d.ts +36 -0
- package/dist/cjs/pos/errors.js +95 -0
- package/dist/cjs/pos/index.d.ts +15 -0
- package/dist/cjs/pos/index.js +102 -0
- package/dist/cjs/pos/settings.d.ts +313 -0
- package/dist/cjs/pos/settings.js +376 -0
- package/dist/cjs/pos/texte.d.ts +883 -0
- package/dist/cjs/pos/texte.js +489 -0
- package/dist/cjs/{kasse → pos}/trinkgeld.d.ts +1 -1
- package/dist/cjs/{kasse → pos}/trinkgeld.js +2 -2
- package/dist/cjs/printing/escpos.d.ts +29 -29
- package/dist/cjs/printing/escpos.js +61 -61
- package/dist/cjs/printing/index.d.ts +2 -2
- package/dist/cjs/printing/index.js +17 -17
- package/dist/cjs/printing/qr-groesse.d.ts +38 -38
- package/dist/cjs/printing/qr-groesse.js +47 -47
- package/dist/cjs/printing/webusb.d.ts +2 -2
- package/dist/cjs/printing/webusb.js +4 -4
- package/dist/cjs/react/index.d.ts +21 -21
- package/dist/cjs/react/index.js +40 -30
- package/dist/cjs/receipt/bild.d.ts +4 -4
- package/dist/cjs/receipt/bild.js +11 -11
- package/dist/cjs/receipt/blatt.d.ts +46 -46
- package/dist/cjs/receipt/blatt.js +59 -59
- package/dist/cjs/receipt/discount.d.ts +1 -1
- package/dist/cjs/receipt/discount.js +8 -8
- package/dist/cjs/receipt/due.d.ts +86 -0
- package/dist/cjs/receipt/due.js +261 -0
- package/dist/cjs/receipt/epos.d.ts +22 -22
- package/dist/cjs/receipt/epos.js +45 -45
- package/dist/cjs/receipt/grid.d.ts +10 -10
- package/dist/cjs/receipt/grid.js +20 -20
- package/dist/cjs/receipt/index.d.ts +9 -8
- package/dist/cjs/receipt/index.js +26 -23
- package/dist/cjs/receipt/layout-escpos.d.ts +24 -24
- package/dist/cjs/receipt/layout-escpos.js +49 -49
- package/dist/cjs/receipt/layout.d.ts +28 -23
- package/dist/cjs/receipt/layout.js +45 -21
- package/dist/cjs/receipt/marke-daten.d.ts +8 -8
- package/dist/cjs/receipt/marke-daten.js +8 -8
- package/dist/cjs/receipt/marke.d.ts +7 -7
- package/dist/cjs/receipt/marke.js +10 -10
- package/dist/cjs/register/errors.d.ts +61 -0
- package/dist/cjs/register/errors.js +112 -0
- package/dist/cjs/register/index.d.ts +14 -1
- package/dist/cjs/register/index.js +20 -1
- package/dist/cjs/register/pairing.d.ts +55 -36
- package/dist/cjs/register/pairing.js +33 -29
- package/dist/cjs/register/session.d.ts +5 -5
- package/dist/cjs/register/session.js +7 -7
- package/dist/cjs/stored/draht.d.ts +45 -0
- package/dist/cjs/stored/draht.js +220 -0
- package/dist/cjs/stored/einstellungen.d.ts +23 -0
- package/dist/cjs/stored/einstellungen.js +200 -0
- package/dist/cjs/stored/index.d.ts +109 -0
- package/dist/cjs/stored/index.js +225 -0
- package/dist/cjs/stored/vokabular.d.ts +18 -0
- package/dist/cjs/stored/vokabular.js +389 -0
- package/dist/cjs/version.d.ts +7 -0
- package/dist/cjs/version.js +10 -0
- package/dist/cjs/vienna-time.d.ts +1 -1
- package/dist/cjs/vienna-time.js +2 -2
- package/dist/esm/client/api.d.ts +7 -6
- package/dist/esm/client/api.js +4 -4
- package/dist/esm/client/aufrufe.d.ts +29 -5
- package/dist/esm/client/aufrufe.js +111 -1
- package/dist/esm/client/auth.d.ts +2 -0
- package/dist/esm/client/auth.js +16 -1
- package/dist/esm/client/cashregisters.d.ts +1 -1
- package/dist/esm/client/cashregisters.js +2 -2
- package/dist/esm/client/errors.d.ts +94 -19
- package/dist/esm/client/errors.js +129 -27
- package/dist/esm/client/fehlercodes.d.ts +9 -0
- package/dist/esm/client/fehlercodes.js +32 -0
- package/dist/esm/client/index.d.ts +5 -5
- package/dist/esm/client/index.js +5 -5
- package/dist/esm/client/receipts.d.ts +131 -124
- package/dist/esm/client/receipts.js +195 -140
- package/dist/esm/client/reports.d.ts +26 -4
- package/dist/esm/client/reports.js +36 -4
- package/dist/esm/client/status.d.ts +3 -3
- package/dist/esm/client/status.js +7 -7
- package/dist/esm/client/transport.d.ts +56 -4
- package/dist/esm/client/transport.js +233 -24
- package/dist/esm/enums/vat-rate.d.ts +2 -2
- package/dist/esm/enums/vat-rate.js +1 -1
- package/dist/esm/index.d.ts +4 -3
- package/dist/esm/index.js +4 -3
- package/dist/{cjs/rechnung → esm/invoice}/api.d.ts +18 -17
- package/dist/esm/{rechnung → invoice}/api.js +6 -6
- package/dist/{cjs/rechnung → esm/invoice}/auth.d.ts +2 -2
- package/dist/esm/{rechnung → invoice}/auth.js +4 -4
- package/dist/{cjs/rechnung/rechnen.d.ts → esm/invoice/calc.d.ts} +27 -27
- package/dist/esm/{rechnung/rechnen.js → invoice/calc.js} +45 -45
- package/dist/{cjs/rechnung → esm/invoice}/endpunkte.d.ts +23 -21
- package/dist/esm/{rechnung → invoice}/endpunkte.js +52 -42
- package/dist/esm/invoice/fehler.d.ts +31 -0
- package/dist/esm/invoice/fehler.js +33 -0
- package/dist/esm/invoice/index.d.ts +21 -0
- package/dist/esm/invoice/index.js +20 -0
- package/dist/esm/{rechnung → invoice}/summen.d.ts +12 -12
- package/dist/esm/{rechnung → invoice}/summen.js +12 -12
- package/dist/esm/invoice/texte.d.ts +224 -0
- package/dist/esm/invoice/texte.js +421 -0
- package/dist/{cjs/rechnung → esm/invoice}/typen.d.ts +32 -11
- package/dist/esm/{rechnung → invoice}/vertrag.d.ts +97 -71
- package/dist/esm/{rechnung → invoice}/vertrag.js +143 -81
- package/dist/esm/models/cancellation.d.ts +43 -24
- package/dist/esm/models/cancellation.js +90 -45
- package/dist/esm/models/hobex-receipt.d.ts +3 -3
- package/dist/esm/models/hobex-receipt.js +35 -35
- package/dist/esm/models/index.d.ts +6 -5
- package/dist/esm/models/index.js +6 -5
- package/dist/esm/models/payment-errors.d.ts +32 -15
- package/dist/esm/models/payment-errors.js +77 -32
- package/dist/esm/models/receipt-company.d.ts +6 -5
- package/dist/esm/models/receipt-company.js +4 -4
- package/dist/esm/models/receipt-email.d.ts +32 -18
- package/dist/esm/models/receipt-email.js +65 -23
- package/dist/esm/models/receipt-errors.d.ts +39 -0
- package/dist/esm/models/receipt-errors.js +87 -0
- package/dist/esm/models/receipt-item.d.ts +9 -1
- package/dist/esm/models/receipt-item.js +3 -0
- package/dist/esm/models/receipt-summary.d.ts +10 -4
- package/dist/esm/models/receipt-summary.js +9 -3
- package/dist/esm/models/receipt.d.ts +31 -2
- package/dist/esm/models/receipt.js +12 -2
- package/dist/esm/models/voucher.d.ts +7 -6
- package/dist/esm/models/voucher.js +2 -7
- package/dist/esm/partner/ablauf.d.ts +10 -10
- package/dist/esm/partner/ablauf.js +27 -27
- package/dist/esm/partner/api.d.ts +26 -23
- package/dist/esm/partner/api.js +13 -15
- package/dist/esm/partner/auth.d.ts +1 -1
- package/dist/esm/partner/auth.js +2 -2
- package/dist/esm/partner/betrieb.d.ts +7 -7
- package/dist/esm/partner/betrieb.js +8 -8
- package/dist/esm/partner/endpunkte.d.ts +27 -14
- package/dist/esm/partner/endpunkte.js +79 -39
- package/dist/esm/partner/fehler.d.ts +60 -30
- package/dist/esm/partner/fehler.js +91 -35
- package/dist/esm/partner/index.d.ts +13 -12
- package/dist/esm/partner/index.js +12 -11
- package/dist/esm/partner/secret.d.ts +3 -3
- package/dist/esm/partner/secret.js +5 -5
- package/dist/esm/partner/typen.d.ts +129 -71
- package/dist/esm/partner/typen.js +75 -2
- package/dist/esm/partner/webhook-signatur.d.ts +2 -2
- package/dist/esm/partner/webhook-signatur.js +12 -12
- package/dist/esm/partner/webhooks.d.ts +60 -32
- package/dist/esm/partner/webhooks.js +38 -32
- package/dist/esm/payments/hobex.d.ts +11 -3
- package/dist/esm/payments/hobex.js +18 -6
- package/dist/esm/payments/stripe.d.ts +5 -2
- package/dist/esm/payments/stripe.js +11 -6
- package/dist/esm/pos/artikel.d.ts +90 -0
- package/dist/esm/pos/artikel.js +79 -0
- package/dist/esm/pos/client.d.ts +27 -0
- package/dist/esm/pos/client.js +137 -0
- package/dist/esm/pos/drucker.d.ts +86 -0
- package/dist/esm/pos/drucker.js +71 -0
- package/dist/esm/pos/errors.d.ts +36 -0
- package/dist/esm/pos/errors.js +88 -0
- package/dist/esm/pos/index.d.ts +15 -0
- package/dist/esm/pos/index.js +20 -0
- package/dist/esm/pos/settings.d.ts +313 -0
- package/dist/esm/pos/settings.js +367 -0
- package/dist/esm/pos/texte.d.ts +883 -0
- package/dist/esm/pos/texte.js +481 -0
- package/dist/esm/{kasse → pos}/trinkgeld.d.ts +1 -1
- package/dist/esm/{kasse → pos}/trinkgeld.js +2 -2
- package/dist/esm/printing/escpos.d.ts +29 -29
- package/dist/esm/printing/escpos.js +56 -56
- package/dist/esm/printing/index.d.ts +2 -2
- package/dist/esm/printing/index.js +2 -2
- package/dist/esm/printing/qr-groesse.d.ts +38 -38
- package/dist/esm/printing/qr-groesse.js +42 -42
- package/dist/esm/printing/webusb.d.ts +2 -2
- package/dist/esm/printing/webusb.js +4 -4
- package/dist/esm/react/index.d.ts +21 -21
- package/dist/esm/react/index.js +39 -29
- package/dist/esm/receipt/bild.d.ts +4 -4
- package/dist/esm/receipt/bild.js +11 -11
- package/dist/esm/receipt/blatt.d.ts +46 -46
- package/dist/esm/receipt/blatt.js +55 -55
- package/dist/esm/receipt/discount.d.ts +1 -1
- package/dist/esm/receipt/discount.js +7 -7
- package/dist/esm/receipt/due.d.ts +86 -0
- package/dist/esm/receipt/due.js +257 -0
- package/dist/esm/receipt/epos.d.ts +22 -22
- package/dist/esm/receipt/epos.js +47 -47
- package/dist/esm/receipt/grid.d.ts +10 -10
- package/dist/esm/receipt/grid.js +18 -18
- package/dist/esm/receipt/index.d.ts +9 -8
- package/dist/esm/receipt/index.js +9 -8
- package/dist/esm/receipt/layout-escpos.d.ts +24 -24
- package/dist/esm/receipt/layout-escpos.js +51 -51
- package/dist/esm/receipt/layout.d.ts +28 -23
- package/dist/esm/receipt/layout.js +44 -20
- package/dist/esm/receipt/marke-daten.d.ts +8 -8
- package/dist/esm/receipt/marke-daten.js +7 -7
- package/dist/esm/receipt/marke.d.ts +7 -7
- package/dist/esm/receipt/marke.js +10 -10
- package/dist/esm/register/errors.d.ts +61 -0
- package/dist/esm/register/errors.js +104 -0
- package/dist/esm/register/index.d.ts +14 -1
- package/dist/esm/register/index.js +13 -0
- package/dist/esm/register/pairing.d.ts +55 -36
- package/dist/esm/register/pairing.js +33 -29
- package/dist/esm/register/session.d.ts +5 -5
- package/dist/esm/register/session.js +7 -7
- package/dist/esm/stored/draht.d.ts +45 -0
- package/dist/esm/stored/draht.js +208 -0
- package/dist/esm/stored/einstellungen.d.ts +23 -0
- package/dist/esm/stored/einstellungen.js +196 -0
- package/dist/esm/stored/index.d.ts +109 -0
- package/dist/esm/stored/index.js +217 -0
- package/dist/esm/stored/vokabular.d.ts +18 -0
- package/dist/esm/stored/vokabular.js +386 -0
- package/dist/esm/version.d.ts +7 -0
- package/dist/esm/version.js +7 -0
- package/dist/esm/vienna-time.d.ts +1 -1
- package/dist/esm/vienna-time.js +2 -2
- package/fixtures/{erwartet/storno-rabatt.lines.json → expected/cancellation-discount.lines.json} +2 -2
- package/fixtures/expected/cancellation-discount.sheet32.json +248 -0
- package/fixtures/{erwartet/storno-rabatt.blatt48.json → expected/cancellation-discount.sheet48.json} +119 -119
- package/fixtures/{erwartet/storno-voll.lines.json → expected/cancellation-full.lines.json} +2 -2
- package/fixtures/expected/cancellation-full.sheet32.json +218 -0
- package/fixtures/{erwartet/storno-voll.blatt48.json → expected/cancellation-full.sheet48.json} +107 -107
- package/fixtures/{erwartet/storno-teil.lines.json → expected/cancellation-partial.lines.json} +2 -2
- package/fixtures/expected/cancellation-partial.sheet32.json +206 -0
- package/fixtures/{erwartet/storno-teil.blatt48.json → expected/cancellation-partial.sheet48.json} +101 -101
- package/fixtures/{erwartet/storno-split-voll.lines.json → expected/cancellation-split-full.lines.json} +2 -2
- package/fixtures/expected/cancellation-split-full.sheet32.json +320 -0
- package/fixtures/{erwartet/storno-split-voll.blatt48.json → expected/cancellation-split-full.sheet48.json} +158 -158
- package/fixtures/{erwartet/storno-split-teil.lines.json → expected/cancellation-split-partial.lines.json} +2 -2
- package/fixtures/expected/cancellation-split-partial.sheet32.json +230 -0
- package/fixtures/{erwartet/storno-split-teil.blatt48.json → expected/cancellation-split-partial.sheet48.json} +113 -113
- package/fixtures/{erwartet/karte-eigener.lines.json → expected/card-custom.lines.json} +1 -1
- package/fixtures/expected/card-custom.sheet32.json +158 -0
- package/fixtures/{erwartet/karte-eigener.blatt48.json → expected/card-custom.sheet48.json} +80 -80
- package/fixtures/{erwartet/karte-gptom-ios.lines.json → expected/card-gptom-ios.lines.json} +1 -1
- package/fixtures/expected/card-gptom-ios.sheet32.json +230 -0
- package/fixtures/{erwartet/karte-gptom-ios.blatt48.json → expected/card-gptom-ios.sheet48.json} +116 -116
- package/fixtures/{erwartet/karte-gptom.lines.json → expected/card-gptom.lines.json} +1 -1
- package/fixtures/expected/card-gptom.sheet32.json +230 -0
- package/fixtures/{erwartet/karte-gptom.blatt48.json → expected/card-gptom.sheet48.json} +116 -116
- package/fixtures/{erwartet/karte-hobex-cloud.lines.json → expected/card-hobex-cloud.lines.json} +1 -1
- package/fixtures/expected/card-hobex-cloud.sheet32.json +200 -0
- package/fixtures/{erwartet/karte-hobex-cloud.blatt48.json → expected/card-hobex-cloud.sheet48.json} +101 -101
- package/fixtures/{erwartet/karte-hobex-hps.lines.json → expected/card-hobex-hps.lines.json} +1 -1
- package/fixtures/expected/card-hobex-hps.sheet32.json +224 -0
- package/fixtures/{erwartet/karte-hobex-hps.blatt48.json → expected/card-hobex-hps.sheet48.json} +113 -113
- package/fixtures/{erwartet/karte-mypos.lines.json → expected/card-mypos.lines.json} +1 -1
- package/fixtures/expected/card-mypos.sheet32.json +254 -0
- package/fixtures/{erwartet/karte-mypos.blatt48.json → expected/card-mypos.sheet48.json} +122 -122
- package/fixtures/{erwartet/karte-stripe-eps.lines.json → expected/card-stripe-eps.lines.json} +1 -1
- package/fixtures/expected/card-stripe-eps.sheet32.json +194 -0
- package/fixtures/{erwartet/karte-stripe-eps.blatt48.json → expected/card-stripe-eps.sheet48.json} +98 -98
- package/fixtures/{erwartet/karte-stripe.lines.json → expected/card-stripe.lines.json} +1 -1
- package/fixtures/expected/card-stripe.sheet32.json +212 -0
- package/fixtures/{erwartet/karte-stripe.blatt48.json → expected/card-stripe.sheet48.json} +107 -107
- package/fixtures/{erwartet/karte-sumup.lines.json → expected/card-sumup.lines.json} +1 -1
- package/fixtures/expected/card-sumup.sheet32.json +218 -0
- package/fixtures/{erwartet/karte-sumup.blatt48.json → expected/card-sumup.sheet48.json} +104 -104
- package/fixtures/{erwartet/rabattzeilen.lines.json → expected/discount-lines.lines.json} +1 -1
- package/fixtures/expected/discount-lines.sheet32.json +200 -0
- package/fixtures/{erwartet/rabattzeilen.blatt48.json → expected/discount-lines.sheet48.json} +98 -98
- package/fixtures/{erwartet/rabatt-chef-trinkgeld.lines.json → expected/discount-owner-tip.lines.json} +1 -1
- package/fixtures/expected/discount-owner-tip.sheet32.json +212 -0
- package/fixtures/{erwartet/rabatt-chef-trinkgeld.blatt48.json → expected/discount-owner-tip.sheet48.json} +104 -104
- package/fixtures/{erwartet/rabatt-einfach.lines.json → expected/discount-simple.lines.json} +1 -1
- package/fixtures/expected/discount-simple.sheet32.json +182 -0
- package/fixtures/{erwartet/rabatt-einfach.blatt48.json → expected/discount-simple.sheet48.json} +89 -89
- package/fixtures/{erwartet/rabatt-trinkgeld.lines.json → expected/discount-tip.lines.json} +1 -1
- package/fixtures/expected/discount-tip.sheet32.json +212 -0
- package/fixtures/{erwartet/rabatt-trinkgeld.blatt48.json → expected/discount-tip.sheet48.json} +104 -104
- package/fixtures/{erwartet/rabatt-wertgutschein.lines.json → expected/discount-value-voucher.lines.json} +1 -1
- package/fixtures/expected/discount-value-voucher.sheet32.json +218 -0
- package/fixtures/{erwartet/rabatt-wertgutschein.blatt48.json → expected/discount-value-voucher.sheet48.json} +107 -107
- package/fixtures/{erwartet/langer-artikelname.lines.json → expected/long-item-name.lines.json} +1 -1
- package/fixtures/expected/long-item-name.sheet32.json +176 -0
- package/fixtures/{erwartet/langer-artikelname.blatt48.json → expected/long-item-name.sheet48.json} +86 -86
- package/fixtures/{erwartet/verkauf-karte.lines.json → expected/sale-card.lines.json} +1 -1
- package/fixtures/expected/sale-card.sheet32.json +176 -0
- package/fixtures/{erwartet/verkauf-karte.blatt48.json → expected/sale-card.sheet48.json} +86 -86
- package/fixtures/{erwartet/verkauf-bar.lines.json → expected/sale-cash.lines.json} +1 -1
- package/fixtures/expected/sale-cash.sheet32.json +176 -0
- package/fixtures/{erwartet/verkauf-bar.blatt48.json → expected/sale-cash.sheet48.json} +86 -86
- package/fixtures/{erwartet/verkauf-kleinunternehmer.lines.json → expected/sale-small-business.lines.json} +1 -1
- package/fixtures/expected/sale-small-business.sheet32.json +182 -0
- package/fixtures/{erwartet/verkauf-kleinunternehmer.blatt48.json → expected/sale-small-business.sheet48.json} +89 -89
- package/fixtures/{erwartet/signaturausfall-verkauf.lines.json → expected/signature-outage-sale.lines.json} +1 -1
- package/fixtures/expected/signature-outage-sale.sheet32.json +194 -0
- package/fixtures/{erwartet/signaturausfall-verkauf.blatt48.json → expected/signature-outage-sale.sheet48.json} +92 -92
- package/fixtures/{erwartet/split-karte-karte-bar.lines.json → expected/split-card-card-cash.lines.json} +1 -1
- package/fixtures/expected/split-card-card-cash.sheet32.json +356 -0
- package/fixtures/{erwartet/split-karte-karte-bar.blatt48.json → expected/split-card-card-cash.sheet48.json} +170 -170
- package/fixtures/{erwartet/split-bar-rueckgeld.lines.json → expected/split-cash-change.lines.json} +1 -1
- package/fixtures/expected/split-cash-change.sheet32.json +194 -0
- package/fixtures/{erwartet/split-bar-rueckgeld.blatt48.json → expected/split-cash-change.sheet48.json} +92 -92
- package/fixtures/{erwartet/split-langer-betrag.lines.json → expected/split-long-amount.lines.json} +1 -1
- package/fixtures/expected/split-long-amount.sheet32.json +266 -0
- package/fixtures/{erwartet/split-langer-betrag.blatt48.json → expected/split-long-amount.sheet48.json} +131 -131
- package/fixtures/{erwartet/split-eine-karte-trinkgeld.lines.json → expected/split-one-card-tip.lines.json} +1 -1
- package/fixtures/expected/split-one-card-tip.sheet32.json +242 -0
- package/fixtures/{erwartet/split-eine-karte-trinkgeld.blatt48.json → expected/split-one-card-tip.sheet48.json} +113 -113
- package/fixtures/{erwartet/split-tischrunde-trinkgeld.lines.json → expected/split-table-round-tip.lines.json} +1 -1
- package/fixtures/expected/split-table-round-tip.sheet32.json +470 -0
- package/fixtures/{erwartet/split-tischrunde-trinkgeld.blatt48.json → expected/split-table-round-tip.sheet48.json} +218 -218
- package/fixtures/{erwartet/split-trinkgeld-karte.lines.json → expected/split-tip-card.lines.json} +1 -1
- package/fixtures/expected/split-tip-card.sheet32.json +272 -0
- package/fixtures/{erwartet/split-trinkgeld-karte.blatt48.json → expected/split-tip-card.sheet48.json} +128 -128
- package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.lines.json → expected/split-two-cards-same-provider.lines.json} +1 -1
- package/fixtures/expected/split-two-cards-same-provider.sheet32.json +326 -0
- package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.blatt48.json → expected/split-two-cards-same-provider.sheet48.json} +149 -149
- package/fixtures/{erwartet/testkasse-verkauf.lines.json → expected/test-cashregister-sale.lines.json} +3 -3
- package/fixtures/expected/test-cashregister-sale.sheet32.json +224 -0
- package/fixtures/{erwartet/testkasse-verkauf.blatt48.json → expected/test-cashregister-sale.sheet48.json} +110 -110
- package/fixtures/{erwartet/testsignatur-verkauf.lines.json → expected/test-signature-sale.lines.json} +3 -3
- package/fixtures/expected/test-signature-sale.sheet32.json +236 -0
- package/fixtures/{erwartet/testsignatur-verkauf.blatt48.json → expected/test-signature-sale.sheet48.json} +110 -110
- package/fixtures/{erwartet → expected}/training.lines.json +2 -2
- package/fixtures/expected/training.sheet32.json +236 -0
- package/fixtures/{erwartet/training.blatt48.json → expected/training.sheet48.json} +110 -110
- package/fixtures/{erwartet/null-jahr.lines.json → expected/zero-annual.lines.json} +2 -2
- package/fixtures/expected/zero-annual.sheet32.json +212 -0
- package/fixtures/{erwartet/null-jahr.blatt48.json → expected/zero-annual.sheet48.json} +95 -95
- package/fixtures/{erwartet/null-schluss.lines.json → expected/zero-final.lines.json} +2 -2
- package/fixtures/expected/zero-final.sheet32.json +206 -0
- package/fixtures/{erwartet/null-schluss.blatt48.json → expected/zero-final.sheet48.json} +95 -95
- package/fixtures/{erwartet/null-pruef.lines.json → expected/zero-manual.lines.json} +2 -2
- package/fixtures/expected/zero-manual.sheet32.json +206 -0
- package/fixtures/{erwartet/null-pruef.blatt48.json → expected/zero-manual.sheet48.json} +95 -95
- package/fixtures/{erwartet/null-monat.lines.json → expected/zero-monthly.lines.json} +2 -2
- package/fixtures/expected/zero-monthly.sheet32.json +206 -0
- package/fixtures/{erwartet/null-monat.blatt48.json → expected/zero-monthly.sheet48.json} +95 -95
- package/fixtures/{erwartet/null-ausfall.lines.json → expected/zero-outage-end.lines.json} +2 -2
- package/fixtures/expected/zero-outage-end.sheet32.json +206 -0
- package/fixtures/{erwartet/null-ausfall.blatt48.json → expected/zero-outage-end.sheet48.json} +95 -95
- package/fixtures/{erwartet/null-start.lines.json → expected/zero-start.lines.json} +2 -2
- package/fixtures/expected/zero-start.sheet32.json +206 -0
- package/fixtures/{erwartet/null-start.blatt48.json → expected/zero-start.sheet48.json} +95 -95
- package/fixtures/hobex-hps-codes.json +12 -12
- package/fixtures/invoice-api-examples/brands-ok.json +8 -0
- package/fixtures/{rechnung-api-beispiele/credit-fehler-grund.json → invoice-api-examples/credit-error-reason.json} +6 -6
- package/fixtures/{rechnung-api-beispiele → invoice-api-examples}/credit-ok.json +6 -6
- package/fixtures/{rechnung-api-beispiele/customer-fehler-uid.json → invoice-api-examples/customer-error-vat-id.json} +4 -4
- package/fixtures/invoice-api-examples/customer-get-error-both.json +15 -0
- package/fixtures/{rechnung-api-beispiele → invoice-api-examples}/customer-ok.json +4 -4
- package/fixtures/{rechnung-api-beispiele/customer-search-fehler-leer.json → invoice-api-examples/customer-search-error-empty.json} +4 -4
- package/fixtures/{rechnung-api-beispiele/issue-rabatt.json → invoice-api-examples/issue-discount.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-englisch.json → invoice-api-examples/issue-english.json} +7 -7
- package/fixtures/{rechnung-api-beispiele/issue-fehler-cent.json → invoice-api-examples/issue-error-cent.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-sprache.json → invoice-api-examples/issue-error-language.json} +5 -5
- package/fixtures/{rechnung-api-beispiele/issue-fehler-negativ.json → invoice-api-examples/issue-error-negative.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-zahlungsart.json → invoice-api-examples/issue-error-payment-method.json} +8 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-preis-beide.json → invoice-api-examples/issue-error-price-both.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-preis-fehlt.json → invoice-api-examples/issue-error-price-missing.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-menge.json → invoice-api-examples/issue-error-quantity.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-satz.json → invoice-api-examples/issue-error-rate.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-fehler-einheit.json → invoice-api-examples/issue-error-unit.json} +5 -5
- package/fixtures/{rechnung-api-beispiele/issue-fehler-unbekannt.json → invoice-api-examples/issue-error-unknown.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-brutto-20.json → invoice-api-examples/issue-gross-20.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-mikropreis.json → invoice-api-examples/issue-micro-price.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-gemischt.json → invoice-api-examples/issue-mixed.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-netto-20.json → invoice-api-examples/issue-net-20.json} +6 -6
- package/fixtures/{rechnung-api-beispiele/issue-bezahlt.json → invoice-api-examples/issue-paid.json} +7 -7
- package/fixtures/{rechnung-api-beispiele/issue-kleinunternehmer.json → invoice-api-examples/issue-small-business.json} +6 -6
- package/fixtures/invoice-api-examples/payment-error-on-site.json +17 -0
- package/fixtures/invoice-api-examples/payment-error-without-key.json +16 -0
- package/fixtures/invoice-api-examples/payment-recorded-later.json +14 -0
- package/fixtures/{rechnung-api-beispiele/setup-status-fehler-feld.json → invoice-api-examples/setup-status-error-field.json} +4 -4
- package/fixtures/invoice-api-examples/setup-status-ok.json +8 -0
- package/fixtures/{rechnung-api.schema.json → invoice-api.schema.json} +24 -24
- package/fixtures/{rechnung-rechnen-zufall.json → invoice-calc-random.json} +828 -828
- package/fixtures/{rechnung-rechnen.json → invoice-calc.json} +47 -47
- package/fixtures/invoice-texts.json +464 -0
- package/fixtures/{rechnung-summen.json → invoice-totals.json} +25 -25
- package/fixtures/{position-aus-euro.json → item-from-euro.json} +26 -26
- package/fixtures/manifest.json +252 -252
- package/fixtures/pos-message-cases.json +32 -0
- package/fixtures/pos-settings-defaults.json +149 -0
- package/fixtures/{kasse-texte.json → pos-texts.json} +416 -416
- package/fixtures/receipt-due-generated.json +1218 -0
- package/fixtures/{belege/storno-rabatt.json → receipts/cancellation-discount.json} +3 -3
- package/fixtures/{belege/storno-voll.json → receipts/cancellation-full.json} +3 -3
- package/fixtures/{belege/storno-teil.json → receipts/cancellation-partial.json} +3 -3
- package/fixtures/{belege/storno-split-voll.json → receipts/cancellation-split-full.json} +3 -3
- package/fixtures/{belege/storno-split-teil.json → receipts/cancellation-split-partial.json} +3 -3
- package/fixtures/{belege/karte-eigener.json → receipts/card-custom.json} +2 -2
- package/fixtures/{belege/karte-gptom-ios.json → receipts/card-gptom-ios.json} +2 -2
- package/fixtures/{belege/karte-gptom.json → receipts/card-gptom.json} +2 -2
- package/fixtures/{belege/karte-hobex-cloud.json → receipts/card-hobex-cloud.json} +2 -2
- package/fixtures/{belege/karte-hobex-hps.json → receipts/card-hobex-hps.json} +2 -2
- package/fixtures/{belege/karte-mypos.json → receipts/card-mypos.json} +2 -2
- package/fixtures/{belege/karte-stripe-eps.json → receipts/card-stripe-eps.json} +2 -2
- package/fixtures/{belege/karte-stripe.json → receipts/card-stripe.json} +2 -2
- package/fixtures/{belege/karte-sumup.json → receipts/card-sumup.json} +2 -2
- package/fixtures/{belege/rabattzeilen.json → receipts/discount-lines.json} +2 -2
- package/fixtures/{belege/rabatt-chef-trinkgeld.json → receipts/discount-owner-tip.json} +2 -2
- package/fixtures/{belege/rabatt-einfach.json → receipts/discount-simple.json} +2 -2
- package/fixtures/{belege/rabatt-trinkgeld.json → receipts/discount-tip.json} +2 -2
- package/fixtures/{belege/rabatt-wertgutschein.json → receipts/discount-value-voucher.json} +2 -2
- package/fixtures/{belege/langer-artikelname.json → receipts/long-item-name.json} +2 -2
- package/fixtures/{belege/verkauf-karte.json → receipts/sale-card.json} +2 -2
- package/fixtures/{belege/verkauf-bar.json → receipts/sale-cash.json} +2 -2
- package/fixtures/{belege/verkauf-kleinunternehmer.json → receipts/sale-small-business.json} +1 -1
- package/fixtures/{belege/signaturausfall-verkauf.json → receipts/signature-outage-sale.json} +2 -2
- package/fixtures/{belege/split-karte-karte-bar.json → receipts/split-card-card-cash.json} +2 -2
- package/fixtures/{belege/split-bar-rueckgeld.json → receipts/split-cash-change.json} +2 -2
- package/fixtures/{belege/split-langer-betrag.json → receipts/split-long-amount.json} +2 -2
- package/fixtures/{belege/split-eine-karte-trinkgeld.json → receipts/split-one-card-tip.json} +2 -2
- package/fixtures/{belege/split-tischrunde-trinkgeld.json → receipts/split-table-round-tip.json} +2 -2
- package/fixtures/{belege/split-trinkgeld-karte.json → receipts/split-tip-card.json} +2 -2
- package/fixtures/{belege/split-zwei-karten-gleicher-anbieter.json → receipts/split-two-cards-same-provider.json} +2 -2
- package/fixtures/{belege/testsignatur-verkauf.json → receipts/test-cashregister-sale.json} +3 -3
- package/fixtures/{belege/testkasse-verkauf.json → receipts/test-signature-sale.json} +3 -3
- package/fixtures/{belege → receipts}/training.json +2 -2
- package/fixtures/{belege/null-jahr.json → receipts/zero-annual.json} +5 -5
- package/fixtures/{belege/null-schluss.json → receipts/zero-final.json} +5 -5
- package/fixtures/{belege/null-pruef.json → receipts/zero-manual.json} +5 -5
- package/fixtures/{belege/null-monat.json → receipts/zero-monthly.json} +5 -5
- package/fixtures/{belege/null-ausfall.json → receipts/zero-outage-end.json} +5 -5
- package/fixtures/{belege/null-start.json → receipts/zero-start.json} +5 -5
- package/fixtures/renames-1.0.json +1490 -0
- package/fixtures/{kasse-settings-standard.json → stored/pos-settings-defaults.json} +7 -7
- package/fixtures/surface.json +877 -0
- package/fixtures/v3/README.md +125 -0
- package/fixtures/v3/antworten/belege.json +4738 -0
- package/fixtures/v3/antworten/belegmail.json +154 -0
- package/fixtures/v3/antworten/kasse-belege.json +4304 -0
- package/fixtures/v3/antworten/kasse.json +12716 -0
- package/fixtures/v3/antworten/rechnungen.json +1712 -0
- package/fixtures/v3/antworten/storno.json +737 -0
- package/fixtures/v3/stored/belege.json +502 -0
- package/fixtures/v3/stored/kasse.json +3461 -0
- package/fixtures/v3/stored/rechnungen.json +750 -0
- package/fixtures/v3/v3-vokabular.json +3375 -0
- package/fixtures/v3/zahlbetrag-faelle.json +794 -0
- package/package.json +32 -18
- package/dist/cjs/kasse/artikel.d.ts +0 -83
- package/dist/cjs/kasse/artikel.js +0 -79
- package/dist/cjs/kasse/client.d.ts +0 -10
- package/dist/cjs/kasse/client.js +0 -38
- package/dist/cjs/kasse/drucker.d.ts +0 -59
- package/dist/cjs/kasse/drucker.js +0 -50
- package/dist/cjs/kasse/index.d.ts +0 -13
- package/dist/cjs/kasse/index.js +0 -83
- package/dist/cjs/kasse/settings.d.ts +0 -229
- package/dist/cjs/kasse/settings.js +0 -172
- package/dist/cjs/kasse/texte.d.ts +0 -868
- package/dist/cjs/kasse/texte.js +0 -474
- package/dist/cjs/rechnung/fehler.d.ts +0 -21
- package/dist/cjs/rechnung/fehler.js +0 -44
- package/dist/cjs/rechnung/index.d.ts +0 -21
- package/dist/cjs/rechnung/index.js +0 -82
- package/dist/cjs/rechnung/texte.d.ts +0 -222
- package/dist/cjs/rechnung/texte.js +0 -425
- package/dist/esm/kasse/artikel.d.ts +0 -83
- package/dist/esm/kasse/artikel.js +0 -70
- package/dist/esm/kasse/client.d.ts +0 -10
- package/dist/esm/kasse/client.js +0 -33
- package/dist/esm/kasse/drucker.d.ts +0 -59
- package/dist/esm/kasse/drucker.js +0 -45
- package/dist/esm/kasse/index.d.ts +0 -13
- package/dist/esm/kasse/index.js +0 -18
- package/dist/esm/kasse/settings.d.ts +0 -229
- package/dist/esm/kasse/settings.js +0 -168
- package/dist/esm/kasse/texte.d.ts +0 -868
- package/dist/esm/kasse/texte.js +0 -466
- package/dist/esm/rechnung/fehler.d.ts +0 -21
- package/dist/esm/rechnung/fehler.js +0 -39
- package/dist/esm/rechnung/index.d.ts +0 -21
- package/dist/esm/rechnung/index.js +0 -20
- package/dist/esm/rechnung/texte.d.ts +0 -222
- package/dist/esm/rechnung/texte.js +0 -421
- package/fixtures/erwartet/karte-eigener.blatt32.json +0 -158
- package/fixtures/erwartet/karte-gptom-ios.blatt32.json +0 -230
- package/fixtures/erwartet/karte-gptom.blatt32.json +0 -230
- package/fixtures/erwartet/karte-hobex-cloud.blatt32.json +0 -200
- package/fixtures/erwartet/karte-hobex-hps.blatt32.json +0 -224
- package/fixtures/erwartet/karte-mypos.blatt32.json +0 -254
- package/fixtures/erwartet/karte-stripe-eps.blatt32.json +0 -194
- package/fixtures/erwartet/karte-stripe.blatt32.json +0 -212
- package/fixtures/erwartet/karte-sumup.blatt32.json +0 -218
- package/fixtures/erwartet/langer-artikelname.blatt32.json +0 -176
- package/fixtures/erwartet/null-ausfall.blatt32.json +0 -206
- package/fixtures/erwartet/null-jahr.blatt32.json +0 -212
- package/fixtures/erwartet/null-monat.blatt32.json +0 -206
- package/fixtures/erwartet/null-pruef.blatt32.json +0 -206
- package/fixtures/erwartet/null-schluss.blatt32.json +0 -206
- package/fixtures/erwartet/null-start.blatt32.json +0 -206
- package/fixtures/erwartet/rabatt-chef-trinkgeld.blatt32.json +0 -212
- package/fixtures/erwartet/rabatt-einfach.blatt32.json +0 -182
- package/fixtures/erwartet/rabatt-trinkgeld.blatt32.json +0 -212
- package/fixtures/erwartet/rabatt-wertgutschein.blatt32.json +0 -218
- package/fixtures/erwartet/rabattzeilen.blatt32.json +0 -200
- package/fixtures/erwartet/signaturausfall-verkauf.blatt32.json +0 -194
- package/fixtures/erwartet/split-bar-rueckgeld.blatt32.json +0 -194
- package/fixtures/erwartet/split-eine-karte-trinkgeld.blatt32.json +0 -242
- package/fixtures/erwartet/split-karte-karte-bar.blatt32.json +0 -356
- package/fixtures/erwartet/split-langer-betrag.blatt32.json +0 -266
- package/fixtures/erwartet/split-tischrunde-trinkgeld.blatt32.json +0 -470
- package/fixtures/erwartet/split-trinkgeld-karte.blatt32.json +0 -272
- package/fixtures/erwartet/split-zwei-karten-gleicher-anbieter.blatt32.json +0 -326
- package/fixtures/erwartet/storno-rabatt.blatt32.json +0 -248
- package/fixtures/erwartet/storno-split-teil.blatt32.json +0 -230
- package/fixtures/erwartet/storno-split-voll.blatt32.json +0 -320
- package/fixtures/erwartet/storno-teil.blatt32.json +0 -206
- package/fixtures/erwartet/storno-voll.blatt32.json +0 -218
- package/fixtures/erwartet/testkasse-verkauf.blatt32.json +0 -224
- package/fixtures/erwartet/testsignatur-verkauf.blatt32.json +0 -236
- package/fixtures/erwartet/training.blatt32.json +0 -236
- package/fixtures/erwartet/verkauf-bar.blatt32.json +0 -176
- package/fixtures/erwartet/verkauf-karte.blatt32.json +0 -176
- package/fixtures/erwartet/verkauf-kleinunternehmer.blatt32.json +0 -182
- package/fixtures/kasse-meldungen-faelle.json +0 -32
- package/fixtures/oberflaeche.json +0 -558
- package/fixtures/rechnung-api-beispiele/brands-ok.json +0 -8
- package/fixtures/rechnung-api-beispiele/customer-get-fehler-beide.json +0 -15
- package/fixtures/rechnung-api-beispiele/setup-status-ok.json +0 -8
- package/fixtures/rechnung-api-beispiele/zahlung-fehler-ohne-schluessel.json +0 -14
- package/fixtures/rechnung-api-beispiele/zahlung-fehler-vor-ort.json +0 -15
- package/fixtures/rechnung-api-beispiele/zahlung-nachtrag.json +0 -14
- package/fixtures/rechnung-texte.json +0 -464
- /package/dist/cjs/{rechnung → invoice}/typen.js +0 -0
- /package/dist/esm/{rechnung → invoice}/typen.js +0 -0
- /package/fixtures/{erwartet/storno-rabatt.grid32.txt → expected/cancellation-discount.grid32.txt} +0 -0
- /package/fixtures/{erwartet/storno-rabatt.grid48.txt → expected/cancellation-discount.grid48.txt} +0 -0
- /package/fixtures/{erwartet/storno-voll.grid32.txt → expected/cancellation-full.grid32.txt} +0 -0
- /package/fixtures/{erwartet/storno-voll.grid48.txt → expected/cancellation-full.grid48.txt} +0 -0
- /package/fixtures/{erwartet/storno-teil.grid32.txt → expected/cancellation-partial.grid32.txt} +0 -0
- /package/fixtures/{erwartet/storno-teil.grid48.txt → expected/cancellation-partial.grid48.txt} +0 -0
- /package/fixtures/{erwartet/storno-split-voll.grid32.txt → expected/cancellation-split-full.grid32.txt} +0 -0
- /package/fixtures/{erwartet/storno-split-voll.grid48.txt → expected/cancellation-split-full.grid48.txt} +0 -0
- /package/fixtures/{erwartet/storno-split-teil.grid32.txt → expected/cancellation-split-partial.grid32.txt} +0 -0
- /package/fixtures/{erwartet/storno-split-teil.grid48.txt → expected/cancellation-split-partial.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-eigener.grid32.txt → expected/card-custom.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-eigener.grid48.txt → expected/card-custom.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-gptom-ios.grid32.txt → expected/card-gptom-ios.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-gptom-ios.grid48.txt → expected/card-gptom-ios.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-gptom.grid32.txt → expected/card-gptom.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-gptom.grid48.txt → expected/card-gptom.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-hobex-cloud.grid32.txt → expected/card-hobex-cloud.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-hobex-cloud.grid48.txt → expected/card-hobex-cloud.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-hobex-hps.grid32.txt → expected/card-hobex-hps.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-hobex-hps.grid48.txt → expected/card-hobex-hps.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-mypos.grid32.txt → expected/card-mypos.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-mypos.grid48.txt → expected/card-mypos.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-stripe-eps.grid32.txt → expected/card-stripe-eps.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-stripe-eps.grid48.txt → expected/card-stripe-eps.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-stripe.grid32.txt → expected/card-stripe.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-stripe.grid48.txt → expected/card-stripe.grid48.txt} +0 -0
- /package/fixtures/{erwartet/karte-sumup.grid32.txt → expected/card-sumup.grid32.txt} +0 -0
- /package/fixtures/{erwartet/karte-sumup.grid48.txt → expected/card-sumup.grid48.txt} +0 -0
- /package/fixtures/{erwartet/rabattzeilen.grid32.txt → expected/discount-lines.grid32.txt} +0 -0
- /package/fixtures/{erwartet/rabattzeilen.grid48.txt → expected/discount-lines.grid48.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-chef-trinkgeld.grid32.txt → expected/discount-owner-tip.grid32.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-chef-trinkgeld.grid48.txt → expected/discount-owner-tip.grid48.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-einfach.grid32.txt → expected/discount-simple.grid32.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-einfach.grid48.txt → expected/discount-simple.grid48.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-trinkgeld.grid32.txt → expected/discount-tip.grid32.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-trinkgeld.grid48.txt → expected/discount-tip.grid48.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-wertgutschein.grid32.txt → expected/discount-value-voucher.grid32.txt} +0 -0
- /package/fixtures/{erwartet/rabatt-wertgutschein.grid48.txt → expected/discount-value-voucher.grid48.txt} +0 -0
- /package/fixtures/{erwartet/logo-probe-hoch.raster32.txt → expected/logo-sample-tall.raster32.txt} +0 -0
- /package/fixtures/{erwartet/logo-probe.raster32.txt → expected/logo-sample.raster32.txt} +0 -0
- /package/fixtures/{erwartet/langer-artikelname.grid32.txt → expected/long-item-name.grid32.txt} +0 -0
- /package/fixtures/{erwartet/langer-artikelname.grid48.txt → expected/long-item-name.grid48.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-karte.grid32.txt → expected/sale-card.grid32.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-karte.grid48.txt → expected/sale-card.grid48.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-bar.grid32.txt → expected/sale-cash.grid32.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-bar.grid48.txt → expected/sale-cash.grid48.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-kleinunternehmer.grid32.txt → expected/sale-small-business.grid32.txt} +0 -0
- /package/fixtures/{erwartet/verkauf-kleinunternehmer.grid48.txt → expected/sale-small-business.grid48.txt} +0 -0
- /package/fixtures/{erwartet/signaturausfall-verkauf.grid32.txt → expected/signature-outage-sale.grid32.txt} +0 -0
- /package/fixtures/{erwartet/signaturausfall-verkauf.grid48.txt → expected/signature-outage-sale.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-karte-karte-bar.grid32.txt → expected/split-card-card-cash.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-karte-karte-bar.grid48.txt → expected/split-card-card-cash.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-bar-rueckgeld.grid32.txt → expected/split-cash-change.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-bar-rueckgeld.grid48.txt → expected/split-cash-change.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-langer-betrag.grid32.txt → expected/split-long-amount.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-langer-betrag.grid48.txt → expected/split-long-amount.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-eine-karte-trinkgeld.grid32.txt → expected/split-one-card-tip.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-eine-karte-trinkgeld.grid48.txt → expected/split-one-card-tip.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-tischrunde-trinkgeld.grid32.txt → expected/split-table-round-tip.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-tischrunde-trinkgeld.grid48.txt → expected/split-table-round-tip.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-trinkgeld-karte.grid32.txt → expected/split-tip-card.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-trinkgeld-karte.grid48.txt → expected/split-tip-card.grid48.txt} +0 -0
- /package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.grid32.txt → expected/split-two-cards-same-provider.grid32.txt} +0 -0
- /package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.grid48.txt → expected/split-two-cards-same-provider.grid48.txt} +0 -0
- /package/fixtures/{erwartet/testkasse-verkauf.grid32.txt → expected/test-cashregister-sale.grid32.txt} +0 -0
- /package/fixtures/{erwartet/testkasse-verkauf.grid48.txt → expected/test-cashregister-sale.grid48.txt} +0 -0
- /package/fixtures/{erwartet/testsignatur-verkauf.grid32.txt → expected/test-signature-sale.grid32.txt} +0 -0
- /package/fixtures/{erwartet/testsignatur-verkauf.grid48.txt → expected/test-signature-sale.grid48.txt} +0 -0
- /package/fixtures/{erwartet → expected}/training.grid32.txt +0 -0
- /package/fixtures/{erwartet → expected}/training.grid48.txt +0 -0
- /package/fixtures/{erwartet/null-jahr.grid32.txt → expected/zero-annual.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-jahr.grid48.txt → expected/zero-annual.grid48.txt} +0 -0
- /package/fixtures/{erwartet/null-schluss.grid32.txt → expected/zero-final.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-schluss.grid48.txt → expected/zero-final.grid48.txt} +0 -0
- /package/fixtures/{erwartet/null-pruef.grid32.txt → expected/zero-manual.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-pruef.grid48.txt → expected/zero-manual.grid48.txt} +0 -0
- /package/fixtures/{erwartet/null-monat.grid32.txt → expected/zero-monthly.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-monat.grid48.txt → expected/zero-monthly.grid48.txt} +0 -0
- /package/fixtures/{erwartet/null-ausfall.grid32.txt → expected/zero-outage-end.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-ausfall.grid48.txt → expected/zero-outage-end.grid48.txt} +0 -0
- /package/fixtures/{erwartet/null-start.grid32.txt → expected/zero-start.grid32.txt} +0 -0
- /package/fixtures/{erwartet/null-start.grid48.txt → expected/zero-start.grid48.txt} +0 -0
package/dist/cjs/client/api.d.ts
CHANGED
|
@@ -2,8 +2,9 @@ import type { Cashregister, HobexReceipt, Receipt, ReportMonth, StripeUrlSession
|
|
|
2
2
|
import { type CreateStripeLinkOptions, type StripeCaptureResult } from '../payments/stripe.js';
|
|
3
3
|
import { type HobexPayOptions, type HobexRefundOptions } from '../payments/hobex.js';
|
|
4
4
|
import { type TransportOptions } from './transport.js';
|
|
5
|
+
import { type ReportV2, type ReportV2Options } from './reports.js';
|
|
5
6
|
import { type CashboxStatus, type SignatureStatus } from './status.js';
|
|
6
|
-
import { type SendReceiptEmailOptions, type SendReceiptEmailResult, type ListMyReceiptsOptions, type ReceiptList, type ReceiptWithCompany, type SellReceiptOptions, type
|
|
7
|
+
import { type SendReceiptEmailOptions, type SendReceiptEmailResult, type ListMyReceiptsOptions, type ReceiptList, type ReceiptWithCompany, type SellReceiptOptions, type CancelReceiptOptions, type CancelReceiptResult } from './receipts.js';
|
|
7
8
|
/**
|
|
8
9
|
* Schlichte Factory ueber den Endpunkt-Funktionen: bindet einen Transport
|
|
9
10
|
* einmal und liefert die Aufrufe ohne den wiederkehrenden ersten Parameter.
|
|
@@ -30,13 +31,11 @@ import { type SendReceiptEmailOptions, type SendReceiptEmailResult, type ListMyR
|
|
|
30
31
|
*/
|
|
31
32
|
export interface KasseneckApi {
|
|
32
33
|
/** Normalbeleg (Verkauf). */
|
|
33
|
-
sellReceipt(options: SellReceiptOptions
|
|
34
|
+
sellReceipt(options: SellReceiptOptions): Promise<Receipt>;
|
|
34
35
|
/** Normalbeleg samt Firmen-/Druckdaten fuer den Belegdruck. */
|
|
35
|
-
sellReceiptWithCompany(options: SellReceiptOptions
|
|
36
|
+
sellReceiptWithCompany(options: SellReceiptOptions): Promise<ReceiptWithCompany>;
|
|
36
37
|
/** Storno eines bestehenden Belegs — voll oder in Teilen, ueber den Storno-Endpunkt. */
|
|
37
38
|
cancelReceipt(options: CancelReceiptOptions): Promise<CancelReceiptResult>;
|
|
38
|
-
/** Storno aus frei uebergebenen Positionen. */
|
|
39
|
-
createCancelReceipt(options: CreateCancelReceiptOptions): Promise<Receipt>;
|
|
40
39
|
/** Nullbeleg (RKSV-Pruefbeleg). */
|
|
41
40
|
zeroReceipt(): Promise<Receipt>;
|
|
42
41
|
/** Einzelnen Beleg holen. */
|
|
@@ -53,6 +52,8 @@ export interface KasseneckApi {
|
|
|
53
52
|
listMyReceipts(options: ListMyReceiptsOptions): Promise<ReceiptList>;
|
|
54
53
|
/** Kassen des angemeldeten Benutzers (nur mit ID-Token, siehe cashregisters.ts). */
|
|
55
54
|
listMyCashregisters(): Promise<Cashregister[]>;
|
|
55
|
+
/** Rohdaten eines Zeitraums: Belege und Firmendaten (`getReportV2`). */
|
|
56
|
+
getReportV2(options: ReportV2Options): Promise<ReportV2>;
|
|
56
57
|
/** Tagesbericht als PDF (Kalendertag nach Wiener Zeit). */
|
|
57
58
|
downloadDailyReport(date: Date): Promise<Uint8Array>;
|
|
58
59
|
/** Monatsbericht als PDF (Endpunkt `downloadReport`). */
|
|
@@ -60,7 +61,7 @@ export interface KasseneckApi {
|
|
|
60
61
|
/** Betriebsstatus der Kasse bei FinanzOnline. */
|
|
61
62
|
getCashboxStatus(): Promise<CashboxStatus>;
|
|
62
63
|
/** Status der Signatureinheit bei FinanzOnline. */
|
|
63
|
-
getSignatureStatus(
|
|
64
|
+
getSignatureStatus(certificateSerialHex: string): Promise<SignatureStatus>;
|
|
64
65
|
/** Stripe-Zahlungslink erzeugen (Endpunkt `createPaymentLinkStripe`). */
|
|
65
66
|
createStripeLink(options: CreateStripeLinkOptions): Promise<StripeUrlSession>;
|
|
66
67
|
/** Reservierte Stripe-Zahlung einziehen. */
|
package/dist/cjs/client/api.js
CHANGED
|
@@ -18,7 +18,6 @@ function createKasseneckApi(options) {
|
|
|
18
18
|
sellReceipt: (o) => (0, receipts_js_1.sellReceipt)(rufen, o),
|
|
19
19
|
sellReceiptWithCompany: (o) => (0, receipts_js_1.sellReceiptWithCompany)(rufen, o),
|
|
20
20
|
cancelReceipt: (o) => (0, receipts_js_1.cancelReceipt)(rufen, o),
|
|
21
|
-
createCancelReceipt: (o) => (0, receipts_js_1.createCancelReceipt)(rufen, o),
|
|
22
21
|
zeroReceipt: () => (0, receipts_js_1.zeroReceipt)(rufen),
|
|
23
22
|
getReceipt: (receiptId) => (0, receipts_js_1.getReceipt)(rufen, receiptId),
|
|
24
23
|
getReceiptWithCompany: (receiptId) => (0, receipts_js_1.getReceiptWithCompany)(rufen, receiptId),
|
|
@@ -27,10 +26,11 @@ function createKasseneckApi(options) {
|
|
|
27
26
|
listMyReceipts: (o) => (0, receipts_js_1.listMyReceipts)(rufen, o),
|
|
28
27
|
sendReceiptEmail: (o) => (0, receipts_js_1.sendReceiptEmail)(rufen, o),
|
|
29
28
|
listMyCashregisters: () => (0, cashregisters_js_1.listMyCashregisters)(rufen),
|
|
29
|
+
getReportV2: (o) => (0, reports_js_1.getReportV2)(rufen, o),
|
|
30
30
|
downloadDailyReport: (date) => (0, reports_js_1.downloadDailyReport)(rufenBinaer, date),
|
|
31
31
|
downloadMonthlyReport: (reportMonth) => (0, reports_js_1.downloadMonthlyReport)(rufenBinaer, reportMonth),
|
|
32
32
|
getCashboxStatus: () => (0, status_js_1.getCashboxStatus)(rufen),
|
|
33
|
-
getSignatureStatus: (
|
|
33
|
+
getSignatureStatus: (certificateSerialHex) => (0, status_js_1.getSignatureStatus)(rufen, certificateSerialHex),
|
|
34
34
|
createStripeLink: (o) => (0, stripe_js_1.createStripeLink)(rufen, o),
|
|
35
35
|
stripeCaptureIntent: (stripeSessionId) => (0, stripe_js_1.stripeCaptureIntent)(rufen, stripeSessionId),
|
|
36
36
|
hobexPay: (o) => (0, hobex_js_1.hobexPay)(rufen, o),
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Die Namen der Backend-Functions, die dieses Paket aufruft — als Daten, nicht
|
|
3
3
|
* als Zeichenketten im Code verstreut. Zwei Gruende:
|
|
4
4
|
*
|
|
5
|
-
* 1. Der Vertrag (`fixtures/
|
|
5
|
+
* 1. Der Vertrag (`fixtures/surface.json`) gibt die Liste aus, damit die
|
|
6
6
|
* Zwillinge pruefen koennen, ob sie denselben Aufruf kennen.
|
|
7
7
|
* 2. Die paketinternen Module nehmen [InternerTransport] statt
|
|
8
8
|
* [KasseneckTransport] entgegen; ein Tippfehler im Aufrufnamen ist damit ein
|
|
@@ -13,9 +13,33 @@
|
|
|
13
13
|
* umhuellt, muss ihn weiterhin absetzen koennen.
|
|
14
14
|
*/
|
|
15
15
|
import type { TransportBodyFields } from './transport.js';
|
|
16
|
-
export declare const
|
|
17
|
-
export type
|
|
16
|
+
export declare const ALL_CALLS: readonly ["activateCashregister", "cancelInvoice", "cancelReceipt", "createCreditNote", "createCustomer", "createCustomerCashregister", "createPartnerCustomer", "checkPartnerCustomerEmail", "createPartnerWebhook", "createPaymentLinkStripe", "createPrintJob", "createReceipt", "deletePartnerWebhook", "downloadDailyReport", "downloadReport", "endRegisterSession", "financeWebService", "generateFullReceiptId", "getCustomer", "getCustomerCredentials", "getCustomerSignatureStatus", "getFirstReceiptDate", "getInvoice", "getInvoicePdf", "getInvoiceSetupStatus", "getInvoiceXml", "getKasseSettings", "getPartnerCustomer", "getPartnerInfo", "getPrintJob", "getReceipt", "getReportV2", "hobexPayApi", "hobexRefundApi", "issueInvoice", "listCustomerCashregisters", "listInvoices", "listBrands", "listMyArticleGroups", "listMyArticles", "listMyCashregisters", "listMyPrinters", "listMyReceipts", "listMyTipRecipients", "listPartnerCustomers", "listPartnerWebhookDeliveries", "listPartnerWebhooks", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "pairRegisterDevice", "recordInvoicePayment", "registerPinLogin", "registerUserLogin", "renewRegisterSession", "reportCustomerContract", "requestCustomerSignature", "searchCustomers", "sendPartnerCustomerFonLink", "sendPartnerWebhookTest", "sendReceiptEmail", "setMyKasseLogo", "setMyKasseSettings", "setMyRegisterDeviceSettings", "stripeCaptureIntent", "unpairRegisterDevice", "rotatePartnerWebhookSecret", "updateCustomer", "updatePartnerWebhook"];
|
|
17
|
+
export type ApiCall = typeof ALL_CALLS[number];
|
|
18
|
+
/**
|
|
19
|
+
* Die oeffentlichen Endpunkte unter `/v3` (`https://api.kasseneck.at/v3/<name>`),
|
|
20
|
+
* mit ihrem **aeusseren** Namen und in der Reihenfolge des Backend-Vertrags
|
|
21
|
+
* (`fixtures/v3/v3-vokabular.json`, `endpoints.public`, umbenannt nach
|
|
22
|
+
* `names`). Ein Test haelt beide Listen deckungsgleich.
|
|
23
|
+
*/
|
|
24
|
+
export declare const PUBLIC_CALLS: readonly ["createReceipt", "getReceipt", "cancelReceipt", "sendReceiptEmail", "generateFullReceiptId", "downloadReceipt", "getFirstReceiptDate", "getReportV2", "downloadReport", "downloadDailyReport", "createPaymentLinkStripe", "stripeCaptureIntent", "hobexPayApi", "hobexRefundApi", "hobexGetStatus", "financeWebService", "listMyTipRecipients", "getPartnerInfo", "createPartnerCustomer", "checkPartnerCustomerEmail", "listPartnerCustomers", "getPartnerCustomer", "sendPartnerCustomerFonLink", "createPartnerWebhook", "updatePartnerWebhook", "deletePartnerWebhook", "listPartnerWebhooks", "sendPartnerWebhookTest", "rotatePartnerWebhookSecret", "listPartnerWebhookDeliveries", "requestCustomerSignature", "getCustomerSignatureStatus", "createCustomerCashregister", "activateCashregister", "listCustomerCashregisters", "getCustomerCredentials", "reportCustomerContract", "createCustomer", "getCustomer", "updateCustomer", "searchCustomers", "issueInvoice", "cancelInvoice", "createCreditNote", "getInvoice", "listInvoices", "getInvoicePdf", "getInvoiceXml", "getInvoiceSetupStatus", "listBrands", "recordInvoicePayment"];
|
|
25
|
+
/**
|
|
26
|
+
* Die Endpunkte des Kassenwegs (`https://kasse.kasseneck.at/api/v3/<name>`,
|
|
27
|
+
* Web-Kasse: gleicher Ursprung `/api/v3`), in der Reihenfolge von
|
|
28
|
+
* `endpoints.register`. Sechs davon sind zugleich oeffentlich; die Kasse ruft
|
|
29
|
+
* sie trotzdem ueber diesen Weg (ein Dialekt je Client, Nachtrag §5.2).
|
|
30
|
+
*/
|
|
31
|
+
export declare const POS_CALLS: readonly ["pairRegisterDevice", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "registerUserLogin", "registerPinLogin", "renewRegisterSession", "endRegisterSession", "unpairRegisterDevice", "listMyCashregisters", "listMyReceipts", "getReceipt", "createReceipt", "generateFullReceiptId", "cancelReceipt", "sendReceiptEmail", "listMyArticleGroups", "listMyArticles", "getKasseSettings", "setMyKasseSettings", "setMyKasseLogo", "setMyRegisterDeviceSettings", "listMyPrinters", "createPrintJob", "getPrintJob", "listMyTipRecipients"];
|
|
32
|
+
export type PublicCall = typeof PUBLIC_CALLS[number];
|
|
33
|
+
export type PosCall = typeof POS_CALLS[number];
|
|
34
|
+
/** Einer der 25 Aufrufe des Kassenwegs. */
|
|
35
|
+
export declare function isPosCall(name: string): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Nur ueber den Kassenweg erreichbar (19 Namen): unter `api.kasseneck.at/v3`
|
|
38
|
+
* gibt es sie nicht. Der Transport schickt sie darum ohne eigene Basis an
|
|
39
|
+
* [POS_BASE_URL] statt an die oeffentliche Basis.
|
|
40
|
+
*/
|
|
41
|
+
export declare function isPosOnlyCall(name: string): boolean;
|
|
18
42
|
/** Wie [KasseneckTransport], nur mit bekanntem Aufrufnamen. Nicht exportiert nach aussen. */
|
|
19
|
-
export type InternerTransport = <T = unknown>(functionName:
|
|
43
|
+
export type InternerTransport = <T = unknown>(functionName: ApiCall, params?: Record<string, unknown>, extraBodyFields?: TransportBodyFields, secretParams?: readonly string[]) => Promise<T>;
|
|
20
44
|
/** Wie [KasseneckBinaryTransport], nur mit bekanntem Aufrufnamen. */
|
|
21
|
-
export type InternerBinaerTransport = (functionName:
|
|
45
|
+
export type InternerBinaerTransport = (functionName: ApiCall, params?: Record<string, unknown>) => Promise<Uint8Array>;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.
|
|
3
|
+
exports.POS_CALLS = exports.PUBLIC_CALLS = exports.ALL_CALLS = void 0;
|
|
4
|
+
exports.isPosCall = isPosCall;
|
|
5
|
+
exports.isPosOnlyCall = isPosOnlyCall;
|
|
6
|
+
exports.ALL_CALLS = [
|
|
5
7
|
'activateCashregister',
|
|
6
8
|
'cancelInvoice',
|
|
7
9
|
'cancelReceipt',
|
|
@@ -33,6 +35,7 @@ exports.AUFRUFE = [
|
|
|
33
35
|
'getPartnerInfo',
|
|
34
36
|
'getPrintJob',
|
|
35
37
|
'getReceipt',
|
|
38
|
+
'getReportV2',
|
|
36
39
|
'hobexPayApi',
|
|
37
40
|
'hobexRefundApi',
|
|
38
41
|
'issueInvoice',
|
|
@@ -55,11 +58,13 @@ exports.AUFRUFE = [
|
|
|
55
58
|
'registerPinLogin',
|
|
56
59
|
'registerUserLogin',
|
|
57
60
|
'renewRegisterSession',
|
|
61
|
+
'reportCustomerContract',
|
|
58
62
|
'requestCustomerSignature',
|
|
59
63
|
'searchCustomers',
|
|
60
64
|
'sendPartnerCustomerFonLink',
|
|
61
65
|
'sendPartnerWebhookTest',
|
|
62
66
|
'sendReceiptEmail',
|
|
67
|
+
'setMyKasseLogo',
|
|
63
68
|
'setMyKasseSettings',
|
|
64
69
|
'setMyRegisterDeviceSettings',
|
|
65
70
|
'stripeCaptureIntent',
|
|
@@ -68,3 +73,110 @@ exports.AUFRUFE = [
|
|
|
68
73
|
'updateCustomer',
|
|
69
74
|
'updatePartnerWebhook',
|
|
70
75
|
];
|
|
76
|
+
/**
|
|
77
|
+
* Die oeffentlichen Endpunkte unter `/v3` (`https://api.kasseneck.at/v3/<name>`),
|
|
78
|
+
* mit ihrem **aeusseren** Namen und in der Reihenfolge des Backend-Vertrags
|
|
79
|
+
* (`fixtures/v3/v3-vokabular.json`, `endpoints.public`, umbenannt nach
|
|
80
|
+
* `names`). Ein Test haelt beide Listen deckungsgleich.
|
|
81
|
+
*/
|
|
82
|
+
exports.PUBLIC_CALLS = [
|
|
83
|
+
'createReceipt',
|
|
84
|
+
'getReceipt',
|
|
85
|
+
'cancelReceipt',
|
|
86
|
+
'sendReceiptEmail',
|
|
87
|
+
'generateFullReceiptId',
|
|
88
|
+
'downloadReceipt',
|
|
89
|
+
'getFirstReceiptDate',
|
|
90
|
+
'getReportV2',
|
|
91
|
+
'downloadReport',
|
|
92
|
+
'downloadDailyReport',
|
|
93
|
+
'createPaymentLinkStripe',
|
|
94
|
+
'stripeCaptureIntent',
|
|
95
|
+
'hobexPayApi',
|
|
96
|
+
'hobexRefundApi',
|
|
97
|
+
'hobexGetStatus',
|
|
98
|
+
'financeWebService',
|
|
99
|
+
'listMyTipRecipients',
|
|
100
|
+
'getPartnerInfo',
|
|
101
|
+
'createPartnerCustomer',
|
|
102
|
+
'checkPartnerCustomerEmail',
|
|
103
|
+
'listPartnerCustomers',
|
|
104
|
+
'getPartnerCustomer',
|
|
105
|
+
'sendPartnerCustomerFonLink',
|
|
106
|
+
'createPartnerWebhook',
|
|
107
|
+
'updatePartnerWebhook',
|
|
108
|
+
'deletePartnerWebhook',
|
|
109
|
+
'listPartnerWebhooks',
|
|
110
|
+
'sendPartnerWebhookTest',
|
|
111
|
+
'rotatePartnerWebhookSecret',
|
|
112
|
+
'listPartnerWebhookDeliveries',
|
|
113
|
+
'requestCustomerSignature',
|
|
114
|
+
'getCustomerSignatureStatus',
|
|
115
|
+
'createCustomerCashregister',
|
|
116
|
+
'activateCashregister',
|
|
117
|
+
'listCustomerCashregisters',
|
|
118
|
+
'getCustomerCredentials',
|
|
119
|
+
'reportCustomerContract',
|
|
120
|
+
'createCustomer',
|
|
121
|
+
'getCustomer',
|
|
122
|
+
'updateCustomer',
|
|
123
|
+
'searchCustomers',
|
|
124
|
+
'issueInvoice',
|
|
125
|
+
'cancelInvoice',
|
|
126
|
+
'createCreditNote',
|
|
127
|
+
'getInvoice',
|
|
128
|
+
'listInvoices',
|
|
129
|
+
'getInvoicePdf',
|
|
130
|
+
'getInvoiceXml',
|
|
131
|
+
'getInvoiceSetupStatus',
|
|
132
|
+
'listBrands',
|
|
133
|
+
'recordInvoicePayment',
|
|
134
|
+
];
|
|
135
|
+
/**
|
|
136
|
+
* Die Endpunkte des Kassenwegs (`https://kasse.kasseneck.at/api/v3/<name>`,
|
|
137
|
+
* Web-Kasse: gleicher Ursprung `/api/v3`), in der Reihenfolge von
|
|
138
|
+
* `endpoints.register`. Sechs davon sind zugleich oeffentlich; die Kasse ruft
|
|
139
|
+
* sie trotzdem ueber diesen Weg (ein Dialekt je Client, Nachtrag §5.2).
|
|
140
|
+
*/
|
|
141
|
+
exports.POS_CALLS = [
|
|
142
|
+
'pairRegisterDevice',
|
|
143
|
+
'listRegisterUsersForDevice',
|
|
144
|
+
'listRegisterSessionsForDevice',
|
|
145
|
+
'registerUserLogin',
|
|
146
|
+
'registerPinLogin',
|
|
147
|
+
'renewRegisterSession',
|
|
148
|
+
'endRegisterSession',
|
|
149
|
+
'unpairRegisterDevice',
|
|
150
|
+
'listMyCashregisters',
|
|
151
|
+
'listMyReceipts',
|
|
152
|
+
'getReceipt',
|
|
153
|
+
'createReceipt',
|
|
154
|
+
'generateFullReceiptId',
|
|
155
|
+
'cancelReceipt',
|
|
156
|
+
'sendReceiptEmail',
|
|
157
|
+
'listMyArticleGroups',
|
|
158
|
+
'listMyArticles',
|
|
159
|
+
'getKasseSettings',
|
|
160
|
+
'setMyKasseSettings',
|
|
161
|
+
'setMyKasseLogo',
|
|
162
|
+
'setMyRegisterDeviceSettings',
|
|
163
|
+
'listMyPrinters',
|
|
164
|
+
'createPrintJob',
|
|
165
|
+
'getPrintJob',
|
|
166
|
+
'listMyTipRecipients',
|
|
167
|
+
];
|
|
168
|
+
const OEFFENTLICH = new Set(exports.PUBLIC_CALLS);
|
|
169
|
+
const KASSENWEG = new Set(exports.POS_CALLS);
|
|
170
|
+
const NUR_KASSE = new Set(exports.POS_CALLS.filter((name) => !OEFFENTLICH.has(name)));
|
|
171
|
+
/** Einer der 25 Aufrufe des Kassenwegs. */
|
|
172
|
+
function isPosCall(name) {
|
|
173
|
+
return KASSENWEG.has(name);
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Nur ueber den Kassenweg erreichbar (19 Namen): unter `api.kasseneck.at/v3`
|
|
177
|
+
* gibt es sie nicht. Der Transport schickt sie darum ohne eigene Basis an
|
|
178
|
+
* [POS_BASE_URL] statt an die oeffentliche Basis.
|
|
179
|
+
*/
|
|
180
|
+
function isPosOnlyCall(name) {
|
|
181
|
+
return NUR_KASSE.has(name);
|
|
182
|
+
}
|
|
@@ -48,5 +48,7 @@ export interface RegisterUserAuthOptions {
|
|
|
48
48
|
}
|
|
49
49
|
/** Anmeldung per API-Schluessel und Kassen-Token (Geraete, POS-Apps, Dritte). */
|
|
50
50
|
export declare function apiKeyAuth(options: ApiKeyAuthOptions): KasseneckAuth;
|
|
51
|
+
/** Nur fuer den Transport; nicht Teil der oeffentlichen Oberflaeche. */
|
|
52
|
+
export declare function isRegisterUserAuth(auth: KasseneckAuth): boolean;
|
|
51
53
|
/** Anmeldung eines Kassen-Benutzers der Browser-Kasse (ID-Token + Sitzung). */
|
|
52
54
|
export declare function registerUserAuth(options: RegisterUserAuthOptions): KasseneckAuth;
|
package/dist/cjs/client/auth.js
CHANGED
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
*/
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
25
|
exports.apiKeyAuth = apiKeyAuth;
|
|
26
|
+
exports.isRegisterUserAuth = isRegisterUserAuth;
|
|
26
27
|
exports.registerUserAuth = registerUserAuth;
|
|
27
28
|
const errors_js_1 = require("./errors.js");
|
|
28
29
|
/** Anmeldung per API-Schluessel und Kassen-Token (Geraete, POS-Apps, Dritte). */
|
|
@@ -46,13 +47,26 @@ function apiKeyAuth(options) {
|
|
|
46
47
|
params: {},
|
|
47
48
|
});
|
|
48
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Anmeldungen der Kassen-Benutzer. Ein Transport mit einer davon ruft ohne
|
|
52
|
+
* eigene Basis **jeden** Aufruf ueber den Kassenweg (`kasse.kasseneck.at/api/v3`,
|
|
53
|
+
* Kanal `app`), auch die sechs oeffentlichen: die Kasse spricht einen Dialekt
|
|
54
|
+
* und braucht am Beleg die Anbieterdaten der Kartenzahlung (Nachtrag §5.2, §8).
|
|
55
|
+
* Eine Menge statt eines Felds am Funktionsobjekt: niemand kann eine fremde
|
|
56
|
+
* Anmeldung von aussen zur Kassen-Anmeldung erklaeren.
|
|
57
|
+
*/
|
|
58
|
+
const KASSENWEG = new WeakSet();
|
|
59
|
+
/** Nur fuer den Transport; nicht Teil der oeffentlichen Oberflaeche. */
|
|
60
|
+
function isRegisterUserAuth(auth) {
|
|
61
|
+
return KASSENWEG.has(auth);
|
|
62
|
+
}
|
|
49
63
|
/** Anmeldung eines Kassen-Benutzers der Browser-Kasse (ID-Token + Sitzung). */
|
|
50
64
|
function registerUserAuth(options) {
|
|
51
65
|
if (!options.cashregisterId) {
|
|
52
66
|
throw new errors_js_1.KasseneckAuthError('registerUserAuth: cashregisterId fehlt');
|
|
53
67
|
}
|
|
54
68
|
const { getIdToken, getSessionId, cashregisterId } = options;
|
|
55
|
-
|
|
69
|
+
const anmeldung = async () => {
|
|
56
70
|
// Beides bei JEDEM Aufruf frisch — siehe Modulkommentar (Ablaufzeiten).
|
|
57
71
|
const [idToken, sessionId] = await Promise.all([getIdToken(), getSessionId()]);
|
|
58
72
|
if (!idToken) {
|
|
@@ -69,4 +83,6 @@ function registerUserAuth(options) {
|
|
|
69
83
|
params: { cashregisterId },
|
|
70
84
|
};
|
|
71
85
|
};
|
|
86
|
+
KASSENWEG.add(anmeldung);
|
|
87
|
+
return anmeldung;
|
|
72
88
|
}
|
|
@@ -18,4 +18,4 @@ import type { InternerTransport } from './aufrufe.js';
|
|
|
18
18
|
*
|
|
19
19
|
* Ohne diesen Aufruf kann eine Browser-Kasse ihre Kasse nicht auswaehlen.
|
|
20
20
|
*/
|
|
21
|
-
export declare function listMyCashregisters(
|
|
21
|
+
export declare function listMyCashregisters(transport: InternerTransport): Promise<Cashregister[]>;
|
|
@@ -21,8 +21,8 @@ const errors_js_1 = require("./errors.js");
|
|
|
21
21
|
*
|
|
22
22
|
* Ohne diesen Aufruf kann eine Browser-Kasse ihre Kasse nicht auswaehlen.
|
|
23
23
|
*/
|
|
24
|
-
async function listMyCashregisters(
|
|
25
|
-
const daten = await
|
|
24
|
+
async function listMyCashregisters(transport) {
|
|
25
|
+
const daten = await transport('listMyCashregisters');
|
|
26
26
|
const liste = daten?.cashregisters;
|
|
27
27
|
if (!Array.isArray(liste)) {
|
|
28
28
|
throw new errors_js_1.KasseneckValidationError('listMyCashregisters', 'Antwort enthaelt keine Kassenliste (data.cashregisters fehlt)', 'response');
|
|
@@ -11,24 +11,41 @@
|
|
|
11
11
|
* `'response'`: das Backend meldete Erfolg, die Nutzlast enthielt aber
|
|
12
12
|
* nicht, was der Aufruf zusagt.
|
|
13
13
|
*
|
|
14
|
-
* - `KasseneckApiError
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
14
|
+
* - `KasseneckApiError`: **fachlicher** Fehler mit `code`. Das Backend legt
|
|
15
|
+
* Erfolg/Misserfolg in den Rumpf (`{status:'success'|'error', message,
|
|
16
|
+
* code, data}`, siehe `successResponse`/`errorResponse` im Backend), meist
|
|
17
|
+
* unter HTTP 200, unter `/v3` bei unbekanntem Endpunkt auch unter HTTP 404
|
|
18
|
+
* (`not_found`). Dazu kommen drei Codes des Pakets selbst:
|
|
19
|
+
* `route_missing` (HTTP 200 mit HTML: die Auffangregel der
|
|
20
|
+
* Single-Page-App hat geantwortet, der Aufruf kam nie an),
|
|
21
|
+
* `dialect_mismatch` (Antwort ohne Kennzeichen `Kasseneck-Api-Version: v3`:
|
|
22
|
+
* ein Rand ohne `/v3` hat geantwortet, **Ausgang unklar**) und
|
|
23
|
+
* `response_unreadable` (ein Aufruf mit Wirkung meldete Erfolg, die
|
|
24
|
+
* Antwort traegt aber nicht, was er zusagt: **Ausgang unklar**).
|
|
25
|
+
* **Entscheidend ist `outcome`:** `'rejected'` heisst abgelehnt, nichts
|
|
26
|
+
* geschehen, Wiederholen hilft nicht. `'unknown'` heisst: der Vorgang kann
|
|
27
|
+
* ausgefuehrt sein (bei `createReceipt` ein signierter Beleg). Dann **nie
|
|
28
|
+
* wiederholen**, sondern das Ergebnis nachlesen (Belegliste, `getReceipt`).
|
|
20
29
|
* - `KasseneckHttpError` — die Antwort war **keine** verwertbare Huelle:
|
|
21
|
-
* HTTP 500/404, leerer Rumpf
|
|
22
|
-
* wenn ein Aufruf mangels Rewrite auf der Single-Page-App landet). Beim
|
|
30
|
+
* HTTP 500/404 ohne Huelle, leerer Rumpf oder Text statt JSON. Beim
|
|
23
31
|
* Bericht-Download gelten dieselben Gruende fuer alles, was kein PDF ist.
|
|
24
|
-
* `reason` trennt die Faelle maschinenlesbar.
|
|
32
|
+
* `reason` trennt die Faelle maschinenlesbar. Auf einem Aufruf mit
|
|
33
|
+
* Wirkung (signierend oder geldbewegend) hat HTTP 5xx
|
|
34
|
+
* `outcome: 'unknown'`, ebenso HTTP 200 mit Kennzeichen, aber leerem oder
|
|
35
|
+
* unlesbarem Rumpf.
|
|
25
36
|
* - `KasseneckNetworkError` — die Antwort kam gar nicht: Netz weg, DNS,
|
|
26
|
-
* abgebrochene Verbindung oder Zeitueberschreitung (`timedOut`).
|
|
37
|
+
* abgebrochene Verbindung oder Zeitueberschreitung (`timedOut`). Auch hier
|
|
38
|
+
* gilt `outcome`: war die Anfrage schon unterwegs und ist der Aufruf einer
|
|
39
|
+
* mit Wirkung (signierend: `createReceipt`, `cancelReceipt`,
|
|
40
|
+
* `financeWebService`; geldbewegend: `hobexPayApi`, `hobexRefundApi`,
|
|
41
|
+
* `stripeCaptureIntent`), ist er `'unknown'`.
|
|
27
42
|
* - `KasseneckAuthError` — es kam nicht einmal zur Anfrage, weil die Anmeldung
|
|
28
43
|
* scheiterte (fehlende Zugangsdaten, oder der Token-/Sitzungsgeber warf).
|
|
29
44
|
* In der Browser-Kasse mit ihrer 90-Sekunden-Sitzung ist das Alltag, kein
|
|
30
45
|
* Sonderfall.
|
|
31
46
|
*
|
|
47
|
+
* [isOutcomeUnknown] fasst das fuer jede Fehlerart zusammen.
|
|
48
|
+
*
|
|
32
49
|
* **Geheimnisse gehoeren in keinen dieser Fehler.** Fehlermeldungen landen in
|
|
33
50
|
* Protokollen und Fehlerdiensten; weder `api_key`, Kassen-Token, ID-
|
|
34
51
|
* ID-Token noch Sitzungsbezeichner duerfen dorthin. Deshalb tragen die Fehler
|
|
@@ -87,6 +104,21 @@ export declare function causeDigest(ursache: unknown, geheimnisse: readonly stri
|
|
|
87
104
|
* demselben Grund **keinen** Vorgabewert.
|
|
88
105
|
*/
|
|
89
106
|
export declare function fehlerDetails(daten: unknown, geheimnisse: readonly string[]): Record<string, unknown>;
|
|
107
|
+
/**
|
|
108
|
+
* Ausgang eines gescheiterten Aufrufs. `'rejected'`: nichts geschehen.
|
|
109
|
+
* `'unknown'`: der Vorgang kann ausgefuehrt sein; nie wiederholen, sondern
|
|
110
|
+
* das Ergebnis nachlesen.
|
|
111
|
+
*/
|
|
112
|
+
export type ErrorOutcome = 'unknown' | 'rejected';
|
|
113
|
+
/**
|
|
114
|
+
* Codes, die das Paket selbst vergibt, nicht der Server: `route_missing`
|
|
115
|
+
* (HTML statt Backend, der Aufruf kam nie an) und `response_unreadable`
|
|
116
|
+
* (ein Aufruf mit Wirkung meldete Erfolg, die Antwort ist aber unlesbar;
|
|
117
|
+
* Ausgang unklar). `dialect_mismatch` vergibt das Paket ebenfalls, der Code
|
|
118
|
+
* gehoert aber schon zum Rand des Servers (`errorCodes.edge`).
|
|
119
|
+
*/
|
|
120
|
+
export declare const CLIENT_ERROR_CODES: readonly ["route_missing", "response_unreadable"];
|
|
121
|
+
export type ClientErrorCode = (typeof CLIENT_ERROR_CODES)[number];
|
|
90
122
|
export declare class KasseneckApiError extends Error {
|
|
91
123
|
readonly name = "KasseneckApiError";
|
|
92
124
|
/** Aufgerufene Backend-Funktion, z. B. `createReceipt`. */
|
|
@@ -109,21 +141,38 @@ export declare class KasseneckApiError extends Error {
|
|
|
109
141
|
* beilegt. Immer ein Objekt, notfalls ein leeres.
|
|
110
142
|
*/
|
|
111
143
|
readonly details: Record<string, unknown>;
|
|
144
|
+
/**
|
|
145
|
+
* `'unknown'` bei `dialect_mismatch`, `receipt_outcome_unknown`,
|
|
146
|
+
* `cancellation_outcome_unknown`, `response_unreadable` (Erfolg gemeldet,
|
|
147
|
+
* Antwort eines Aufrufs mit Wirkung aber unlesbar) und
|
|
148
|
+
* `response_translation_failed` (ausser mit `details.handled === false`);
|
|
149
|
+
* sonst `'rejected'`. Bei `'unknown'` nie wiederholen, sondern nachlesen.
|
|
150
|
+
*/
|
|
151
|
+
readonly outcome: ErrorOutcome;
|
|
112
152
|
constructor(functionName: string, serverMessage: string, details?: Record<string, unknown>, code?: string);
|
|
113
153
|
}
|
|
114
154
|
/** Warum die Antwort keine verwertbare Huelle war. */
|
|
115
155
|
export type HttpFailureReason = 'server-error' | 'empty-body' | 'not-json' | 'missing-status';
|
|
116
|
-
/** Antwort ohne verwertbare Huelle (HTTP-Fehler, leerer Rumpf,
|
|
156
|
+
/** Antwort ohne verwertbare Huelle (HTTP-Fehler ohne Huelle, leerer Rumpf, Text statt JSON). */
|
|
117
157
|
export declare class KasseneckHttpError extends Error {
|
|
118
158
|
readonly name = "KasseneckHttpError";
|
|
119
159
|
readonly functionName: string;
|
|
120
|
-
/** HTTP-Statuscode der Antwort (bei
|
|
160
|
+
/** HTTP-Statuscode der Antwort (bei Text statt JSON durchaus 200). */
|
|
121
161
|
readonly statusCode: number;
|
|
122
162
|
/** Inhaltstyp der Antwort, falls die Gegenstelle einen gesetzt hat. */
|
|
123
163
|
readonly contentType: string | undefined;
|
|
124
164
|
/** Maschinenlesbarer Grund — trennt den Rewrite-Fall vom 500er ohne Textparsen. */
|
|
125
165
|
readonly reason: HttpFailureReason;
|
|
126
|
-
|
|
166
|
+
/**
|
|
167
|
+
* `'unknown'` auf einem Aufruf mit Wirkung (`createReceipt`,
|
|
168
|
+
* `cancelReceipt`, `financeWebService`, `hobexPayApi`, `hobexRefundApi`,
|
|
169
|
+
* `stripeCaptureIntent`) bei HTTP 5xx und bei HTTP 200 mit
|
|
170
|
+
* Kennzeichen, aber unlesbarem Rumpf (`empty-body`, `not-json` auch bei
|
|
171
|
+
* `text/html`, `missing-status`): der Handler kann gelaufen sein, nie wiederholen,
|
|
172
|
+
* sondern nachlesen. Sonst `'rejected'` (auch 4xx).
|
|
173
|
+
*/
|
|
174
|
+
readonly outcome: ErrorOutcome;
|
|
175
|
+
constructor(functionName: string, statusCode: number, contentType: string | undefined, reason: HttpFailureReason, outcome?: ErrorOutcome);
|
|
127
176
|
}
|
|
128
177
|
/** Es kam keine Antwort: Netzfehler oder Zeitueberschreitung. */
|
|
129
178
|
export declare class KasseneckNetworkError extends Error {
|
|
@@ -137,7 +186,13 @@ export declare class KasseneckNetworkError extends Error {
|
|
|
137
186
|
readonly causeName: string | undefined;
|
|
138
187
|
/** Code der zugrunde liegenden Ursache, sofern unbedenklich (z. B. `ECONNREFUSED`). */
|
|
139
188
|
readonly causeCode: string | undefined;
|
|
140
|
-
|
|
189
|
+
/**
|
|
190
|
+
* `'unknown'`, wenn die Anfrage schon unterwegs war und der Aufruf signiert
|
|
191
|
+
* (`createReceipt`, `cancelReceipt`, `financeWebService`): dann nie
|
|
192
|
+
* wiederholen, sondern nachlesen. Sonst `'rejected'`.
|
|
193
|
+
*/
|
|
194
|
+
readonly outcome: ErrorOutcome;
|
|
195
|
+
constructor(functionName: string, timedOut: boolean, timeoutMs: number, cause?: CauseDigest, outcome?: ErrorOutcome);
|
|
141
196
|
}
|
|
142
197
|
/**
|
|
143
198
|
* Die Anmeldung scheiterte — es ging keine Anfrage raus.
|
|
@@ -185,8 +240,28 @@ export declare class KasseneckValidationError extends Error {
|
|
|
185
240
|
}
|
|
186
241
|
/** Alle Fehler, die dieses Paket wirft. */
|
|
187
242
|
export type KasseneckError = KasseneckApiError | KasseneckHttpError | KasseneckNetworkError | KasseneckAuthError | KasseneckValidationError;
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
243
|
+
/**
|
|
244
|
+
* Ist der Ausgang dieses Fehlers unklar (`outcome === 'unknown'`)? Dann den
|
|
245
|
+
* Aufruf **nicht wiederholen**, sondern das Ergebnis nachlesen. Gilt fuer
|
|
246
|
+
* jede Fehlerart; nur [KasseneckApiError], [KasseneckHttpError] und
|
|
247
|
+
* [KasseneckNetworkError] koennen `'unknown'` sein.
|
|
248
|
+
*/
|
|
249
|
+
export declare function isOutcomeUnknown(error: unknown): boolean;
|
|
250
|
+
export declare function isKasseneckApiError(error: unknown): error is KasseneckApiError;
|
|
251
|
+
export declare function isKasseneckHttpError(error: unknown): error is KasseneckHttpError;
|
|
252
|
+
export declare function isKasseneckNetworkError(error: unknown): error is KasseneckNetworkError;
|
|
253
|
+
export declare function isKasseneckAuthError(error: unknown): error is KasseneckAuthError;
|
|
254
|
+
export declare function isKasseneckValidationError(error: unknown): error is KasseneckValidationError;
|
|
255
|
+
/**
|
|
256
|
+
* Liest die Erfolgsantwort eines Aufrufs **mit Wirkung** (signierend oder
|
|
257
|
+
* geldbewegend). Scheitert das Lesen (fehlender Beleg, fehlender Bezug,
|
|
258
|
+
* unbrauchbares Feld oder ein Laufzeitfehler beim Umwandeln), hat der Server
|
|
259
|
+
* trotzdem Erfolg gemeldet: der Beleg ist signiert und im DEP, die Karte
|
|
260
|
+
* belastet bzw. der Einzug gelaufen. Das darf nie als gewoehnlicher Fehler
|
|
261
|
+
* enden, sonst kassiert die Kasse ein zweites Mal. Darum wird daraus
|
|
262
|
+
* `KasseneckApiError` mit Code `response_unreadable` und `outcome: 'unknown'`.
|
|
263
|
+
* Der Grund stammt vom Paket; aus der Antwort selbst wird nichts uebernommen.
|
|
264
|
+
*
|
|
265
|
+
* Paketintern (receipts.ts, payments/); nicht Teil der Paketoberflaeche.
|
|
266
|
+
*/
|
|
267
|
+
export declare function signiertGelesen<T>(functionName: string, lesen: () => T): T;
|