* fix: make tenant switch button into a picker
* fix: improve ui, group by org
* fix: more problematic z indexes
* fix: more z index issues, remove standalone tenants
* Tell eslint to ignore the generated code so that the npm run commands are usable
* Cleaning something I noticed while reading around
* An editorconfig so my editor knows when to use tabs and when to use spaces
* make it so you don't have to pass in unnecessary empty objects
* Two "new organization" pages – one for onboarding, one for after, both displaying the same form
* Fix a bug with asChild in the button component + make the "Create Organization" button a proper link
* the same form + save logic used in a "new organization" onboarding screen and a regular "new organization" screen
* not tested, but this tenant saver form looks like a reasonable starting place
* a "new tenant" modal that seems to work
* move minimumReleaseAge to a pnpm-specific config so npm doesn't complain at me when I reflexively type `npm run`
* automated unit tests for the frontend
* Rework the tenant+organization onboarding redirects, and use union types to try to make working with the organization in the app context more painless
* When onboarding, default the organization to the user's name
* isSaving doesn't need to be optional
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835696077
* wrap callback in useCallback
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835697163
* empty string is not the correct default
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835702156
* only set up the event listener once!
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835712324
* use tiny-invariant for assertions
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835707451
* [jedi hand move]
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835700130
* try a mutation
* I thiiiiink this is about what I want
* Finish getting the user-universe provider up to snuff, implement it in a few places.
Also fix a bug caused by the fact that some pages that assumed you were authenticated were not underneath the authenticated route
* change appContext to pull from user universe rather than querying tenants + organizations itself
also, rename the organization/tenant hooks isLoading->isUserUniverseLoaded
* We want resetQueries, not invalidateQueries
invalidate sets the query to stale, but leaves the data around and leaves isSuccess = true
* Make the user universe query dependent on isCloudEnabled + get the query client from context
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854606886https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854611980https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854614616
* get rid of an unpleasant `as`
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854620958
* fix a name that was too generic for what it was being used for
* Make the NewOrganizationSaverForm assertion message more useful
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854629289
* some embarrassing errors in the non-cloud flow
* fix: unwind pnpm changes
* Revert "fix: unwind pnpm changes"
This reverts commit 5df6a4b5d3.
* fix: add `packages` hack to pnpm-workspace files
* fix: shrink spacing
* fix: start improving styling of orgs page with tabs
* fix: start cleaning up UI
* fix: remove mobile views, nobody uses them
* fix: spacing, border
* fix: org edit button
* fix: remove invites tab
* fix: factor out columns
* login screen needs to clear any current user query errors before redirecting
otherwise it keeps trying to redirect you back to the login screen until the latest metadata request succeeds
* Fix some issues during login when switching between users
- we need to invalidate all the previous user's information when they log out so that it's not floating around in memory
- we need to validate the tenant id stored in localstorage before passing it along to the rest of the world
- to be safe, invalidate the user universe and start refetching it as soon as they log in, before we redirect to the authenticated route
* One more bit of explicit fetching that needs to happen
* After accepting a tenant invite, need to invalidate the user universe and re-fetch
Also, kill the listTenantMemberships query to force people to use the query that's wrapped up by the user universe
* Change the tenant-create e2e testto account for the UI changes
* It seems like Cypress was trying to navigate to the onboarding page too quickly for the test to pass on my machine
* Slightly better copy for the tenant label
* fix lint issues
* quote the glob paths?
* Disable running the tests in CI for now
* use the width settings that are most common across dialogs right now
* node 20 -> 24
* Need to manually specify node version apparently?
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
* fix: compute payload size correctly for pg_notify
* refactor: pull search bar into its own component
* just use tab for autocomplete
* fix: log line typing
* Refactor Search Bar (#2964)
* Add empty search state
* V1 table layout logviewer
* Add temp hatchet-worker for testing
* Fix log css grid when expanded
* undo search notfound logic, needs API logic
* Rework workflow example
* use correct info color
* better table headers
* Add back ansi formatting
* Allow enter along with tab to traverse chips
* remove tutorial
* Add syntax color to search chips
* styling progress
* styling progress
* constrain width
* Add rel time
* Readd flag conditional
* remove hatchet-worker, feature flag, and cypress test
* remove tenant hook
---------
Co-authored-by: Alexander Belanger <alexander@hatchet.run>
* fix: remove ansi-to-html, review feedback
---------
Co-authored-by: Sebastian Graz <graz@live.se>
* add: scope_expression and payload columns for v1_webhook
* refactor: insert or update sql cmds for v1_webhook
* feat: update api clients, openapi schema for new webhook body
* refactor: receiver and transformer for v1 webhook
* add: python sdk changes
* feat: ts sdk changes
* feat: add FE for webhook new params
* fix: scope expression empty payload
* add: support for scope and payload for go client
* fix: lint
* fix: error message UI on webhook
* fix: lint
* fix: migraiton conflict, build failure
* fix: error handling
* update docs, add tests
* fix: lint, test file name
* add: email alert support via SMTP
* add: subject lines
* add: go build tags
* add: SMTP server guide
* feat: include rendering in tests, fix race with mock server, and register subject templates to tmpl registry
* split up SMTP and postmark config
* refactor: Remove generic methods from EmailService
* fix: make postmark the default email provider
* fix: frontend lint
* fix: don't toggle selection if a user is dragging
* fix: command selection state
* fix: close search bar on enter
* fix: improve search bar styling a bit, make it more consistent with designs
* chore: tsc
* Feat: Logs Frontend, Part III (#2888)
* fix: propagate retry count through properly
* feat: attempt switcher
* fix: attempt numbers
* feat: add attempt param to log query
* feat: wiring
* feat: attempt filter
* chore: changelog
* fix: use the button component
* fix: only close on enter when in FTS mode
* fix: pass retry count and log level in Go
* fix: feedback
* chore: lint
* fix: rm cruft comment
- Adds options for Python and Typescript package manager support - uv, pip, poetry, npm, pnpm, yarn, and bun. Also adds e2e tests to ensure that all of these quickstarts successfully can start a worker.
- Replaces the scripts with triggers in the CLI
- Adds the hatchet trigger command
* Make socialAuth buttons span their full width if only one is visible
* Add grid noise + prettier format
* lint
---------
Co-authored-by: gabriel ruttner <gabriel.ruttner@gmail.com>