Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V2 #388

Merged
merged 339 commits into from
May 11, 2024
Merged

V2 #388

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
339 commits
Select commit Hold shift + click to select a range
33ad34d
finish integrating create team feature
juancwu Apr 21, 2024
aa092ed
add invite + delete teams cloud functions
juancwu Apr 23, 2024
30a7e7c
add danger styles for button component
juancwu Apr 23, 2024
8f2b141
add service utils to delete team + invite members
juancwu Apr 23, 2024
a66baed
add tmp ui for team page
juancwu Apr 23, 2024
a509b4e
update error notifications to include service down code
juancwu Apr 23, 2024
81f4902
add updateTeamName cloud function
juancwu Apr 23, 2024
4d454d2
fix issue where non-accepted applicants can also create team
juancwu Apr 23, 2024
d405aeb
update my team page to handle team name update
juancwu Apr 23, 2024
56ec255
add service util to update team name
juancwu Apr 23, 2024
51ce6f1
return only necessary info when getting team
juancwu Apr 26, 2024
92299d2
add function to remove members from team
juancwu Apr 26, 2024
c1e44da
delete team if no more members
juancwu Apr 26, 2024
6a7a53a
redo team creation and query
juancwu Apr 27, 2024
4dbd5f0
invite teammate dialog
juancwu Apr 27, 2024
b80a78a
send invitation email
juancwu Apr 28, 2024
4f948e8
do not include requesting user when getting team
juancwu Apr 28, 2024
01b5ee8
only allow adding teammate if user is owner
juancwu Apr 28, 2024
fa493ee
allow team name to be updated
juancwu Apr 28, 2024
b9a0a90
fix sending invitation to non existing user causes error
juancwu Apr 28, 2024
ad8dcfc
fix add teammate button not disabled when team is full
juancwu Apr 28, 2024
85f9f4d
make team name card height to fit content
juancwu Apr 28, 2024
8fbb333
add new team member to team list after sending invitation
juancwu Apr 28, 2024
9515144
allow removing team members
juancwu Apr 28, 2024
b705747
allow delete team
juancwu Apr 28, 2024
1e245f5
do not return the user that created the team on teamc created
juancwu Apr 28, 2024
74f87d2
complete join team page for accept/reject an invitation
juancwu Apr 28, 2024
37440c0
allow multiple invitations for the same user
juancwu Apr 28, 2024
c985aa2
do now allow user to invite the same person if in team
juancwu Apr 28, 2024
d7acce5
update team feature cloud functions to use invitations collection
juancwu Apr 29, 2024
82c8a80
remove old team cloud functions docs
juancwu Apr 29, 2024
27f71ef
move uuid types to dev dependencies
juancwu Apr 29, 2024
88be5ad
add myteam and jointeam pages to routes
juancwu Apr 30, 2024
d8abb00
implement new route system with team creation
juancwu Apr 30, 2024
dde4827
hide delete team card if user is not owner
juancwu Apr 30, 2024
e4b7944
remove console log of routes
juancwu Apr 30, 2024
bdb8161
fix grammar mistake in team name input description
juancwu May 2, 2024
fbdf1e2
center info callout
juancwu May 2, 2024
833c332
left align create team ui
juancwu May 2, 2024
5b00e57
update "could not get team" toast message
juancwu May 3, 2024
22d5fcc
add: sliding birds assets
teoh4770 May 3, 2024
4e1753a
🎉add: sliding bird at modal
teoh4770 May 3, 2024
f6d570c
round modal corners
juancwu May 3, 2024
750ed5b
style: my team page is more responsive now
teoh4770 May 3, 2024
bf96a31
replace user page with home page
juancwu May 4, 2024
8c91f0d
remove application page
juancwu May 4, 2024
912c939
handle users who registered but did not apply in routes
juancwu May 4, 2024
e0a70c0
improve rsvp verification flow
juancwu May 4, 2024
0aed95b
remove unsued orderBy
juancwu May 5, 2024
9c2c9b1
improve team invitation flow
juancwu May 4, 2024
3b3d060
update user profile when creating team
juancwu May 4, 2024
428f412
only return ok if invitee is not in a team
juancwu May 4, 2024
7e294d3
only continue to send invitation if user does not have a team
juancwu May 4, 2024
3549188
remove claims log
juancwu May 5, 2024
225bebd
update
juancwu May 5, 2024
f37e239
remove app check enforcement for rsvp cloud fn
juancwu May 5, 2024
1961886
[Add] Checkboxes and styling
GabeDiniz May 5, 2024
6a389d7
[Add] Dropdown for RSVP Question 1
GabeDiniz May 5, 2024
1175dec
[Create] RSVP data
GabeDiniz May 5, 2024
4ff16bb
[Update] styling and text
GabeDiniz May 5, 2024
2075622
[Fix] Add key to mapping
GabeDiniz May 5, 2024
97d5ca2
[Rename] rsvp text data
GabeDiniz May 5, 2024
7771a28
update rsvp page ui and failure msg
juancwu May 5, 2024
8bfe857
Working test configuration of google wallet
ABCodez May 1, 2024
d1954dc
add functionality to create ticket record in firestore
ABCodez May 1, 2024
5a51cba
update passObject
ABCodez May 2, 2024
35bcc23
place google wallet button in ticket + add user info
ABCodez May 2, 2024
a474104
ticket styling and header adjustments
ABCodez May 2, 2024
edc2376
setting up socials to ticket
ABCodez May 3, 2024
505bcdd
comment out socials
ABCodez May 4, 2024
dacf74d
move creds and config to functions config
juancwu May 5, 2024
2dc1193
use uuid as ticket id and use portal ticket url for qr value
juancwu May 5, 2024
93e4a67
change console.log to functions logger
juancwu May 5, 2024
6b70576
update uuid types
juancwu May 5, 2024
469fa32
Implement apple wallet & unique ticket checks
AmirAgassi May 5, 2024
e1710bc
format code
juancwu May 5, 2024
8221c8b
reuse ticket doc if multiple tickets are made for the same user
juancwu May 5, 2024
c1a46db
reuse ticket doc for google wallet creation
juancwu May 5, 2024
66f172c
add new rules for passClasses collection
juancwu May 5, 2024
262b9de
Create add-to-apple-wallet-logo.png
AmirAgassi May 5, 2024
5651ba9
Add pnpm run dev:withFunctions bc im lazy
AmirAgassi May 5, 2024
d70e58b
Remove logs
AmirAgassi May 6, 2024
e9f2828
add error log in fe when creating wallet ticket
juancwu May 6, 2024
04532f4
Merge branch 'dev' of https://github.com/LaurierHawkHacks/Dashboard i…
ABCodez May 6, 2024
430f510
use application first and last name
juancwu May 6, 2024
669b450
update event date (apple ticket)
juancwu May 6, 2024
93b8100
Shorten instructions on ticket page header
AmirAgassi May 6, 2024
5d78ec5
update routes when user is hacker
juancwu May 6, 2024
0bc842a
improve email verification routing
juancwu May 6, 2024
2ea82fd
add more default custom claims on account creation
juancwu May 6, 2024
9cce8a7
Update button styling
aidantrabs May 5, 2024
d2d4d6f
Refactor
aidantrabs May 5, 2024
18a8a92
Add button styling to config
aidantrabs May 5, 2024
77f8f1b
sync navbar with actual available routes
juancwu Apr 30, 2024
64e17f3
socials now load into networking page
ABCodez May 4, 2024
56b20b8
save network to firestore working
ABCodez May 4, 2024
ee64c68
sending ig data to firestore working
ABCodez May 4, 2024
2642419
change color of pending tag
ABCodez May 4, 2024
f17f909
started resume upload
ABCodez May 4, 2024
746dc35
fix up router after rebase
juancwu May 6, 2024
a43026a
fix endless loading state issue
juancwu May 6, 2024
3d0465c
fix type issues
juancwu May 6, 2024
02c2d8c
replace console log with functions logger
juancwu May 6, 2024
3ec3e8d
move socials to its own collection
juancwu May 6, 2024
273e467
minor ui fixes
juancwu May 6, 2024
6fca5e3
upload/download resume
juancwu May 6, 2024
d18098d
minor ui updates
juancwu May 6, 2024
2d8bbfe
Add ticket functionality to the placeholder QR code
AmirAgassi May 6, 2024
c638d71
Add loading animation to wallet buttons
AmirAgassi May 6, 2024
e000eea
move qrcode to the right package.json
juancwu May 6, 2024
5e863a5
update console functions.logger
juancwu May 6, 2024
6bf3f1a
increase qr code size
juancwu May 6, 2024
dfa6a6b
add post scan qr code for regular users
juancwu May 7, 2024
f757dea
hide routes in navbar if user is not authenticated
juancwu May 7, 2024
5a263ec
hide sign out button in navbar when not authenticated
juancwu May 7, 2024
3a65575
try to get defaults from application if available
juancwu May 7, 2024
b8b2ae6
add basic structure for admin view ticket page
juancwu May 7, 2024
05af915
check/redeem event items
juancwu May 7, 2024
f095578
update seeding data
juancwu May 7, 2024
fae3441
check food items
juancwu May 7, 2024
28954ef
remove schedule.ts from source code
juancwu May 7, 2024
491ce50
remove useEffect (update events)
juancwu May 7, 2024
2590158
show rejection info banner
juancwu May 7, 2024
e8be65a
update navbar icons
juancwu May 7, 2024
caa90ad
render badge on my team/ticket page when unvisited
juancwu May 7, 2024
9eb28cb
rearrange routes order for navbar rendering order
juancwu May 7, 2024
7175cda
add more space between text and badge
juancwu May 7, 2024
3793982
store my ticket path in localstorage
juancwu May 7, 2024
f01bb15
increase google wallet button size
juancwu May 7, 2024
48a29bd
remove old console log
juancwu May 7, 2024
42e1ce4
fix ts issues
juancwu May 7, 2024
6d6442b
update firestore rules
juancwu May 7, 2024
44bc433
fix Update networking card badge #330
ABCodez May 7, 2024
635e897
disable auto preview deployment
juancwu May 8, 2024
d449303
update firestore rules
juancwu May 8, 2024
58dd57c
make join team globally available
juancwu May 8, 2024
72d6f58
add error in functions error log
juancwu May 8, 2024
97650c2
Resume opens in new tab instead of downloading
ABCodez May 8, 2024
999fb67
remove console logs
ABCodez May 8, 2024
0a5f770
add: update the important date time data
teoh4770 May 7, 2024
05b9292
fix: update markup and style for important datetime section
teoh4770 May 7, 2024
4139b8e
fix: update importantDateTimes data
teoh4770 May 8, 2024
aae5aad
open sponsors in new tab
amgvu May 7, 2024
90733eb
hover effects on sponsors
amgvu May 7, 2024
019b6c0
Add info warning banner to networking page
AmirAgassi May 7, 2024
fc28549
Updated class/object for gwallet
ABCodez May 6, 2024
e450d04
update hero img url (google ticket)
juancwu May 6, 2024
7115875
full name should show up on pass now
ABCodez May 6, 2024
7915fdc
switch email with type
ABCodez May 6, 2024
0130b06
added dates to gpass
ABCodez May 6, 2024
f4fecf3
update banner url to storage public url
juancwu May 8, 2024
45c5693
remove wallet banner asset from source code
juancwu May 8, 2024
3cbc952
comment out testing only function/button
juancwu May 8, 2024
fdf8a6f
Refactor team invite email
aidantrabs May 8, 2024
3cfdfde
update team invitation dashboard link to join team url
juancwu May 8, 2024
9c2898f
update dev preview gh action
juancwu May 8, 2024
e221ccf
disable dv preview gh action
juancwu May 8, 2024
efbd97f
fix up ticket url
juancwu May 8, 2024
e870ee4
extend error logging for google wallet functions
juancwu May 8, 2024
d16799a
Logic to hopefully fix google wallet on preview site
ABCodez May 8, 2024
c1024d0
only redirect to rsvp if user is hacker
juancwu May 8, 2024
7fc749d
show routes to volunteer
juancwu May 8, 2024
689cb74
increase timeout in admin view ticket page
juancwu May 8, 2024
738cfb7
Fix typo
AmirAgassi May 8, 2024
7b8d7d3
Re-enable loading animation
AmirAgassi May 8, 2024
4bc12c7
refactor apple ticket creation function
juancwu May 8, 2024
f25f59b
refactor google ticket functions
juancwu May 8, 2024
5f15af1
use display name in ticket page if app is not available
juancwu May 8, 2024
105ddc7
use display name as alternative is app is not present (google ticket)
juancwu May 8, 2024
c51e5da
use display name as name alternative (apple ticket)
juancwu May 8, 2024
2be2ffa
add error as json payload to error function log
juancwu May 8, 2024
9997b9c
allow users with no app to open networking page
juancwu May 8, 2024
2728933
improve mobile navbar looks
juancwu May 8, 2024
858f1d2
fix mobile navbar not being on top of everything
juancwu May 8, 2024
5f3c11f
auto close mobile menu when changing routes
juancwu May 8, 2024
c55f8fd
remove unused import from networking page
juancwu May 8, 2024
610adf1
remove sign out button from main admin page
juancwu May 8, 2024
7509787
add basic event/food management page
juancwu May 8, 2024
5e2f150
Remove console logs as well as commented out code from google wallet …
ABCodez May 8, 2024
5ed35f8
[Add] LoadingAnimation to RSVP page
GabeDiniz May 9, 2024
12eebfb
[Update] configure LoadingAnimation
GabeDiniz May 9, 2024
fe522a1
Add RSVP limit to cloud function
AmirAgassi May 9, 2024
59b6d29
Handle frontend, add finer date, change response format
AmirAgassi May 9, 2024
c4c33db
Limit rsvpCounter read/write to admins
AmirAgassi May 10, 2024
e4fadd2
Bump react-icons from 5.0.1 to 5.2.1
dependabot[bot] May 8, 2024
a9eeaa7
Bump eslint-plugin-react-refresh from 0.4.3 to 0.4.6
dependabot[bot] May 4, 2024
1401803
feature/40/schedule
norachams May 7, 2024
20f3c58
work in progress
juancwu May 8, 2024
296fd9b
delete runtime function
juancwu May 8, 2024
fafa6c5
Add autoscroll and light theme
AmirAgassi May 8, 2024
845c6ef
remove package-lock
juancwu May 10, 2024
39788fd
finish up schedule page
juancwu May 10, 2024
195b410
Create fantaun.png
AmirAgassi May 10, 2024
5efeac5
Add perks page to routes
AmirAgassi May 10, 2024
2ca6a7b
Revert "Add perks page to routes"
AmirAgassi May 10, 2024
561227b
Add perks page to routes
AmirAgassi May 10, 2024
80238a0
Add navbar entry
AmirAgassi May 10, 2024
39db84a
Create perks page and button structure
AmirAgassi May 10, 2024
ec3a75f
Create fadeInItems animation and refine buttons
AmirAgassi May 10, 2024
49e5539
Create assets
AmirAgassi May 10, 2024
c75c336
Create perks.ts
AmirAgassi May 10, 2024
86d4e7e
Polish perks page and add popup info
AmirAgassi May 10, 2024
68d32c5
Remove quick test SVG
AmirAgassi May 10, 2024
030ec59
Change button height
AmirAgassi May 10, 2024
7f9a666
Cut out the weird titles
AmirAgassi May 10, 2024
429cf14
Add individual button titles
AmirAgassi May 10, 2024
1a2af8f
Add featured section
AmirAgassi May 10, 2024
6ce791f
Add isBubbleTea 🔥 and button scale animation
AmirAgassi May 10, 2024
14d4c45
improve perks modal ui
juancwu May 10, 2024
0080b6e
ts ignore admin manage events page
juancwu May 10, 2024
cc874e3
add rsvp setup for test accounts
juancwu May 10, 2024
0b02134
change rsvp page button back to default styles
juancwu May 10, 2024
21c98cf
export perks logo from assets folder
juancwu May 10, 2024
a332d84
add search bar for event schedule
norachams May 10, 2024
48a5435
add search bar for event schedule
norachams May 10, 2024
2aa272c
fix up date formating
juancwu May 10, 2024
20f4cda
make dropdown more visible
juancwu May 10, 2024
264f540
open detail modal on click
juancwu May 10, 2024
c077e42
add date to event detail modal
juancwu May 10, 2024
2f29a41
put events detail below title
juancwu May 10, 2024
5969c81
use user claim type in google pass
juancwu May 10, 2024
be7b081
increase join team page timeout and navigate to explicit not found
juancwu May 10, 2024
bfec090
explicit not found route
juancwu May 10, 2024
b615f24
make schedule search bar responsive
juancwu May 10, 2024
3c53f81
fix event management page
juancwu May 10, 2024
d9d4097
add input validation to event manage form
juancwu May 10, 2024
d4c9ad1
remove unused date fn
juancwu May 10, 2024
1c46158
replace solana with avalanche
juancwu May 10, 2024
f87e1ee
remove free bbt and sponsor products sections from home page
juancwu May 10, 2024
c73eb6c
fix schedule not showing events that end after "today"
juancwu May 10, 2024
64a5d91
Fix fade/hover animations and add navbar status orb
AmirAgassi May 10, 2024
3db4cb9
ts-nocheck perks page
juancwu May 10, 2024
17dbe97
fix: remove Nibiru from the sponsors data list
teoh4770 May 10, 2024
3c61c50
fix: update the campaign link for each sponsor
teoh4770 May 10, 2024
58e9703
Add loading animations
aidantrabs May 10, 2024
99fefe5
widen events width
juancwu May 10, 2024
78c4506
update schedule title to include hackathon start time
juancwu May 10, 2024
fc7d818
remove timeout in join team
juancwu May 11, 2024
a382d92
update team invitation error messages
juancwu May 11, 2024
85fdc1f
Add new and reorder perks
AmirAgassi May 10, 2024
d197be2
fix typo in join team page
juancwu May 11, 2024
cf3e2f9
set loading to false when done with join team query
juancwu May 11, 2024
bf2bd2a
fix grammar mistake in join team
juancwu May 11, 2024
7fcf9f5
Fix rosenfeld logo and make free bbt hawkhacks teal
AmirAgassi May 10, 2024
a74ed13
only check invitation for pending status
juancwu May 11, 2024
2862ab9
Tweak apple wallet
AmirAgassi May 11, 2024
05b53a5
Pivot to the fun way of getting images
AmirAgassi May 11, 2024
62b2ed3
changes
AmirAgassi May 11, 2024
052673d
v2.0.0 update
juancwu May 11, 2024
53ab326
use planby auth token for gh action eslint
juancwu May 11, 2024
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
2 changes: 2 additions & 0 deletions .github/workflows/eslint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ jobs:
run: |
npm install eslint@8.10.0
npm install @microsoft/eslint-formatter-sarif@2.1.7
env:
PLANBY_AUTH_TOKEN: ${{ secrets.PLANBY_AUTH_TOKEN }}

