Commit Graph

837 Commits

Author SHA1 Message Date
Bereket Engida
227df06374 docs(hooks): add returned and responseHeaders properties 2025-03-04 10:49:41 +03:00
Igor Shevchenko
827429653c docs: update expo session example (#1670) 2025-03-04 10:45:00 +03:00
Bereket Engida
31c974a744 fix(admin): require adminRoles option for a role to be considered an admin role 2025-03-04 09:51:32 +03:00
Bereket Engida
0192558fe5 docs: fix syntax error in email-password authentication configuration 2025-03-04 02:10:52 +03:00
Alexander Vencel
a71055d937 docs: update reset password documentation for missing props (#1663)
- added `resetPasswordTokenExpiresIn` in props table
2025-03-03 22:14:34 +03:00
Bereket Engida
d08d3ea3ba docs: 'set-password' permission missing 2025-03-03 21:43:06 +03:00
Bereket Engida
84ab25daf6 fix(stripe): apply free trials properly 2025-03-03 18:26:23 +03:00
Bereket Engida
905210f2ac fix(stripe): add optional annual plan prop on upgrade 2025-03-03 15:51:46 +03:00
Philip Huynh
9f723ba6db Merge branch 'main' into installation-twitter-missing-as-string 2025-03-03 13:07:06 +02:00
Bereket Engida
38384feebf docs: remove userId parameter from API key documentation 2025-03-03 13:16:16 +03:00
Bereket Engida
b0d2c081b8 docs: remove userId parameter from API key verification example 2025-03-03 13:16:16 +03:00
y_ta
9b403f62e5 docs(fix): Correct typo in drizzle-adapter (#1657) 2025-03-03 13:11:38 +03:00
Bereket Engida
8ac967a1e5 docs: update better-auth installation version 2025-03-03 11:29:27 +03:00
Dewin Umana
c385535a2c docs: improve tiktok documentation (#1648) 2025-03-03 11:17:31 +03:00
Sallar
6e099363e8 docs(fix): update babel config on expo docs (#1650) 2025-03-03 07:39:20 +03:00
Christian Mattsson
34a48e79a0 docs(fix): correct typo in api-key documentation (#1652) 2025-03-03 07:38:26 +03:00
crutchtheclutch
46f10f36aa docs(fix): Add reference to ctx object for database hooks (#1642)
* Add reference to ctx object in database hooks

This would have saved me time when I was look at implementing database hooks!

* typo

* chore: remove heading

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-03-03 07:37:52 +03:00
Joel Solano
0d3b107d83 docs(fix): pagination section formatted wrong (#1638) 2025-03-02 21:19:37 +03:00
Bereket Engida
ad151f6205 chore: fix docs highlighting 2025-03-02 21:07:35 +03:00
Bereket Engida
ed2c7ab84b chore: fix docs highlighting 2025-03-02 21:00:35 +03:00
Bereket Engida
dbbace2dbc docs(cli): update init and config file references 2025-03-02 19:05:00 +03:00
Joel Solano
80c647ca78 docs (fix): incorrect permissions for admin plugin (#1633) 2025-03-02 18:08:39 +03:00
Bereket Engida
6131a4d653 feat(organization): add organization creation hooks and improve type safety 2025-03-02 18:07:15 +03:00
Yam Catzenelson
e21e76630a docs: fix typo in performance guide (#1628) 2025-03-02 16:28:31 +03:00
Bereket Engida
dab0c80384 docs: remove unused schema from stripe docs 2025-03-02 15:16:28 +03:00
Bereket Engida
d79a8af190 fix(organization): default access control props 2025-03-02 14:55:08 +03:00
Arda Soyturk
af24794c2f docs(fix): typo on cli page (#1626) 2025-03-02 13:39:09 +03:00
Alexander Cato
886698f7e7 docs: fix typo (#1618)
"The client use nano-store" --> "The client uses nano-store"
2025-03-02 10:16:25 +03:00
Nelson Sousa
6253e2d43d docs: fix organizationDeletion example (#1619) 2025-03-02 10:15:50 +03:00
Khiet Tam Nguyen
d0c489588a docs: consistent indents with space instead of tabs (#1620) 2025-03-02 10:15:30 +03:00
Thomas Kaul
eb91c2b521 docs: fix drizzle to prisma typo (#1622)
Change Drizzle to Prisma
2025-03-02 09:43:18 +03:00
Philip Huynh
5f29c0998a Roblox and tiktok 2025-03-02 02:24:53 +02:00
Philip Huynh
d2b89ea4c3 Merge branch 'better-auth:main' into installation-twitter-missing-as-string 2025-03-02 02:22:48 +02:00
KinfeMichael Tariku
84ef00c8d2 docs: add tiktok (#1615) 2025-03-02 02:01:20 +03:00
Bereket Engida
2a0ef7561e docs: add optional annual discount price ID for Stripe plans 2025-03-02 01:47:39 +03:00
kzlar
44d6dac470 feat: disable Implicit Signup (#1179)
* Feature: Disable Implicit Signup for oauth implementations

- Added disableImplicitSignup option to social providers, generic oauth privders and sso plugin
- With disableImplicitSignup as true, signing in with a new email will fail
- Client may use requestSignUp as true to indicate they're explicitly asking for a sign up
- Added unit tests for social providers, generic oauth and sso plugin

* test: remove .only from OAuth2 test cases

* feat: add disableSignUp option for OAuth providers

* docs: add OAuth provider configuration options for signup control

* chore: fix api

* test: update OAuth test ports to 8081

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-03-02 01:30:36 +03:00
KinfeMichael Tariku
bd30868470 docs: fix code format (#1611) 2025-03-02 00:58:10 +03:00
Bereket Engida
12baa8a283 feat(organization): add team management permissions and documentation 2025-03-02 00:52:58 +03:00
Bereket Engida
df4637c3a3 docs: fix typo on release note v1.2 2025-03-02 00:31:22 +03:00
Bereket Engida
663ee7ca04 docs: update username schema 2025-03-02 00:22:49 +03:00
Bereket Engida
958d80fd86 docs(changelog): Update 1.2 release notes 2025-03-01 23:10:03 +03:00
KinfeMichael Tariku
dde0699a6c docs(fix): import outside of mdx code highlighter (#1605) 2025-03-01 21:18:07 +03:00
Bereket Engida
86cbf70684 docs: v1.2 release notes (#1602) 2025-03-01 02:22:32 +03:00
Bereket Engida
4f56078e4b feat: stripe plugin to handle subscriptions and customers (#1588)
* init

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* feat(stripe): enable subscription support and update pricing plans

* feat(stripe): add Vitest configuration and initial tests for Stripe integration

* feat(stripe): implement setCookieToHeader function and update tests for customer creation and subscription handling

* feat(stripe): add seats support for subscriptions and update related endpoints

* feat(stripe): update schema to include unique referenceId, stripeSubscriptionId, and periodEnd fields

* wip docs

* docs

* docs: imporves

* fix(stripe): update webhook handlers to use correct subscription identification

* refactor(stripe): simplify customer management by storing Stripe customer ID directly on user

* chore(stripe): update package configuration and build setup

- Migrated from tsup to unbuild for build configuration
- Updated package.json with improved export and dependency management
- Added build configuration for better module support
- Removed tsup configuration file

* chore(stripe): update pnpm lockfile dependencies

- Moved `better-auth` from devDependencies to dependencies
- Added `zod` as a direct dependency
- Reorganized package dependencies in the lockfile

* feat(stripe): enhance subscription management and error handling

- Added toast error handling for subscription upgrades in the dashboard
- Updated Stripe price IDs for different plans
- Improved Stripe plugin documentation with beta warning and team subscription details
- Implemented intermediate redirect for checkout success to handle race conditions
- Added support for fetching and updating subscription status after checkout
- Fixed Next.js cookie handling and build configuration

* chore: update snapshot
2025-03-01 01:20:17 +03:00
Khiet Tam Nguyen
e613bf492c docs: added "partitioned: true" for cross-domain (foreign) cookies (#1591) 2025-03-01 01:20:04 +03:00
Benjamin Behringer
d74967c756 feat: passkey plugin with client-side authenticatorAttachment and global authenticatorSelection configuration (#1318)
* feat(passkey): Add authenticator attachment options and global configuration

* docs(passkey: adding documentation for new configuration options

* fix(passkey): omit undefined authenticatorAttachment query param

* fix(passkey): remove commented-out code in passkey documentation

* chore: lint

* update js doc

Co-authored-by: Andrew Patton <andrew@acusti.ca>

* fix(passkey): make query parameter optional and safely access authenticator attachment

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: Andrew Patton <andrew@acusti.ca>
2025-03-01 01:12:16 +03:00
Igor Pawelec
48f99de32c docs: fixed removeMember typo (#1599) 2025-03-01 00:53:38 +03:00
Bereket Engida
695f224696 feat: team support for organization (#1425)
* feat: teams in org

* conditional based expose team endpoint

* mod on adapter

* team org wip

* wip

* dynamic type inference

* add test

* feat: enhance organization adapter with default team creation and member timestamps

* feat: add maximum teams limit and prevent removal of last team

* refactor: remove outdated description from plugins documentation

* feat: add teams functionality with management and schema updates

* merge v1.2

* chore: cleanup

* fix(internal-adapter): safely handle lowercase email conversion

* feat(organization): enhance team and organization management tests and functionality

- Update organization and team tests with more comprehensive scenarios
- Modify team creation, invitation, and removal processes
- Improve access control and role management in organization tests
- Add support for multiple team and member management scenarios

* refactor(better-auth): remove unnecessary type extensions for User and Session

---------

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-03-01 00:46:31 +03:00
Joel Solano
6ae53a1b2f feat: add disabling email and password signup config (#1428) 2025-03-01 00:33:55 +03:00
Maxwell
c66fdc9129 feat: init Better Auth CLI command (#1427)
* update: init command now can do plugins & DB generation

* fix: revert nextjs auth.ts file

* add: pacakge @clack/prompts for better CLI experience

* update: moved from prompts to clack/prompts

* add: functionality to hide logs coming from `getConfig`

* remove: hide logs functionality

* chore: remove unneeded import

* add: install dependencies feature

* add: functionality to update/install better-auth

* fix: install/upgrade better-auth deps

* add: spinner during version checking

* fix: nextCookies plugin import path

* fix: oidc plugin contents

* update: emoji-ify

* fix: mysql code

* refactor: logging/prompt style

* update: mysql use 1 ENV

* fix: msql, revert back to old code

* fix: mysql connectionUri, again

* fix: missing sqlite env

* fix: added back the plugins multiselect

* update: outro text

* add: ENV generation for `BETTER_AUTH_URL` & `BETTER_AUTH_SECRET`

* update: intro & outro text, plus some ENV default values

* remove: name from cli options

* fix: made index.ts's getPackageInfo not crash the program entirely if ENOENT

* update: prompt to get auth config dir if not auto found

* fix: create auth config file

* add: log to state the new file that's being created

* update: outro text

* fix: unneeded diff display

* add: auth-client creator

* fix: auth-client plugins are now grouped

* fix: auth-client import path bugs

* fix: invalid client plugins

* fix: oneTap client plugin contents

* update: allow getConfig to throw errors instead of logging

* fix: auth config error logging

* WIP: auth client code gen

* chore: linter

* update: now supports auth client generation

* WIP: grouped imports

* remove: functionality to update existing auth code

* add: functionality to update tsconfig

* fix: tsconfig not saving new updated values

* fix: handle missing .env files in init process

* update: made `no env file found` error message use `outro` for better logging experience

* fix: removed `ms` at the end as the `formatMilliseconds` fn already handles that

* update: move ENV code after plugins initialization

* chore: update pnpm lockfile and remove deprecated package note

* chore: lint

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-03-01 00:33:14 +03:00