From f17e6762089c33383b471e0f1095f73d2f1cf876 Mon Sep 17 00:00:00 2001 From: Ryan Marganti Date: Sat, 27 Dec 2025 19:53:33 -0500 Subject: [PATCH] =?UTF-8?q?chore:=20biome=20+=20prettier=20=E2=86=92=20oxl?= =?UTF-8?q?int=20+=20oxfmt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yml | 10 +- .github/workflows/publish.yml | 92 ++++----- .github/workflows/test-and-lint.yml | 56 +++--- .prettierrc.json => .oxfmtrc.json | 2 + .oxlintrc.json | 144 ++++++++++++++ .zed/settings.json | 10 + biome.json | 34 ---- codebook.toml | 5 +- package.json | 80 ++++---- packages/bigquery/package.json | 98 +++++----- packages/core/package.json | 74 ++++---- packages/drizzle/package.json | 92 ++++----- packages/in-memory/package.json | 84 ++++----- pnpm-lock.yaml | 280 ++++++++++++++++++---------- 14 files changed, 629 insertions(+), 432 deletions(-) rename .prettierrc.json => .oxfmtrc.json (77%) create mode 100644 .oxlintrc.json delete mode 100644 biome.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fe90a6a..c10a50d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,10 +1,10 @@ name: CI on: - pull_request: - branches: - - "**" + pull_request: + branches: + - "**" jobs: - test-and-lint: - uses: ./.github/workflows/test-and-lint.yml + test-and-lint: + uses: ./.github/workflows/test-and-lint.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 67064d2..0776373 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,55 +1,55 @@ name: Release on: - push: - branches: - - main + push: + branches: + - main concurrency: ${{ github.workflow }}-${{ github.ref }} permissions: - contents: write - pull-requests: write - id-token: write + contents: write + pull-requests: write + id-token: write jobs: - test-and-lint: - uses: ./.github/workflows/test-and-lint.yml - - release: - name: Release - runs-on: ubuntu-latest - needs: test-and-lint - - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - version: 9 - - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: "lts/*" - cache: "pnpm" - registry-url: "https://registry.npmjs.org" - - - name: Install dependencies - run: pnpm install --frozen-lockfile - - - name: Build - run: pnpm run build - - - name: Create Release Pull Request or Publish - id: changesets - uses: changesets/action@v1 - with: - version: pnpm changeset version - publish: pnpm changeset publish - commit: "chore(release): version packages" - env: - GITHUB_TOKEN: ${{ secrets.GH_PAT }} - NPM_CONFIG_PROVENANCE: true + test-and-lint: + uses: ./.github/workflows/test-and-lint.yml + + release: + name: Release + runs-on: ubuntu-latest + needs: test-and-lint + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: "lts/*" + cache: "pnpm" + registry-url: "https://registry.npmjs.org" + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Build + run: pnpm run build + + - name: Create Release Pull Request or Publish + id: changesets + uses: changesets/action@v1 + with: + version: pnpm changeset version + publish: pnpm changeset publish + commit: "chore(release): version packages" + env: + GITHUB_TOKEN: ${{ secrets.GH_PAT }} + NPM_CONFIG_PROVENANCE: true diff --git a/.github/workflows/test-and-lint.yml b/.github/workflows/test-and-lint.yml index 00ee95f..8ea7645 100644 --- a/.github/workflows/test-and-lint.yml +++ b/.github/workflows/test-and-lint.yml @@ -1,42 +1,42 @@ name: Test and Lint on: - workflow_call: + workflow_call: jobs: - test-and-lint: - name: Test and Lint - runs-on: ubuntu-latest + test-and-lint: + name: Test and Lint + runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 + steps: + - name: Checkout code + uses: actions/checkout@v4 - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - version: 9 + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: "lts/*" - cache: "pnpm" + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: "lts/*" + cache: "pnpm" - - name: Install dependencies - run: pnpm install --frozen-lockfile + - name: Install dependencies + run: pnpm install --frozen-lockfile - - name: Check formatting - run: pnpm run format:check + - name: Check formatting + run: pnpm run format:check - - name: Build - run: pnpm run build + - name: Build + run: pnpm run build - - name: Lint - run: pnpm run lint + - name: Lint + run: pnpm run lint - - name: Type check - run: pnpm run typecheck + - name: Type check + run: pnpm run typecheck - - name: Run tests - run: pnpm run test -- --run + - name: Run tests + run: pnpm run test -- --run diff --git a/.prettierrc.json b/.oxfmtrc.json similarity index 77% rename from .prettierrc.json rename to .oxfmtrc.json index d35b64b..3b3bff6 100644 --- a/.prettierrc.json +++ b/.oxfmtrc.json @@ -1,4 +1,6 @@ { + "$schema": "./node_modules/oxfmt/configuration_schema.json", + "printWidth": 80, "tabWidth": 4, "overrides": [ { diff --git a/.oxlintrc.json b/.oxlintrc.json new file mode 100644 index 0000000..3bdb6ee --- /dev/null +++ b/.oxlintrc.json @@ -0,0 +1,144 @@ +{ + "$schema": "./node_modules/oxlint/configuration_schema.json", + "plugins": ["unicorn", "typescript", "oxc"], + "categories": {}, + "rules": { + "constructor-super": "warn", + "for-direction": "warn", + "no-async-promise-executor": "warn", + "no-caller": "warn", + "no-class-assign": "warn", + "no-compare-neg-zero": "warn", + "no-cond-assign": "warn", + "no-const-assign": "warn", + "no-constant-binary-expression": "warn", + "no-constant-condition": "warn", + "no-control-regex": "warn", + "no-debugger": "warn", + "no-delete-var": "warn", + "no-dupe-class-members": "warn", + "no-dupe-else-if": "warn", + "no-dupe-keys": "warn", + "no-duplicate-case": "warn", + "no-empty-character-class": "warn", + "no-empty-pattern": "warn", + "no-empty-static-block": "warn", + "no-eval": "warn", + "no-ex-assign": "warn", + "no-extra-boolean-cast": "warn", + "no-func-assign": "warn", + "no-global-assign": "warn", + "no-import-assign": "warn", + "no-invalid-regexp": "warn", + "no-irregular-whitespace": "warn", + "no-loss-of-precision": "warn", + "no-new-native-nonconstructor": "warn", + "no-nonoctal-decimal-escape": "warn", + "no-obj-calls": "warn", + "no-self-assign": "warn", + "no-setter-return": "warn", + "no-shadow-restricted-names": "warn", + "no-sparse-arrays": "warn", + "no-this-before-super": "warn", + "no-unassigned-vars": "warn", + "no-unsafe-finally": "warn", + "no-unsafe-negation": "warn", + "no-unsafe-optional-chaining": "warn", + "no-unused-expressions": "warn", + "no-unused-labels": "warn", + "no-unused-private-class-members": "warn", + "no-unused-vars": "warn", + "no-useless-backreference": "warn", + "no-useless-catch": "warn", + "no-useless-escape": "warn", + "no-useless-rename": "warn", + "no-with": "warn", + "require-yield": "warn", + "use-isnan": "warn", + "valid-typeof": "warn", + "oxc/bad-array-method-on-arguments": "warn", + "oxc/bad-char-at-comparison": "warn", + "oxc/bad-comparison-sequence": "warn", + "oxc/bad-min-max-func": "warn", + "oxc/bad-object-literal-comparison": "warn", + "oxc/bad-replace-all-arg": "warn", + "oxc/const-comparisons": "warn", + "oxc/double-comparisons": "warn", + "oxc/erasing-op": "warn", + "oxc/missing-throw": "warn", + "oxc/number-arg-out-of-range": "warn", + "oxc/only-used-in-recursion": "warn", + "oxc/uninvoked-array-callback": "warn", + "typescript/await-thenable": "warn", + "typescript/no-array-delete": "warn", + "typescript/no-base-to-string": "warn", + "typescript/no-duplicate-enum-values": "warn", + "typescript/no-duplicate-type-constituents": "warn", + "typescript/no-extra-non-null-assertion": "warn", + "typescript/no-floating-promises": "warn", + "typescript/no-for-in-array": "warn", + "typescript/no-implied-eval": "warn", + "typescript/no-meaningless-void-operator": "warn", + "typescript/no-misused-new": "warn", + "typescript/no-misused-spread": "warn", + "typescript/no-non-null-asserted-optional-chain": "warn", + "typescript/no-redundant-type-constituents": "warn", + "typescript/no-this-alias": "warn", + "typescript/no-unnecessary-parameter-property-assignment": "warn", + "typescript/no-unsafe-declaration-merging": "warn", + "typescript/no-unsafe-unary-minus": "warn", + "typescript/no-useless-empty-export": "warn", + "typescript/no-wrapper-object-types": "warn", + "typescript/prefer-as-const": "warn", + "typescript/require-array-sort-compare": "warn", + "typescript/restrict-template-expressions": "warn", + "typescript/triple-slash-reference": "warn", + "typescript/unbound-method": "warn", + "unicorn/no-await-in-promise-methods": "warn", + "unicorn/no-empty-file": "warn", + "unicorn/no-invalid-fetch-options": "warn", + "unicorn/no-invalid-remove-event-listener": "warn", + "unicorn/no-new-array": "warn", + "unicorn/no-single-promise-in-promise-methods": "warn", + "unicorn/no-thenable": "warn", + "unicorn/no-unnecessary-await": "warn", + "unicorn/no-useless-fallback-in-spread": "warn", + "unicorn/no-useless-length-check": "warn", + "unicorn/no-useless-spread": "warn", + "unicorn/prefer-set-size": "warn", + "unicorn/prefer-string-starts-ends-with": "warn" + }, + "settings": { + "jsx-a11y": { + "polymorphicPropName": null, + "components": {}, + "attributes": {} + }, + "next": { + "rootDir": [] + }, + "react": { + "formComponents": [], + "linkComponents": [], + "version": null + }, + "jsdoc": { + "ignorePrivate": false, + "ignoreInternal": false, + "ignoreReplacesDocs": true, + "overrideReplacesDocs": true, + "augmentsExtendsReplacesDocs": false, + "implementsReplacesDocs": false, + "exemptDestructuredRootsFromChecks": false, + "tagNamePreference": {} + }, + "vitest": { + "typecheck": false + } + }, + "env": { + "builtin": true + }, + "globals": {}, + "ignorePatterns": [] +} diff --git a/.zed/settings.json b/.zed/settings.json index f0ef1cf..3c58469 100644 --- a/.zed/settings.json +++ b/.zed/settings.json @@ -6,6 +6,11 @@ "!eslint", "vtsls", "..." + ], + "formatter": [ + { "code_action": "source.fixAll.oxc" }, + { "code_action": "source.organizeImports" }, + { "language_server": { "name": "oxfmt" } } ] }, "TSX": { @@ -14,6 +19,11 @@ "!eslint", "vtsls", "..." + ], + "formatter": [ + { "code_action": "source.fixAll.oxc" }, + { "code_action": "source.organizeImports" }, + { "language_server": { "name": "oxfmt" } } ] } } diff --git a/biome.json b/biome.json deleted file mode 100644 index 023b191..0000000 --- a/biome.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "$schema": "https://biomejs.dev/schemas/2.3.5/schema.json", - "vcs": { - "enabled": true, - "clientKind": "git", - "useIgnoreFile": true - }, - "files": { - "includes": ["**", "!!**/dist"] - }, - "formatter": { "enabled": false }, - "linter": { - "enabled": true, - "rules": { - "recommended": true, - "suspicious": { - "noExplicitAny": "off" - } - } - }, - "javascript": { - "formatter": { - "quoteStyle": "double" - } - }, - "assist": { - "enabled": true, - "actions": { - "source": { - "organizeImports": "off" - } - } - } -} diff --git a/codebook.toml b/codebook.toml index 3a7a45a..e2da43c 100644 --- a/codebook.toml +++ b/codebook.toml @@ -1,4 +1 @@ -words = [ - "lte", - "neq", -] +words = ["lte", "neq"] diff --git a/package.json b/package.json index 88e37a6..5d6f8bd 100644 --- a/package.json +++ b/package.json @@ -1,42 +1,42 @@ { - "name": "filter-def-monorepo", - "version": "0.0.0", - "private": true, - "description": "Type-safe data filters for TypeScript. Define filters once, get full type inference for filter inputs and results.", - "type": "module", - "license": "MIT", - "homepage": "https://github.com/rmarganti/filter-def#readme", - "bugs": { - "url": "https://github.com/rmarganti/filter-def/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/rmarganti/filter-def.git" - }, - "author": "Ryan Marganti ", - "scripts": { - "build": "pnpm -r run build", - "dev": "pnpm -r --parallel run dev", - "test": "pnpm -r run test", - "bench": "pnpm --filter @filter-def/in-memory exec vitest bench --run", - "format": "prettier --write .", - "format:check": "prettier --check .", - "lint": "pnpm exec biome lint", - "typecheck": "pnpm -r run typecheck", - "changeset": "changeset", - "prepare": "husky" - }, - "devDependencies": { - "@biomejs/biome": "2.3.5", - "@changesets/cli": "^2.29.8", - "@commitlint/cli": "^20.1.0", - "@commitlint/config-conventional": "^20.0.0", - "@faker-js/faker": "^10.1.0", - "@types/node": "^24.10.0", - "husky": "^9.1.7", - "prettier": "^3.6.2", - "tsdown": "^0.16.0", - "typescript": "^5.9.3", - "vitest": "^4.0.7" - } + "name": "filter-def-monorepo", + "version": "0.0.0", + "private": true, + "description": "Type-safe data filters for TypeScript. Define filters once, get full type inference for filter inputs and results.", + "homepage": "https://github.com/rmarganti/filter-def#readme", + "bugs": { + "url": "https://github.com/rmarganti/filter-def/issues" + }, + "license": "MIT", + "author": "Ryan Marganti ", + "repository": { + "type": "git", + "url": "git+https://github.com/rmarganti/filter-def.git" + }, + "type": "module", + "scripts": { + "build": "pnpm -r run build", + "dev": "pnpm -r --parallel run dev", + "test": "pnpm -r run test", + "bench": "pnpm --filter @filter-def/in-memory exec vitest bench --run", + "format": "oxfmt --write .", + "format:check": "oxfmt --check .", + "lint": "pnpm exec oxlint", + "typecheck": "pnpm -r run typecheck", + "changeset": "changeset", + "prepare": "husky" + }, + "devDependencies": { + "@changesets/cli": "^2.29.8", + "@commitlint/cli": "^20.1.0", + "@commitlint/config-conventional": "^20.0.0", + "@faker-js/faker": "^10.1.0", + "@types/node": "^24.10.0", + "husky": "^9.1.7", + "oxfmt": "^0.20.0", + "oxlint": "^1.35.0", + "tsdown": "^0.16.0", + "typescript": "^5.9.3", + "vitest": "^4.0.7" + } } diff --git a/packages/bigquery/package.json b/packages/bigquery/package.json index 3f212dd..65c8257 100644 --- a/packages/bigquery/package.json +++ b/packages/bigquery/package.json @@ -1,53 +1,53 @@ { - "name": "@filter-def/bigquery", - "version": "0.1.0", - "description": "BigQuery adapter for filter-def", - "type": "module", - "license": "MIT", - "homepage": "https://github.com/rmarganti/filter-def#readme", - "bugs": { - "url": "https://github.com/rmarganti/filter-def/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/rmarganti/filter-def.git", - "directory": "packages/bigquery" - }, - "author": "Ryan Marganti ", - "files": [ - "dist" - ], - "main": "./dist/index.cjs", - "module": "./dist/index.mjs", - "types": "./dist/index.d.cts", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" + "name": "@filter-def/bigquery", + "version": "0.1.0", + "description": "BigQuery adapter for filter-def", + "homepage": "https://github.com/rmarganti/filter-def#readme", + "bugs": { + "url": "https://github.com/rmarganti/filter-def/issues" }, - "./package.json": "./package.json" - }, - "scripts": { - "build": "tsdown", - "dev": "tsdown --watch", - "test": "vitest run", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "@filter-def/core": "workspace:*" - }, - "peerDependencies": { - "@google-cloud/bigquery": ">=7.0.0" - }, - "peerDependenciesMeta": { - "@google-cloud/bigquery": { - "optional": true + "license": "MIT", + "author": "Ryan Marganti ", + "repository": { + "type": "git", + "url": "git+https://github.com/rmarganti/filter-def.git", + "directory": "packages/bigquery" + }, + "files": [ + "dist" + ], + "type": "module", + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.cts", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + }, + "./package.json": "./package.json" + }, + "scripts": { + "build": "tsdown", + "dev": "tsdown --watch", + "test": "vitest run", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "@filter-def/core": "workspace:*" + }, + "devDependencies": { + "google-auth-library": "^10.5.0", + "tsdown": "^0.16.0", + "typescript": "^5.9.3", + "vitest": "^4.0.7" + }, + "peerDependencies": { + "@google-cloud/bigquery": ">=7.0.0" + }, + "peerDependenciesMeta": { + "@google-cloud/bigquery": { + "optional": true + } } - }, - "devDependencies": { - "google-auth-library": "^10.5.0", - "tsdown": "^0.16.0", - "typescript": "^5.9.3", - "vitest": "^4.0.7" - } } diff --git a/packages/core/package.json b/packages/core/package.json index fb80eb4..8a75c69 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,40 +1,40 @@ { - "name": "@filter-def/core", - "version": "0.2.0", - "description": "Core types and utilities for filter-def", - "type": "module", - "license": "MIT", - "homepage": "https://github.com/rmarganti/filter-def#readme", - "bugs": { - "url": "https://github.com/rmarganti/filter-def/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/rmarganti/filter-def.git", - "directory": "packages/core" - }, - "author": "Ryan Marganti ", - "files": [ - "dist" - ], - "main": "./dist/index.cjs", - "module": "./dist/index.mjs", - "types": "./dist/index.d.cts", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" + "name": "@filter-def/core", + "version": "0.2.0", + "description": "Core types and utilities for filter-def", + "homepage": "https://github.com/rmarganti/filter-def#readme", + "bugs": { + "url": "https://github.com/rmarganti/filter-def/issues" }, - "./package.json": "./package.json" - }, - "scripts": { - "build": "tsdown", - "dev": "tsdown --watch", - "typecheck": "tsc --noEmit" - }, - "devDependencies": { - "tsdown": "^0.16.0", - "typescript": "^5.9.3", - "vitest": "^4.0.7" - } + "license": "MIT", + "author": "Ryan Marganti ", + "repository": { + "type": "git", + "url": "git+https://github.com/rmarganti/filter-def.git", + "directory": "packages/core" + }, + "files": [ + "dist" + ], + "type": "module", + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.cts", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + }, + "./package.json": "./package.json" + }, + "scripts": { + "build": "tsdown", + "dev": "tsdown --watch", + "typecheck": "tsc --noEmit" + }, + "devDependencies": { + "tsdown": "^0.16.0", + "typescript": "^5.9.3", + "vitest": "^4.0.7" + } } diff --git a/packages/drizzle/package.json b/packages/drizzle/package.json index 33687f5..87c057e 100644 --- a/packages/drizzle/package.json +++ b/packages/drizzle/package.json @@ -1,49 +1,49 @@ { - "name": "@filter-def/drizzle", - "version": "0.2.0", - "description": "Drizzle ORM adapter for filter-def", - "type": "module", - "license": "MIT", - "homepage": "https://github.com/rmarganti/filter-def#readme", - "bugs": { - "url": "https://github.com/rmarganti/filter-def/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/rmarganti/filter-def.git", - "directory": "packages/drizzle" - }, - "author": "Ryan Marganti ", - "files": [ - "dist" - ], - "main": "./dist/index.cjs", - "module": "./dist/index.mjs", - "types": "./dist/index.d.cts", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" + "name": "@filter-def/drizzle", + "version": "0.2.0", + "description": "Drizzle ORM adapter for filter-def", + "homepage": "https://github.com/rmarganti/filter-def#readme", + "bugs": { + "url": "https://github.com/rmarganti/filter-def/issues" }, - "./package.json": "./package.json" - }, - "scripts": { - "build": "tsdown", - "dev": "tsdown --watch", - "test": "vitest run", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "@filter-def/core": "workspace:*" - }, - "peerDependencies": { - "drizzle-orm": ">=0.30.0" - }, - "devDependencies": { - "@electric-sql/pglite": "^0.2.17", - "drizzle-orm": "^0.44.2", - "tsdown": "^0.16.0", - "typescript": "^5.9.3", - "vitest": "^4.0.7" - } + "license": "MIT", + "author": "Ryan Marganti ", + "repository": { + "type": "git", + "url": "git+https://github.com/rmarganti/filter-def.git", + "directory": "packages/drizzle" + }, + "files": [ + "dist" + ], + "type": "module", + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.cts", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + }, + "./package.json": "./package.json" + }, + "scripts": { + "build": "tsdown", + "dev": "tsdown --watch", + "test": "vitest run", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "@filter-def/core": "workspace:*" + }, + "devDependencies": { + "@electric-sql/pglite": "^0.2.17", + "drizzle-orm": "^0.44.2", + "tsdown": "^0.16.0", + "typescript": "^5.9.3", + "vitest": "^4.0.7" + }, + "peerDependencies": { + "drizzle-orm": ">=0.30.0" + } } diff --git a/packages/in-memory/package.json b/packages/in-memory/package.json index 82bc8f8..cf38ef9 100644 --- a/packages/in-memory/package.json +++ b/packages/in-memory/package.json @@ -1,45 +1,45 @@ { - "name": "@filter-def/in-memory", - "version": "0.2.0", - "description": "In-memory filtering for filter-def", - "type": "module", - "license": "MIT", - "homepage": "https://github.com/rmarganti/filter-def#readme", - "bugs": { - "url": "https://github.com/rmarganti/filter-def/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/rmarganti/filter-def.git", - "directory": "packages/in-memory" - }, - "author": "Ryan Marganti ", - "files": [ - "dist" - ], - "main": "./dist/index.cjs", - "module": "./dist/index.mjs", - "types": "./dist/index.d.cts", - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.cjs" + "name": "@filter-def/in-memory", + "version": "0.2.0", + "description": "In-memory filtering for filter-def", + "homepage": "https://github.com/rmarganti/filter-def#readme", + "bugs": { + "url": "https://github.com/rmarganti/filter-def/issues" }, - "./package.json": "./package.json" - }, - "scripts": { - "build": "tsdown", - "dev": "tsdown --watch", - "test": "vitest", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "@filter-def/core": "workspace:*" - }, - "devDependencies": { - "@faker-js/faker": "^10.1.0", - "tsdown": "^0.16.0", - "typescript": "^5.9.3", - "vitest": "^4.0.7" - } + "license": "MIT", + "author": "Ryan Marganti ", + "repository": { + "type": "git", + "url": "git+https://github.com/rmarganti/filter-def.git", + "directory": "packages/in-memory" + }, + "files": [ + "dist" + ], + "type": "module", + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.cts", + "exports": { + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.cjs" + }, + "./package.json": "./package.json" + }, + "scripts": { + "build": "tsdown", + "dev": "tsdown --watch", + "test": "vitest", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "@filter-def/core": "workspace:*" + }, + "devDependencies": { + "@faker-js/faker": "^10.1.0", + "tsdown": "^0.16.0", + "typescript": "^5.9.3", + "vitest": "^4.0.7" + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5fe5fa6..447ec35 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,9 +8,6 @@ importers: .: devDependencies: - '@biomejs/biome': - specifier: 2.3.5 - version: 2.3.5 '@changesets/cli': specifier: ^2.29.8 version: 2.29.8(@types/node@24.10.1) @@ -29,9 +26,12 @@ importers: husky: specifier: ^9.1.7 version: 9.1.7 - prettier: - specifier: ^3.6.2 - version: 3.6.2 + oxfmt: + specifier: ^0.20.0 + version: 0.20.0 + oxlint: + specifier: ^1.35.0 + version: 1.35.0 tsdown: specifier: ^0.16.0 version: 0.16.3(ms@2.1.3)(typescript@5.9.3) @@ -148,59 +148,6 @@ packages: resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} engines: {node: '>=6.9.0'} - '@biomejs/biome@2.3.5': - resolution: {integrity: sha512-HvLhNlIlBIbAV77VysRIBEwp55oM/QAjQEin74QQX9Xb259/XP/D5AGGnZMOyF1el4zcvlNYYR3AyTMUV3ILhg==} - engines: {node: '>=14.21.3'} - hasBin: true - - '@biomejs/cli-darwin-arm64@2.3.5': - resolution: {integrity: sha512-fLdTur8cJU33HxHUUsii3GLx/TR0BsfQx8FkeqIiW33cGMtUD56fAtrh+2Fx1uhiCsVZlFh6iLKUU3pniZREQw==} - engines: {node: '>=14.21.3'} - cpu: [arm64] - os: [darwin] - - '@biomejs/cli-darwin-x64@2.3.5': - resolution: {integrity: sha512-qpT8XDqeUlzrOW8zb4k3tjhT7rmvVRumhi2657I2aGcY4B+Ft5fNwDdZGACzn8zj7/K1fdWjgwYE3i2mSZ+vOA==} - engines: {node: '>=14.21.3'} - cpu: [x64] - os: [darwin] - - '@biomejs/cli-linux-arm64-musl@2.3.5': - resolution: {integrity: sha512-eGUG7+hcLgGnMNl1KHVZUYxahYAhC462jF/wQolqu4qso2MSk32Q+QrpN7eN4jAHAg7FUMIo897muIhK4hXhqg==} - engines: {node: '>=14.21.3'} - cpu: [arm64] - os: [linux] - - '@biomejs/cli-linux-arm64@2.3.5': - resolution: {integrity: sha512-u/pybjTBPGBHB66ku4pK1gj+Dxgx7/+Z0jAriZISPX1ocTO8aHh8x8e7Kb1rB4Ms0nA/SzjtNOVJ4exVavQBCw==} - engines: {node: '>=14.21.3'} - cpu: [arm64] - os: [linux] - - '@biomejs/cli-linux-x64-musl@2.3.5': - resolution: {integrity: sha512-awVuycTPpVTH/+WDVnEEYSf6nbCBHf/4wB3lquwT7puhNg8R4XvonWNZzUsfHZrCkjkLhFH/vCZK5jHatD9FEg==} - engines: {node: '>=14.21.3'} - cpu: [x64] - os: [linux] - - '@biomejs/cli-linux-x64@2.3.5': - resolution: {integrity: sha512-XrIVi9YAW6ye0CGQ+yax0gLfx+BFOtKaNX74n+xHWla6Cl6huUmcKNO7HPx7BiKnJUzrxXY1qYlm7xMvi08X4g==} - engines: {node: '>=14.21.3'} - cpu: [x64] - os: [linux] - - '@biomejs/cli-win32-arm64@2.3.5': - resolution: {integrity: sha512-DlBiMlBZZ9eIq4H7RimDSGsYcOtfOIfZOaI5CqsWiSlbTfqbPVfWtCf92wNzx8GNMbu1s7/g3ZZESr6+GwM/SA==} - engines: {node: '>=14.21.3'} - cpu: [arm64] - os: [win32] - - '@biomejs/cli-win32-x64@2.3.5': - resolution: {integrity: sha512-nUmR8gb6yvrKhtRgzwo/gDimPwnO5a4sCydf8ZS2kHIJhEmSmk+STsusr1LHTuM//wXppBawvSQi2xFXJCdgKQ==} - engines: {node: '>=14.21.3'} - cpu: [x64] - os: [win32] - '@changesets/apply-release-plan@7.0.14': resolution: {integrity: sha512-ddBvf9PHdy2YY0OUiEl3TV78mH9sckndJR14QAt87KLEbIov81XO0q0QAmvooBxXlqRRP8I9B7XOzZwQG7JkWA==} @@ -579,6 +526,86 @@ packages: '@oxc-project/types@0.96.0': resolution: {integrity: sha512-r/xkmoXA0xEpU6UGtn18CNVjXH6erU3KCpCDbpLmbVxBFor1U9MqN5Z2uMmCHJuXjJzlnDR+hWY+yPoLo8oHDw==} + '@oxfmt/darwin-arm64@0.20.0': + resolution: {integrity: sha512-bjR5dqvrd9gxKYfYR0ljUu3/T3+TuDVWcwA7d+tsfmx9lqidlw3zhgBTblnjF1mrd1zkPMoc5zzq86GeSEt1cA==} + cpu: [arm64] + os: [darwin] + + '@oxfmt/darwin-x64@0.20.0': + resolution: {integrity: sha512-esUDes8FlJX3IY4TVjFLgZrnZlIIyPDlhkCaHgGR3+z2eHFZOvQu68kTSpZLCEJmGXdSpU5rlveycQ6n8tk9ew==} + cpu: [x64] + os: [darwin] + + '@oxfmt/linux-arm64-gnu@0.20.0': + resolution: {integrity: sha512-irE0RO9B0R6ziQE6kUVZtZ6IuTdRyuumn1cPWhDfpa0XUa5sE0ly8pjVsvJbj/J9qerVtidU05txeXBB5CirQg==} + cpu: [arm64] + os: [linux] + + '@oxfmt/linux-arm64-musl@0.20.0': + resolution: {integrity: sha512-eXPBLwYJm26DCmwMwhelEwQMRwuGNaYhYZOhd+CYYsmVoF+h6L6dtjwj0Ovuu0Gqh18EL8vfsaoUvb+jr3vEBg==} + cpu: [arm64] + os: [linux] + + '@oxfmt/linux-x64-gnu@0.20.0': + resolution: {integrity: sha512-dTPW38Hjgb7LoD2mNgyQGBaJ1hu5YgPrxImhl5Eb04eiws+ETCM0wrb2TWGduA+Nv3rHKn3vZEkMTEjklZXgRw==} + cpu: [x64] + os: [linux] + + '@oxfmt/linux-x64-musl@0.20.0': + resolution: {integrity: sha512-b4duw9JGDK/kZoqrPNU9tBOOZQdUW8KJPZ7gW7z54X1eGSqCJ1PT0XLNmZ7SOA1BzQwQ0a3qmQWfFVOsH3a5bw==} + cpu: [x64] + os: [linux] + + '@oxfmt/win32-arm64@0.20.0': + resolution: {integrity: sha512-XAzvBhw4K+Fe16dBaFgYAdob9WaM8RYEXl0ibbm5NlNaQEq+5bH9xwc0oaYlHFnLfcgXWmn9ceTAYqNlONQRNA==} + cpu: [arm64] + os: [win32] + + '@oxfmt/win32-x64@0.20.0': + resolution: {integrity: sha512-fkJqHbJaoOMRmrjHSljyb4/7BgXO3xPLBsJSFGtm3mpfW0HHFbAKvd4/6njhqJz9KY+b3RWP1WssjFshcqQQ4w==} + cpu: [x64] + os: [win32] + + '@oxlint/darwin-arm64@1.35.0': + resolution: {integrity: sha512-ieiYVHkNZPo77Hgrxav595wGS4rRNKuDNrljf+4xhwpJsddrxMpM64IQUf2IvR3MhK4FxdGzhhB6OVmGVHY5/w==} + cpu: [arm64] + os: [darwin] + + '@oxlint/darwin-x64@1.35.0': + resolution: {integrity: sha512-1jNHu3j66X5jKySvgtE+jGtjx4ye+xioAucVTi2IuROZO6keK2YG74pnD+9FT+DpWZAtWRZGoW0r0x6aN9sEEg==} + cpu: [x64] + os: [darwin] + + '@oxlint/linux-arm64-gnu@1.35.0': + resolution: {integrity: sha512-T1lc0UaYbTxZyqVpLfC7eipbauNG8pBpkaZEW4JGz8Y68rxTH7d9s+CF0zxUxNr5RCtcmT669RLVjQT7VrKVLg==} + cpu: [arm64] + os: [linux] + + '@oxlint/linux-arm64-musl@1.35.0': + resolution: {integrity: sha512-7Wv5Pke9kwWKFycUziSHsmi3EM0389TLzraB0KE/MArrKxx30ycwfJ5PYoMj9ERoW+Ybs0txdaOF/xJy/XyYkg==} + cpu: [arm64] + os: [linux] + + '@oxlint/linux-x64-gnu@1.35.0': + resolution: {integrity: sha512-HDMPOzyVVy+rQl3H7UOq8oGHt7m1yaiWCanlhAu4jciK8dvXeO9OG/OQd74lD/h05IcJh93pCLEJ3wWOG8hTiQ==} + cpu: [x64] + os: [linux] + + '@oxlint/linux-x64-musl@1.35.0': + resolution: {integrity: sha512-kAPBBsUOM3HQQ6n3nnZauvFR9EoXqCSoj4O3OSXXarzsRTiItNrHabVUwxeswZEc+xMzQNR0FHEWg/d4QAAWLw==} + cpu: [x64] + os: [linux] + + '@oxlint/win32-arm64@1.35.0': + resolution: {integrity: sha512-qrpBkkOASS0WT8ra9xmBRXOEliN6D/MV9JhI/68lFHrtLhfFuRwg4AjzjxrCWrQCnQ0WkvAVpJzu73F4ICLYZw==} + cpu: [arm64] + os: [win32] + + '@oxlint/win32-x64@1.35.0': + resolution: {integrity: sha512-yPFcj6umrhusnG/kMS5wh96vblsqZ0kArQJS+7kEOSJDrH+DsFWaDCsSRF8U6gmSmZJ26KVMU3C3TMpqDN4M1g==} + cpu: [x64] + os: [win32] + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -1552,6 +1579,21 @@ packages: outdent@0.5.0: resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + oxfmt@0.20.0: + resolution: {integrity: sha512-+7f8eV8iaK3tENN/FUVxZM1g78HjPehybN8/+/dvEA1O893Dcvk6O7/Q1wTQOHMD7wvdwWdujKl+Uo8QMiKDrQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + + oxlint@1.35.0: + resolution: {integrity: sha512-QDX1aUgaiqznkGfTM2qHwva2wtKqhVoqPSVXrnPz+yLUhlNadikD3QRuRtppHl7WGuy3wG6nKAuR8lash3aWSg==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + oxlint-tsgolint: '>=0.10.0' + peerDependenciesMeta: + oxlint-tsgolint: + optional: true + p-filter@2.1.0: resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} engines: {node: '>=8'} @@ -1641,11 +1683,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.6.2: - resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} - engines: {node: '>=14'} - hasBin: true - quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} @@ -1838,6 +1875,10 @@ packages: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} + tinypool@2.0.0: + resolution: {integrity: sha512-/RX9RzeH2xU5ADE7n2Ykvmi9ED3FBGPAjw9u3zucrNNaEBIO0HPSYgL0NT7+3p147ojeSdaVu08F6hjpv31HJg==} + engines: {node: ^20.0.0 || >=22.0.0} + tinyrainbow@3.0.3: resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} engines: {node: '>=14.0.0'} @@ -2061,41 +2102,6 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@biomejs/biome@2.3.5': - optionalDependencies: - '@biomejs/cli-darwin-arm64': 2.3.5 - '@biomejs/cli-darwin-x64': 2.3.5 - '@biomejs/cli-linux-arm64': 2.3.5 - '@biomejs/cli-linux-arm64-musl': 2.3.5 - '@biomejs/cli-linux-x64': 2.3.5 - '@biomejs/cli-linux-x64-musl': 2.3.5 - '@biomejs/cli-win32-arm64': 2.3.5 - '@biomejs/cli-win32-x64': 2.3.5 - - '@biomejs/cli-darwin-arm64@2.3.5': - optional: true - - '@biomejs/cli-darwin-x64@2.3.5': - optional: true - - '@biomejs/cli-linux-arm64-musl@2.3.5': - optional: true - - '@biomejs/cli-linux-arm64@2.3.5': - optional: true - - '@biomejs/cli-linux-x64-musl@2.3.5': - optional: true - - '@biomejs/cli-linux-x64@2.3.5': - optional: true - - '@biomejs/cli-win32-arm64@2.3.5': - optional: true - - '@biomejs/cli-win32-x64@2.3.5': - optional: true - '@changesets/apply-release-plan@7.0.14': dependencies: '@changesets/config': 3.1.2 @@ -2558,6 +2564,54 @@ snapshots: '@oxc-project/types@0.96.0': {} + '@oxfmt/darwin-arm64@0.20.0': + optional: true + + '@oxfmt/darwin-x64@0.20.0': + optional: true + + '@oxfmt/linux-arm64-gnu@0.20.0': + optional: true + + '@oxfmt/linux-arm64-musl@0.20.0': + optional: true + + '@oxfmt/linux-x64-gnu@0.20.0': + optional: true + + '@oxfmt/linux-x64-musl@0.20.0': + optional: true + + '@oxfmt/win32-arm64@0.20.0': + optional: true + + '@oxfmt/win32-x64@0.20.0': + optional: true + + '@oxlint/darwin-arm64@1.35.0': + optional: true + + '@oxlint/darwin-x64@1.35.0': + optional: true + + '@oxlint/linux-arm64-gnu@1.35.0': + optional: true + + '@oxlint/linux-arm64-musl@1.35.0': + optional: true + + '@oxlint/linux-x64-gnu@1.35.0': + optional: true + + '@oxlint/linux-x64-musl@1.35.0': + optional: true + + '@oxlint/win32-arm64@1.35.0': + optional: true + + '@oxlint/win32-x64@1.35.0': + optional: true + '@pkgjs/parseargs@0.11.0': optional: true @@ -3334,6 +3388,30 @@ snapshots: outdent@0.5.0: {} + oxfmt@0.20.0: + dependencies: + tinypool: 2.0.0 + optionalDependencies: + '@oxfmt/darwin-arm64': 0.20.0 + '@oxfmt/darwin-x64': 0.20.0 + '@oxfmt/linux-arm64-gnu': 0.20.0 + '@oxfmt/linux-arm64-musl': 0.20.0 + '@oxfmt/linux-x64-gnu': 0.20.0 + '@oxfmt/linux-x64-musl': 0.20.0 + '@oxfmt/win32-arm64': 0.20.0 + '@oxfmt/win32-x64': 0.20.0 + + oxlint@1.35.0: + optionalDependencies: + '@oxlint/darwin-arm64': 1.35.0 + '@oxlint/darwin-x64': 1.35.0 + '@oxlint/linux-arm64-gnu': 1.35.0 + '@oxlint/linux-arm64-musl': 1.35.0 + '@oxlint/linux-x64-gnu': 1.35.0 + '@oxlint/linux-x64-musl': 1.35.0 + '@oxlint/win32-arm64': 1.35.0 + '@oxlint/win32-x64': 1.35.0 + p-filter@2.1.0: dependencies: p-map: 2.1.0 @@ -3406,8 +3484,6 @@ snapshots: prettier@2.8.8: {} - prettier@3.6.2: {} - quansync@0.2.11: {} queue-microtask@1.2.3: {} @@ -3613,6 +3689,8 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 + tinypool@2.0.0: {} + tinyrainbow@3.0.3: {} to-regex-range@5.0.1: