From a39752a833074b45cdcd13f4c730692572d6184d Mon Sep 17 00:00:00 2001 From: "duck.__index" <138041510+NormalDuck@users.noreply.github.com> Date: Mon, 12 May 2025 14:11:04 -0700 Subject: [PATCH 1/5] fix: allow components for world.add in typescript --- jecs.d.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jecs.d.ts b/jecs.d.ts index 01239fd..d01bcf4 100644 --- a/jecs.d.ts +++ b/jecs.d.ts @@ -148,7 +148,7 @@ export class World { * @param entity The target entity. * @param component The component (or tag) to add. */ - add(entity: Entity, component: Id): void; + add(entity: Entity, component: Id): void; /** * Assigns a value to a component on the given entity. diff --git a/package-lock.json b/package-lock.json index ba8032d..1dc56e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@rbxts/jecs", - "version": "0.6.0-rc.1", + "version": "0.6.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@rbxts/jecs", - "version": "0.6.0-rc.1", + "version": "0.6.1", "license": "MIT", "devDependencies": { "@rbxts/compiler-types": "^2.3.0-types.1", diff --git a/package.json b/package.json index f3cf774..b83e52c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rbxts/jecs", - "version": "0.6.0", + "version": "0.6.1", "description": "Stupidly fast Entity Component System", "main": "jecs.luau", "repository": { From 06bd909f51de47df5d98f19171fe171101486f23 Mon Sep 17 00:00:00 2001 From: "duck.__index" <138041510+NormalDuck@users.noreply.github.com> Date: Mon, 12 May 2025 14:47:33 -0700 Subject: [PATCH 2/5] fix: add overload for world.entity --- jecs.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/jecs.d.ts b/jecs.d.ts index d01bcf4..e4d2b16 100644 --- a/jecs.d.ts +++ b/jecs.d.ts @@ -120,6 +120,7 @@ export class World { * @returns An entity (Tag) with no data. */ entity(): Tag; + entity(id: number): Tag; /** * Creates a new entity in the first 256 IDs, typically used for static From 2a24b2ffd8c405682cf2a10ce5d816b3e176dd3e Mon Sep 17 00:00:00 2001 From: "duck.__index" <138041510+NormalDuck@users.noreply.github.com> Date: Fri, 16 May 2025 19:52:00 -0700 Subject: [PATCH 3/5] build: downgrade deps to v0.6.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1dc56e1..ee2861d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@rbxts/jecs", - "version": "0.6.1", + "version": "0.6.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@rbxts/jecs", - "version": "0.6.1", + "version": "0.6.0", "license": "MIT", "devDependencies": { "@rbxts/compiler-types": "^2.3.0-types.1", diff --git a/package.json b/package.json index b83e52c..f3cf774 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rbxts/jecs", - "version": "0.6.1", + "version": "0.6.0", "description": "Stupidly fast Entity Component System", "main": "jecs.luau", "repository": { From a0e7bf25ce3913bb2680dbbdf6d2a939137e0363 Mon Sep 17 00:00:00 2001 From: "duck.__index" <138041510+NormalDuck@users.noreply.github.com> Date: Fri, 16 May 2025 20:09:40 -0700 Subject: [PATCH 4/5] fix: world.entity accepts entity instead of number --- jecs.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jecs.d.ts b/jecs.d.ts index e4d2b16..9b53bf5 100644 --- a/jecs.d.ts +++ b/jecs.d.ts @@ -120,7 +120,7 @@ export class World { * @returns An entity (Tag) with no data. */ entity(): Tag; - entity(id: number): Tag; + entity(id: T): InferComponent extends undefined ? Tag : T; /** * Creates a new entity in the first 256 IDs, typically used for static From bdb51e633f2e75de2962848b412274b73516e81a Mon Sep 17 00:00:00 2001 From: "duck.__index" <138041510+NormalDuck@users.noreply.github.com> Date: Fri, 16 May 2025 20:15:53 -0700 Subject: [PATCH 5/5] fix: allow union undefined union to be passed in .add --- jecs.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jecs.d.ts b/jecs.d.ts index 9b53bf5..6047d30 100644 --- a/jecs.d.ts +++ b/jecs.d.ts @@ -149,7 +149,7 @@ export class World { * @param entity The target entity. * @param component The component (or tag) to add. */ - add(entity: Entity, component: Id): void; + add(entity: Entity, component: undefined extends InferComponent ? C : Id): void; /** * Assigns a value to a component on the given entity.