From 41d5c25825328d2472f4a910cb3110cac9c49362 Mon Sep 17 00:00:00 2001 From: howmanysmall Date: Fri, 18 Mar 2022 11:12:18 -0600 Subject: [PATCH 1/2] Add types to fix autocomplete. Add types to Roact to allow autocomplete to work. --- src/init.lua | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/init.lua b/src/init.lua index f58d32a5..73c1cdd1 100644 --- a/src/init.lua +++ b/src/init.lua @@ -10,10 +10,21 @@ local RobloxRenderer = require(script.RobloxRenderer) local strict = require(script.strict) local Binding = require(script.Binding) +export type ConfigTable = { + elementTracing: boolean?, + internalTypeChecks: boolean?, + propValidation: boolean?, + typeChecks: boolean?, +} + +export type SetGlobalConfig = (config: ConfigTable) -> () + local robloxReconciler = createReconciler(RobloxRenderer) local reconcilerCompat = createReconcilerCompat(robloxReconciler) -local Roact = strict({ +local setGlobalConfig = GlobalConfig.set :: SetGlobalConfig + +local Roact = { Component = require(script.Component), createElement = require(script.createElement), createFragment = require(script.createFragment), @@ -40,10 +51,11 @@ local Roact = strict({ teardown = reconcilerCompat.teardown, reconcile = reconcilerCompat.reconcile, - setGlobalConfig = GlobalConfig.set, + setGlobalConfig = setGlobalConfig, -- APIs that may change in the future without warning UNSTABLE = {}, -}) +} -return Roact +export type Roact = typeof(Roact) +return strict(Roact, "Roact") :: Roact From 159277ad6d7b5139fb4f7fb42e5423e80cdc9109 Mon Sep 17 00:00:00 2001 From: howmanysmall Date: Fri, 18 Mar 2022 11:19:56 -0600 Subject: [PATCH 2/2] Update CHANGELOG.md --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32f532b9..58350134 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,9 @@ ## Unreleased Changes * Removed the warning for `setState` on unmounted components to eliminate false positive warnings, matching upstream React ([#323](https://github.com/Roblox/roact/pull/323)). +## [1.4.3](https://github.com/Roblox/roact/releases/tag/v1.4.1) (March 18th, 2022) +* Added types to Roact to better support intellisense. + ## [1.4.2](https://github.com/Roblox/roact/releases/tag/v1.4.2) (October 6th, 2021) * Fixed forwardRef doc code referencing React instead of Roact ([#310](https://github.com/Roblox/roact/pull/310)). * Fixed `Listeners can only be disconnected once` from context consumers. ([#320](https://github.com/Roblox/roact/pull/320))