* Update to-auth-endpoints.ts
fixed
* biome error
* first commit
* fix(org): use correct slug lookup when setting active org
* docs: adding reference to surrealdb adapter rewrite (#3754)
Adding reference to surrealdb adapter rewrite, with passing tests and schema generation as well as surreal native parameters.
* chore(demo): replace isLoading using `useTransition` (#3775)
* fix: use `useTransition` for isLoading
* fixup! fix: use `useTransition` for isLoading
* fix(reddit): refresh access token should use `basic` auth (#3753)
* reddit auth type
* changesets
* chore: remove changeset
---------
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
* docs: unify component implementations for consistency (#3799)
* fix(docs): unify component implementations for consistency
* update
* fix: add missing team reference in teamMember schema (#3801)
* fix(organization): team members should be cleaned up on delete team (#3833)
* feat(stripe): create billing portal session (#3625)
* feat(stripe) : add billing portal session endpoint
* create billing portal session
* update docs
* chore: changeset
* chore: fix stripe
* chore: remove comment
* chore: update docs
---------
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
* fix(cli): prisma schema generate mismatch on custom plugin table names (#3021)
* fix: generate mismatch
* clean up
* linkt
* lint
* clean up
* clean up
* lint
* lint
* test
* clean up
* clean up
* lint
* update
* docs: update TOTP 2FA docs to state that Better-Auth implements a delay window (#3586)
Better Auth uses a delay window for TOTP code verification to ensure that it is resilient to time delays
* docs: remove unused import of 'auth' type in authClient setup (#3856)
In the previous implementation, the import statement for 'auth' type from './auth' was included as part of the setup for the authClient, but it is no longer being used in the current code. This update removes the unnecessary import to clean up the code and prevent potential confusion.
Additionally, the authClient setup remains intact with the use of 'inferAdditionalFields' plugin to define additional user fields (role type set to 'string').
- Removed unused import: `import type { auth } from "./auth"`
- Kept the authClient initialization with 'inferAdditionalFields' plugin
This resolves a minor issue and ensures that the code remains clean and maintainable.
* docs: enhance trustedOrigins option with examples (#3857)
* docs: enhance trustedOrigins option documentation
* nit
* docs: fix typo in SSR performance section
The line was missing "the".
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
* chore: update api key docs (#3864)
Closes#3724
* docs: fix google auth prompt (#3894)
Google OAuth2 uses space delimiters instead of +
https://developers.google.com/identity/protocols/oauth2/web-server
* docs(hono): update RPC client to use init config instead of custom fetch (#3597)
* add test
* chore: lint
---------
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
Co-authored-by: Manuel Sanchez <manuel@msanchez.dev>
Co-authored-by: Alex Yang <himself65@outlook.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: dogus <147812199+rhitune2@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Hysterelius <71912794+Hysterelius@users.noreply.github.com>
Co-authored-by: Jovan Lanutan <jolanutan@gmail.com>
Co-authored-by: Nate <37544626+ntedvs@users.noreply.github.com>
Co-authored-by: Dagmawi Babi <44819176+dagmawibabi@users.noreply.github.com>
Co-authored-by: Braden Wong <13159333+braden-w@users.noreply.github.com>
* feat: add an option to encrypt tokens by default
* feat(auth): add OAuth token encryption support
* refactor(auth): streamline token handling in OAuth callback by utilizing setTokenUtil
* refactor(auth): replace direct token handling with setTokenUtil for improved clarity and maintainability
* refactor(auth): unify token handling by utilizing setTokenUtil for access and refresh tokens
* docs(auth): enhance documentation for OAuth token encryption, clarifying security risks and benefits
* chore: cleanup
* update test
* refactor(adapter): `createAdapter` helper
* update: Kysely adapter support
* update: memory adapter
* chore: cleanup
* update: MongoDB adapter supported
* update: mongodb adapter file names
* update: support for prisma adapter
- also fixed memory adapter with `getField`
- disabled all debug logs by default
* chore: lint
* fix: generate an `id` if it isn't already provided
* update(test): init config snapshot
* update: existing adapters tests to include an `id` existence check
* fix: renamed prisma adapter file names
* ^
* update(mongo): Removed `disableIdGeneration` for mongo adapter
* fix: dont add `id` from fields if `disableIdGeneration` is false
* fix: adapter converting dates to string using the wrong value data
* add: create-adapter tests
* update: moved `adapter` to `create-adapter` under the existing `adapters` folder
* WIP: docs
* fix: create-adapter test importing from wrong path
* WIP: docs
* update: key transformation map options are now objs not fns
* chore: lint
* update: cleanup & added debugLogs/usePlural option to some adapters
* update: tests
* chore: cleanup
* update: fields name & made customTransforminput/output to run after supportsDates/supportsBoolean/SupportsJSON to run
* chore: lint
* Update: docs
* update: update-many to not use transformOutput
* chore: lint
* fix: adapter options breaking
* update: set the default limit on findMany
* update: docs
* update: docs & cleaned up code
* update: create schema comes with `tables` now
* This is useless
* fix: api-key shouldn't handle id gen in row creation
* chore: lint
* WIP: useNumberId
* chore: cleanup
* removed all cases of `id` during adapter.create call
* update: useNumberId
* update: drizzle adapter schema generation
- update: pg now sets `id` field to use `uuid`.
- fix: sets the correct reference `onDelete` action.
- refactor: cleaned up the code a lot more
* update: added `supportNumericIds` in create adapter options
* chore: cleanup
* update(tests): added option to disable any adapter tests & created a `useNumberId` test
* fix: skip tests options were using old method
* chore: lint
* WIP: Drizzle tests with number id
* chore: lint
* fix: memory adapter failing on number id adapter tests
* chore: cleanup
* fix: adapter tests fail due to emails needing to be unique
* update: support drizzle adapter use-number-id
* fix: cleanup Drizzle Adapter tests
* fix: drizzle schema generation for reference id fields
* fix: type errs in memory adapter tests
* fix: memory adapter tests
* Update init.test.ts.snap
* fix: prisma tests correctly uses the right primsa client per schema
* Delete run-vitest.ts
* update: create-adapter to support `getDefaultFieldName`
* update: create-adapter adapter options updated
* fix: adapters using older function names
* fix: create-adapter now converts where clauses & added tests
* update: new `getFieldAttributes` option in create-adapter, and fixed convert where clause fn
* chore: cleanup
* update: convertWhereClause in create-adapter improved
* update: BAOptions to start using `database` & updated adapter tests
* fix: type errors
* chore: lint
* update: default config values for the create-adapter config
* fix: getModelName doesnt take into account of plural
* chore: cleanup
* update: improved getDefaultModelname
* fix: create-adapter transform input doesn't take into account reference IDs
* fix: transformInput on reference IDs doesn't take into account of array IDs
* chore: lint
* fix: prisma tests
* fix: Prisma adapter tests running one after another
* fix: init snapshot should state supportJSON as `false`
* fix: drizzle adapter tests
* update: adapter test options to allow passing a test prefix
* chore: add state.txt to gitignore
* remove: state.txt from gitignore, it's useless
* chore: lint
* Update adapter.prisma.numberid.test.ts
* fix: get-migration for mysql & mssql `id` fields to use varchar
* chore: cleanup
* update: adapter comes with adapter-test-debug-log functions
* update: made adapterTestDebugLog functions only be in adapter if config enabled it
* fix: transactionId for debug logs not working correctly
This was due to the adapter being reinitialized each test case
* update: Added colors to debug logs
* update: adapter tests a little more refined
* add: deepmerge dev deps to deep merge better auth options config for adapters
* fix: create-adapter types
* update: revert back to old types
* fix: prisma adapter tests now run one after another
* fix: kysely adapter to work when no `id` is provided
* update: mongoDB to set `supportNumericids` to false
* update(docs): discuss new `database` object in BetterAuthOptions
* add: support for custom ID generation
* fix: docs had incorrect default value for `supportsJSON`
* update(docs): added number id adapter test documentation
* fix: drizzle-adapter mysql tests
* update: drizzle-adapter tests to use deepmerge
* add: drizzle-adapter mysql tests to test useNumberId
* add: Prisma generate to support number id
* update: support the old `generateId` option, but warn the user for deprecation
* update: init test snapshot
* update: adapter tests not included in normal tests
* Update pnpm-lock.yaml
* fix: typo in file names for kysley test files
* update: separated adapter tests
* Update pnpm-lock.yaml
* fix: please tell me I actually fixed this
* fix: pnpm-lock merge conflict
* chore: lint
* fix: sveltekit pkg.json merge conflicts (hopefully)
* Delete pnpm-lock.yaml
* update: createSchema takes into account of rate-limit and secondaryStorage
* improve docs
* add drizzle returning id retriver
* chore: fix test script
---------
Co-authored-by: Bereket Engida <bekacru@gmail.com>