@harbortouch/skytab-analytics-report-utils 0.42.1 → 0.43.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.
@@ -12,7 +12,7 @@ var FIELDS = {
12
12
  revenueClassName: { type: "string", columnKey: "revenueClass", filteringAvailable: false },
13
13
  salesAmountGross: { type: "money", columnKey: "grossSales" },
14
14
  itemsQuantity: { type: "number", columnKey: "quantity" },
15
- transactionId: { type: "string", columnKey: "ticketNumber", filteringAvailable: false },
15
+ transactionId: { type: "string", columnKey: "transactionId", filteringAvailable: false },
16
16
  guestsCount: { type: "number", columnKey: "guestCount" },
17
17
  employeeName: { type: "string", columnKey: "employeeName", filteringAvailable: false },
18
18
  orderTypeName: { type: "string", columnKey: "orderType", filteringAvailable: false },
@@ -46,6 +46,11 @@ var salesByItemDetailConfig = {
46
46
  hasFooter: false
47
47
  };
48
48
 
49
+ // src/utils/columnGroups.ts
50
+ var getColumnGroupFields = (groups) => [
51
+ ...new Set(groups.flatMap((g) => [...g.baseFields, ...g.lastWeekFields ?? [], ...g.lastYearFields ?? []]))
52
+ ];
53
+
49
54
  // src/reports/constants.ts
50
55
  var FIRST_COLUMN_WIDTH = 240;
51
56
 
@@ -122,9 +127,9 @@ var FIELDS2 = {
122
127
  denominatorField: "taxesAmount"
123
128
  }
124
129
  },
125
- ticketsCount: { type: "number" },
126
- ticketsCountLastWeek: { type: "number" },
127
- ticketsCountLastYear: { type: "number" },
130
+ ticketsCount: { type: "number", footerCalculation: { type: "sum" }, columnKey: "ticketCount" },
131
+ ticketsCountLastWeek: { type: "number", columnKey: "ticketCountVarLw" },
132
+ ticketsCountLastYear: { type: "number", columnKey: "ticketCountVarLy" },
128
133
  guestsCount: { type: "number", columnKey: "guestCount" },
129
134
  guestsVarLW: { type: "number", columnKey: "guestsVarLw" },
130
135
  guestsVarLY: { type: "number", columnKey: "guestsVarLy" },
@@ -178,7 +183,18 @@ var FIELDS2 = {
178
183
  denominatorField: "guestsCount",
179
184
  denominatorAdjustField: "guestsVarLY"
180
185
  }
181
- }
186
+ },
187
+ ticketAvgNetTY: {
188
+ type: "fixedNumber",
189
+ columnKey: "ticketAverage",
190
+ footerCalculation: {
191
+ type: "average",
192
+ numeratorField: "salesAmountNet",
193
+ denominatorField: "ticketsCount"
194
+ }
195
+ },
196
+ ticketsVarLWPct: { type: "percent", columnKey: "ticketCountLwPct", footerCalculation: { type: "none" } },
197
+ ticketsVarLYPct: { type: "percent", columnKey: "ticketCountLyPct", footerCalculation: { type: "none" } }
182
198
  };