- name: Run ESLint
run: npx eslint .
Expand Down
38 changes: 38 additions & 0 deletions .github/workflows/firebase-hosting-merge-dev.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Deploy to Firebase Hosting on merge (DEV)
on:
push:
branches:
- dev
jobs:
build_and_deploy:
if: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: dev
- uses: pnpm/action-setup@v3
with:
version: 8
- run: pnpm i && pnpm build --mode="preview"
env:
VITE_FIREBASE_API_KEY: ${{ secrets.FIREBASE_API_KEY }}
VITE_FIREBASE_AUTH_DOMAIN: ${{ secrets.FIREBASE_AUTH_DOMAIN }}
VITE_FIREBASE_PROJECT_ID: ${{ secrets.FIREBASE_PROJECT_ID }}
VITE_FIREBASE_STORAGE_BUCKET: ${{ secrets.FIREBASE_STORAGE_BUCKET }}
VITE_FIREBASE_MESSAGING_SENDER_ID: ${{ secrets.FIREBASE_MESSAGIN_SENDER_ID }}
VITE_FIREBASE_APP_ID: ${{ secrets.FIREBASE_APP_ID }}
VITE_FIREBASE_MEASUREMENT_ID: ${{ secrets.FIREBASE_MEASUREMENT_ID }}
VITE_GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }}
VITE_APP_ENV: preview
VITE_APP_CHECK_KEY: ${{ secrets.FIREBASE_APP_CHECK_KEY }}
VITE_APPLICATIONS_COLLECTION: ${{ secrets.APPLICATIONS_COLLECTION }}
VITE_TICKETS_COLLECTION: ${{ secrets.TICKETS_COLLECTION }}
VITE_RSVP_COLLECTION: ${{ secrets.RSVPS_COLLECTION }}
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: "${{ secrets.GITHUB_TOKEN }}"
firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_HAWKHACKS_DASHBOARD }}"
projectId: "${{ secrets.FIREBASE_PROJECT_ID }}"
expires: 30d
channelId: "${{ secrets.DEV_PREVIEW_CHANNEL }}"
18 changes: 0 additions & 18 deletions .github/workflows/firebase-hosting-merge.yml

