Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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 CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Thanks for your interest in contributing! We welcome all kinds of contributions

### Prerequisites

- [Bun](https://bun.sh/) 1.3+ and Node.js 20.9+
- [Bun](https://bun.sh/) 1.3+ and Node.js 22+

### Setup

Expand Down
2 changes: 1 addition & 1 deletion SETUP.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Prerequisites

- [Bun](https://bun.sh/) 1.3+ and Node.js 20.9+
- [Bun](https://bun.sh/) 1.3+ and Node.js 22+

## Quick Start

Expand Down
4 changes: 2 additions & 2 deletions apps/editor/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@
"devDependencies": {
"@pascal/typescript-config": "*",
"@types/howler": "^2.2.13",
"@types/node": "^22.19.12",
"@types/node": "^26.6.5",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"agentation": "^3.1.2",
"react-grab": "^0.1.50",
"react-grab": "^0.2.0",
"react-scan": "^0.5.7",
"tw-animate-css": "^1.4.0",
"typescript": "7.0.2"
Expand Down
2 changes: 1 addition & 1 deletion apps/ifc-converter/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
},
"devDependencies": {
"@pascal/typescript-config": "*",
"@types/node": "^22.19.12",
"@types/node": "^26.6.5",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@types/three": "^0.184.0",
Expand Down
232 changes: 148 additions & 84 deletions bun.lock

Large diffs are not rendered by default.

7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,22 +28,23 @@
"devDependencies": {
"@biomejs/biome": "^2.4.16",
"@typescript/native-preview": "7.0.0-dev.20260624.1",
"@typescript/typescript6": "6.0.2",
"dotenv-cli": "^11.0.0",
"fast-xml-parser": "^5.11.2",
"turbo": "^2.9.17",
"typescript": "6.0.3",
"typescript": "npm:@typescript/typescript6@6.0.2",
"ultracite": "^7.8.2"
},
"engines": {
"node": ">=20.9.0"
"node": ">=22"
},
"packageManager": "bun@1.4.2",
"overrides": {
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@types/three": "0.184.1",
"next": "16.4.0",
"react-grab": "0.1.50",
"react-grab": "0.2.0",
"three": "0.186.0",
"react": "19.3.0",
"react-dom": "19.3.0",
Expand Down
4 changes: 2 additions & 2 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@
},
"devDependencies": {
"@pascal/typescript-config": "*",
"@types/node": "^22.19.20",
"typescript": "6.0.3"
"@types/node": "^26.6.5",
"typescript": "7.0.2"
},
"dependencies": {
"@modelcontextprotocol/sdk": "^1.30.0"
Expand Down
5 changes: 3 additions & 2 deletions packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@
"dedent": "^1.7.2",
"idb-keyval": "^6.3.0",
"mitt": "^3.0.1",
"nanoid": "^5.1.6",
"nanoid": "^6.0.2",
"polygon-clipping": "0.15.7",
"zod": ">=4.6.7 <4.7",
"zundo": "^2.3.0",
Expand All @@ -143,8 +143,9 @@
"@types/bun": "^1.4.3",
"@types/react": "19.3.0",
"@types/three": "^0.184.0",
"@typescript/typescript6": "6.0.2",
"fake-indexeddb": "^6.2.5",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"keywords": [
"3d",
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/contracts/metadata-scan.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as nodeFs from 'node:fs'
import path from 'node:path'
import ts from 'typescript'
import ts from '@typescript/typescript6'

/**
* Metadata keys a source file reads or writes (R3 coverage for `metadata.*`,
Expand Down
8 changes: 4 additions & 4 deletions packages/editor/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@
"lucide-react": "^1.57.0",
"manifold-3d": "3.5.4",
"mitt": "^3.0.1",
"motion": "^12.34.3",
"nanoid": "^5.1.6",
"pdfkit": "^0.19.1",
"motion": "^14.2.0",
"nanoid": "^6.0.2",
"pdfkit": "^0.20.2",
"tailwind-merge": "^3.7.0",
"three-bvh-csg": "^0.0.18",
"three-mesh-bvh": "~0.9.8",
Expand All @@ -77,7 +77,7 @@
"@types/react-dom": "19.3.0",
"@types/three": "^0.184.0",
"fast-xml-parser": "^5.11.2",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"repository": {
"type": "git",
Expand Down
37 changes: 27 additions & 10 deletions packages/editor/src/lib/floorplan/floorplan-pdfkit-document.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
/// <reference path="./pdfkit-standard-fonts.d.ts" />
import type PdfKitDocument from 'pdfkit'

type PdfKitDocumentInstance = InstanceType<typeof PdfKitDocument>

/** pdfkit 0.20's browser-build export, which @types/pdfkit does not describe. */
type PdfKitStandardFontRegistry = { registerStdFonts?: (...fonts: unknown[]) => void }

type PdfTextOptions = {
align?: 'left' | 'center' | 'right'
maxWidth?: number
Expand Down Expand Up @@ -461,16 +465,29 @@ export async function createFloorplanPdfDocument(
defaultPageSize: readonly [number, number],
options: { title?: string } = {},
) {
const [{ default: PDFDocument }, { default: blobStream }, fonts] = await Promise.all([
import('pdfkit/js/pdfkit.standalone'),
import('blob-stream'),
// an export in the standard fonts beats no export when the font files are unreachable
loadFloorplanPdfFonts().catch((error: unknown) => {
console.warn('[floorplan-export] Falling back to the standard PDF fonts', error)
return null
}),
])
const raw = new PDFDocument({
const [pdfkit, helvetica, helveticaBold, courier, courierBold, { default: blobStream }, fonts] =
await Promise.all([
import('pdfkit'),
import('pdfkit/standard-fonts/Helvetica'),
import('pdfkit/standard-fonts/HelveticaBold'),
import('pdfkit/standard-fonts/Courier'),
import('pdfkit/standard-fonts/CourierBold'),
import('blob-stream'),
// an export in the standard fonts beats no export when the font files are unreachable
loadFloorplanPdfFonts().catch((error: unknown) => {
console.warn('[floorplan-export] Falling back to the standard PDF fonts', error)
return null
}),
])
// The browser build has no standard-font metrics until they are registered, and
// the constructor already sets Helvetica; the Node build loads its own and has no registry.
;(pdfkit as PdfKitStandardFontRegistry).registerStdFonts?.(
helvetica.default,
helveticaBold.default,
courier.default,
courierBold.default,
)
const raw = new pdfkit.default({
autoFirstPage: false,
compress: true,
margin: 0,
Expand Down
5 changes: 5 additions & 0 deletions packages/editor/src/lib/floorplan/pdfkit-standard-fonts.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// pdfkit 0.20 ships these entry points without types, and @types/pdfkit predates them.
declare module 'pdfkit/standard-fonts/*' {
const font: unknown
export default font
}
3 changes: 2 additions & 1 deletion packages/eslint-config/next.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ export const nextJsConfig = [
plugins: {
'react-hooks': pluginReactHooks,
},
settings: { react: { version: 'detect' } },
// eslint-plugin-react's 'detect' calls context.getFilename(), which ESLint 10 removed
settings: { react: { version: '19.3' } },
rules: {
...pluginReactHooks.configs.recommended.rules,
// React scope no longer necessary with new JSX transform.
Expand Down
8 changes: 4 additions & 4 deletions packages/eslint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@
"./react-internal": "./react-internal.js"
},
"devDependencies": {
"@eslint/js": "^9.39.1",
"@eslint/js": "^10.0.1",
"@next/eslint-plugin-next": "16.4.0",
"eslint": "^9.39.1",
"eslint": "^10.12.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-only-warn": "^1.2.1",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-hooks": "^7.1.1",
"eslint-plugin-turbo": "^2.11.8",
"globals": "^16.5.0",
"globals": "^17.13.0",
"typescript": "6.0.3",
"typescript-eslint": "^8.71.2"
}
Expand Down
3 changes: 2 additions & 1 deletion packages/eslint-config/react-internal.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ export const config = [
plugins: {
'react-hooks': pluginReactHooks,
},
settings: { react: { version: 'detect' } },
// eslint-plugin-react's 'detect' calls context.getFilename(), which ESLint 10 removed
settings: { react: { version: '19.3' } },
rules: {
...pluginReactHooks.configs.recommended.rules,
// React scope no longer necessary with new JSX transform.
Expand Down
2 changes: 1 addition & 1 deletion packages/geometry-script/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
"@pascal/typescript-config": "*",
"@types/bun": "^1.4.3",
"@types/three": "^0.184.0",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"repository": {
"type": "git",
Expand Down
2 changes: 1 addition & 1 deletion packages/ifc-converter/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"devDependencies": {
"@pascal/typescript-config": "*",
"@types/bun": "^1.4.3",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"repository": {
"type": "git",
Expand Down
4 changes: 2 additions & 2 deletions packages/mcp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@
"devDependencies": {
"@pascal-app/core": "^1.0.4",
"@pascal/typescript-config": "*",
"@types/node": "^22.19.20",
"typescript": "6.0.3"
"@types/node": "^26.6.5",
"typescript": "7.0.2"
},
"keywords": [
"mcp",
Expand Down
4 changes: 2 additions & 2 deletions packages/nodes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@
"@pascal/typescript-config": "*",
"@react-three/test-renderer": "^9.1.1",
"@types/bun": "^1.4.3",
"@types/node": "^22.19.12",
"@types/node": "^26.6.5",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@types/three": "^0.184.0",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"keywords": [
"pascal",
Expand Down
6 changes: 3 additions & 3 deletions packages/ui/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
"devDependencies": {
"@repo/eslint-config": "*",
"@repo/typescript-config": "*",
"@types/node": "^22.15.3",
"@types/node": "^26.6.5",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"eslint": "^9.39.1",
"typescript": "6.0.3"
"eslint": "^10.12.0",
"typescript": "7.0.2"
},
"dependencies": {
"react": "19.3.0",
Expand Down
4 changes: 2 additions & 2 deletions packages/viewer/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@
"@pascal-app/core": "^1.0.4",
"@pascal/typescript-config": "*",
"@react-three/test-renderer": "^9.1.1",
"@types/node": "^22",
"@types/node": "^26",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@types/three": "^0.184.0",
"typescript": "6.0.3"
"typescript": "7.0.2"
},
"keywords": [
"3d",
Expand Down
2 changes: 1 addition & 1 deletion scripts/fix-node-esm-imports.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { existsSync, readdirSync, readFileSync, writeFileSync } from 'node:fs'
import { dirname, join, resolve } from 'node:path'
import ts from 'typescript'
import ts from '@typescript/typescript6'

const distDir = resolve(process.cwd(), process.argv[2] ?? 'dist')

Expand Down
Loading