183
199
  var COLUMN_GROUPS = [
184
200
  {
@@ -210,38 +226,21 @@ var COLUMN_GROUPS = [
210
226
  lastYearFields: ["guestsVarLY", "guestsVarLYPct"]
211
227
  },
212
228
  {
213
- id: "salesPerGuest",
214
- headerTranslationKey: "table.groups.sales-per-guest",
215
- baseFields: ["salesPerGuestTY"],
229
+ id: "tickets",
230
+ headerTranslationKey: "table.groups.tickets",
231
+ baseFields: ["ticketsCount"],
232
+ lastWeekFields: ["ticketsCountLastWeek", "ticketsVarLWPct"],
233
+ lastYearFields: ["ticketsCountLastYear", "ticketsVarLYPct"]
234
+ },
235
+ {
236
+ id: "other",
237
+ headerTranslationKey: "table.groups.other",
238
+ baseFields: ["ticketAvgNetTY", "salesPerGuestTY"],
216
239
  lastWeekFields: ["salesPerGuestLW"],
217
240
  lastYearFields: ["salesPerGuestLY"]
218
241
  }
219
242
  ];
220
- var SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS = [
221
- "salesAmountNet",
222
- "salesVarLW",
223
- "salesVarLWPct",
224
- "salesVarLY",
225
- "salesVarLYPct",
226
- "salesAmountGross",
227
- "grossVarLW",
228
- "grossVarLWPct",
229
- "grossVarLY",
230
- "grossVarLYPct",
231
- "taxesAmount",
232
- "taxesVarLW",
233
- "taxesVarLWPct",
234
- "taxesVarLY",
235
- "taxesVarLYPct",
236
- "guestsCount",
237
- "guestsVarLW",
238
- "guestsVarLWPct",
239
- "guestsVarLY",
240
- "guestsVarLYPct",
241
- "salesPerGuestTY",
242
- "salesPerGuestLW",
243
- "salesPerGuestLY"
244
- ];
243
+ var SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS = getColumnGroupFields(COLUMN_GROUPS);
245
244
  var SALES_SUMMARY_AVAILABLE_COLUMNS = ["groupByName", ...SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS];
246
245
  var salesSummaryConfig = {
247
246
  fields: FIELDS2,
@@ -249,6 +248,7 @@ var salesSummaryConfig = {
249
248
  defaultVisibleColumns: SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS,
250
249
  chartFields: SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS,
251
250
  columnGroups: COLUMN_GROUPS,
251
+ defaultColumnGroups: ["sales", "grossSales", "taxes", "guests", "tickets"],
252
252
  hasFooter: true
253
253
  };
254
254
 
@@ -659,6 +659,9 @@ var enUS = {
659
659
  "common.report-col.transaction-date": "Transaction Date",
660
660
  "common.report-col.transaction-date.short": "Txn Date",
661
661
  "common.report-col.transaction-date.info": "The date the transaction took place",
662
+ "common.report-col.transaction-id": "Transaction ID",
663
+ "common.report-col.transaction-id.short": "Txn ID",
664
+ "common.report-col.transaction-id.info": "The ID of the transaction",
662
665
  "common.report-col.sale-payment-type": "Payment Type",
663
666
  "common.report-col.sale-payment-type.short": "Payment Type",
664
667
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -749,9 +752,21 @@ var enUS = {
749
752
  "common.report-col.total-pay": "Total Pay",
750
753
  "common.report-col.total-pay.short": "Total Pay",
751
754
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
755
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
756
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
757
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
758
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
759
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
760
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
752
761
  "common.report-col.table-name": "Table Name",
753
762
  "common.report-col.table-name.short": "Table Name",
754
763
  "common.report-col.table-name.info": "Table Name if assigned",
764
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
765
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
766
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
767
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
768
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
769
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
755
770
  "common.report-section.revenue-class": "Sales by Revenue Class",
756
771
  "common.report-section.payments": "Payments",
757
772
  "common.report-section.cash": "Expected Closeout Cash",
@@ -817,6 +832,8 @@ var enUS = {
817
832
  "table.groups.gross-sales": "Gross Sales",
818
833
  "table.groups.guests": "Guests",
819
834
  "table.groups.sales-per-guest": "Sales/Guest",
835
+ "table.groups.other": "Other",
836
+ "table.groups.tickets": "Tickets",
820
837
  "employee-timecard.status.active": "Active",
821
838
  "employee-timecard.status.inactive": "Inactive",
822
839
  "employee-timecard.job.break-suffix": " * break"
@@ -1230,6 +1247,9 @@ var enUS2 = {
1230
1247
  "common.report-col.transaction-date": "Transaction Date",
1231
1248
  "common.report-col.transaction-date.short": "Txn Date",
1232
1249
  "common.report-col.transaction-date.info": "The date the transaction took place",
1250
+ "common.report-col.transaction-id": "Transaction ID",
1251
+ "common.report-col.transaction-id.short": "Txn ID",
1252
+ "common.report-col.transaction-id.info": "The ID of the transaction",
1233
1253
  "common.report-col.sale-payment-type": "Payment Type",
1234
1254
  "common.report-col.sale-payment-type.short": "Payment Type",
1235
1255
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -1320,9 +1340,21 @@ var enUS2 = {
1320
1340
  "common.report-col.total-pay": "Total Pay",
1321
1341
  "common.report-col.total-pay.short": "Total Pay",
1322
1342
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
1343
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
1344
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
1345
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
1346
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
1347
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
1348
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
1323
1349
  "common.report-col.table-name": "Table Name",
1324
1350
  "common.report-col.table-name.short": "Table Name",
1325
1351
  "common.report-col.table-name.info": "Table Name if assigned",
1352
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
1353
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
1354
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
1355
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
1356
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
1357
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
1326
1358
  "common.report-section.revenue-class": "Sales by Revenue Class",
1327
1359
  "common.report-section.payments": "Payments",
1328
1360
  "common.report-section.cash": "Expected Closeout Cash",
@@ -1388,6 +1420,8 @@ var enUS2 = {
1388
1420
  "table.groups.gross-sales": "Gross Sales",
1389
1421
  "table.groups.guests": "Guests",
1390
1422
  "table.groups.sales-per-guest": "Sales/Guest",
1423
+ "table.groups.other": "Other",
1424
+ "table.groups.tickets": "Tickets",
1391
1425
  "employee-timecard.status.active": "Active",
1392
1426
  "employee-timecard.status.inactive": "Inactive",
1393
1427
  "employee-timecard.job.break-suffix": " * break"
@@ -1801,6 +1835,9 @@ var enUS3 = {
1801
1835
  "common.report-col.transaction-date": "Transaction Date",
1802
1836
  "common.report-col.transaction-date.short": "Txn Date",
1803
1837
  "common.report-col.transaction-date.info": "The date the transaction took place",
1838
+ "common.report-col.transaction-id": "Transaction ID",
1839
+ "common.report-col.transaction-id.short": "Txn ID",
1840
+ "common.report-col.transaction-id.info": "The ID of the transaction",
1804
1841
  "common.report-col.sale-payment-type": "Payment Type",
1805
1842
  "common.report-col.sale-payment-type.short": "Payment Type",
1806
1843
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -1891,9 +1928,21 @@ var enUS3 = {
1891
1928
  "common.report-col.total-pay": "Total Pay",
1892
1929
  "common.report-col.total-pay.short": "Total Pay",
1893
1930
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
1931
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
1932
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
1933
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
1934
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
1935
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
1936
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
1894
1937
  "common.report-col.table-name": "Table Name",
1895
1938
  "common.report-col.table-name.short": "Table Name",
1896
1939
  "common.report-col.table-name.info": "Table Name if assigned",
1940
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
1941
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
1942
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
1943
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
1944
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
1945
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
1897
1946
  "common.report-section.revenue-class": "Sales by Revenue Class",
1898
1947
  "common.report-section.payments": "Payments",
1899
1948
  "common.report-section.cash": "Expected Closeout Cash",
@@ -1959,6 +2008,8 @@ var enUS3 = {
1959
2008
  "table.groups.gross-sales": "Gross Sales",
1960
2009
  "table.groups.guests": "Guests",
1961
2010
  "table.groups.sales-per-guest": "Sales/Guest",
2011
+ "table.groups.other": "Other",
2012
+ "table.groups.tickets": "Tickets",
1962
2013
  "employee-timecard.status.active": "Active",
1963
2014
  "employee-timecard.status.inactive": "Inactive",
1964
2015
  "employee-timecard.job.break-suffix": " * break"
@@ -3655,6 +3706,11 @@ var COLUMN_REGISTRY = {
3655
3706
  shortTitleKey: "common.report-col.transaction-date.short",
3656
3707
  infoTextKey: "common.report-col.transaction-date.info"
3657
3708
  },
3709
+ transactionId: {
3710
+ titleKey: "common.report-col.transaction-id",
3711
+ shortTitleKey: "common.report-col.transaction-id.short",
3712
+ infoTextKey: "common.report-col.transaction-id.info"
3713
+ },
3658
3714
  transactionType: {
3659
3715
  titleKey: "common.report-col.transaction-type",
3660
3716
  shortTitleKey: "common.report-col.transaction-type.short",
@@ -3794,6 +3850,26 @@ var COLUMN_REGISTRY = {
3794
3850
  titleKey: "common.report-col.table-name",
3795
3851
  shortTitleKey: "common.report-col.table-name.short",
3796
3852
  infoTextKey: "common.report-col.table-name.info"
3853
+ },
3854
+ ticketCountLwPct: {
3855
+ titleKey: "common.report-col.ticket-count-var-lw-pct",
3856
+ shortTitleKey: "common.report-col.ticket-count-var-lw-pct.short",
3857
+ infoTextKey: "common.report-col.ticket-count-var-lw-pct.info"
3858
+ },
3859
+ ticketCountLyPct: {
3860
+ titleKey: "common.report-col.ticket-count-var-ly-pct",
3861
+ shortTitleKey: "common.report-col.ticket-count-var-ly-pct.short",
3862
+ infoTextKey: "common.report-col.ticket-count-var-ly-pct.info"
3863
+ },
3864
+ ticketCountVarLw: {
3865
+ titleKey: "common.report-col.ticket-count-lw",
3866
+ shortTitleKey: "common.report-col.ticket-count-lw.short",
3867
+ infoTextKey: "common.report-col.ticket-count-lw.info"
3868
+ },
3869
+ ticketCountVarLy: {
3870
+ titleKey: "common.report-col.ticket-count-ly",
3871
+ shortTitleKey: "common.report-col.ticket-count-ly.short",
3872
+ infoTextKey: "common.report-col.ticket-count-ly.info"
3797
3873
  }
3798
3874
  };
3799
3875
  function getColumnMetadata(key) {
@@ -432,6 +432,9 @@ var enUS = {
432
432
  "common.report-col.transaction-date": "Transaction Date",
433
433
  "common.report-col.transaction-date.short": "Txn Date",
434
434
  "common.report-col.transaction-date.info": "The date the transaction took place",
435
+ "common.report-col.transaction-id": "Transaction ID",
436
+ "common.report-col.transaction-id.short": "Txn ID",
437
+ "common.report-col.transaction-id.info": "The ID of the transaction",
435
438
  "common.report-col.sale-payment-type": "Payment Type",
436
439
  "common.report-col.sale-payment-type.short": "Payment Type",
437
440
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -522,9 +525,21 @@ var enUS = {
522
525
  "common.report-col.total-pay": "Total Pay",
523
526
  "common.report-col.total-pay.short": "Total Pay",
524
527
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
528
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
529
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
530
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
531
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
532
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
533
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
525
534
  "common.report-col.table-name": "Table Name",
526
535
  "common.report-col.table-name.short": "Table Name",
527
536
  "common.report-col.table-name.info": "Table Name if assigned",
537
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
538
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
539
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
540
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
541
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
542
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
528
543
  "common.report-section.revenue-class": "Sales by Revenue Class",
529
544
  "common.report-section.payments": "Payments",
530
545
  "common.report-section.cash": "Expected Closeout Cash",
@@ -590,6 +605,8 @@ var enUS = {
590
605
  "table.groups.gross-sales": "Gross Sales",
591
606
  "table.groups.guests": "Guests",
592
607
  "table.groups.sales-per-guest": "Sales/Guest",
608
+ "table.groups.other": "Other",
609
+ "table.groups.tickets": "Tickets",
593
610
  "employee-timecard.status.active": "Active",
594
611
  "employee-timecard.status.inactive": "Inactive",
595
612
  "employee-timecard.job.break-suffix": " * break"
@@ -1003,6 +1020,9 @@ var enUS2 = {
1003
1020
  "common.report-col.transaction-date": "Transaction Date",
1004
1021
  "common.report-col.transaction-date.short": "Txn Date",
1005
1022
  "common.report-col.transaction-date.info": "The date the transaction took place",
1023
+ "common.report-col.transaction-id": "Transaction ID",
1024
+ "common.report-col.transaction-id.short": "Txn ID",
1025
+ "common.report-col.transaction-id.info": "The ID of the transaction",
1006
1026
  "common.report-col.sale-payment-type": "Payment Type",
1007
1027
  "common.report-col.sale-payment-type.short": "Payment Type",
1008
1028
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -1093,9 +1113,21 @@ var enUS2 = {
1093
1113
  "common.report-col.total-pay": "Total Pay",
1094
1114
  "common.report-col.total-pay.short": "Total Pay",
1095
1115
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
1116
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
1117
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
1118
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
1119
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
1120
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
1121
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
1096
1122
  "common.report-col.table-name": "Table Name",
1097
1123
  "common.report-col.table-name.short": "Table Name",
1098
1124
  "common.report-col.table-name.info": "Table Name if assigned",
1125
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
1126
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
1127
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
1128
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
1129
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
1130
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
1099
1131
  "common.report-section.revenue-class": "Sales by Revenue Class",
1100
1132
  "common.report-section.payments": "Payments",
1101
1133
  "common.report-section.cash": "Expected Closeout Cash",
@@ -1161,6 +1193,8 @@ var enUS2 = {
1161
1193
  "table.groups.gross-sales": "Gross Sales",
1162
1194
  "table.groups.guests": "Guests",
1163
1195
  "table.groups.sales-per-guest": "Sales/Guest",
1196
+ "table.groups.other": "Other",
1197
+ "table.groups.tickets": "Tickets",
1164
1198
  "employee-timecard.status.active": "Active",
1165
1199
  "employee-timecard.status.inactive": "Inactive",
1166
1200
  "employee-timecard.job.break-suffix": " * break"
@@ -1574,6 +1608,9 @@ var enUS3 = {
1574
1608
  "common.report-col.transaction-date": "Transaction Date",
1575
1609
  "common.report-col.transaction-date.short": "Txn Date",
1576
1610
  "common.report-col.transaction-date.info": "The date the transaction took place",
1611
+ "common.report-col.transaction-id": "Transaction ID",
1612
+ "common.report-col.transaction-id.short": "Txn ID",
1613
+ "common.report-col.transaction-id.info": "The ID of the transaction",
1577
1614
  "common.report-col.sale-payment-type": "Payment Type",
1578
1615
  "common.report-col.sale-payment-type.short": "Payment Type",
1579
1616
  "common.report-col.sale-payment-type.info": "The payment method used to close the ticket (e.g. Credit, Other)",
@@ -1664,9 +1701,21 @@ var enUS3 = {
1664
1701
  "common.report-col.total-pay": "Total Pay",
1665
1702
  "common.report-col.total-pay.short": "Total Pay",
1666
1703
  "common.report-col.total-pay.info": "Total compensation including wages, overtime, and adjustments",
1704
+ "common.report-col.ticket-count-var-lw-pct": "Ticket count \xB1 LW %",
1705
+ "common.report-col.ticket-count-var-lw-pct.short": "\xB1 LW %",
1706
+ "common.report-col.ticket-count-var-lw-pct.info": "Percentage change in ticket count compared to last week",
1707
+ "common.report-col.ticket-count-var-ly-pct": "Ticket count \xB1 LY %",
1708
+ "common.report-col.ticket-count-var-ly-pct.short": "\xB1 LY %",
1709
+ "common.report-col.ticket-count-var-ly-pct.info": "Percentage change in ticket count compared to last year",
1667
1710
  "common.report-col.table-name": "Table Name",
1668
1711
  "common.report-col.table-name.short": "Table Name",
1669
1712
  "common.report-col.table-name.info": "Table Name if assigned",
1713
+ "common.report-col.ticket-count-lw": "Ticket count \xB1 LW",
1714
+ "common.report-col.ticket-count-lw.short": "\xB1 LW",
1715
+ "common.report-col.ticket-count-lw.info": "Ticket count compared to last week",
1716
+ "common.report-col.ticket-count-ly": "Ticket count \xB1 LY",
1717
+ "common.report-col.ticket-count-ly.short": "\xB1 LY",
1718
+ "common.report-col.ticket-count-ly.info": "Ticket count compared to last year",
1670
1719
  "common.report-section.revenue-class": "Sales by Revenue Class",
1671
1720
  "common.report-section.payments": "Payments",
1672
1721
  "common.report-section.cash": "Expected Closeout Cash",
@@ -1732,6 +1781,8 @@ var enUS3 = {
1732
1781
  "table.groups.gross-sales": "Gross Sales",
1733
1782
  "table.groups.guests": "Guests",
1734
1783
  "table.groups.sales-per-guest": "Sales/Guest",
1784
+ "table.groups.other": "Other",
1785
+ "table.groups.tickets": "Tickets",
1735
1786
  "employee-timecard.status.active": "Active",
1736
1787
  "employee-timecard.status.inactive": "Inactive",
1737
1788
  "employee-timecard.job.break-suffix": " * break"
@@ -1914,7 +1965,7 @@ var FIELDS = {
1914
1965
  revenueClassName: { type: "string", columnKey: "revenueClass", filteringAvailable: false },
1915
1966
  salesAmountGross: { type: "money", columnKey: "grossSales" },
1916
1967
  itemsQuantity: { type: "number", columnKey: "quantity" },
1917
- transactionId: { type: "string", columnKey: "ticketNumber", filteringAvailable: false },
1968
+ transactionId: { type: "string", columnKey: "transactionId", filteringAvailable: false },
1918
1969
  guestsCount: { type: "number", columnKey: "guestCount" },
1919
1970
  employeeName: { type: "string", columnKey: "employeeName", filteringAvailable: false },
1920
1971
  orderTypeName: { type: "string", columnKey: "orderType", filteringAvailable: false },
@@ -1948,6 +1999,11 @@ var salesByItemDetailConfig = {
1948
1999
  hasFooter: false
1949
2000
  };
1950
2001
 
2002
+ // src/utils/columnGroups.ts
2003
+ var getColumnGroupFields = (groups) => [
2004
+ ...new Set(groups.flatMap((g) => [...g.baseFields, ...g.lastWeekFields ?? [], ...g.lastYearFields ?? []]))
2005
+ ];
2006
+
1951
2007
  // src/reports/constants.ts
1952
2008
  var FIRST_COLUMN_WIDTH = 240;
1953
2009
 
@@ -2024,9 +2080,9 @@ var FIELDS2 = {
2024
2080
  denominatorField: "taxesAmount"
2025
2081
  }
2026
2082
  },
2027
- ticketsCount: { type: "number" },
2028
- ticketsCountLastWeek: { type: "number" },
2029
- ticketsCountLastYear: { type: "number" },
2083
+ ticketsCount: { type: "number", footerCalculation: { type: "sum" }, columnKey: "ticketCount" },
2084
+ ticketsCountLastWeek: { type: "number", columnKey: "ticketCountVarLw" },
2085
+ ticketsCountLastYear: { type: "number", columnKey: "ticketCountVarLy" },
2030
2086
  guestsCount: { type: "number", columnKey: "guestCount" },
2031
2087
  guestsVarLW: { type: "number", columnKey: "guestsVarLw" },
2032
2088
  guestsVarLY: { type: "number", columnKey: "guestsVarLy" },
@@ -2080,7 +2136,18 @@ var FIELDS2 = {
2080
2136
  denominatorField: "guestsCount",
2081
2137
  denominatorAdjustField: "guestsVarLY"
2082
2138
  }
2083
- }
2139
+ },
2140
+ ticketAvgNetTY: {
2141
+ type: "fixedNumber",
2142
+ columnKey: "ticketAverage",
2143
+ footerCalculation: {
2144
+ type: "average",
2145
+ numeratorField: "salesAmountNet",
2146
+ denominatorField: "ticketsCount"
2147
+ }
2148
+ },
2149
+ ticketsVarLWPct: { type: "percent", columnKey: "ticketCountLwPct", footerCalculation: { type: "none" } },
2150
+ ticketsVarLYPct: { type: "percent", columnKey: "ticketCountLyPct", footerCalculation: { type: "none" } }
2084
2151
  };
2085
2152
  var COLUMN_GROUPS = [
2086
2153
  {
@@ -2112,38 +2179,21 @@ var COLUMN_GROUPS = [
2112
2179
  lastYearFields: ["guestsVarLY", "guestsVarLYPct"]
2113
2180
  },
2114
2181
  {
2115
- id: "salesPerGuest",
2116
- headerTranslationKey: "table.groups.sales-per-guest",
2117
- baseFields: ["salesPerGuestTY"],
2182
+ id: "tickets",
2183
+ headerTranslationKey: "table.groups.tickets",
2184
+ baseFields: ["ticketsCount"],
2185
+ lastWeekFields: ["ticketsCountLastWeek", "ticketsVarLWPct"],
2186
+ lastYearFields: ["ticketsCountLastYear", "ticketsVarLYPct"]
2187
+ },
2188
+ {
2189
+ id: "other",
2190
+ headerTranslationKey: "table.groups.other",
2191
+ baseFields: ["ticketAvgNetTY", "salesPerGuestTY"],
2118
2192
  lastWeekFields: ["salesPerGuestLW"],
2119
2193
  lastYearFields: ["salesPerGuestLY"]
2120
2194
  }
2121
2195
  ];
2122
- var SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS = [
2123
- "salesAmountNet",
2124
- "salesVarLW",
2125
- "salesVarLWPct",
2126
- "salesVarLY",
2127
- "salesVarLYPct",
2128
- "salesAmountGross",
2129
- "grossVarLW",
2130
- "grossVarLWPct",
2131
- "grossVarLY",
2132
- "grossVarLYPct",
2133
- "taxesAmount",
2134
- "taxesVarLW",
2135
- "taxesVarLWPct",
2136
- "taxesVarLY",
2137
- "taxesVarLYPct",
2138
- "guestsCount",
2139
- "guestsVarLW",
2140
- "guestsVarLWPct",
2141
- "guestsVarLY",
2142
- "guestsVarLYPct",
2143
- "salesPerGuestTY",
2144
- "salesPerGuestLW",
2145
- "salesPerGuestLY"
2146
- ];
2196
+ var SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS = getColumnGroupFields(COLUMN_GROUPS);
2147
2197
  var SALES_SUMMARY_AVAILABLE_COLUMNS = ["groupByName", ...SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS];
2148
2198
  var salesSummaryConfig = {
2149
2199
  fields: FIELDS2,
@@ -2151,6 +2201,7 @@ var salesSummaryConfig = {
2151
2201
  defaultVisibleColumns: SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS,
2152
2202
  chartFields: SALES_SUMMARY_DEFAULT_VISIBLE_COLUMNS,
2153
2203
  columnGroups: COLUMN_GROUPS,
2204
+ defaultColumnGroups: ["sales", "grossSales", "taxes", "guests", "tickets"],
2154
2205
  hasFooter: true
2155
2206
  };
2156
2207
 
@@ -3789,6 +3840,11 @@ var COLUMN_REGISTRY = {
3789
3840
  shortTitleKey: "common.report-col.transaction-date.short",
3790
3841
  infoTextKey: "common.report-col.transaction-date.info"
3791
3842
  },
3843
+ transactionId: {
3844
+ titleKey: "common.report-col.transaction-id",
3845
+ shortTitleKey: "common.report-col.transaction-id.short",
3846
+ infoTextKey: "common.report-col.transaction-id.info"
3847
+ },
3792
3848
  transactionType: {
3793
3849
  titleKey: "common.report-col.transaction-type",
3794
3850
  shortTitleKey: "common.report-col.transaction-type.short",
@@ -3928,6 +3984,26 @@ var COLUMN_REGISTRY = {
3928
3984
  titleKey: "common.report-col.table-name",
3929
3985
  shortTitleKey: "common.report-col.table-name.short",
3930
3986
  infoTextKey: "common.report-col.table-name.info"
3987
+ },
3988
+ ticketCountLwPct: {
3989
+ titleKey: "common.report-col.ticket-count-var-lw-pct",
3990
+ shortTitleKey: "common.report-col.ticket-count-var-lw-pct.short",
3991
+ infoTextKey: "common.report-col.ticket-count-var-lw-pct.info"
3992
+ },
3993
+ ticketCountLyPct: {
3994
+ titleKey: "common.report-col.ticket-count-var-ly-pct",
3995
+ shortTitleKey: "common.report-col.ticket-count-var-ly-pct.short",
3996
+ infoTextKey: "common.report-col.ticket-count-var-ly-pct.info"
3997
+ },
3998
+ ticketCountVarLw: {
3999
+ titleKey: "common.report-col.ticket-count-lw",
4000
+ shortTitleKey: "common.report-col.ticket-count-lw.short",
4001
+ infoTextKey: "common.report-col.ticket-count-lw.info"
4002
+ },
4003
+ ticketCountVarLy: {
4004
+ titleKey: "common.report-col.ticket-count-ly",
4005
+ shortTitleKey: "common.report-col.ticket-count-ly.short",
4006
+ infoTextKey: "common.report-col.ticket-count-ly.info"
3931
4007
  }
3932
4008
  };
3933
4009
  function getColumnMetadata(key) {
@@ -1,4 +1,4 @@
1
- import { R as ReportType, A as AnalyticsField } from '../report-D307oJxt.cjs';
1
+ import { R as ReportType, A as AnalyticsField } from '../report-S9pw--Rv.cjs';
2
2
  import { E as ExportFilter, R as ReportMetadata, a as ExportSection } from '../types-D3IyO__4.cjs';
3
3
 
4
4
  declare function resolveRawFiltersToExportFilters(rawFilters: Record<string, (string | number)[] | undefined>, locale: string, reportType?: ReportType): ExportFilter[];
@@ -1,4 +1,4 @@
1
- import { R as ReportType, A as AnalyticsField } from '../report-D307oJxt.js';
1
+ import { R as ReportType, A as AnalyticsField } from '../report-S9pw--Rv.js';
2
2
  import { E as ExportFilter, R as ReportMetadata, a as ExportSection } from '../types-D3IyO__4.js';
3
3
 
4
4
  declare function resolveRawFiltersToExportFilters(rawFilters: Record<string, (string | number)[] | undefined>, locale: string, reportType?: ReportType): ExportFilter[];
@@ -8,7 +8,7 @@ import {
8
8
  getReportFormattingLocaleOptions,
9
9
  getReportName,
10
10
  resolveTranslate
11
- } from "../chunk-KLJKY4F3.js";
11
+ } from "../chunk-Z72HAUQJ.js";
12
12
 
13
13
  // src/utils/filter-resolver.ts
14
14
  var ANALYTICS_FIELDS = /* @__PURE__ */ new Set([