This file was deleted.

17 changes: 0 additions & 17 deletions .github/workflows/firebase-hosting-pull-request.yml

This file was deleted.

2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,5 @@ coverage

env.development
env.production
.runtimeconfig.json
hawkhacks-googleWallet-key.json
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@nessprim:registry=https://npm.pkg.github.com/:_authToken=${PLANBY_AUTH_TOKEN}
54 changes: 49 additions & 5 deletions config/firestore.rules
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,24 @@ service cloud.firestore {
}

match /databases/{database}/documents {
// Allow read/write access to the user owns documents
// Allow read/write access if
// 1. document is new
// 2. document is not new and user is owner
match /users/{documentId} {
match /socials/{documentId} {
allow read: if isAuthenticated() && (isAdmin() || isOwner(resource.data.id));
allow write: if isAuthenticated() && isAdmin();
}

match /user-profiles/{documentId} {
allow read: if isAuthenticated() && isAdmin();
allow write: if isAuthenticated() && isAdmin();
}

// RSVP Counter Collection Rules
match /rsvpCounter/{counterId} {
allow read, write: if isAuthenticated() && isAdmin();
}
match /rsvpCounter-dev/{counterId} {
allow read, write: if isAuthenticated() && isAdmin();
}

// Tickets Collection Rules
match /tickets/{ticketId} {
// Only grant read perms to owner/admin
Expand All @@ -32,13 +41,48 @@ service cloud.firestore {
allow write: if isAuthenticated() && isAdmin();
}

match /passClasses/{passClassId} {
// Only grant read perms to owner/admin
allow read: if isAuthenticated() && (isAdmin() || isOwner(resource.data.userId));
// Only grant write perms to admin
allow write: if isAuthenticated() && isAdmin();
}

// Applications Collection Rules
match /applications/{applicationId} {
// Only grant read access if you are owner/admin
allow read: if isAuthenticated() && (isAdmin() || isOwner(resource.data.applicantId));
allow write: if isAuthenticated() && isAdmin();
}

// Teams Collection Rules
match /teams/{teamId} {
// this rule is to allow only admin to read,write
// because there is no way to filter out members
// beloging to the team in rules, so the process
// is done in cloud functions.
allow read, write: if isAuthenticated() && isAdmin();
}

// RSVP Verifications
match /rsvps/{rsvpId} {
// Only grant read access if you are owner/admin
allow read: if isAuthenticated() && (isOwner(resource.data.uid));
allow write: if isAuthenticated();
}

match /events/{eventId} {
// Only grant read access if you are owner/admin
allow read: if isAuthenticated();
allow write: if isAuthenticated() && isAdmin();
}

match /foods/{foodId} {
// Only grant read access if you are owner/admin
allow read: if isAuthenticated();
allow write: if isAuthenticated() && isAdmin();
}

match /applications-dev/{applicationId} {
allow read, write: if isAuthenticated() && isAdmin();
}
Expand Down
2 changes: 1 addition & 1 deletion config/storage.rules
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ service firebase.storage {
match /b/{bucket}/o {
match /resumes/{resumeId} {
// allow read if owner or admin
allow read: if request.auth != null && resource.metadata.owner == request.auth.uid || request.auth.token.admin == true;
allow read: if true;
allow write: if request.auth != null && request.resource.size <= 10 * 1024 * 1024;
}

Expand Down
1 change: 1 addition & 0 deletions data/auth_export/accounts.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"kind":"identitytoolkit#DownloadAccountResponse","users":[{"localId":"70w2DTUrhP0nOrpGPdYPOQZB4OdL","createdAt":"1713731714999","lastLoginAt":"1713731715000","displayName":"Orange Grass","photoUrl":"","passwordHash":"fakeHash:salt=fakeSaltuTKxpXZs5uA4aXPKBCOd:password=appleapple","salt":"fakeSaltuTKxpXZs5uA4aXPKBCOd","passwordUpdatedAt":1715314741980,"customAttributes":"{\"admin\":true,\"phoneVerified\":false}","providerUserInfo":[{"providerId":"apple.com","rawId":"5197066828709833349011045994434518544367","federatedId":"5197066828709833349011045994434518544367","displayName":"Orange Grass","email":"orange.grass.422@example.com","screenName":"grass_orange"},{"providerId":"password","email":"orange.grass.422@example.com","federatedId":"orange.grass.422@example.com","rawId":"orange.grass.422@example.com","displayName":"Orange Grass","photoUrl":""}],"validSince":"1715314741","email":"orange.grass.422@example.com","emailVerified":true,"disabled":false},{"localId":"SnS9WkYk7sC20mc8SaC4Prp5q1Lr","createdAt":"1713731654825","lastLoginAt":"1715099158461","displayName":"Orange Otter","photoUrl":"","passwordHash":"fakeHash:salt=fakeSalt2uagn6e8gbJXYaJov9RA:password=githubgithub","salt":"fakeSalt2uagn6e8gbJXYaJov9RA","passwordUpdatedAt":1715314741981,"customAttributes":"{\"admin\":true,\"phoneVerified\":false}","providerUserInfo":[{"providerId":"github.com","rawId":"7524388120055744086910460269249221994179","federatedId":"7524388120055744086910460269249221994179","displayName":"Orange Otter","email":"orange.otter.863@example.com","screenName":"otter_orange"},{"providerId":"password","email":"orange.otter.863@example.com","federatedId":"orange.otter.863@example.com","rawId":"orange.otter.863@example.com","displayName":"Orange Otter","photoUrl":""}],"validSince":"1715314741","email":"orange.otter.863@example.com","emailVerified":true,"disabled":false,"lastRefreshAt":"2024-05-10T05:32:59.885Z"},{"localId":"wJt2rCamFIfZlA184j89NEsP2gM5","createdAt":"1713731709751","lastLoginAt":"1715099205398","displayName":"Panda Orange","photoUrl":"","passwordHash":"fakeHash:salt=fakeSalt4LZFOGhZWWRDf0YRfuN3:password=googlegoogle","salt":"fakeSalt4LZFOGhZWWRDf0YRfuN3","passwordUpdatedAt":1715314741981,"customAttributes":"{\"admin\":false,\"phoneVerified\":false}","providerUserInfo":[{"providerId":"google.com","rawId":"6528640447034239187887946375673849584500","federatedId":"6528640447034239187887946375673849584500","displayName":"Panda Orange","email":"panda.orange.932@example.com","screenName":"orange_panda"},{"providerId":"password","email":"panda.orange.932@example.com","federatedId":"panda.orange.932@example.com","rawId":"panda.orange.932@example.com","displayName":"Panda Orange","photoUrl":""}],"validSince":"1715314741","email":"panda.orange.932@example.com","emailVerified":true,"disabled":false},{"localId":"xoRCSC0wt3Ep0R7NVz9w5Dvlrkco","createdAt":"1713731701751","lastLoginAt":"1713731701751","displayName":"Admin","photoUrl":"","passwordHash":"fakeHash:salt=fakeSalt9cF9rI2GKuz8ypojYGnf:password=adminadmin","salt":"fakeSalt9cF9rI2GKuz8ypojYGnf","passwordUpdatedAt":1715314741981,"customAttributes":"{\"admin\": true, \"phoneVerified\": true}","providerUserInfo":[{"providerId":"password","email":"admin@example.com","federatedId":"admin@example.com","rawId":"admin@example.com","displayName":"Admin","photoUrl":""}],"validSince":"1715314741","email":"admin@example.com","emailVerified":true,"disabled":false}]}
1 change: 1 addition & 0 deletions data/auth_export/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signIn":{"allowDuplicateEmails":false},"emailPrivacyConfig":{"enableImprovedEmailPrivacy":false}}
16 changes: 16 additions & 0 deletions data/firebase-export-metadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"version": "13.7.1",
"firestore": {
"version": "1.19.4",
"path": "firestore_export",
"metadata_file": "firestore_export/firestore_export.overall_export_metadata"
},
"auth": {
"version": "13.7.1",
"path": "auth_export"
},
"storage": {
"version": "13.7.1",
"path": "storage_export"
}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
7 changes: 7 additions & 0 deletions data/storage_export/buckets.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"buckets": [
{
"id": "hawkhacks-dashboard.appspot.com"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "qrCodes/SnS9WkYk7sC20mc8SaC4Prp5q1Lr/5dfcb560-ef5f-496e-8009-c0d3a5f7b023.png",
"bucket": "hawkhacks-dashboard.appspot.com",
"metageneration": 2,
"generation": 1715053325103,
"contentType": "image/png",
"storageClass": "STANDARD",
"downloadTokens": [],
"etag": "WicePFdBdGgVuHWxDQVotFjCY9s",
"timeCreated": "2024-05-07T03:42:05.103Z",
"updated": "2024-05-07T03:42:05.112Z",
"size": 2422,
"md5Hash": "6XktdRZuaTIkhtTabQXQUw==",
"crc32c": "1678994227"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "qrCodes/SnS9WkYk7sC20mc8SaC4Prp5q1Lr/ab369ae4-656b-4c9e-a8dd-99884cb401e8.png",
"bucket": "hawkhacks-dashboard.appspot.com",
"metageneration": 2,
"generation": 1715053325100,
"contentType": "image/png",
"storageClass": "STANDARD",
"downloadTokens": [],
"etag": "C4d9WGSgls9jo/zVjl+rdHowo+I",
"timeCreated": "2024-05-07T03:42:05.100Z",
"updated": "2024-05-07T03:42:05.109Z",
"size": 2442,
"md5Hash": "ettZlNumOrvurFA32yGAiw==",
"crc32c": "31312871"
}
6 changes: 5 additions & 1 deletion firebase.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,11 @@
],
"hosting": {
"public": "dist",
"ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
Expand Down
2 changes: 2 additions & 0 deletions functions/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ typings/

# Node.js dependency directory
node_modules/

.runtimeconfig.json
10 changes: 10 additions & 0 deletions functions/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,22 @@
"main": "lib/index.js",
"dependencies": {
"@google-cloud/functions-framework": "^3.3.0",
"axios": "^1.6.8",
"firebase-admin": "^12.1.0",
"firebase-functions": "^4.9.0",
"google-auth-library": "^9.9.0",
"jsonwebtoken": "^9.0.2",
"octokit": "^3.2.0",
"passkit-generator": "^3.1.11",
"qrcode": "^1.5.3",
"resend": "^3.2.0",
"uuid": "^9.0.1",
"zod": "^3.22.4"
},
"devDependencies": {
"@types/jsonwebtoken": "^9.0.6",
"@types/qrcode": "^1.5.5",
"@types/uuid": "^9.0.8",
"@typescript-eslint/eslint-plugin": "^5.12.0",
"@typescript-eslint/parser": "^5.12.0",
"eslint": "^8.9.0",
Expand Down
Loading
Loading