Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
154cd52
Remove `dsync.deactivated` event (#1086)
kendallstrautman Feb 28, 2025
e69358c
upgrade minimum node-version to >= 18 (#1225)
nicknisi Feb 28, 2025
b0afa0e
Replace TSLint with ESLint (#1230)
nicknisi Mar 6, 2025
8cb79fe
Remove deprecated code for major version (#1224)
mattgd Mar 6, 2025
58871e7
Remove deprecated Vault Secret references (#1249)
hexedpackets Mar 27, 2025
9c73ef3
Upgrade iron session version (#1251)
nicknisi Apr 1, 2025
e57222d
Update to latest prettier (#1253)
nicknisi Apr 1, 2025
c4bedaf
General dev dependency updates (#1254)
nicknisi Apr 1, 2025
8f264ed
Add tests and typing updates for pagination utils (#1252)
mattgd Apr 3, 2025
77add0f
Make userId or organizationId required when calling listOrganizationM…
mattgd Apr 3, 2025
2a20a87
[v8] Remove NodeCryptoProvider (#1270)
nicknisi May 13, 2025
54906b3
[v8] remove NodeHttpClient (#1271)
nicknisi May 16, 2025
a76086c
[v8] Add Node 24 to CI testing (#1278)
nicknisi May 19, 2025
b2968d1
[v8] Add other runtime checks for environment variables (#1279)
nicknisi May 21, 2025
2ecd667
[v8] Add ESM / CJS dual build (#1287)
nicknisi May 27, 2025
9cdee37
fix fga pagination
nicknisi Jun 11, 2025
5edf171
v8.0.0-beta.1
nicknisi Jun 11, 2025
1ad8831
formatting
nicknisi Jun 12, 2025
a675f2e
tsconfig fixes for build
nicknisi Jun 12, 2025
c743dbc
v8.0.0-beta.2
nicknisi Jun 12, 2025
33fef9e
feat: Universal runtime compatibility for Node.js SDK v8 - fixes impo…
nicknisi Jul 11, 2025
017a270
Type constructEvent payload parameter as Record<string, unknown> (#1307)
mattgd Jul 11, 2025
822a5cf
add @types/ws devDependency
nicknisi Jul 17, 2025
6e9124a
[V8] remove direct process.env access, replacing with getEnv helper (…
nicknisi Jul 22, 2025
c28d58a
build fixes
nicknisi Aug 5, 2025
fcdfed9
v8.0.0-beta.3
nicknisi Aug 5, 2025
65490b0
formatting
nicknisi Aug 19, 2025
62716d1
test fixes
nicknisi Aug 19, 2025
057c07e
[V8] create client API for methods that don't require an API key (#1354)
nicknisi Sep 23, 2025
35ae04b
don't ignore package-lock.json
nicknisi Sep 23, 2025
26d28d8
v8.0.0-beta.4
nicknisi Oct 2, 2025
3dae9d6
Remove deprecated properties for v8 (#1365)
nicknisi Oct 7, 2025
06d1c73
[v8] drop node 18 (#1366)
nicknisi Oct 8, 2025
e63a2a0
[v8] Update Dependencies (#1368)
nicknisi Oct 10, 2025
ca30354
Default PaginationOptions on AutoPaginatable (#1369)
nicknisi Oct 13, 2025
5b8a374
[v8] Add runtime analytics to User-Agent string (#1293)
nicknisi Oct 15, 2025
8fc4f8a
8.0.0-rc.1
nicknisi Oct 15, 2025
e2cb0e7
[v8] Add dynamic import wrapper for jose to support Node.js 20.15-20.…
nicknisi Oct 28, 2025
f232f63
v8.0.0-rc.2
nicknisi Oct 29, 2025
ba04771
[v8] Replace leb and qs deps with vanilla implementations (#1382)
nicknisi Nov 6, 2025
10301c8
v8.0.0-rc.3
nicknisi Nov 6, 2025
011038f
Update convex import paths in package.json (#1386)
juliusmarminge Nov 17, 2025
241026d
formatting
nicknisi Nov 24, 2025
5b11db5
[v8] Use globalThis.crypto.randomUUID for runtime-agnostic UUIDs (#1398)
nicknisi Nov 24, 2025
19b1829
[v8] Improve performance of audit log tests (#1408)
nicknisi Dec 2, 2025
0af3c97
remove glob, @types/glob deps
nicknisi Dec 2, 2025
d826248
update jose
nicknisi Dec 2, 2025
8832b6f
update prettier and run it
nicknisi Dec 2, 2025
a60ff2a
update other dev deps
nicknisi Dec 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node: [16, 18, 20, 22]
node: [20, 22, 24]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/fix-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
node-version: 22
registry-url: 'https://registry.npmjs.org'

- name: Install Dependencies
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,17 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
node-version: 22
registry-url: 'https://registry.npmjs.org'

- name: Install Dependencies
run: |
npm install

- name: Build Project
run: |
npm run build

- name: Run Tests
run: |
npm run test
Expand Down
24 changes: 24 additions & 0 deletions .github/workflows/runtime-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Runtime Compatibility Tests

on: [push, pull_request]

jobs:
runtime-compatibility:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- uses: denoland/setup-deno@v2
with:
deno-version: v1.x
- uses: oven-sh/setup-bun@v2

- name: Install and build
run: |
npm install
npm run build

- name: Runtime compatibility check
run: npm run check:runtimes
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ yarn-error.log
lib/
.DS_Store
yarn.lock
.idea/
.idea/
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ See the [API Reference](https://workos.com/docs/reference/client-libraries) for

## Requirements

Node 16 or higher.
Node 20 or higher.

## Installation

Install the package with:

```
npm i @workos-inc/node
npm install @workos-inc/node
```

## Configuration
Expand Down
62 changes: 62 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
// @ts-check

import eslint from '@eslint/js';
import tseslint from 'typescript-eslint';
import jestPlugin from 'eslint-plugin-jest';
import n from 'eslint-plugin-n';

const ignores = [
'**/*.snap',
'coverage',
'node_modules',
'dist',
'build',
'lib',
];

const tests = ['**/*.spec.{js,ts}'];

export default tseslint.config(
{
ignores,
},
{ linterOptions: { reportUnusedDisableDirectives: 'error' } },
eslint.configs.recommended,
tseslint.configs.recommended,
n.configs['flat/recommended'],
{
rules: {
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-unused-vars': 'off',
'@typescript-eslint/no-require-imports': 'off',
'n/no-missing-import': 'off',
'n/no-unsupported-features/node-builtins': 'off',
},
},
{
files: ['**/*.cjs'],
languageOptions: {
globals: {
require: 'readonly',
module: 'readonly',
__dirname: 'readonly',
__filename: 'readonly',
exports: 'readonly',
process: 'readonly',
},
},
},
{
files: tests,
extends: [jestPlugin.configs['flat/recommended']],
rules: {
'no-undef': 'off',
'jest/no-alias-methods': 'off',
'jest/no-identical-title': 'off',
'jest/no-disabled-tests': 'off',
'jest/no-conditional-expect': 'off',
'jest/valid-expect': 'off',
'jest/expect-expect': 'off',
},
},
);
10 changes: 10 additions & 0 deletions jest-transform-esm.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/* eslint-env node */
const babelJest = require('babel-jest');

module.exports = babelJest.createTransformer({
presets: [
['@babel/preset-env', { targets: { node: 'current' } }],
'@babel/preset-typescript',
],
plugins: ['@babel/plugin-transform-modules-commonjs'],
});
8 changes: 5 additions & 3 deletions jest.config.js → jest.config.cjs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/* eslint-env node */
module.exports = {
clearMocks: true,
resetMocks: true,
Expand All @@ -9,8 +10,9 @@ module.exports = {
setupFilesAfterEnv: ['./setup-jest.ts'],
transform: {
'^.+\\.ts?$': 'ts-jest',
'^.+\\.m?js$': '<rootDir>/jest-transform-esm.cjs',
},
moduleNameMapper: {
'^jose': require.resolve('jose'),
},
transformIgnorePatterns: [
'node_modules/(?!(iron-session|uncrypto|cookie-es|@noble|@scure|jose)/)',
],
};
Loading