* fix(org): prevent foreign key constraint violation when creating invitations without teams
* fix(stripe): prevent undefined assignment to optional properties
* lint
* clean up
* clean up
* update
* merge-schema returns S
* fix: resend invitation should reuse existing invitation instead of creating duplicate
- Modified inviteMember to reuse existing pending invitations when resend=true
- Added logic to return existing invitation instead of creating new one
- Moved organization lookup earlier in the flow for proper access
- Added comprehensive test to verify resend behavior reuses same invitation ID
- Prevents duplicate invitation records in database when resending
- Fixes issue #3507 where resend was creating duplicates instead of being idempotent
The fix ensures that calling organization.inviteMember with resend=true:
1. Finds existing pending invitation for the email
2. Sends invitation email again using existing invitation data
3. Returns the same invitation object (same ID)
4. Does not create duplicate invitation records
* lint
* typecheck
* chore: add changeset for resend invitation fix
* fix: update invitation expiration on resend and simplify changeset
- Update expiration date to 48 hours when reusing existing invitations
- Simplify changeset description as requested by maintainer
- Addresses feedback from PR #3520
* fix: use configurable expiration time for resend invitations
- Replace hardcoded expiration with ctx.context.orgOptions.invitationExpiresIn
- Use getDate utility for consistency with createInvitation logic
- Maintain same 48-hour default when no custom expiration is set
- Addresses feedback about proper expiration handling
* chore: remove changeset
---------
Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
* feat(cli): resolves tsconfig references for path aliases
Previously references field was ignored and path aliases were only taken
from main tsconfig file
* chore: generate changeset
* test(cli): config is loaded correctly with alias
* chore: remove changeset
---------
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
* fix(cli): incorrect api for auto increment in drizzle schema generation(#3940)
* fix(organization): make plugin schema compatible with exactOptionalPropertyTypes; build schema object without undefined optional keys and merge team tables conditionally; keep session fields literal and add teams conditionally
* fix: restore non-Node.js support by lazily importing
* test
* cleanup
* clean up
* lint
* fix(email-otp): type issue with extractOptionPropertyTypes (#3961)
* docs: add github star count in the community section (#3960)
* github star count
* cubix issue fix
---------
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
* chore: lint
---------
Co-authored-by: Ben Agnew <78829885+ben-agnew@users.noreply.github.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: Dagmawi Babi <44819176+dagmawibabi@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
* fix(organization): make plugin schema compatible with exactOptionalPropertyTypes; build schema object without undefined optional keys and merge team tables conditionally; keep session fields literal and add teams conditionally
* fix(org): make plugin schema compatible with exactOptionalPropertyTypes
* clean up
* update
* update
* typecheck
* update
* chore: remove examples
* chore: add integration tests for Bun and Cloudflare environments
- Introduced integration tests for Bun and Cloudflare, including authentication and database setup.
- Updated pnpm workspace configuration to include integration tests.
- Removed example projects and unnecessary dependencies from pnpm-lock.yaml.
- Added .gitignore files for both Bun and Cloudflare integration tests.
- Created necessary configuration files and schemas for database interactions.
- Updated package.json files to include relevant dependencies for integration testing.
* chore: check for navigtaor
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
* await docker
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
* await isWSL
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
* cloudflare checks
* lockfile
* chore: lint
* only run ci on specefic branches
---------
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>