Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
d07a78a
feat(sponsor-reports): scaffold admin-gated Reports section under Spo…
caseylocker Jun 24, 2026
f7d0281
feat(sponsor-reports): port actions/reducers/utils + store wiring
caseylocker Jun 24, 2026
cdfebcc
feat(sponsor-reports): port shared report components (T.translate, ge…
caseylocker Jun 24, 2026
c2096a3
feat(sponsor-reports): Purchase Details report (MuiTable, conditional…
caseylocker Jun 24, 2026
71cfdc1
test(sponsor-reports): cover CSV+pagination/sort dispatch; drop vesti…
caseylocker Jun 24, 2026
c3b4a02
feat(sponsor-reports): Sponsor Assets report + drill-down (rewired ro…
caseylocker Jun 24, 2026
084589c
feat(sponsor-reports): Reports landing + integration
caseylocker Jun 24, 2026
db5680f
chore(sponsor-reports): final-review cleanup — drilldown errors, i18n…
caseylocker Jun 24, 2026
bf38fbf
refactor(sponsor-reports): drop vestigial export-disabled; route to R…
caseylocker Jun 25, 2026
07c3261
fix(sponsor-reports): UI polish (fonts, breadcrumb trail, asset spacing)
caseylocker Jun 25, 2026
e7357b5
fix(sponsor-reports): address CodeRabbit review (PR #997)
caseylocker Jun 25, 2026
7c4eaa9
fix(sponsor-reports): address Copilot review (PR #997)
caseylocker Jun 25, 2026
d342f26
chore(sponsor-reports): request dedicated sponsor-reports scopes (rev…
caseylocker Jun 25, 2026
18851e7
feat(sponsor-reports): add purchase-details lines report action
caseylocker Jun 25, 2026
0e37fe6
feat(sponsor-reports): add purchase-details lines reducer + store reg…
caseylocker Jun 25, 2026
dd5e8a2
feat(sponsor-reports): add bucketLinesBySponsor grouping util
caseylocker Jun 25, 2026
2666e27
feat(sponsor-reports): add LinesManifestView collapsible per-line man…
caseylocker Jun 25, 2026
4667f8b
feat(sponsor-reports): add Orders/Line-Items report view toggle
caseylocker Jun 25, 2026
17d4ff6
feat(sponsor-reports): wire Line Items manifest view into Purchase De…
caseylocker Jun 25, 2026
c1cc057
style(sponsor-reports): strip trailing whitespace in LinesManifestView
caseylocker Jun 25, 2026
e06b1e9
refactor(sponsor-reports): address PR #997 convention review (smarcet)
caseylocker Jun 25, 2026
3315801
test(sponsor-reports): add lines slice to layout test store (fix CI)
caseylocker Jun 25, 2026
562f87e
fix(sponsor-reports): wrap overflowing asset filenames in drilldown l…
caseylocker Jun 25, 2026
f2cac7e
fix(sponsor-reports): readable toggle + summary-tile typography
caseylocker Jun 25, 2026
645fe0c
feat(sponsor-reports): visible sponsor avatars + white header-icon theme
caseylocker Jun 25, 2026
809356f
feat(sponsor-reports): enable CSV export on the Line Items view
caseylocker Jun 25, 2026
fd1296c
refactor(sponsor-reports): add isPositiveIntId + htmlToPlainText to m…
caseylocker Jun 27, 2026
b22dc41
refactor(sponsor-reports): co-locate report-query + add shared purcha…
caseylocker Jun 27, 2026
500cab9
refactor(sponsor-reports): use methods.htmlToPlainText, drop reports-…
caseylocker Jun 27, 2026
a0310a1
refactor(sponsor-reports): purchase-details CSV export via action thunks
caseylocker Jun 27, 2026
306ce26
refactor(sponsor-reports): sponsor-asset CSV export via action thunks…
caseylocker Jun 27, 2026
6757a71
refactor(sponsor-reports): delete reports-api util; wire isPositiveIn…
caseylocker Jun 27, 2026
f728156
refactor(sponsor-reports): co-locate report-errors + reports-money ou…
caseylocker Jun 27, 2026
a798b4e
fix(sponsor-reports): update constants import path in moved report-er…
caseylocker Jun 27, 2026
362efb1
Merge origin/master into feature/sponsor-reports-fe-conventions (sync…
caseylocker Jun 27, 2026
a18a6d5
refactor(reports): replace formatUsd with uicore currencyAmountFromCents
caseylocker Jun 28, 2026
9a614a1
test(reports): use cents fixtures in purchase-details reducer test
caseylocker Jun 28, 2026
473c625
refactor(reports): dedup per-page/ms constants via src/utils/constants
caseylocker Jun 29, 2026
35974ee
fix(sponsor-reports): return Promise.resolve() on all thunk guard bra…
caseylocker Jun 29, 2026
6dcd257
refactor(sponsor-reports): fold statusTone into StatusPill
caseylocker Jun 29, 2026
78bc8c6
refactor(reports): replace hand-rolled formatCheckoutTime with moment
caseylocker Jun 29, 2026
7632cbe
refactor(sponsor-reports): adopt useSnackbarMessage hook for 412 vali…
caseylocker Jun 29, 2026
57a1400
test(sponsor-reports): mock useSnackbarMessage in layout test
caseylocker Jun 29, 2026
06e65f0
refactor(T6): move manifest-grouping into reports feature dir
caseylocker Jun 29, 2026
b533901
refactor(sponsor-reports): T7 — dedup page-size constant + fix defaul…
caseylocker Jun 29, 2026
dc18ea4
refactor(sponsor-reports): convert nextDayStartIso to moment-timezone
caseylocker Jun 29, 2026
aceafed
test(OrdersTable): pin moment.utc offset+malformed contract (T9)
caseylocker Jun 29, 2026
13ec334
refactor(sponsor-reports): use repo-native isImageUrl + DEFAULT_CURRE…
caseylocker Jun 29, 2026
7eff215
Merge remote-tracking branch 'origin/master' into feature/sponsor-rep…
caseylocker Jun 29, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@ EMAIL_SCOPES="clients/read templates/read templates/write emails/read"
FILE_UPLOAD_SCOPES="files/upload"
FILE_UPLOAD_ALLOWED_EXTENSIONS="pdf,jpg,jpeg,png,ppt,key,pptx"
SPONSOR_PAGES_API_URL=https://sponsor-pages-api.dev.fnopen.com
SPONSOR_REPORTS_API_URL=https://sponsor-reports-api.dev.fnopen.com
SPONSOR_PAGES_SCOPES="page-template/read page-template/write show-page/read show-page/write media-upload/read"
SCOPES="profile openid offline_access reports/all ${EMAIL_SCOPES} ${INVENTORY_API_SCOPES} ${FILE_UPLOAD_SCOPES} ${PURCHASES_API_SCOPES} ${SPONSOR_USERS_SCOPES} ${SPONSOR_PAGES_SCOPES} ${DROPBOX_MATERIALIZER_API_SCOPES} ${SCOPES_BASE_REALM}/summits/delete-event ${SCOPES_BASE_REALM}/companies/read ${SCOPES_BASE_REALM}/companies/write ${SCOPES_BASE_REALM}/summits/write ${SCOPES_BASE_REALM}/summits/write-event ${SCOPES_BASE_REALM}/summits/read/all ${SCOPES_BASE_REALM}/summits/read ${SCOPES_BASE_REALM}/summits/publish-event ${SCOPES_BASE_REALM}/members/read ${SCOPES_BASE_REALM}/members/read/me ${SCOPES_BASE_REALM}/speakers/write ${SCOPES_BASE_REALM}/attendees/write ${SCOPES_BASE_REALM}/members/write ${SCOPES_BASE_REALM}/organizations/write ${SCOPES_BASE_REALM}/organizations/read ${SCOPES_BASE_REALM}/summits/write-presentation-materials ${SCOPES_BASE_REALM}/summits/registration-orders/update ${SCOPES_BASE_REALM}/summits/registration-orders/delete ${SCOPES_BASE_REALM}/summits/registration-orders/create/offline ${SCOPES_BASE_REALM}/summits/badge-scans/read ${SCOPES_BASE_REALM}/summits/badge-scans/write config-values/write ${SCOPES_BASE_REALM}/summit-administrator-groups/read ${SCOPES_BASE_REALM}/summit-administrator-groups/write ${SCOPES_BASE_REALM}/summit-media-file-types/read ${SCOPES_BASE_REALM}/summit-media-file-types/write user-roles/write entity-updates/publish ${SCOPES_BASE_REALM}/audit-logs/read filter-criteria/read filter-criteria/write"
SPONSOR_REPORTS_SCOPES="sponsor-reports/read sponsor-reports/export"
SCOPES="profile openid offline_access reports/all ${EMAIL_SCOPES} ${INVENTORY_API_SCOPES} ${FILE_UPLOAD_SCOPES} ${PURCHASES_API_SCOPES} ${SPONSOR_USERS_SCOPES} ${SPONSOR_PAGES_SCOPES} ${SPONSOR_REPORTS_SCOPES} ${DROPBOX_MATERIALIZER_API_SCOPES} ${SCOPES_BASE_REALM}/summits/delete-event ${SCOPES_BASE_REALM}/companies/read ${SCOPES_BASE_REALM}/companies/write ${SCOPES_BASE_REALM}/summits/write ${SCOPES_BASE_REALM}/summits/write-event ${SCOPES_BASE_REALM}/summits/read/all ${SCOPES_BASE_REALM}/summits/read ${SCOPES_BASE_REALM}/summits/publish-event ${SCOPES_BASE_REALM}/members/read ${SCOPES_BASE_REALM}/members/read/me ${SCOPES_BASE_REALM}/speakers/write ${SCOPES_BASE_REALM}/attendees/write ${SCOPES_BASE_REALM}/members/write ${SCOPES_BASE_REALM}/organizations/write ${SCOPES_BASE_REALM}/organizations/read ${SCOPES_BASE_REALM}/summits/write-presentation-materials ${SCOPES_BASE_REALM}/summits/registration-orders/update ${SCOPES_BASE_REALM}/summits/registration-orders/delete ${SCOPES_BASE_REALM}/summits/registration-orders/create/offline ${SCOPES_BASE_REALM}/summits/badge-scans/read ${SCOPES_BASE_REALM}/summits/badge-scans/write config-values/write ${SCOPES_BASE_REALM}/summit-administrator-groups/read ${SCOPES_BASE_REALM}/summit-administrator-groups/write ${SCOPES_BASE_REALM}/summit-media-file-types/read ${SCOPES_BASE_REALM}/summit-media-file-types/write user-roles/write entity-updates/publish ${SCOPES_BASE_REALM}/audit-logs/read filter-criteria/read filter-criteria/write"
Comment thread
coderabbitai[bot] marked this conversation as resolved.
GOOGLE_API_KEY=
ALLOWED_USER_GROUPS="super-admins administrators summit-front-end-administrators summit-room-administrators track-chairs-admins sponsors"
APP_CLIENT_NAME="openstack"
Expand Down
Loading
Loading