Skip to content

RedemptionsTable.vue

Image of the component

Redemptions overview tab — Committee and OnCash. Shows all drink redemptions for the current run with remaining entitlement per card.

📄 View source on GitHub

Used Components

Used by

Used Stores

Functions

deleteRedemption

Asks for confirmation then deletes a redemption via redemptionStore.deleteRedemption. Shows a snackbar with the result.

Parameters:

  • item: - Enriched table row containing at minimum drink_type, quantity, and holder.

openQrDialog

Resets the member search and QR data URL, then opens the QR display dialog.

generateQr

Generates a QR code data URL for the given card UID and stores it in qrDataUrl. Clears the image when cardUid is falsy (e.g. after the autocomplete is cleared).

Parameters:

  • cardUid: - The card_uid to encode.

Reactivity

runInfo (computed)

Run summary items (run number, date, location, hare) passed to SignInSheetHeader.

totalBeers (computed)

Total beer drinks redeemed across all cards for the current run.

totalSofties (computed)

Total softie drinks redeemed across all cards for the current run.

stats (computed)

Icon+value pairs (beers, softies, total, ratio) passed to SignInSheetHeader as the stats row.

leftAtTimeMap (computed)

Per redemption documentId: remaining entitlement AFTER that redemption was posted. Sorts each card's redemptions by createdAt and walks them in order, accumulating running beer/softie totals so each row shows the balance at posting time.

tableRows (computed)

Maps raw redemption records to display rows enriched with holder, card_label, formatted time, and the left remaining-entitlement value from leftAtTimeMap.

filteredRows (computed)

tableRows filtered by the search query (search) — matches against the holder name.

cardOptions (computed)

Active cards for QR lookup autocomplete.

Released under the MIT License.