* original files from previous PR
* get rid of router in jwt-secrets to make it show up
* rename jwt-secrets page to jwt-signing-keys
* add jwt-signing-keys query
* add legacy jwt signing keys query
* wire-up JwtSecretKeysTable with queries
* add jwt signing keys page to settings menu
* deduplicate labels, descriptions, etc
* add create, update jwt-signing-key mutations
* update types
* remove unused components, to be refactored later
* make everything into a mostly working state
* legacy migration added
* put jwt keys page like api keys
* fully migrate legacy jwt secret page
* fix prettier
* fix typecheck ts-expect-error
* rm unneeded file
* Fix compile errors.
* Rename the files and move them to the same folder.
* Merge the two constant files.
* Fix the imports.
* Fix a bug in the API keys page when opening it in a new tab.
* Change the page to be at /signing-keys
* Fix some minor types.
* Break apart some of the components in the signing keys UI.
* Use a feature banner for the initial action.
* Make a create key dialog and move functionality there.
* Fix some cosmetic issues.
* Minor cosmetic fixes.
* Remove extra keys in RQ cache.
* Add a missing link
* Add a banner when the feature flag is false.
* Minor type fix.
* more tiny type fix
* fix error on create standby key
* add alert to prevent revoking legacy jwt secret without disabling legacy api keys first
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
Disables organization selection if the org requires MFA but the user
does not have MFA enabled.
Add badges / hints to show that user has access to an Organization but
access is disabled because of MFA access requirement
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* init new unified page
* moar logs
* init
* add infinite and live logs example
* Update useLogsPreview.tsx
* add more sources
* wrapped auth logs with edge logs
* add role and user id
* move unified logs
* init
* move demo pages. create a new directory to work in
* extracted beta unified logs into own components
* add example base page and components
* add new files to use actual logging query
* more organization
* change import
* adds new logs page. adds new query
* add data table to UI pacakges
* revert
* table styles
* text size
* add timestamp, table, icons for log types, status code styling
* add host
* add log count to edge functions
* starts to add dynamic filtering
* spiking trace UI
* Update status-code.ts
* add new linik
* now using POST
* fix chart data for default 1 hour view
* update API to accept POST requests
* new filters
* Update level.ts
* fixed up chart to work on level filter. split up the logic into new files
* prep for log type
* prepped query for WHERE
* fix: issue with white space in url param column parsing
* level param now being removed correctly.
* fix issue with chart showing wrong buckets for different time ranges
* remove old query
* refactor the queries into function for each source
* total count fixed
* lots of layout
* start fixing log counts
* comment out min and max for a while
* added trace logging prototype in
* random trace logs added for demo
* added logs and ui to view logs if any
* add Auth user
* fix the live logs issue
* some left over code
* Midway
* First pass refactor + clean up + reorganize files
* Fix TS issues
* Remove unused files
* Clean up
* Final clean up
* more clean up
* More clean up
* Remove unused packages
* Fix
* Lint
* Add feature flag for unified logs
* Refactor
* Remove trace UI
* Snake case log types
* more clean up
* More clean up
* Fix ts
* more clean up
* fixes
* add flag check and redirect if flag is false
* Update middleware.ts
* Nit lint
* Fix
* Last refactors
---------
Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
* Pass the auth_id and token params when the user is signed up.
* Try to fix the vercel build.
* Move the code in function to avoid SSR errors.
---------
Co-authored-by: Wen Bo Xie <5532241+w3b6x9@users.noreply.github.com>
This PR implements the new flow to confirm subscription upgrades using Orb pending changes. This is backwards compatible and based on a flag exposed by the backend (`subscriptionPreview.pending_subscription_flow`).
Just like the organization creation, the entire flow is slightly different - instead of creating a payment method separately, the payment method is added inline while doing the upgrade and then attached to the customer. If payment fails, the upgrade will not go through. If payment requires additional action, the user needs to confirm the payment before allowing the upgrade.
For testing the new flow locally, toggle the flag in `flags.ts` on the backend.
Changes include
- No longer rely on the `changeType` from the plans endpoint as this is regularly out-of-sync and displays wrong up/downgrade info due to race conditions
- `readOnly` mode for Stripe elements if anything is loading/submitting
- Reduced prop drilling for some components
- Hide payment method and address selection on downgrade
* Update new project flow to add a warning before redirecting
* Simplify the logic for picking an org.
* Small UI tweaks
* Readd the alert about a not found org.
* Link to all orgs if slug is undefined
* Nit
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
- Prefill email in Stripe form to set up Link faster or connect faster
- Overwrite a bit of styling so it looks less foreign
- Moved the Payment component from the NewOrgForm into it's own file and renamed it
* feat: allow disabling and re-enabling of `anon` and `service_role`
* Cleanup the RQ hooks.
* Restructure the enable/disable alert in API keys.
* Minor cleanups.
* Minor fixes.
* Fix a type error.
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
* Consolidate copy to clipboard
* Fix
* Fix some extra clipboard events.
* Fix the tests. Fix a small issue with the copy button.
* Fix
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
Adds support for the new Orb pending subscription change flow that has been added to the backend.
By default, the new feature is disabled (enabled after merge on staging). If disabled, this should work just like before with the regular `confirmPayment` function that triggers 3DS if needed and properly lets a user confirm their additional factor.
With the new flag, we only create a payment method, as we will do another payment intent that is set up for future usage and that may require 3DS - so we avoid the possible double confirmation (setup confirmation + payment intent). The organization creation endpoint can either return a full organization (i.e. on Free Plan or immediate payment success) or a payment_intent_secret. In case of the secret being returned, we need to confirm the secret with the Stripe SDK.
Moved the Stripe Elements further down to avoid the entire form reloading (especially billing address) in case of a payment failure.
We regularly have customer support tickets that cannot confirm because of a mismatching space at the end (and they cannot for the life of them figure this one out).
Trimming both input and comparison string will prevent unnecessary support tickets and still guarantees enough safety.
* chore: move HIPAA checks from org to project level
HIPAA orgs can mark specific projects as sensitive. Those projects will
have HIPAA restrictions applied to them. This opens non-HIPAA projects
in the same Organization up to use previously disabled features.
* fix: don't call react hooks conditionally
* chore: disable AI in HIPAA
If in a project and the project is HIPAA enabled, disable AI. Otherwise
rely on the opt-in to AI at the org level
* Add another page for claiming a project.
* Fix a misspell.
* Minor fixes.
* Comment some test code.
* Update the design on the confirm step.
* Reorganize the authorize page. Bunch of design fixes for the claim page.
* Fix
* Delete added files my mistake.
* Separate claim-project and authorize pages. Minor design fixes.
* Add more logs to the generate claim button.
* snapshot.
* Add more copy to the three steps.
* Make the claim URL button better.
* Add missing comma.
* Fix unneeded changes.
* Make the header full width.
* Fix all comments by Joshen.
* Clean up extra code.
* Forgotten some things to clean.
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* fix: studio circular imports
* Fix the import cycle on Wrappers tabs components.
* Remove duplicate declarations of the feature previews array.
* fix feature previews circular import
* Minor nit
* update all project contexts to use useSelectedProject
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* make create button go directly to log explorer if warehouse is disabled
* fix limit clause in uppercase not caught by warnings
* make warning tooltip improve spacing
* fix date not updated on log explorer
* Remove api-keys.tsx, duplicated with api-keys/index.ts
* Remove use of newApiKeys feature flag in SettingsMenu.utils.tsx
* Refactor use of newApiKeys flag to basicApiKeys
* Update logic for shouldDisableUI in useApiKeysVisibility hook
* Smol fix
* add new e2e folder
* add local supabase and confitional storage
* fix e2e selfhosted
* update actions
* add correct e2e folder
* fix e2e actions
* fix action project ids
* fix permissions
* fix script
* fix playwright install
* playwright root
* pnpm i
* fix api rul
* add env docs
* update run script
* only install deps for e2e
* use same dep
* only install deps for tests
* upd lockfile
* use official vercel integration
* use vercel cli
* remove old folder
* fix script
* rm filter
* rename e2e studio package
* fix install browsers
* add polling for vercel build
* use vercel-preview-url package
* undo actions
* rename ci env to ci
* chore:add rls check and make playwright test less flakey (#35348)
* update ci action
* fix paths
* fix browser install
* run ci against staging
* try caching builds
* fix envs
* fix env check
* fix sign in
* fix sign in url
* fix envs and url
* fix caching
* fix race condition in sign in page
* fix race condition in sign in page
* add check to see if being redirected
* fix caching, check IS_PLATFORM var
* log is_platform
* try vercel build
* fix vercel project id
* fix path
* add temp vercel.json file
* fix paths
* undo project id stuff
* rm cwd
* fix path
* fix paths again
* fix path
* fix base url
* try different fix
* fix config base url
* fix base studio url issues
* retain video on fails
* Update e2e/studio/README.md
Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
* Update e2e/studio/README.md
Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
* fix env file naming
* undo caching
* rm old tests folder
* fix readme scripts
* rm vercel deploy for now, just run build locally
* fix url
* fix build script
* fix is_platform
* fix stuck studio start
* fix env vars
* retain network and logs on fail for better debugging
* add apiurl env
* back to vercel
* disable catpcha
* fix test
* update environment configuration to remove default URLs for CI and streamline API base URL handling
* fix typeerr
* fix urls in home.spec
* fix urls in logs.spec
* fix urls in sqleditor spec
* fix table editor spec
* add tourl util
* use staging api in ci
* re add base url env var
* fix url in projects page
* fix url in sql editor spec
* fix sign in not waiting for cookies omfg
* fix env var name
* fix sql-editor test
* simplify table removal
* add opt out telemetry step
* fix logs tests
* fix table editor spec
* remove flaky steps from table editor tests
* use vercel deployment events instead of build
* add studio check
* fix condition
* debug event
* rm if
* trigger deploy
* undo ac
* make opt out button step optional, some envs dont hav eit
* use testid for sql run button
* use id instaed of timestamp in logs tests
* empty
* rm retries
* up glbal timeout
* chore: fix failing sql-editor playwright test (#35767)
* chore: fix failing sql-editor playwright test
* chore: minor fixes
* Chore/update playwright config (#35826)
chore: update playwright config
* rm supabase project from e2e tests
* refactor and simplify environments
* fix sql editor test
* fix ci env vars
* fix
* fix on windows
* update readme
* add playwright install script to readme
* rm turbopack trace flag
* npm to pnpm for scripts
* delete ivan lines
---------
Co-authored-by: Michael Ong <minghao_3728@hotmail.com>
Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
* fix schema selector in create fn sheet
* fix schemaselctor in auth hook
* add portal false to schemaselector in sqlfunction for cronjobs
* Fix schema selector in function sheet
---------
Co-authored-by: Terry Sutton <saltcod@gmail.com>