From 12ebbec628d3dfe9db0c31325cc943cef3658634 Mon Sep 17 00:00:00 2001 From: christopher-buss Date: Tue, 25 Jun 2024 13:19:13 +0100 Subject: [PATCH] fix: update relevant files to use `.luau` --- .editorconfig | 2 +- .npmignore | 8 +- .styluaignore | 2 +- DEVIATIONS.md | 2 +- WorkspaceStatic/jest.config.luau | 2 +- .../jest/matchers/createConsoleMatcher.luau | 2 +- bin/ci-benchmarks.sh | 12 +- bin/ci.sh | 4 +- bin/convert.sh | 4 +- bin/run-benchmarks.py | 2 +- bin/testing.sh | 16 +- bin/upstream-tag.sh | 6 +- js-to-lua.config.js | 32 ++-- modules/jest-react/.npmignore | 8 +- modules/react-cache/.npmignore | 8 +- modules/react-cache/package.json | 2 +- modules/react-debug-tools/.npmignore | 8 +- modules/react-debug-tools/package.json | 2 +- modules/react-devtools-extensions/.npmignore | 8 +- .../react-devtools-extensions/package.json | 2 +- modules/react-devtools-shared/.npmignore | 8 +- modules/react-devtools-shared/package.json | 2 +- .../src/__tests__/store.spec.luau | 2 +- modules/react-is/.npmignore | 8 +- modules/react-is/package.json | 2 +- modules/react-noop-renderer/.npmignore | 8 +- modules/react-noop-renderer/README.md | 6 +- .../package(placeholder).json | 2 +- modules/react-reconciler/.npmignore | 8 +- modules/react-reconciler/package.json | 2 +- .../src/ReactChildFiber.new.luau | 6 +- .../react-reconciler/src/ReactFiber.new.luau | 4 +- .../src/ReactFiberBeginWork.new.luau | 40 ++--- .../src/ReactFiberClassComponent.new.luau | 14 +- .../src/ReactFiberCommitWork.new.luau | 18 +-- .../src/ReactFiberCompleteWork.new.luau | 18 +-- .../src/ReactFiberContext.new.luau | 2 +- .../src/ReactFiberHooks.new.luau | 10 +- .../src/ReactFiberHostContext.new.luau | 2 +- .../src/ReactFiberHydrationContext.new.luau | 4 +- .../react-reconciler/src/ReactFiberLane.luau | 2 +- .../src/ReactFiberNewContext.new.luau | 6 +- .../src/ReactFiberReconciler.luau | 2 +- .../src/ReactFiberReconciler.new.luau | 16 +- .../src/ReactFiberRoot.new.luau | 4 +- .../src/ReactFiberSuspenseContext.new.luau | 2 +- .../src/ReactFiberThrow.new.luau | 12 +- .../src/ReactFiberTreeReflection.luau | 2 +- .../src/ReactFiberUnwindWork.new.luau | 18 +-- .../src/ReactFiberWorkLoop.new.luau | 30 ++-- .../src/ReactUpdateQueue.new.luau | 8 +- .../SchedulerWithReactIntegration.new.luau | 2 +- .../ReactComponentLifeCycle.roblox.spec.luau | 2 +- .../ReactFiberContext-internal.spec.luau | 4 +- .../ReactFiberDevToolsHook-internal.spec.luau | 2 +- .../__tests__/ReactFiberLane.roblox.spec.luau | 2 +- .../__tests__/ReactFiberRoot.roblox.spec.luau | 2 +- .../ReactFiberStack-test.roblox.spec.luau | 2 +- ...actFiberSuspenseComponent.roblox.spec.luau | 2 +- ...ReactFiberSuspenseContext.roblox.spec.luau | 4 +- .../ReactHooksWithNoopRenderer.spec.luau | 48 +++--- .../ReactUpdateQueue.roblox.spec.luau | 4 +- modules/react-roblox/.npmignore | 8 +- modules/react-roblox/package.json | 4 +- .../react-roblox/src/client/ReactRoblox.luau | 4 +- .../src/client/ReactRobloxComponent.luau | 4 +- .../src/client/ReactRobloxComponentTree.luau | 34 ++-- .../src/client/ReactRobloxHostConfig.luau | 152 ++++++++++-------- .../src/client/ReactRobloxRoot.luau | 26 +-- .../__tests__/ReactRobloxFiber.spec.luau | 2 +- .../client/roblox/RobloxComponentProps.luau | 2 +- modules/react-roblox/src/init.luau | 2 +- modules/react-shallow-renderer/.npmignore | 8 +- modules/react-shallow-renderer/package.json | 4 +- modules/react-test-renderer/.npmignore | 8 +- modules/react-test-renderer/package.json | 4 +- modules/react/.npmignore | 8 +- modules/react/package.json | 2 +- modules/react/src/React.luau | 4 +- modules/react/src/ReactBinding.roblox.luau | 2 +- modules/react/src/ReactCreateRef.luau | 2 +- .../src/__tests__/ReactBinding.spec.luau | 2 +- .../ReactElementValidator-internal.spec.luau | 2 +- .../src/__tests__/createSignal.spec.luau | 2 +- modules/roact-compat/.npmignore | 8 +- modules/roact-compat/package.json | 4 +- modules/scheduler/.npmignore | 8 +- modules/scheduler/README.md | 4 +- modules/scheduler/package.json | 4 +- .../scheduler/src/SchedulerHostConfig.luau | 2 +- modules/scheduler/src/unstable_mock.luau | 2 +- modules/shared/.npmignore | 8 +- modules/shared/README.md | 6 +- modules/shared/package.json | 4 +- modules/shared/src/PropMarkers/Change.luau | 2 +- modules/shared/src/PropMarkers/Event.luau | 2 +- modules/shared/src/PropMarkers/Tag.luau | 2 +- .../PropMarkers/__tests__/Change.spec.luau | 2 +- .../src/PropMarkers/__tests__/Event.spec.luau | 2 +- .../shared/src/ReactComponentStackFrame.luau | 4 +- modules/shared/src/ReactElementType.luau | 2 +- modules/shared/src/ReactTypes.luau | 14 +- modules/shared/src/Type.roblox.luau | 2 +- .../__tests__/ErrorHandling.roblox.spec.luau | 2 +- .../ReactComponentStackFrame.roblox.spec.luau | 56 +++---- modules/shared/src/checkPropTypes.luau | 2 +- modules/shared/src/getComponentName.luau | 2 +- modules/shared/src/init.luau | 14 +- .../shared/src/invokeGuardedCallbackImpl.luau | 2 +- scripts/remove-tests.sh | 4 +- 110 files changed, 474 insertions(+), 450 deletions(-) diff --git a/.editorconfig b/.editorconfig index e2e14ea4..32c83306 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,6 +1,6 @@ root = true -[*.lua] +[*.luau] end_of_line = lf charset = utf-8 trim_trailing_whitespace = true diff --git a/.npmignore b/.npmignore index f83e8cf8..06d16b6d 100644 --- a/.npmignore +++ b/.npmignore @@ -15,14 +15,14 @@ /*.md /*.tgz -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/.styluaignore b/.styluaignore index 2c8a1314..f54fc13f 100644 --- a/.styluaignore +++ b/.styluaignore @@ -1 +1 @@ -*.snap.lua \ No newline at end of file +*.snap.luau \ No newline at end of file diff --git a/DEVIATIONS.md b/DEVIATIONS.md index 076da610..d810f72b 100644 --- a/DEVIATIONS.md +++ b/DEVIATIONS.md @@ -323,7 +323,7 @@ This would be a simple compatibility layer that should require very little maint #### Implemented Alignment -The `createFragment` function described above was added to React.lua in [#92](https://github.com/Roblox/roact-alignment/pull/92/files). +The `createFragment` function described above was added to React.luau in [#92](https://github.com/Roblox/roact-alignment/pull/92/files). ### Ref Forwarding diff --git a/WorkspaceStatic/jest.config.luau b/WorkspaceStatic/jest.config.luau index 2ce37026..6bdd032a 100644 --- a/WorkspaceStatic/jest.config.luau +++ b/WorkspaceStatic/jest.config.luau @@ -1,6 +1,6 @@ local Workspace = script.Parent --- In case we need to specify a custom testSetupFile for a project, we need to do that in in a separate jest.config.lua file that's in the project's root folder. +-- In case we need to specify a custom testSetupFile for a project, we need to do that in in a separate jest.config.luau file that's in the project's root folder. -- Therefore we specify the project here and provide it to the "projects" field in this config file. -- We also need to add the project to the "testPathIgnorePatterns" field so that Jest doesn't try to run the project's tests again. local projectsWithCustomJestConfig = { diff --git a/WorkspaceStatic/jest/matchers/createConsoleMatcher.luau b/WorkspaceStatic/jest/matchers/createConsoleMatcher.luau index 9e3070d7..5b5b060f 100644 --- a/WorkspaceStatic/jest/matchers/createConsoleMatcher.luau +++ b/WorkspaceStatic/jest/matchers/createConsoleMatcher.luau @@ -61,7 +61,7 @@ local function normalizeCodeLocInfo(str) -- ROBLOX deviation: In roblox/luau, we're using the stack frame from luau, -- which looks like: - -- in Component (at ModulePath.FileName.lua:123) + -- in Component (at ModulePath.FileName.luau:123) return (string.gsub(str, "\n in ([%w%-%._]+)[^\n]*", "\n in %1 (at **)")) end diff --git a/bin/ci-benchmarks.sh b/bin/ci-benchmarks.sh index 9f74c3d6..45eef3d9 100755 --- a/bin/ci-benchmarks.sh +++ b/bin/ci-benchmarks.sh @@ -13,11 +13,11 @@ roblox-cli analyze tests.project.json selene --version selene --config selene.toml modules/ stylua --version -stylua -c modules -g "*[a-bdh-km-oquvyz].lua" +stylua -c modules -g "*[a-bdh-km-oquvyz].luau" echo "Run benchmarks" -robloxdev-cli run --load.model model.rbxm --run bin/run-first-render-benchmark.lua --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 -robloxdev-cli run --load.model model.rbxm --run bin/run-frame-rate-benchmark.lua --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 -robloxdev-cli run --load.model model.rbxm --run bin/run-deep-tree-benchmark.lua --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 -robloxdev-cli run --load.model model.rbxm --run bin/run-wide-tree-benchmark.lua --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 -robloxdev-cli run --load.model model.rbxm --run bin/run-sierpinski-triangle-benchmark.lua --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 +robloxdev-cli run --load.model model.rbxm --run bin/run-first-render-benchmark.luau --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 +robloxdev-cli run --load.model model.rbxm --run bin/run-frame-rate-benchmark.luau --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 +robloxdev-cli run --load.model model.rbxm --run bin/run-deep-tree-benchmark.luau --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 +robloxdev-cli run --load.model model.rbxm --run bin/run-wide-tree-benchmark.luau --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 +robloxdev-cli run --load.model model.rbxm --run bin/run-sierpinski-triangle-benchmark.luau --fastFlags.allOnLuau --fastFlags.overrides EnableLoadModule=true EnableDelayedTaskMethods=true --headlessRenderer 1 diff --git a/bin/ci.sh b/bin/ci.sh index ebb557ba..f89e4c8b 100755 --- a/bin/ci.sh +++ b/bin/ci.sh @@ -16,7 +16,7 @@ stylua -c modules bin WorkspaceStatic echo "Run tests in DEV" robloxdev-cli run --load.model tests.project.json \ - --run bin/spec.lua \ + --run bin/spec.luau \ --fastFlags.allOnLuau --fastFlags.overrides UseDateTimeType3=true EnableLoadModule=true DebugDisableOptimizedBytecode=true EnableDelayedTaskMethods=true MaxDeferReentrancyDepth=65 \ --load.asRobloxScript --headlessRenderer 1 --virtualInput 1 --fs.readwrite=$PWD --lua.globals=__COMPAT_WARNINGS__=true \ --lua.globals=UPDATESNAPSHOT=false --lua.globals=CI=true --lua.globals=__ROACT_17_MOCK_SCHEDULER__=true \ @@ -24,7 +24,7 @@ robloxdev-cli run --load.model tests.project.json \ echo "Run tests in release" robloxdev-cli run --load.model tests.project.json \ - --run bin/spec.lua \ + --run bin/spec.luau \ --fastFlags.allOnLuau --fastFlags.overrides UseDateTimeType3=true EnableLoadModule=true DebugDisableOptimizedBytecode=true EnableDelayedTaskMethods=true MaxDeferReentrancyDepth=65 \ --load.asRobloxScript --headlessRenderer 1 --virtualInput 1 --fs.readwrite=$PWD \ --lua.globals=UPDATESNAPSHOT=false --lua.globals=CI=true --lua.globals=__ROACT_17_MOCK_SCHEDULER__=true diff --git a/bin/convert.sh b/bin/convert.sh index bfec9c3b..711028a5 100755 --- a/bin/convert.sh +++ b/bin/convert.sh @@ -2,10 +2,10 @@ for file in *.js do - mv "$file" "${file/.js/.lua}" + mv "$file" "${file/.js/.luau}" done -for file in *.lua +for file in *.luau do sed -i '' -e "s/\/\*/--[[/g" "$file" sed -i '' -e "s/\*\//]]/g" "$file" diff --git a/bin/run-benchmarks.py b/bin/run-benchmarks.py index 4c3e9f0e..bdbc7e41 100644 --- a/bin/run-benchmarks.py +++ b/bin/run-benchmarks.py @@ -9,7 +9,7 @@ # Pass --runs or -r to set how many time each benchmark is run (ex: -r 5) # Pass --dev or -d to run tests in DEV and COMPAT_WARNINGS mode (ex: --dev) -BENCHMARK_FILES = "bin/run-*-benchmark.lua" +BENCHMARK_FILES = "bin/run-*-benchmark.luau" PROJECT_JSON = "tests.project.json" OUTPUT_PATTERN = r"(.+) x ([\d\.]+) ([/\w]+) ±([\d\.]+)\% \((\d+) runs sampled\)" diff --git a/bin/testing.sh b/bin/testing.sh index 3fbc1e19..ed5ab598 100755 --- a/bin/testing.sh +++ b/bin/testing.sh @@ -14,7 +14,7 @@ set -e bin/testing.sh bin/testing.sh -a bin/testing.sh --snapshot - bin/testing.sh -p bin/run-wide-tree-benchmark.lua + bin/testing.sh -p bin/run-wide-tree-benchmark.luau comment # Parse the args @@ -34,7 +34,7 @@ while (( "$#" )); do PROFILE=$2 shift 2 else - echo "Error: Argument for $1 is missing, please specify a lua file to run (ie: bin/run-sierpinski-triangle-benchmark.lua)" >&2 + echo "Error: Argument for $1 is missing, please specify a lua file to run (ie: bin/run-sierpinski-triangle-benchmark.luau)" >&2 exit 1 fi ;; @@ -60,8 +60,8 @@ eval set -- "$PARAMS" if [[ $SNAPSHOT ]]; then echo "Generating snapshots..." # Figure out how to enable PROFILING global in jestSetup once we upgrade to jest 28 - # roblox-cli run --load.model tests.project.json --run bin/spec.lua --fastFlags.overrides EnableLoadModule=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=__PROFILE__=true --lua.globals=UPDATESNAPSHOT="all" --load.asRobloxScript --fs.readwrite="$(pwd)" - roblox-cli run --load.model tests.project.json --run bin/spec.lua --fastFlags.overrides EnableLoadModule=true DebugDisableOptimizedBytecode=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=UPDATESNAPSHOT="all" --load.asRobloxScript --fs.readwrite="$(pwd)" + # roblox-cli run --load.model tests.project.json --run bin/spec.luau --fastFlags.overrides EnableLoadModule=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=__PROFILE__=true --lua.globals=UPDATESNAPSHOT="all" --load.asRobloxScript --fs.readwrite="$(pwd)" + roblox-cli run --load.model tests.project.json --run bin/spec.luau --fastFlags.overrides EnableLoadModule=true DebugDisableOptimizedBytecode=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=UPDATESNAPSHOT="all" --load.asRobloxScript --fs.readwrite="$(pwd)" exit 0 fi @@ -82,16 +82,16 @@ if [[ $PROFILE ]]; then fi if [[ $DEFERRED ]]; then - echo "Running tests with deferred lua enabled..." - roblox-cli run --load.model tests.project.json --run bin/spec.lua --fastFlags.allOn \ + echo "Running tests with deferred luau enabled..." + roblox-cli run --load.model tests.project.json --run bin/spec.luau --fastFlags.allOn \ --fastFlags.overrides EnableLoadModule=true DebugDisableOptimizedBytecode=true EnableSignalBehavior=true DebugForceDeferredSignalBehavior=true \ --fastFlags.overrides MaxDeferReentrancyDepth=40 \ --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true else echo "Running tests..." # Figure out how to enable PROFILING global in jestSetup once we upgrade to jest 28 - #roblox-cli run --load.model tests.project.json --run bin/spec.lua --fastFlags.overrides EnableLoadModule=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=__PROFILE__=true - roblox-cli run --load.model tests.project.json --run bin/spec.lua --fastFlags.allOn \ + #roblox-cli run --load.model tests.project.json --run bin/spec.luau --fastFlags.overrides EnableLoadModule=true --fastFlags.allOnLuau --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true --lua.globals=__PROFILE__=true + roblox-cli run --load.model tests.project.json --run bin/spec.luau --fastFlags.allOn \ --fastFlags.overrides MaxDeferReentrancyDepth=40 \ --lua.globals=__DEV__=true --lua.globals=__COMPAT_WARNINGS__=true fi diff --git a/bin/upstream-tag.sh b/bin/upstream-tag.sh index c8b2ac19..3f91dfc3 100644 --- a/bin/upstream-tag.sh +++ b/bin/upstream-tag.sh @@ -21,14 +21,14 @@ target_folder: fi count=0 -for file in $(find * -name "*.lua") +for file in $(find * -name "*.luau") do if [[ "$file" == *"roblox-jest"* ]] || [[ "$file" == *"roblox-js-polyfill"* ]]; then echo "SKIP: $file is Roblox-only" continue fi - if [[ "$file" == *".roblox."*"lua" ]]; then + if [[ "$file" == *".roblox."*"luau" ]]; then echo "SKIP: $file is Roblox-only" continue fi @@ -40,7 +40,7 @@ do targetFileName="${file/-internal.spec/-test.internal}" targetFileName="${targetFileName/.spec/-test}" - targetFileName="${targetFileName/.lua/.js}" + targetFileName="${targetFileName/.luau/.js}" targetFile="$EQUIVALENT_FOLDER/$targetFileName" if [[ ! -f "$REACT_PATH/$targetFile" ]]; then diff --git a/js-to-lua.config.js b/js-to-lua.config.js index 8f0580bc..9bb2f9be 100644 --- a/js-to-lua.config.js +++ b/js-to-lua.config.js @@ -13,7 +13,7 @@ module.exports = { repo: "react-lua", primaryBranch: "main", patterns: [ - "**/*.lua" + "**/*.luau" ], ignorePatterns: [ "Packages/**/*" @@ -31,37 +31,37 @@ module.exports = { ], [ - (filename) => filename.includes("modules/react/src/ReactSharedInternals.lua"), - (filename) => filename.replace("modules/react/src/ReactSharedInternals.lua", "modules/shared/src/ReactSharedInternals/init.lua") + (filename) => filename.includes("modules/react/src/ReactSharedInternals.luau"), + (filename) => filename.replace("modules/react/src/ReactSharedInternals.luau", "modules/shared/src/ReactSharedInternals/init.luau") ], [ - (filename) => filename.includes("modules/react/src/ReactCurrentDispatcher.lua") || filename.includes("modules/react/src/ReactCurrentBatchConfig.lua") || filename.includes("modules/react/src/ReactCurrentActQueue.lua") || filename.includes("modules/react/src/ReactCurrentOwner.lua") || filename.includes("modules/react/src/ReactDebugCurrentFrame.lua"), + (filename) => filename.includes("modules/react/src/ReactCurrentDispatcher.luau") || filename.includes("modules/react/src/ReactCurrentBatchConfig.luau") || filename.includes("modules/react/src/ReactCurrentActQueue.luau") || filename.includes("modules/react/src/ReactCurrentOwner.luau") || filename.includes("modules/react/src/ReactDebugCurrentFrame.luau"), (filename) => filename.replace("modules/react/src/", "modules/shared/src/ReactSharedInternals/") ], [ - (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoHydration.lua"), - (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoHydration.lua", "modules/shared/src/ReactFiberHostConfig/WithNoHydration.lua") + (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoHydration.luau"), + (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoHydration.luau", "modules/shared/src/ReactFiberHostConfig/WithNoHydration.luau") ], [ - (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoPersistence.lua"), - (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoPersistence.lua", "modules/shared/src/ReactFiberHostConfig/WithNoPersistence.lua") + (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoPersistence.luau"), + (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoPersistence.luau", "modules/shared/src/ReactFiberHostConfig/WithNoPersistence.luau") ], [ - (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoTestSelectors.lua"), - (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoTestSelectors.lua", "modules/shared/src/ReactFiberHostConfig/WithNoTestSelectors.lua") + (filename) => filename.includes("modules/react-reconciler/src/ReactFiberHostConfigWithNoTestSelectors.luau"), + (filename) => filename.replace("modules/react-reconciler/src/ReactFiberHostConfigWithNoTestSelectors.luau", "modules/shared/src/ReactFiberHostConfig/WithNoTestSelectors.luau") ], [ (filename) => filename.includes("__tests__/") && !filename.includes("src/__tests__/") && !filename.includes("PropMarkers/__tests__/") && !filename.includes("client/__tests__/"), (filename) => filename.replace("__tests__/", "src/__tests__/") ], [ - (filename) => filename.endsWith("-test.lua"), - (filename) => filename.replace("-test.lua", ".spec.lua") + (filename) => filename.endsWith("-test.luau"), + (filename) => filename.replace("-test.luau", ".spec.luau") ], [ - (filename) => filename.endsWith("-test.internal.lua"), - (filename) => filename.replace("-test.internal.lua", "-internal.spec.lua") + (filename) => filename.endsWith("-test.internal.luau"), + (filename) => filename.replace("-test.internal.luau", "-internal.spec.luau") ], [ @@ -69,8 +69,8 @@ module.exports = { (filename) => filename.replace("scripts/jest/matchers", "WorkspaceStatic/jest/matchers") ], [ - (filename) => filename.endsWith("fixtures/legacy-jsx-runtimes/setupTests.lua"), - (filename) => filename.replace("fixtures/legacy-jsx-runtimes/setupTests.lua", "WorkspaceStatic/jest/matchers/createConsoleMatcher.lua") + (filename) => filename.endsWith("fixtures/legacy-jsx-runtimes/setupTests.luau"), + (filename) => filename.replace("fixtures/legacy-jsx-runtimes/setupTests.luau", "WorkspaceStatic/jest/matchers/createConsoleMatcher.luau") ], ], } diff --git a/modules/jest-react/.npmignore b/modules/jest-react/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/jest-react/.npmignore +++ b/modules/jest-react/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-cache/.npmignore b/modules/react-cache/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-cache/.npmignore +++ b/modules/react-cache/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-cache/package.json b/modules/react-cache/package.json index 7c559597..c5d50f45 100644 --- a/modules/react-cache/package.json +++ b/modules/react-cache/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-cache" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-debug-tools/.npmignore b/modules/react-debug-tools/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-debug-tools/.npmignore +++ b/modules/react-debug-tools/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-debug-tools/package.json b/modules/react-debug-tools/package.json index 7ec41d37..7595dc79 100644 --- a/modules/react-debug-tools/package.json +++ b/modules/react-debug-tools/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-debug-tools" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-devtools-extensions/.npmignore b/modules/react-devtools-extensions/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-devtools-extensions/.npmignore +++ b/modules/react-devtools-extensions/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-devtools-extensions/package.json b/modules/react-devtools-extensions/package.json index 1615ffde..e219c9ca 100644 --- a/modules/react-devtools-extensions/package.json +++ b/modules/react-devtools-extensions/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-devtools-extensions" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-devtools-shared/.npmignore b/modules/react-devtools-shared/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-devtools-shared/.npmignore +++ b/modules/react-devtools-shared/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-devtools-shared/package.json b/modules/react-devtools-shared/package.json index dcc92e74..a41d0a5a 100644 --- a/modules/react-devtools-shared/package.json +++ b/modules/react-devtools-shared/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-devtools-shared" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-devtools-shared/src/__tests__/store.spec.luau b/modules/react-devtools-shared/src/__tests__/store.spec.luau index bd8c63db..e336e9b2 100644 --- a/modules/react-devtools-shared/src/__tests__/store.spec.luau +++ b/modules/react-devtools-shared/src/__tests__/store.spec.luau @@ -899,7 +899,7 @@ describe("Store", function() end) -- ROBLOX TODO: Tests using multiple roots don't currently work, because rootA and rootB -- do not use the SyncLane which is checked in ReactFiberWorkLoop:680 upstream which proceeds - -- to call handleCommitFiberRoot in devtools renderer.lua for the two separate roots. + -- to call handleCommitFiberRoot in devtools renderer.luau for the two separate roots. -- The upstream tests use a blocking root, which has a different path through the React -- codebase. Using concurrent roots, rootB is placed in lane 512 (rather than 1) -- Using blocking roots, rootB is placed in lane 2 (rather than 1) so is not registered. diff --git a/modules/react-is/.npmignore b/modules/react-is/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-is/.npmignore +++ b/modules/react-is/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-is/package.json b/modules/react-is/package.json index 480c7712..809e6179 100644 --- a/modules/react-is/package.json +++ b/modules/react-is/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-is" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-noop-renderer/.npmignore b/modules/react-noop-renderer/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-noop-renderer/.npmignore +++ b/modules/react-noop-renderer/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-noop-renderer/README.md b/modules/react-noop-renderer/README.md index 5072c294..53f56663 100644 --- a/modules/react-noop-renderer/README.md +++ b/modules/react-noop-renderer/README.md @@ -7,8 +7,8 @@ Original source: https://github.com/facebook/react/tree/master/packages/react-no ### Ported Files: -* `src/createReactNoop.js` -> `src/createReactNoop.lua` -* `src/ReactNoop.js` -> `src/ReactNoop.lua` +* `src/createReactNoop.js` -> `src/createReactNoop.luau` +* `src/ReactNoop.js` -> `src/ReactNoop.luau` The entire implementation of the NoopRenderer, plus an entry point that exports all the relevant members. @@ -26,4 +26,4 @@ Files: A version of the NoopRenderer that's created with `useMutation = false`. If this is needed at some point, it'll be trivial to port. ### Intentional Deviations -Currently, we're not supporting JSX or an equivalent markup syntax. Select parts of `createReactNoop.lua` are only partially translated and are commented out. \ No newline at end of file +Currently, we're not supporting JSX or an equivalent markup syntax. Select parts of `createReactNoop.luau` are only partially translated and are commented out. \ No newline at end of file diff --git a/modules/react-noop-renderer/package(placeholder).json b/modules/react-noop-renderer/package(placeholder).json index 4495bcc9..d44489c2 100644 --- a/modules/react-noop-renderer/package(placeholder).json +++ b/modules/react-noop-renderer/package(placeholder).json @@ -7,7 +7,7 @@ "directory": "modules/react-noop-renderer" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-reconciler/.npmignore b/modules/react-reconciler/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-reconciler/.npmignore +++ b/modules/react-reconciler/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-reconciler/package.json b/modules/react-reconciler/package.json index 04fc6c53..b788da5d 100644 --- a/modules/react-reconciler/package.json +++ b/modules/react-reconciler/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-reconciler" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react-reconciler/src/ReactChildFiber.new.luau b/modules/react-reconciler/src/ReactChildFiber.new.luau index 97411dba..2b9cddfc 100644 --- a/modules/react-reconciler/src/ReactChildFiber.new.luau +++ b/modules/react-reconciler/src/ReactChildFiber.new.luau @@ -62,7 +62,7 @@ local ReactFeatureFlags = require("@pkg/@jsdotlua/shared").ReactFeatureFlags local enableLazyElements = ReactFeatureFlags.enableLazyElements local enableBlocksAPI = ReactFeatureFlags.enableBlocksAPI -local ReactFiber = require("./ReactFiber.new.lua") +local ReactFiber = require("./ReactFiber.new.luau") local createWorkInProgress = ReactFiber.createWorkInProgress local resetWorkInProgress = ReactFiber.resetWorkInProgress local createFiberFromElement = ReactFiber.createFiberFromElement @@ -71,8 +71,8 @@ local createFiberFromText = ReactFiber.createFiberFromText local createFiberFromPortal = ReactFiber.createFiberFromPortal -- ROBLOX deviation: we do not support string refs -- local emptyRefsObject = --- require("./ReactFiberClassComponent.new.lua").emptyRefsObject --- local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.lua") +-- require("./ReactFiberClassComponent.new.luau").emptyRefsObject +-- local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.luau") -- local isCompatibleFamilyForHotReloading = -- ReactFiberHotReloading.isCompatibleFamilyForHotReloading -- ROBLOX deviation: we do not support string refs, which removes our use of StrictMode diff --git a/modules/react-reconciler/src/ReactFiber.new.luau b/modules/react-reconciler/src/ReactFiber.new.luau index e781b93f..0ac8b57c 100644 --- a/modules/react-reconciler/src/ReactFiber.new.luau +++ b/modules/react-reconciler/src/ReactFiber.new.luau @@ -80,9 +80,9 @@ local OffscreenComponent = ReactWorkTags.OffscreenComponent local LegacyHiddenComponent = ReactWorkTags.LegacyHiddenComponent local getComponentName = require("@pkg/@jsdotlua/shared").getComponentName -local ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.lua") +local ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.luau") local isDevToolsPresent = ReactFiberDevToolsHook.isDevToolsPresent -local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.lua") +local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.luau") local resolveClassForHotReloading = ReactFiberHotReloading.resolveClassForHotReloading local resolveFunctionForHotReloading = ReactFiberHotReloading.resolveFunctionForHotReloading diff --git a/modules/react-reconciler/src/ReactFiberBeginWork.new.luau b/modules/react-reconciler/src/ReactFiberBeginWork.new.luau index 8e01fa23..6a1910ef 100644 --- a/modules/react-reconciler/src/ReactFiberBeginWork.new.luau +++ b/modules/react-reconciler/src/ReactFiberBeginWork.new.luau @@ -47,11 +47,11 @@ type Lanes = ReactFiberLane.Lanes -- type Lane = ReactFiberLane.Lane; -- local type {MutableSource} = require(Packages.Shared.ReactTypes) -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState type SuspenseListRenderState = ReactFiberSuspenseComponent.SuspenseListRenderState type SuspenseListTailMode = ReactFiberSuspenseComponent.SuspenseListTailMode -local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.lua") +local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.luau") type SuspenseContext = ReactFiberSuspenseContext.SuspenseContext local ReactFiberOffscreenComponent = require("./ReactFiberOffscreenComponent") @@ -116,12 +116,12 @@ local getComponentName = require("@pkg/@jsdotlua/shared").getComponentName local ReactSymbols = require("@pkg/@jsdotlua/shared").ReactSymbols local REACT_LAZY_TYPE = ReactSymbols.REACT_LAZY_TYPE local _getIteratorFn = ReactSymbols.getIteratorFn -local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.lua") +local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.luau") local ReactCurrentFiber = require("./ReactCurrentFiber") local getCurrentFiberOwnerNameInDevOrNull = ReactCurrentFiber.getCurrentFiberOwnerNameInDevOrNull local setIsRendering = ReactCurrentFiber.setIsRendering -local ReactFiberHotReloadingModule = require("./ReactFiberHotReloading.new.lua") +local ReactFiberHotReloadingModule = require("./ReactFiberHotReloading.new.luau") local resolveFunctionForHotReloading = ReactFiberHotReloadingModule.resolveFunctionForHotReloading local resolveForwardRefForHotReloading = @@ -129,11 +129,11 @@ local resolveForwardRefForHotReloading = local resolveClassForHotReloading = ReactFiberHotReloadingModule.resolveClassForHotReloading -local ReactChildFiber = require("./ReactChildFiber.new.lua") :: any +local ReactChildFiber = require("./ReactChildFiber.new.luau") :: any local mountChildFibers = ReactChildFiber.mountChildFibers local reconcileChildFibers = ReactChildFiber.reconcileChildFibers local cloneChildFibers = ReactChildFiber.cloneChildFibers -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") local processUpdateQueue = ReactUpdateQueue.processUpdateQueue local cloneUpdateQueue = ReactUpdateQueue.cloneUpdateQueue local initializeUpdateQueue = ReactUpdateQueue.initializeUpdateQueue @@ -151,7 +151,7 @@ local registerSuspenseInstanceRetry = ReactFiberHostConfig.registerSuspenseInsta local supportsHydration = ReactFiberHostConfig.supportsHydration type SuspenseInstance = ReactFiberHostConfig.SuspenseInstance -local ReactFiberHostContext = require("./ReactFiberHostContext.new.lua") +local ReactFiberHostContext = require("./ReactFiberHostContext.new.luau") local pushHostContext = ReactFiberHostContext.pushHostContext local pushHostContainer = ReactFiberHostContext.pushHostContainer local suspenseStackCursor = ReactFiberSuspenseContext.suspenseStackCursor @@ -167,7 +167,7 @@ local setDefaultShallowSuspenseContext = -- local {findFirstSuspended} = require("./ReactFiberSuspenseComponent/new") -- local { -- , -local ReactFiberNewContext = require("./ReactFiberNewContext.new.lua") +local ReactFiberNewContext = require("./ReactFiberNewContext.new.luau") local propagateContextChange = ReactFiberNewContext.propagateContextChange local readContext = ReactFiberNewContext.readContext local calculateChangedBits = ReactFiberNewContext.calculateChangedBits @@ -191,7 +191,7 @@ end -- ROBLOX deviation: collective lazy init methods from ReactFiberHooks local function initReactFiberHooks() - local ReactFiberHooks = require("./ReactFiberHooks.new.lua") + local ReactFiberHooks = require("./ReactFiberHooks.new.luau") lazyRefs.renderWithHooksRef = ReactFiberHooks.renderWithHooks lazyRefs.bailoutHooksRef = ReactFiberHooks.bailoutHooks end @@ -213,8 +213,8 @@ local function bailoutHooks(...) end local stopProfilerTimerIfRunning = - require("./ReactProfilerTimer.new.lua").stopProfilerTimerIfRunning -local ReactFiberContext = require("./ReactFiberContext.new.lua") + require("./ReactProfilerTimer.new.luau").stopProfilerTimerIfRunning +local ReactFiberContext = require("./ReactFiberContext.new.luau") local getMaskedContext = ReactFiberContext.getMaskedContext local getUnmaskedContext = ReactFiberContext.getUnmaskedContext local hasLegacyContextChanged = ReactFiberContext.hasContextChanged @@ -223,7 +223,7 @@ local isLegacyContextProvider = ReactFiberContext.isContextProvider local pushTopLevelContextObject = ReactFiberContext.pushTopLevelContextObject local invalidateContextProvider = ReactFiberContext.invalidateContextProvider -local ReactFiberHydrationContext = require("./ReactFiberHydrationContext.new.lua") +local ReactFiberHydrationContext = require("./ReactFiberHydrationContext.new.luau") local resetHydrationState = ReactFiberHydrationContext.resetHydrationState local enterHydrationState = ReactFiberHydrationContext.enterHydrationState local reenterHydrationStateFromDehydratedSuspenseInstance = @@ -231,7 +231,7 @@ local reenterHydrationStateFromDehydratedSuspenseInstance = local tryToClaimNextHydratableInstance = ReactFiberHydrationContext.tryToClaimNextHydratableInstance local warnIfHydrating = ReactFiberHydrationContext.warnIfHydrating -local ReactFiberClassComponent = require("./ReactFiberClassComponent.new.lua") :: any +local ReactFiberClassComponent = require("./ReactFiberClassComponent.new.luau") :: any local adoptClassInstance = ReactFiberClassComponent.adoptClassInstance local applyDerivedStateFromProps = ReactFiberClassComponent.applyDerivedStateFromProps local constructClassInstance = ReactFiberClassComponent.constructClassInstance @@ -240,8 +240,8 @@ local resumeMountClassInstance = ReactFiberClassComponent.resumeMountClassInstan local updateClassInstance = ReactFiberClassComponent.updateClassInstance local resolveDefaultProps = - require("./ReactFiberLazyComponent.new.lua").resolveDefaultProps -local ReactFiber = require("./ReactFiber.new.lua") + require("./ReactFiberLazyComponent.new.luau").resolveDefaultProps +local ReactFiber = require("./ReactFiber.new.luau") local resolveLazyComponentTag = ReactFiber.resolveLazyComponentTag local createFiberFromFragment = ReactFiber.createFiberFromFragment local createFiberFromOffscreen = ReactFiber.createFiberFromOffscreen @@ -249,7 +249,7 @@ local createFiberFromOffscreen = ReactFiber.createFiberFromOffscreen local createFiberFromTypeAndProps = ReactFiber.createFiberFromTypeAndProps local isSimpleFunctionComponent = ReactFiber.isSimpleFunctionComponent local createWorkInProgress = ReactFiber.createWorkInProgress -local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any +local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any local pushRenderLanes = ReactFiberWorkLoop.pushRenderLanes local markSpawnedWork = ReactFiberWorkLoop.markSpawnedWork local retryDehydratedSuspenseBoundary = ReactFiberWorkLoop.retryDehydratedSuspenseBoundary @@ -262,7 +262,7 @@ local NoContext = ReactFiberWorkLoop.NoContext local Schedule_tracing_wrap local setWorkInProgressVersion = - require("./ReactMutableSource.new.lua").setWorkInProgressVersion + require("./ReactMutableSource.new.luau").setWorkInProgressVersion local markSkippedUpdateLanes = require("./ReactFiberWorkInProgress").markSkippedUpdateLanes local ConsolePatchingDev = require("@pkg/@jsdotlua/shared").ConsolePatchingDev @@ -485,7 +485,7 @@ local function updateMemoComponent( -- ROBLOX deviation: adds support for legacy Roact's validateProps() local innerPropTypes local validateProps - -- ROBLOX deviation: avoid accessing propTypes on a function, Lua doesn't support fields on functions + -- ROBLOX deviation: avoid accessing propTypes on a function, Luau doesn't support fields on functions if type(type_) == "table" then innerPropTypes = type_.propTypes validateProps = type_.validateProps @@ -524,7 +524,7 @@ local function updateMemoComponent( -- ROBLOX deviation: adds support for legacy Roact's validateProps() local innerPropTypes local validateProps - -- ROBLOX deviation: only check for propTypes on class components, Lua doesn't support fields on functions + -- ROBLOX deviation: only check for propTypes on class components, Luau doesn't support fields on functions if type(type_) == "table" then innerPropTypes = type_.propTypes validateProps = type_.validateProps @@ -599,7 +599,7 @@ function updateSimpleMemoComponent( -- ROBLOX deviation: adds support for legacy Roact's validateProps() local outerPropTypes local validateProps - -- ROBLOX deviation: avoid accessing propTypes on a function, Lua doesn't support fields on functions + -- ROBLOX deviation: avoid accessing propTypes on a function, Luau doesn't support fields on functions if outerMemoType ~= nil and type(outerMemoType) == "table" then outerPropTypes = (outerMemoType :: any).propTypes -- ROBLOX deviation: support legacy Roact's equivalent of propTypes diff --git a/modules/react-reconciler/src/ReactFiberClassComponent.new.luau b/modules/react-reconciler/src/ReactFiberClassComponent.new.luau index 66ba52f6..59ea88ee 100644 --- a/modules/react-reconciler/src/ReactFiberClassComponent.new.luau +++ b/modules/react-reconciler/src/ReactFiberClassComponent.new.luau @@ -19,7 +19,7 @@ local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber local ReactFiberLane = require("./ReactFiberLane") type Lanes = ReactFiberLane.Lanes -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") type UpdateQueue = ReactInternalTypes.UpdateQueue local ReactTypes = require("@pkg/@jsdotlua/shared") @@ -41,7 +41,7 @@ local enableSchedulingProfiler = ReactFeatureFlags.enableSchedulingProfiler local warnAboutDeprecatedLifecycles = ReactFeatureFlags.warnAboutDeprecatedLifecycles local enableDoubleInvokingEffects = ReactFeatureFlags.enableDoubleInvokingEffects -local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.lua") +local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.luau") local isMounted = require("./ReactFiberTreeReflection").isMounted local ReactInstanceMap = require("@pkg/@jsdotlua/shared").ReactInstanceMap local getInstance = ReactInstanceMap.get @@ -56,7 +56,7 @@ local REACT_CONTEXT_TYPE = ReactSymbols.REACT_CONTEXT_TYPE local REACT_PROVIDER_TYPE = ReactSymbols.REACT_PROVIDER_TYPE local resolveDefaultProps = - require("./ReactFiberLazyComponent.new.lua").resolveDefaultProps + require("./ReactFiberLazyComponent.new.luau").resolveDefaultProps local ReactTypeOfMode = require("./ReactTypeOfMode") local DebugTracingMode = ReactTypeOfMode.DebugTracingMode local StrictMode = ReactTypeOfMode.StrictMode @@ -74,17 +74,17 @@ local initializeUpdateQueue = ReactUpdateQueue.initializeUpdateQueue local cloneUpdateQueue = ReactUpdateQueue.cloneUpdateQueue local NoLanes = ReactFiberLane.NoLanes -local ReactFiberContext = require("./ReactFiberContext.new.lua") +local ReactFiberContext = require("./ReactFiberContext.new.luau") local cacheContext = ReactFiberContext.cacheContext local getMaskedContext = ReactFiberContext.getMaskedContext local getUnmaskedContext = ReactFiberContext.getUnmaskedContext local hasContextChanged = ReactFiberContext.hasContextChanged local emptyContextObject = ReactFiberContext.emptyContextObject -local ReactFiberNewContext = require("./ReactFiberNewContext.new.lua") +local ReactFiberNewContext = require("./ReactFiberNewContext.new.luau") local readContext = ReactFiberNewContext.readContext --- local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") +-- local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") -- local requestEventTime = ReactFiberWorkLoop.requestEventTime -- local requestUpdateLane = ReactFiberWorkLoop.requestUpdateLane -- local scheduleUpdateOnFiber = ReactFiberWorkLoop.scheduleUpdateOnFiber @@ -242,7 +242,7 @@ end -- deviation: lazy initialize this to avoid cycles local classComponentUpdater = nil local function initializeClassComponentUpdater() - local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") + local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") local requestEventTime = ReactFiberWorkLoop.requestEventTime local requestUpdateLane = ReactFiberWorkLoop.requestUpdateLane local scheduleUpdateOnFiber = ReactFiberWorkLoop.scheduleUpdateOnFiber diff --git a/modules/react-reconciler/src/ReactFiberCommitWork.new.luau b/modules/react-reconciler/src/ReactFiberCommitWork.new.luau index e5d09a08..ba827a6f 100644 --- a/modules/react-reconciler/src/ReactFiberCommitWork.new.luau +++ b/modules/react-reconciler/src/ReactFiberCommitWork.new.luau @@ -62,13 +62,13 @@ type UpdatePayload = Array local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber type FiberRoot = ReactInternalTypes.FiberRoot -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState -local ReactUpdateQueueModule = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueueModule = require("./ReactUpdateQueue.new.luau") type UpdateQueue = ReactInternalTypes.UpdateQueue --- local ReactFiberHooks = require("./ReactFiberHooks.new.lua") +-- local ReactFiberHooks = require("./ReactFiberHooks.new.luau") -- type FunctionComponentUpdateQueue = ReactFiberHooks.FunctionComponentUpdateQueue -- ROBLOX deviation: inline the typedef here to avoid circular dependency type Effect = { @@ -144,10 +144,10 @@ local ReactCurrentFiber = require("./ReactCurrentFiber") local currentDebugFiberInDEV = ReactCurrentFiber.current local resetCurrentDebugFiberInDEV = ReactCurrentFiber.resetCurrentFiber local setCurrentDebugFiberInDEV = ReactCurrentFiber.setCurrentFiber -local onCommitUnmount = require("./ReactFiberDevToolsHook.new.lua").onCommitUnmount +local onCommitUnmount = require("./ReactFiberDevToolsHook.new.luau").onCommitUnmount local resolveDefaultProps = - require("./ReactFiberLazyComponent.new.lua").resolveDefaultProps -local ReactProfilerTimer = require("./ReactProfilerTimer.new.lua") + require("./ReactFiberLazyComponent.new.luau").resolveDefaultProps +local ReactProfilerTimer = require("./ReactProfilerTimer.new.luau") local startLayoutEffectTimer = ReactProfilerTimer.startLayoutEffectTimer local recordPassiveEffectDuration = ReactProfilerTimer.recordPassiveEffectDuration local recordLayoutEffectDuration = ReactProfilerTimer.recordLayoutEffectDuration @@ -189,14 +189,14 @@ local ReactFiberWorkLoop local function resolveRetryWakeable(boundaryFiber: Fiber, wakeable: Wakeable): () if not ReactFiberWorkLoop then - ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any + ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any end ReactFiberWorkLoop.resolveRetryWakeable(boundaryFiber, wakeable) end local function markCommitTimeOfFallback(): () if not ReactFiberWorkLoop then - ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any + ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any end ReactFiberWorkLoop.markCommitTimeOfFallback() end @@ -231,7 +231,7 @@ local didWarnAboutReassigningPropsRef local didWarnAboutReassigningProps = function() if not didWarnAboutReassigningPropsRef then didWarnAboutReassigningPropsRef = - require("./ReactFiberBeginWork.new.lua").didWarnAboutReassigningProps + require("./ReactFiberBeginWork.new.luau").didWarnAboutReassigningProps end return didWarnAboutReassigningPropsRef end diff --git a/modules/react-reconciler/src/ReactFiberCompleteWork.new.luau b/modules/react-reconciler/src/ReactFiberCompleteWork.new.luau index 8aa40116..ec076a9b 100644 --- a/modules/react-reconciler/src/ReactFiberCompleteWork.new.luau +++ b/modules/react-reconciler/src/ReactFiberCompleteWork.new.luau @@ -39,7 +39,7 @@ type ChildSet = ReactFiberHostConfig.ChildSet local ReactFiberOffscreenComponent = require("./ReactFiberOffscreenComponent") type OffscreenState = ReactFiberOffscreenComponent.OffscreenState -local ReactMutableSource = require("./ReactMutableSource.new.lua") +local ReactMutableSource = require("./ReactMutableSource.new.luau") local resetMutableSourceWorkInProgressVersions = ReactMutableSource.resetWorkInProgressVersions @@ -70,7 +70,7 @@ local ScopeComponent = ReactWorkTags.ScopeComponent local Block = ReactWorkTags.Block local OffscreenComponent = ReactWorkTags.OffscreenComponent local LegacyHiddenComponent = ReactWorkTags.LegacyHiddenComponent -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState type SuspenseListRenderState = ReactFiberSuspenseComponent.SuspenseState @@ -116,13 +116,13 @@ local finalizeContainerChildren = ReactFiberHostConfig.finalizeContainerChildren -- local shouldUpdateFundamentalComponent = ReactFiberHostConfig.shouldUpdateFundamentalComponent local preparePortalMount = ReactFiberHostConfig.preparePortalMount -- local prepareScopeUpdate = ReactFiberHostConfig.prepareScopeUpdate -local ReactFiberHostContext = require("./ReactFiberHostContext.new.lua") +local ReactFiberHostContext = require("./ReactFiberHostContext.new.luau") local getRootHostContainer = ReactFiberHostContext.getRootHostContainer local popHostContext = ReactFiberHostContext.popHostContext local getHostContext = ReactFiberHostContext.getHostContext local popHostContainer = ReactFiberHostContext.popHostContainer -local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.lua") +local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.luau") local popSuspenseContext = ReactFiberSuspenseContext.popSuspenseContext local suspenseStackCursor = ReactFiberSuspenseContext.suspenseStackCursor local InvisibleParentSuspenseContext = @@ -135,13 +135,13 @@ type SuspenseContext = ReactFiberSuspenseContext.SuspenseContext -- local setDefaultShallowSuspenseContext = ReactFiberSuspenseContext.setDefaultShallowSuspenseContext -- local {findFirstSuspended} = require("./ReactFiberSuspenseComponent/new") -local ReactFiberContext = require("./ReactFiberContext.new.lua") +local ReactFiberContext = require("./ReactFiberContext.new.luau") local isLegacyContextProvider = ReactFiberContext.isContextProvider local popLegacyContext = ReactFiberContext.popContext local popTopLevelLegacyContextObject = ReactFiberContext.popTopLevelContextObject -local popProvider = require("./ReactFiberNewContext.new.lua").popProvider +local popProvider = require("./ReactFiberNewContext.new.luau").popProvider -local ReactFiberHydrationContext = require("./ReactFiberHydrationContext.new.lua") +local ReactFiberHydrationContext = require("./ReactFiberHydrationContext.new.luau") local prepareToHydrateHostSuspenseInstance = ReactFiberHydrationContext.prepareToHydrateHostSuspenseInstance local popHydrationState = ReactFiberHydrationContext.popHydrationState @@ -159,7 +159,7 @@ local enableFundamentalAPI = ReactFeatureFlags.enableFundamentalAPI -- local enableScopeAPI = ReactFeatureFlags.enableScopeAPI local enableProfilerTimer = ReactFeatureFlags.enableProfilerTimer -local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any +local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any local popRenderLanes = ReactFiberWorkLoop.popRenderLanes -- ROBLOX deviation: this is a live value in WorkLoop's module state, so it must be accessed directly and not 'cached' @@ -179,7 +179,7 @@ local includesSomeLane = ReactFiberLane.includesSomeLane local mergeLanes = ReactFiberLane.mergeLanes -- local {resetChildFibers} = require("./ReactChildFiber/new") -- local {createScopeInstance} = require("./ReactFiberScope/new") -local ReactProfilerTimer = require("./ReactProfilerTimer.new.lua") +local ReactProfilerTimer = require("./ReactProfilerTimer.new.luau") local transferActualDuration = ReactProfilerTimer.transferActualDuration local function markUpdate(workInProgress: Fiber) diff --git a/modules/react-reconciler/src/ReactFiberContext.new.luau b/modules/react-reconciler/src/ReactFiberContext.new.luau index 20e308db..73112a7d 100644 --- a/modules/react-reconciler/src/ReactFiberContext.new.luau +++ b/modules/react-reconciler/src/ReactFiberContext.new.luau @@ -21,7 +21,7 @@ local console = require("@pkg/@jsdotlua/shared").console local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber -local ReactFiberStack = require("./ReactFiberStack.new.lua") +local ReactFiberStack = require("./ReactFiberStack.new.luau") type StackCursor = ReactFiberStack.StackCursor local isFiberMounted = require("./ReactFiberTreeReflection").isFiberMounted diff --git a/modules/react-reconciler/src/ReactFiberHooks.new.luau b/modules/react-reconciler/src/ReactFiberHooks.new.luau index db032701..c104a5ab 100644 --- a/modules/react-reconciler/src/ReactFiberHooks.new.luau +++ b/modules/react-reconciler/src/ReactFiberHooks.new.luau @@ -79,7 +79,7 @@ local markRootMutableRead = ReactFiberLane.markRootMutableRead -- local setCurrentUpdateLanePriority = ReactFiberLane.setCurrentUpdateLanePriority -- local higherLanePriority = ReactFiberLane.higherLanePriority -- local DefaultLanePriority = ReactFiberLane.DefaultLanePriority -local ReactFiberNewContext = require("./ReactFiberNewContext.new.lua") +local ReactFiberNewContext = require("./ReactFiberNewContext.new.luau") local readContext = ReactFiberNewContext.readContext local ReactFiberFlags = require("./ReactFiberFlags") local UpdateEffect = ReactFiberFlags.Update @@ -90,7 +90,7 @@ local MountPassiveDevEffect = ReactFiberFlags.MountPassiveDev local HookHasEffect = ReactHookEffectTags.HasEffect local HookLayout = ReactHookEffectTags.Layout local HookPassive = ReactHookEffectTags.Passive -local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any +local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any local warnIfNotCurrentlyActingUpdatesInDEV = ReactFiberWorkLoop.warnIfNotCurrentlyActingUpdatesInDEV local scheduleUpdateOnFiber = ReactFiberWorkLoop.scheduleUpdateOnFiber @@ -115,14 +115,14 @@ local function is(x: any, y: any) return x == y and (x ~= 0 or 1 / x == 1 / y) or x ~= x and y ~= y -- eslint-disable-line no-self-compare end local markWorkInProgressReceivedUpdate = - require("./ReactFiberBeginWork.new.lua").markWorkInProgressReceivedUpdate :: any + require("./ReactFiberBeginWork.new.luau").markWorkInProgressReceivedUpdate :: any -- local { -- UserBlockingPriority, -- NormalPriority, -- runWithPriority, -- getCurrentPriorityLevel, -- } = require("./SchedulerWithReactIntegration/new") -local getIsHydrating = require("./ReactFiberHydrationContext.new.lua").getIsHydrating +local getIsHydrating = require("./ReactFiberHydrationContext.new.luau").getIsHydrating -- local { -- makeClientId, -- makeClientIdInDEV, @@ -132,7 +132,7 @@ local makeClientId = ReactFiberHostConfig.makeClientId -- local makeOpaqueHydratingObject = ReactFiberHostConfig.makeOpaqueHydratingObject -- local makeClientIdInDEV = ReactFiberHostConfig.makeClientIdInDEV -local ReactMutableSource = require("./ReactMutableSource.new.lua") +local ReactMutableSource = require("./ReactMutableSource.new.luau") local warnAboutMultipleRenderersDEV = ReactMutableSource.warnAboutMultipleRenderersDEV local getWorkInProgressVersion = ReactMutableSource.getWorkInProgressVersion local setWorkInProgressVersion = ReactMutableSource.setWorkInProgressVersion diff --git a/modules/react-reconciler/src/ReactFiberHostContext.new.luau b/modules/react-reconciler/src/ReactFiberHostContext.new.luau index 094a43ff..8a1c3274 100644 --- a/modules/react-reconciler/src/ReactFiberHostContext.new.luau +++ b/modules/react-reconciler/src/ReactFiberHostContext.new.luau @@ -11,7 +11,7 @@ local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber -local ReactFiberStack = require("./ReactFiberStack.new.lua") +local ReactFiberStack = require("./ReactFiberStack.new.luau") type StackCursor = ReactFiberStack.StackCursor local ReactFiberHostConfig = require("./ReactFiberHostConfig") type Container = ReactFiberHostConfig.Container diff --git a/modules/react-reconciler/src/ReactFiberHydrationContext.new.luau b/modules/react-reconciler/src/ReactFiberHydrationContext.new.luau index a2a64b19..f38696e7 100644 --- a/modules/react-reconciler/src/ReactFiberHydrationContext.new.luau +++ b/modules/react-reconciler/src/ReactFiberHydrationContext.new.luau @@ -30,7 +30,7 @@ type SuspenseInstance = ReactFiberHostConfig.SuspenseInstance type Container = ReactFiberHostConfig.Container type HostContext = ReactFiberHostConfig.HostContext -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState local ReactWorkTags = require("./ReactWorkTags") @@ -45,7 +45,7 @@ local Hydrating = ReactFiberFlags.Hydrating local invariant = require("@pkg/@jsdotlua/shared").invariant -local ReactFiber = require("./ReactFiber.new.lua") +local ReactFiber = require("./ReactFiber.new.luau") -- local createFiberFromHostInstanceForDeletion = ReactFiber.createFiberFromHostInstanceForDeletion local createFiberFromDehydratedFragment = ReactFiber.createFiberFromDehydratedFragment diff --git a/modules/react-reconciler/src/ReactFiberLane.luau b/modules/react-reconciler/src/ReactFiberLane.luau index 1fb71a22..87a5d5d1 100644 --- a/modules/react-reconciler/src/ReactFiberLane.luau +++ b/modules/react-reconciler/src/ReactFiberLane.luau @@ -14,7 +14,7 @@ type ReactPriorityLevel = ReactInternalTypes.ReactPriorityLevel local console = require("@pkg/@jsdotlua/shared").console local ReactFiberSchedulerPriorities = - require("./ReactFiberSchedulerPriorities.roblox.lua") + require("./ReactFiberSchedulerPriorities.roblox.luau") -- deviation: Instead of defining these here, and and re-exporting in -- `ReactInternalTypes`, we depend on and re-export them here to avoid cyclical diff --git a/modules/react-reconciler/src/ReactFiberNewContext.new.luau b/modules/react-reconciler/src/ReactFiberNewContext.new.luau index f53e36d2..222f01fc 100644 --- a/modules/react-reconciler/src/ReactFiberNewContext.new.luau +++ b/modules/react-reconciler/src/ReactFiberNewContext.new.luau @@ -22,11 +22,11 @@ local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber type ContextDependency = ReactInternalTypes.ContextDependency -local ReactFiberStack = require("./ReactFiberStack.new.lua") +local ReactFiberStack = require("./ReactFiberStack.new.luau") type StackCursor = ReactFiberStack.StackCursor local ReactFiberLane = require("./ReactFiberLane") type Lanes = ReactFiberLane.Lanes -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") type SharedQueue = ReactUpdateQueue.SharedQueue local ReactFiberHostConfig = require("./ReactFiberHostConfig") @@ -50,7 +50,7 @@ local is = require("@pkg/@jsdotlua/shared").objectIs local createUpdate = ReactUpdateQueue.createUpdate local ForceUpdate = ReactUpdateQueue.ForceUpdate -- deviation: passed in as an arg to eliminate cycle --- local markWorkInProgressReceivedUpdate = require("./ReactFiberBeginWork.new.lua").markWorkInProgressReceivedUpdate +-- local markWorkInProgressReceivedUpdate = require("./ReactFiberBeginWork.new.luau").markWorkInProgressReceivedUpdate -- local enableSuspenseServerRenderer = require("@pkg/@jsdotlua/shared").ReactFeatureFlags.enableSuspenseServerRenderer local exports = {} diff --git a/modules/react-reconciler/src/ReactFiberReconciler.luau b/modules/react-reconciler/src/ReactFiberReconciler.luau index e9619ded..52d1fef5 100644 --- a/modules/react-reconciler/src/ReactFiberReconciler.luau +++ b/modules/react-reconciler/src/ReactFiberReconciler.luau @@ -10,4 +10,4 @@ ]] -- deviation: old version of reconciler not ported -return require("./ReactFiberReconciler.new.lua") +return require("./ReactFiberReconciler.new.luau") diff --git a/modules/react-reconciler/src/ReactFiberReconciler.new.luau b/modules/react-reconciler/src/ReactFiberReconciler.new.luau index 785a51fb..671799f7 100644 --- a/modules/react-reconciler/src/ReactFiberReconciler.new.luau +++ b/modules/react-reconciler/src/ReactFiberReconciler.new.luau @@ -47,7 +47,7 @@ type ReactNodeList = ReactTypes.ReactNodeList local ReactFiberLane = require("./ReactFiberLane") type Lane = ReactFiberLane.Lane type LanePriority = ReactFiberLane.LanePriority -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState local ReactFiberTreeReflection = require("./ReactFiberTreeReflection") @@ -66,17 +66,17 @@ local enableSchedulingProfiler = require("@pkg/@jsdotlua/shared").ReactFeatureFlags.enableSchedulingProfiler local ReactSharedInternals = require("@pkg/@jsdotlua/shared").ReactSharedInternals local getPublicInstance = require("./ReactFiberHostConfig").getPublicInstance -local ReactFiberContext = require("./ReactFiberContext.new.lua") +local ReactFiberContext = require("./ReactFiberContext.new.luau") local findCurrentUnmaskedContext = ReactFiberContext.findCurrentUnmaskedContext local processChildContext = ReactFiberContext.processChildContext local emptyContextObject = ReactFiberContext.emptyContextObject local isLegacyContextProvider = ReactFiberContext.isContextProvider -local ReactFiberRoot = require("./ReactFiberRoot.new.lua") +local ReactFiberRoot = require("./ReactFiberRoot.new.luau") local createFiberRoot = ReactFiberRoot.createFiberRoot -local ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.lua") +local ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.luau") local injectInternals = ReactFiberDevToolsHook.injectInternals local onScheduleRoot = ReactFiberDevToolsHook.onScheduleRoot -local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") :: any +local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") :: any local requestEventTime = ReactFiberWorkLoop.requestEventTime local requestUpdateLane = ReactFiberWorkLoop.requestUpdateLane local scheduleUpdateOnFiber = ReactFiberWorkLoop.scheduleUpdateOnFiber @@ -94,7 +94,7 @@ local warnIfNotScopedWithMatchingAct = ReactFiberWorkLoop.warnIfNotScopedWithMat local warnIfUnmockedScheduler = ReactFiberWorkLoop.warnIfUnmockedScheduler local IsThisRendererActing = ReactFiberWorkLoop.IsThisRendererActing local act = ReactFiberWorkLoop.act :: (() -> ()) -> () -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") local createUpdate = ReactUpdateQueue.createUpdate local enqueueUpdate = ReactUpdateQueue.enqueueUpdate local ReactCurrentFiber = require("./ReactCurrentFiber") @@ -113,7 +113,7 @@ local getHighestPriorityPendingLanes = ReactFiberLane.getHighestPriorityPendingL local higherPriorityLane = ReactFiberLane.higherPriorityLane local getCurrentUpdateLanePriority = ReactFiberLane.getCurrentUpdateLanePriority local setCurrentUpdateLanePriority = ReactFiberLane.setCurrentUpdateLanePriority --- local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.lua") +-- local ReactFiberHotReloading = require("./ReactFiberHotReloading.new.luau") -- local scheduleRefresh = ReactFiberHotReloading.scheduleRefresh -- local scheduleRoot = ReactFiberHotReloading.scheduleRoot -- local setRefreshHandler = ReactFiberHotReloading.setRefreshHandler @@ -134,7 +134,7 @@ exports.getNearestMountedFiber = ReactFiberTreeReflection.getNearestMountedFiber exports.findCurrentFiberUsingSlowPath = ReactFiberTreeReflection.findCurrentFiberUsingSlowPath --- exports.registerMutableSourceForHydration = require("./ReactMutableSource.new.lua").registerMutableSourceForHydration +-- exports.registerMutableSourceForHydration = require("./ReactMutableSource.new.luau").registerMutableSourceForHydration exports.createPortal = require("./ReactPortal").createPortal -- local ReactTestSelectors = require("./ReactTestSelectors") -- exports.createComponentSelector = ReactTestSelectors.createComponentSelector diff --git a/modules/react-reconciler/src/ReactFiberRoot.new.luau b/modules/react-reconciler/src/ReactFiberRoot.new.luau index f5203310..106ad7ca 100644 --- a/modules/react-reconciler/src/ReactFiberRoot.new.luau +++ b/modules/react-reconciler/src/ReactFiberRoot.new.luau @@ -23,7 +23,7 @@ type RootTag = ReactRootTags.RootTag local ReactFiberHostConfig = require("./ReactFiberHostConfig") local noTimeout = ReactFiberHostConfig.noTimeout local supportsHydration = ReactFiberHostConfig.supportsHydration -local ReactFiber = require("./ReactFiber.new.lua") +local ReactFiber = require("./ReactFiber.new.luau") local createHostRootFiber = ReactFiber.createHostRootFiber local ReactFiberLane = require("./ReactFiberLane") local NoLanes = ReactFiberLane.NoLanes @@ -36,7 +36,7 @@ local enableSuspenseCallback = ReactFeatureFlags.enableSuspenseCallback -- ROBLOX deviation: import from tracing from Scheduler export to avoid direct file access local Scheduler = require("@pkg/@jsdotlua/scheduler").tracing local unstable_getThreadID = Scheduler.unstable_getThreadID -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") local initializeUpdateQueue = ReactUpdateQueue.initializeUpdateQueue local LegacyRoot = ReactRootTags.LegacyRoot local BlockingRoot = ReactRootTags.BlockingRoot diff --git a/modules/react-reconciler/src/ReactFiberSuspenseContext.new.luau b/modules/react-reconciler/src/ReactFiberSuspenseContext.new.luau index 6e0d010c..723d8791 100644 --- a/modules/react-reconciler/src/ReactFiberSuspenseContext.new.luau +++ b/modules/react-reconciler/src/ReactFiberSuspenseContext.new.luau @@ -13,7 +13,7 @@ local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber -local ReactFiberStack = require("./ReactFiberStack.new.lua") +local ReactFiberStack = require("./ReactFiberStack.new.luau") type StackCursor = ReactFiberStack.StackCursor local createCursor = ReactFiberStack.createCursor diff --git a/modules/react-reconciler/src/ReactFiberThrow.new.luau b/modules/react-reconciler/src/ReactFiberThrow.new.luau index 8cedc971..d7114790 100644 --- a/modules/react-reconciler/src/ReactFiberThrow.new.luau +++ b/modules/react-reconciler/src/ReactFiberThrow.new.luau @@ -27,7 +27,7 @@ type Lanes = ReactFiberLane.Lanes type Lane = ReactFiberLane.Lane local ReactCapturedValue = require("./ReactCapturedValue") type CapturedValue = ReactCapturedValue.CapturedValue -local ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") +local ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") type Update = ReactInternalTypes.Update local ReactTypes = require("@pkg/@jsdotlua/shared") @@ -35,7 +35,7 @@ type React_Component = ReactTypes.React_Component type Thenable = ReactTypes.Thenable type Wakeable = ReactTypes.Wakeable -local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.lua") +local ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.luau") type SuspenseContext = ReactFiberSuspenseContext.SuspenseContext local getComponentName = require("@pkg/@jsdotlua/shared").getComponentName @@ -54,7 +54,7 @@ local ShouldCapture = ReactFiberFlags.ShouldCapture local LifecycleEffectMask = ReactFiberFlags.LifecycleEffectMask local ForceUpdateForLegacySuspense = ReactFiberFlags.ForceUpdateForLegacySuspense local shouldCaptureSuspense = - require("./ReactFiberSuspenseComponent.new.lua").shouldCaptureSuspense + require("./ReactFiberSuspenseComponent.new.luau").shouldCaptureSuspense local ReactTypeOfMode = require("./ReactTypeOfMode") local NoMode = ReactTypeOfMode.NoMode local BlockingMode = ReactTypeOfMode.BlockingMode @@ -86,7 +86,7 @@ local markLegacyErrorBoundaryAsFailedRef, isAlreadyFailedLegacyErrorBoundaryRef, -- ROBLOX deviation: lazy initialize ReactFiberWorkLoop to prevent cyclic module dependency local markLegacyErrorBoundaryAsFailed = function(...) if not markLegacyErrorBoundaryAsFailedRef then - ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") + ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") markLegacyErrorBoundaryAsFailedRef = ReactFiberWorkLoop.markLegacyErrorBoundaryAsFailed end @@ -101,14 +101,14 @@ end -- } = require(Packages../ReactFiberWorkLoop.new' local pingSuspendedRoot = function(...) if ReactFiberWorkLoop == nil then - ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") + ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") end pingSuspendedRootRef = ReactFiberWorkLoop.pingSuspendedRoot return pingSuspendedRootRef(...) end local isAlreadyFailedLegacyErrorBoundary = function(...) if ReactFiberWorkLoop == nil then - ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") + ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") end isAlreadyFailedLegacyErrorBoundaryRef = ReactFiberWorkLoop.isAlreadyFailedLegacyErrorBoundary diff --git a/modules/react-reconciler/src/ReactFiberTreeReflection.luau b/modules/react-reconciler/src/ReactFiberTreeReflection.luau index 0d62b991..c7122f64 100644 --- a/modules/react-reconciler/src/ReactFiberTreeReflection.luau +++ b/modules/react-reconciler/src/ReactFiberTreeReflection.luau @@ -17,7 +17,7 @@ type Fiber = ReactInternalTypes.Fiber local ReactFiberHostConfig = require("./ReactFiberHostConfig") type Container = ReactFiberHostConfig.Container type SuspenseInstance = ReactFiberHostConfig.SuspenseInstance -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState local invariant = require("@pkg/@jsdotlua/shared").invariant diff --git a/modules/react-reconciler/src/ReactFiberUnwindWork.new.luau b/modules/react-reconciler/src/ReactFiberUnwindWork.new.luau index 6edad46b..40a4dfb1 100644 --- a/modules/react-reconciler/src/ReactFiberUnwindWork.new.luau +++ b/modules/react-reconciler/src/ReactFiberUnwindWork.new.luau @@ -13,11 +13,11 @@ local ReactInternalTypes = require("./ReactInternalTypes") type Fiber = ReactInternalTypes.Fiber local ReactFiberLane = require("./ReactFiberLane") type Lanes = ReactFiberLane.Lanes -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState local resetMutableSourceWorkInProgressVersions = - require("./ReactMutableSource.new.lua").resetWorkInProgressVersions + require("./ReactMutableSource.new.luau").resetWorkInProgressVersions local ReactWorkTags = require("./ReactWorkTags") -- local {ReactFiberFlags.DidCapture, ReactFiberFlags.NoFlags, ReactFiberFlags.ShouldCapture} = require("./ReactFiberFlags") local ReactFiberFlags = require("./ReactFiberFlags") @@ -27,28 +27,28 @@ local ReactFeatureFlags = require("@pkg/@jsdotlua/shared").ReactFeatureFlags local enableSuspenseServerRenderer = ReactFeatureFlags.enableSuspenseServerRenderer local enableProfilerTimer = ReactFeatureFlags.enableProfilerTimer -local ReactFiberHostContext = require("./ReactFiberHostContext.new.lua") +local ReactFiberHostContext = require("./ReactFiberHostContext.new.luau") local popHostContainer = ReactFiberHostContext.popHostContainer local popHostContext = ReactFiberHostContext.popHostContext local popSuspenseContext = - require("./ReactFiberSuspenseContext.new.lua").popSuspenseContext + require("./ReactFiberSuspenseContext.new.luau").popSuspenseContext local resetHydrationState = - require("./ReactFiberHydrationContext.new.lua").resetHydrationState -local ReactFiberContext = require("./ReactFiberContext.new.lua") + require("./ReactFiberHydrationContext.new.luau").resetHydrationState +local ReactFiberContext = require("./ReactFiberContext.new.luau") local isLegacyContextProvider = ReactFiberContext.isContextProvider local popLegacyContext = ReactFiberContext.popContext local popTopLevelLegacyContextObject = ReactFiberContext.popTopLevelContextObject -local popProvider = require("./ReactFiberNewContext.new.lua").popProvider +local popProvider = require("./ReactFiberNewContext.new.luau").popProvider -- ROBLOX FIXME: this causes a circular require local popRenderLanesRef local popRenderLanes = function(...) if not popRenderLanesRef then - popRenderLanesRef = require("./ReactFiberWorkLoop.new.lua").popRenderLanes + popRenderLanesRef = require("./ReactFiberWorkLoop.new.luau").popRenderLanes end return popRenderLanesRef(...) end local transferActualDuration = - require("./ReactProfilerTimer.new.lua").transferActualDuration + require("./ReactProfilerTimer.new.luau").transferActualDuration local invariant = require("@pkg/@jsdotlua/shared").invariant diff --git a/modules/react-reconciler/src/ReactFiberWorkLoop.new.luau b/modules/react-reconciler/src/ReactFiberWorkLoop.new.luau index c9aaed58..32153352 100644 --- a/modules/react-reconciler/src/ReactFiberWorkLoop.new.luau +++ b/modules/react-reconciler/src/ReactFiberWorkLoop.new.luau @@ -37,9 +37,9 @@ local Scheduler = require("@pkg/@jsdotlua/scheduler") type Interaction = Scheduler.Interaction -local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.lua") +local ReactFiberSuspenseComponent = require("./ReactFiberSuspenseComponent.new.luau") type SuspenseState = ReactFiberSuspenseComponent.SuspenseState -local ReactFiberStack = require("./ReactFiberStack.new.lua") +local ReactFiberStack = require("./ReactFiberStack.new.luau") type StackCursor = ReactFiberStack.StackCursor local ReactFeatureFlags = require("@pkg/@jsdotlua/shared").ReactFeatureFlags @@ -60,7 +60,7 @@ local describeError = require("@pkg/@jsdotlua/shared").describeError local ReactSharedInternals = ReactShared.ReactSharedInternals local invariant = ReactShared.invariant -local SchedulerWithReactIntegration = require("./SchedulerWithReactIntegration.new.lua") +local SchedulerWithReactIntegration = require("./SchedulerWithReactIntegration.new.luau") local scheduleCallback = SchedulerWithReactIntegration.scheduleCallback local cancelCallback = SchedulerWithReactIntegration.cancelCallback local getCurrentPriorityLevel = SchedulerWithReactIntegration.getCurrentPriorityLevel @@ -113,7 +113,7 @@ local ReactFiberHostConfig = require("./ReactFiberHostConfig") -- local afterActiveInstanceBlur = ReactFiberHostConfig.afterActiveInstanceBlur -- local clearContainer = ReactFiberHostConfig.clearContainer -local ReactFiber = require("./ReactFiber.new.lua") +local ReactFiber = require("./ReactFiber.new.luau") -- deviation: Use properties directly instead of localizing to avoid 200 limit -- local createWorkInProgress = ReactFiber.createWorkInProgress -- local assignFiberPropertiesInDEV = ReactFiber.assignFiberPropertiesInDEV @@ -185,14 +185,14 @@ local ReactFiberTransition = require("./ReactFiberTransition") -- local requestCurrentTransition = ReactFiberTransition.requestCurrentTransition -- local NoTransition = ReactFiberTransition.NoTransition -local ReactFiberUnwindWork = require("./ReactFiberUnwindWork.new.lua") :: any +local ReactFiberUnwindWork = require("./ReactFiberUnwindWork.new.luau") :: any local unwindWork = ReactFiberUnwindWork.unwindWork local unwindInterruptedWork = ReactFiberUnwindWork.unwindInterruptedWork -local ReactFiberThrow = require("./ReactFiberThrow.new.lua") :: any +local ReactFiberThrow = require("./ReactFiberThrow.new.luau") :: any local throwException = ReactFiberThrow.throwException local createRootErrorUpdate = ReactFiberThrow.createRootErrorUpdate local createClassErrorUpdate = ReactFiberThrow.createClassErrorUpdate -local ReactFiberCommitWork = require("./ReactFiberCommitWork.new.lua") +local ReactFiberCommitWork = require("./ReactFiberCommitWork.new.luau") local commitBeforeMutationEffectOnFiber = ReactFiberCommitWork.commitBeforeMutationLifeCycles local commitPlacement = ReactFiberCommitWork.commitPlacement @@ -215,10 +215,10 @@ local recursivelyCommitLayoutEffects = ReactFiberCommitWork.recursivelyCommitLay local Promise = require("@pkg/@jsdotlua/promise") -local enqueueUpdate = require("./ReactUpdateQueue.new.lua").enqueueUpdate +local enqueueUpdate = require("./ReactUpdateQueue.new.luau").enqueueUpdate local resetContextDependencies = - require("./ReactFiberNewContext.new.lua").resetContextDependencies + require("./ReactFiberNewContext.new.luau").resetContextDependencies -- ROBLOX deviation: Pre-declare function local ensureRootIsScheduled @@ -237,7 +237,7 @@ local originalBeginWork = function(current: Fiber | nil, workInProgress: Fiber, renderLanes: Lanes): Fiber | nil if not lazyInitRefs.originalBeginWorkRef then lazyInitRefs.originalBeginWorkRef = - require("./ReactFiberBeginWork.new.lua").beginWork + require("./ReactFiberBeginWork.new.luau").beginWork end return lazyInitRefs.originalBeginWorkRef(current, workInProgress, renderLanes) end @@ -246,7 +246,7 @@ local completeWork = function(current: Fiber | nil, workInProgress: Fiber, renderLanes: Lanes): Fiber | nil if not lazyInitRefs.completeWorkRef then lazyInitRefs.completeWorkRef = - require("./ReactFiberCompleteWork.new.lua").completeWork + require("./ReactFiberCompleteWork.new.luau").completeWork end return (lazyInitRefs.completeWorkRef :: any)(current, workInProgress, renderLanes) end @@ -254,7 +254,7 @@ local completeWork = local ReactFiberHooks -- ROBLOX deviation: lazy init for functions from ReactFiberHooks local function initReactFiberHooks() - ReactFiberHooks = require("./ReactFiberHooks.new.lua") + ReactFiberHooks = require("./ReactFiberHooks.new.luau") lazyInitRefs.resetHooksAfterThrowRef = ReactFiberHooks.resetHooksAfterThrow lazyInitRefs.ContextOnlyDispatcherRef = ReactFiberHooks.ContextOnlyDispatcher lazyInitRefs.getIsUpdatingOpaqueValueInRenderPhaseInDEVRef = @@ -290,11 +290,11 @@ local pushToStack = ReactFiberStack.push local popFromStack = ReactFiberStack.pop local createCursor = ReactFiberStack.createCursor -local ReactProfilerTimer = require("./ReactProfilerTimer.new.lua") +local ReactProfilerTimer = require("./ReactProfilerTimer.new.luau") -- DEV stuff local getComponentName = require("@pkg/@jsdotlua/shared").getComponentName -local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.lua") +local ReactStrictModeWarnings = require("./ReactStrictModeWarnings.new.luau") local ReactCurrentFiber = require("./ReactCurrentFiber") -- deviation: these two properties would be captured as values instead of bound -- local ReactCurrentDebugFiberIsRenderingInDEV = ReactCurrentFiber.isRendering @@ -305,7 +305,7 @@ local ReactErrorUtils = require("@pkg/@jsdotlua/shared").ReactErrorUtils local invokeGuardedCallback = ReactErrorUtils.invokeGuardedCallback local hasCaughtError = ReactErrorUtils.hasCaughtError local clearCaughtError = ReactErrorUtils.clearCaughtError -local onCommitRootDevTools = require("./ReactFiberDevToolsHook.new.lua").onCommitRoot +local onCommitRootDevTools = require("./ReactFiberDevToolsHook.new.luau").onCommitRoot local onCommitRootTestSelector = require("./ReactTestSelectors").onCommitRoot -- Used by `act` diff --git a/modules/react-reconciler/src/ReactUpdateQueue.new.luau b/modules/react-reconciler/src/ReactUpdateQueue.new.luau index 918eaac2..03179cd2 100644 --- a/modules/react-reconciler/src/ReactUpdateQueue.new.luau +++ b/modules/react-reconciler/src/ReactUpdateQueue.new.luau @@ -107,18 +107,18 @@ local isSubsetOfLanes = ReactFiberLane.isSubsetOfLanes local mergeLanes = ReactFiberLane.mergeLanes -- ROBLOX deviation: lazy instantiate to avoid circular require -local ReactFiberNewContext --= require("./ReactFiberNewContext.new.lua") +local ReactFiberNewContext --= require("./ReactFiberNewContext.new.luau") -- local enterDisallowedContextReadInDEV = ReactFiberNewContext.enterDisallowedContextReadInDEV -- local exitDisallowedContextReadInDEV = ReactFiberNewContext.exitDisallowedContextReadInDEV local function enterDisallowedContextReadInDEV() if not ReactFiberNewContext then - ReactFiberNewContext = require("./ReactFiberNewContext.new.lua") :: any + ReactFiberNewContext = require("./ReactFiberNewContext.new.luau") :: any end ReactFiberNewContext.enterDisallowedContextReadInDEV() end local function exitDisallowedContextReadInDEV() if not ReactFiberNewContext then - ReactFiberNewContext = require("./ReactFiberNewContext.new.lua") :: any + ReactFiberNewContext = require("./ReactFiberNewContext.new.luau") :: any end ReactFiberNewContext.exitDisallowedContextReadInDEV() end @@ -133,7 +133,7 @@ local debugRenderPhaseSideEffectsForStrictMode = local ReactTypeOfMode = require("./ReactTypeOfMode") local StrictMode = ReactTypeOfMode.StrictMode --- local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.lua") +-- local ReactFiberWorkLoop = require("./ReactFiberWorkLoop.new.luau") local markSkippedUpdateLanes = require("./ReactFiberWorkInProgress").markSkippedUpdateLanes diff --git a/modules/react-reconciler/src/SchedulerWithReactIntegration.new.luau b/modules/react-reconciler/src/SchedulerWithReactIntegration.new.luau index 46a101cf..99ba25ab 100644 --- a/modules/react-reconciler/src/SchedulerWithReactIntegration.new.luau +++ b/modules/react-reconciler/src/SchedulerWithReactIntegration.new.luau @@ -47,7 +47,7 @@ local Scheduler_IdlePriority = Scheduler.unstable_IdlePriority -- with _just_ these constant definitions; it helps us avoid a circular require -- issue with `ReactFiberLanes` local ReactFiberSchedulerPriorities = - require("./ReactFiberSchedulerPriorities.roblox.lua") + require("./ReactFiberSchedulerPriorities.roblox.luau") local ImmediatePriority = ReactFiberSchedulerPriorities.ImmediatePriority local UserBlockingPriority = ReactFiberSchedulerPriorities.UserBlockingPriority local NormalPriority = ReactFiberSchedulerPriorities.NormalPriority diff --git a/modules/react-reconciler/src/__tests__/ReactComponentLifeCycle.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactComponentLifeCycle.roblox.spec.luau index d5368d73..9b3d4100 100644 --- a/modules/react-reconciler/src/__tests__/ReactComponentLifeCycle.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactComponentLifeCycle.roblox.spec.luau @@ -1,4 +1,4 @@ --- Copy of ReactComponentLifeCycle.spec.lua that instead tests old Roact lifecycle method names (which we'll support temporarily) +-- Copy of ReactComponentLifeCycle.spec.luau that instead tests old Roact lifecycle method names (which we'll support temporarily) --[[ * Copyright (c) Facebook, Inc. and its affiliates. diff --git a/modules/react-reconciler/src/__tests__/ReactFiberContext-internal.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberContext-internal.spec.luau index 5df607b4..73e90c02 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberContext-internal.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberContext-internal.spec.luau @@ -25,8 +25,8 @@ local ReactFeatureFlags beforeEach(function() jest.resetModules() - ReactFiberContext = require("./ReactFiberContext.new.lua") - ReactFiber = require("./ReactFiber.new.lua") + ReactFiberContext = require("./ReactFiberContext.new.luau") + ReactFiber = require("./ReactFiber.new.luau") ReactRootTags = require("./ReactRootTags") ReactFeatureFlags = require("@pkg/@jsdotlua/shared").ReactFeatureFlags ReactFeatureFlags.disableLegacyContext = false diff --git a/modules/react-reconciler/src/__tests__/ReactFiberDevToolsHook-internal.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberDevToolsHook-internal.spec.luau index 99348ff3..eeb85dbe 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberDevToolsHook-internal.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberDevToolsHook-internal.spec.luau @@ -26,7 +26,7 @@ local ReactFiberDevToolsHook, ReactDevtoolsShared beforeEach(function() jest.resetModules() - ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.lua") + ReactFiberDevToolsHook = require("./ReactFiberDevToolsHook.new.luau") ReactDevtoolsShared = require("@dev-packages/ReactDevtoolsShared") end) diff --git a/modules/react-reconciler/src/__tests__/ReactFiberLane.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberLane.roblox.spec.luau index 196470a8..606122ae 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberLane.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberLane.roblox.spec.luau @@ -19,7 +19,7 @@ local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Object = LuauPolyfill.Object local ReactFiberSchedulerPriorities = - require("../ReactFiberSchedulerPriorities.roblox.lua") + require("../ReactFiberSchedulerPriorities.roblox.luau") local ImmediatePriority = ReactFiberSchedulerPriorities.ImmediatePriority local NormalPriority = ReactFiberSchedulerPriorities.NormalPriority local NoPriority = ReactFiberSchedulerPriorities.NoPriority diff --git a/modules/react-reconciler/src/__tests__/ReactFiberRoot.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberRoot.roblox.spec.luau index c1b902ce..3d077077 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberRoot.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberRoot.roblox.spec.luau @@ -22,7 +22,7 @@ local ReactRootTags beforeEach(function() jest.resetModules() - ReactFiberRoot = require("./ReactFiberRoot.new.lua") + ReactFiberRoot = require("./ReactFiberRoot.new.luau") ReactRootTags = require("./ReactRootTags") end) diff --git a/modules/react-reconciler/src/__tests__/ReactFiberStack-test.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberStack-test.roblox.spec.luau index d9d566bb..64a65cec 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberStack-test.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberStack-test.roblox.spec.luau @@ -11,7 +11,7 @@ local ReactFiberStack describe("ReactFiberStack", function() beforeEach(function() jest.resetModules() - ReactFiberStack = require("./ReactFiberStack.new.lua") + ReactFiberStack = require("./ReactFiberStack.new.luau") end) it("creates a cursor with the given default value", function() diff --git a/modules/react-reconciler/src/__tests__/ReactFiberSuspenseComponent.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberSuspenseComponent.roblox.spec.luau index 45bfb02d..6ca1fc6c 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberSuspenseComponent.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberSuspenseComponent.roblox.spec.luau @@ -11,7 +11,7 @@ describe("ReactFiberSuspenseComponent", function() beforeEach(function() jest.resetModules() - ReactFiberSuspenseComponent = require("../ReactFiberSuspenseComponent.new.lua") + ReactFiberSuspenseComponent = require("../ReactFiberSuspenseComponent.new.luau") end) describe("shouldCaptureSuspense", function() diff --git a/modules/react-reconciler/src/__tests__/ReactFiberSuspenseContext.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactFiberSuspenseContext.roblox.spec.luau index a92cea07..24dab0b0 100644 --- a/modules/react-reconciler/src/__tests__/ReactFiberSuspenseContext.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactFiberSuspenseContext.roblox.spec.luau @@ -5,14 +5,14 @@ local jest = JestGlobals.jest local beforeEach = JestGlobals.beforeEach local describe = JestGlobals.describe local it = JestGlobals.it -local ReactFiber = require("./ReactFiber.new.lua") +local ReactFiber = require("./ReactFiber.new.luau") local ReactFiberSuspenseContext describe("ReactFiberSuspenseContext", function() beforeEach(function() jest.resetModules() - ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.lua") + ReactFiberSuspenseContext = require("./ReactFiberSuspenseContext.new.luau") end) describe("suspense context stack", function() diff --git a/modules/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer.spec.luau b/modules/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer.spec.luau index c38481c8..75882708 100644 --- a/modules/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer.spec.luau @@ -470,7 +470,7 @@ describe("updates during the render phase", function() local function ScrollView(props) -- ROBLOX LUAU FIXME: without annotation, generates the -- following error: - -- roact-alignment\modules\react-reconciler\src\__tests__\ReactHooksWithNoopRenderer.spec.lua:473:53-63: (E001) TypeError: Type '{ row: number }' could not be converted into 'any?' + -- roact-alignment\modules\react-reconciler\src\__tests__\ReactHooksWithNoopRenderer.spec.luau:473:53-63: (E001) TypeError: Type '{ row: number }' could not be converted into 'any?' -- caused by: -- None of the union options are compatible. For example: Type '{ row: number }' could not be converted into '{+ row: never +}' -- caused by: @@ -1296,7 +1296,9 @@ describe("useEffect", function() ReactNoop.render(React.createElement(Counter, { count = 0 }), function() Scheduler.unstable_yieldValue("Sync effect") end) - jestExpect(Scheduler).toFlushAndYieldThrough({ 0, "Sync effect" } :: Array) + jestExpect(Scheduler).toFlushAndYieldThrough( + { 0, "Sync effect" } :: Array + ) jestExpect(ReactNoop.getChildren()).toEqual({ span(0) }) -- Before the effects have a chance to flush, schedule another update ReactNoop.render(React.createElement(Counter, { count = 1 }), function() @@ -4047,15 +4049,18 @@ describe("useRef", function() end end end, {}) - local debouncedCallback = useCallback(function(...) - if typeof(timeoutID.current) == "table" then - clearTimeout(timeoutID.current) - end - timeoutID.current = setTimeout(callback, ms, ...) - end, { - callback, - ms, - } :: Array) + local debouncedCallback = useCallback( + function(...) + if typeof(timeoutID.current) == "table" then + clearTimeout(timeoutID.current) + end + timeoutID.current = setTimeout(callback, ms, ...) + end, + { + callback, + ms, + } :: Array + ) return useCallback(debouncedCallback, inputs) end @@ -4136,15 +4141,18 @@ describe("useBinding", function() end end end, {}) - local debouncedCallback = useCallback(function(...) - if typeof(timeoutID:getValue()) == "table" then - clearTimeout(timeoutID:getValue()) - end - updateTimeout(setTimeout(callback, ms, ...)) - end, { - callback, - ms, - } :: Array) + local debouncedCallback = useCallback( + function(...) + if typeof(timeoutID:getValue()) == "table" then + clearTimeout(timeoutID:getValue()) + end + updateTimeout(setTimeout(callback, ms, ...)) + end, + { + callback, + ms, + } :: Array + ) return useCallback(debouncedCallback, inputs) end diff --git a/modules/react-reconciler/src/__tests__/ReactUpdateQueue.roblox.spec.luau b/modules/react-reconciler/src/__tests__/ReactUpdateQueue.roblox.spec.luau index bb3a82b9..5170dbbe 100644 --- a/modules/react-reconciler/src/__tests__/ReactUpdateQueue.roblox.spec.luau +++ b/modules/react-reconciler/src/__tests__/ReactUpdateQueue.roblox.spec.luau @@ -24,8 +24,8 @@ beforeEach(function() jest.resetModules() React = require("@pkg/@jsdotlua/react") - ReactUpdateQueue = require("./ReactUpdateQueue.new.lua") - Fiber = require("./ReactFiber.new.lua") + ReactUpdateQueue = require("./ReactUpdateQueue.new.luau") + Fiber = require("./ReactFiber.new.luau") FiberLane = require("./ReactFiberLane") component = React.Component:extend("fundamental") diff --git a/modules/react-roblox/.npmignore b/modules/react-roblox/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-roblox/.npmignore +++ b/modules/react-roblox/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-roblox/package.json b/modules/react-roblox/package.json index 5ded3f9a..9db2dcd7 100644 --- a/modules/react-roblox/package.json +++ b/modules/react-roblox/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-roblox" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -21,4 +21,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/react-roblox/src/client/ReactRoblox.luau b/modules/react-roblox/src/client/ReactRoblox.luau index ff19a410..5641c5ed 100644 --- a/modules/react-roblox/src/client/ReactRoblox.luau +++ b/modules/react-roblox/src/client/ReactRoblox.luau @@ -10,7 +10,7 @@ ]] local ReactTypes = require("@pkg/@jsdotlua/shared") type ReactNodeList = ReactTypes.ReactNodeList -local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.luau") type Container = ReactRobloxHostTypes.Container -- local '../shared/checkReact' @@ -30,7 +30,7 @@ local isValidContainer = ReactRobloxRoot.isValidContainer -- local createEventHandle = require("./ReactDOMEventHandle").createEventHandle -- ROBLOX deviation: Use the config-injecting entry point for the reconciler -local ReactReconciler = require("../ReactReconciler.roblox.lua") +local ReactReconciler = require("../ReactReconciler.roblox.luau") -- local batchedEventUpdates = ReactReconciler.batchedEventUpdates local batchedUpdates = ReactReconciler.batchedUpdates -- local discreteUpdates = ReactReconciler.discreteUpdates diff --git a/modules/react-roblox/src/client/ReactRobloxComponent.luau b/modules/react-roblox/src/client/ReactRobloxComponent.luau index 9b70302a..c236d24a 100644 --- a/modules/react-roblox/src/client/ReactRobloxComponent.luau +++ b/modules/react-roblox/src/client/ReactRobloxComponent.luau @@ -14,7 +14,7 @@ local Object = LuauPolyfill.Object local RobloxComponentProps = require("./roblox/RobloxComponentProps") -local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.luau") type HostInstance = ReactRobloxHostTypes.HostInstance -- deviation: Essentially a placeholder for dom-specific logic, taking the place @@ -34,7 +34,7 @@ local function diffProperties( lastRawProps: Object, nextRawProps: Object, rootContainerElement: HostInstance -): (nil | Array) +): nil | Array -- if _G.__DEV__ then -- validatePropertiesInDevelopment(tag, nextRawProps) -- end diff --git a/modules/react-roblox/src/client/ReactRobloxComponentTree.luau b/modules/react-roblox/src/client/ReactRobloxComponentTree.luau index 78fe97ff..c8a6134f 100644 --- a/modules/react-roblox/src/client/ReactRobloxComponentTree.luau +++ b/modules/react-roblox/src/client/ReactRobloxComponentTree.luau @@ -10,7 +10,7 @@ * @flow ]] -local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.luau") type HostInstance = ReactRobloxHostTypes.HostInstance type TextInstance = ReactRobloxHostTypes.TextInstance type SuspenseInstance = ReactRobloxHostTypes.SuspenseInstance @@ -61,16 +61,19 @@ local internalContainerInstanceKey = "__reactContainer$" .. randomKey -- local internalEventHandlerListenersKey = '__reactListeners$' + randomKey -- local internalEventHandlesSetKey = '__reactHandles$' + randomKey -exports.precacheFiberNode = - function(hostInst: Fiber, node: HostInstance | SuspenseInstance | ReactScopeInstance) - instanceToFiber[node] = hostInst - end +exports.precacheFiberNode = function( + hostInst: Fiber, + node: HostInstance | SuspenseInstance | ReactScopeInstance +) + instanceToFiber[node] = hostInst +end -exports.uncacheFiberNode = - function(node: HostInstance | SuspenseInstance | ReactScopeInstance) - instanceToFiber[node] = nil - instanceToProps[node] = nil - end +exports.uncacheFiberNode = function( + node: HostInstance | SuspenseInstance | ReactScopeInstance +) + instanceToFiber[node] = nil + instanceToProps[node] = nil +end exports.markContainerAsRoot = function(hostRoot: Fiber, node: Container) -- deviation: Use our module-level map @@ -185,7 +188,7 @@ end exports.getInstanceFromNode = function(node): Fiber? -- ROBLOX deviation: lazy initialize to avoid circular dependency if ReactWorkTags == nil then - local ReactReconciler = require("../ReactReconciler.roblox.lua") :: any + local ReactReconciler = require("../ReactReconciler.roblox.luau") :: any ReactWorkTags = ReactReconciler.ReactWorkTags HostComponent = ReactWorkTags.HostComponent @@ -229,10 +232,11 @@ exports.getNodeFromInstance = function(inst: Fiber): Instance | TextInstance error("getNodeFromInstance: Invalid argument.") end -exports.getFiberCurrentPropsFromNode = - function(node: Instance | TextInstance | SuspenseInstance): Props - return instanceToProps[node] - end +exports.getFiberCurrentPropsFromNode = function( + node: Instance | TextInstance | SuspenseInstance +): Props + return instanceToProps[node] +end exports.updateFiberProps = function(node: Instance | SuspenseInstance, props: Props) instanceToProps[node] = props diff --git a/modules/react-roblox/src/client/ReactRobloxHostConfig.luau b/modules/react-roblox/src/client/ReactRobloxHostConfig.luau index 9ec7fbcd..9cc2d31d 100644 --- a/modules/react-roblox/src/client/ReactRobloxHostConfig.luau +++ b/modules/react-roblox/src/client/ReactRobloxHostConfig.luau @@ -32,7 +32,7 @@ local clearTimeout = LuauPolyfill.clearTimeout -- IntersectionObserverOptions, -- ObserveVisibleRectsCallback, -- } = require(Packages.react-reconciler/src/ReactTestSelectors') -local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.luau") type RootType = ReactRobloxHostTypes.RootType type Container = ReactRobloxHostTypes.Container type HostInstance = ReactRobloxHostTypes.HostInstance @@ -587,27 +587,33 @@ exports.appendChildToContainer = function(container: Container, child: Instance) -- end end -exports.insertBefore = - function(parentInstance: Instance, child: Instance, _beforeChild: Instance) - -- ROBLOX deviation: Roblox's DOM is based on child->parent references - child.Parent = parentInstance - -- parentInstance.insertBefore(child, beforeChild) - if _G.__DEV__ then - checkTags(child) - end +exports.insertBefore = function( + parentInstance: Instance, + child: Instance, + _beforeChild: Instance +) + -- ROBLOX deviation: Roblox's DOM is based on child->parent references + child.Parent = parentInstance + -- parentInstance.insertBefore(child, beforeChild) + if _G.__DEV__ then + checkTags(child) end +end -exports.insertInContainerBefore = - function(container: Container, child: Instance, beforeChild: Instance) - -- ROBLOX deviation: use our container definition - local parentNode = container - exports.insertBefore(parentNode, child, beforeChild) - -- if container.nodeType == COMMENT_NODE) - -- (container.parentNode: any).insertBefore(child, beforeChild) - -- } else { - -- container.insertBefore(child, beforeChild) - -- end - end +exports.insertInContainerBefore = function( + container: Container, + child: Instance, + beforeChild: Instance +) + -- ROBLOX deviation: use our container definition + local parentNode = container + exports.insertBefore(parentNode, child, beforeChild) + -- if container.nodeType == COMMENT_NODE) + -- (container.parentNode: any).insertBefore(child, beforeChild) + -- } else { + -- container.insertBefore(child, beforeChild) + -- end +end -- function createEvent(type: DOMEventName, bubbles: boolean): Event { -- local event = document.createEvent('Event') @@ -659,58 +665,62 @@ exports.removeChildFromContainer = function(_container: Container, child: Instan -- end end -exports.clearSuspenseBoundary = - function(parentInstance: Instance, suspenseInstance: SuspenseInstance) - -- ROBLOX FIXME: this is a major thing we need to fix for Suspense to work as a feature - unimplemented("clearSuspenseBoundary") - -- local node = suspenseInstance - -- -- Delete all nodes within this suspense boundary. - -- -- There might be nested nodes so we need to keep track of how - -- -- deep we are and only break out when we're back on top. - -- local depth = 0 - -- do { - -- local nextNode = node.nextSibling - -- parentInstance.removeChild(node) - -- if nextNode and nextNode.nodeType == COMMENT_NODE) - -- local data = ((nextNode: any).data: string) - -- if data == SUSPENSE_END_DATA) - -- if depth == 0) - -- parentInstance.removeChild(nextNode) - -- -- Retry if any event replaying was blocked on this. - -- retryIfBlockedOn(suspenseInstance) - -- return - -- } else { - -- depth-- - -- end - -- } else if - -- data == SUSPENSE_START_DATA or - -- data == SUSPENSE_PENDING_START_DATA or - -- data == SUSPENSE_FALLBACK_START_DATA - -- ) - -- depth++ - -- end - -- end - -- node = nextNode - -- } while (node) - -- -- TODO: Warn, we didn't find the end comment boundary. - -- -- Retry if any event replaying was blocked on this. - -- retryIfBlockedOn(suspenseInstance) - end +exports.clearSuspenseBoundary = function( + parentInstance: Instance, + suspenseInstance: SuspenseInstance +) + -- ROBLOX FIXME: this is a major thing we need to fix for Suspense to work as a feature + unimplemented("clearSuspenseBoundary") + -- local node = suspenseInstance + -- -- Delete all nodes within this suspense boundary. + -- -- There might be nested nodes so we need to keep track of how + -- -- deep we are and only break out when we're back on top. + -- local depth = 0 + -- do { + -- local nextNode = node.nextSibling + -- parentInstance.removeChild(node) + -- if nextNode and nextNode.nodeType == COMMENT_NODE) + -- local data = ((nextNode: any).data: string) + -- if data == SUSPENSE_END_DATA) + -- if depth == 0) + -- parentInstance.removeChild(nextNode) + -- -- Retry if any event replaying was blocked on this. + -- retryIfBlockedOn(suspenseInstance) + -- return + -- } else { + -- depth-- + -- end + -- } else if + -- data == SUSPENSE_START_DATA or + -- data == SUSPENSE_PENDING_START_DATA or + -- data == SUSPENSE_FALLBACK_START_DATA + -- ) + -- depth++ + -- end + -- end + -- node = nextNode + -- } while (node) + -- -- TODO: Warn, we didn't find the end comment boundary. + -- -- Retry if any event replaying was blocked on this. + -- retryIfBlockedOn(suspenseInstance) +end -exports.clearSuspenseBoundaryFromContainer = - function(container: Container, suspenseInstance: SuspenseInstance) - -- ROBLOX FIXME: this is a major thing we need to fix for Suspense to work as a feature - unimplemented("clearSuspenseBoundaryFromContainer") - -- if container.nodeType == COMMENT_NODE) - -- clearSuspenseBoundary((container.parentNode: any), suspenseInstance) - -- } else if container.nodeType == ELEMENT_NODE) - -- clearSuspenseBoundary((container: any), suspenseInstance) - -- } else { - -- -- Document nodes should never contain suspense boundaries. - -- end - -- -- Retry if any event replaying was blocked on this. - -- retryIfBlockedOn(container) - end +exports.clearSuspenseBoundaryFromContainer = function( + container: Container, + suspenseInstance: SuspenseInstance +) + -- ROBLOX FIXME: this is a major thing we need to fix for Suspense to work as a feature + unimplemented("clearSuspenseBoundaryFromContainer") + -- if container.nodeType == COMMENT_NODE) + -- clearSuspenseBoundary((container.parentNode: any), suspenseInstance) + -- } else if container.nodeType == ELEMENT_NODE) + -- clearSuspenseBoundary((container: any), suspenseInstance) + -- } else { + -- -- Document nodes should never contain suspense boundaries. + -- end + -- -- Retry if any event replaying was blocked on this. + -- retryIfBlockedOn(container) +end exports.hideInstance = function(instance: Instance) unimplemented("hideInstance") diff --git a/modules/react-roblox/src/client/ReactRobloxRoot.luau b/modules/react-roblox/src/client/ReactRobloxRoot.luau index 43253385..b8f47038 100644 --- a/modules/react-roblox/src/client/ReactRobloxRoot.luau +++ b/modules/react-roblox/src/client/ReactRobloxRoot.luau @@ -9,7 +9,7 @@ * @flow ]] -local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("./ReactRobloxHostTypes.roblox.luau") type Container = ReactRobloxHostTypes.Container type RootType = ReactRobloxHostTypes.RootType type RootOptions = ReactRobloxHostTypes.RootOptions @@ -38,7 +38,7 @@ local unmarkContainerAsRoot = ReactRobloxComponentTree.unmarkContainerAsRoot -- local ensureListeningTo = require("@pkg/ReactDOMComponent").ensureListeningTo -- ROBLOX deviation: Use the config-injecting entry point for the reconciler -local ReactFiberReconciler = require("../ReactReconciler.roblox.lua") +local ReactFiberReconciler = require("../ReactReconciler.roblox.luau") local createContainer = ReactFiberReconciler.createContainer local updateContainer = ReactFiberReconciler.updateContainer -- local findHostInstanceWithNoPortals = ReactFiberReconciler.findHostInstanceWithNoPortals @@ -200,16 +200,18 @@ exports.createRoot = function(container: Container, options: RootOptions?): Root return ReactRobloxRoot.new(container, options) end -exports.createBlockingRoot = - function(container: Container, options: RootOptions?): RootType - invariant( - isValidContainer(container), - -- ROBLOX deviation: Use roblox engine terminology - "createRoot(...): Target container is not a Roblox Instance." - ) - warnIfReactDOMContainerInDEV(container) - return createBlockingRoot(container, BlockingRoot, options) - end +exports.createBlockingRoot = function( + container: Container, + options: RootOptions? +): RootType + invariant( + isValidContainer(container), + -- ROBLOX deviation: Use roblox engine terminology + "createRoot(...): Target container is not a Roblox Instance." + ) + warnIfReactDOMContainerInDEV(container) + return createBlockingRoot(container, BlockingRoot, options) +end exports.createLegacyRoot = function(container: Container, options: RootOptions?): RootType return createBlockingRoot(container, LegacyRoot, options) diff --git a/modules/react-roblox/src/client/__tests__/ReactRobloxFiber.spec.luau b/modules/react-roblox/src/client/__tests__/ReactRobloxFiber.spec.luau index e69cf984..9e388b67 100644 --- a/modules/react-roblox/src/client/__tests__/ReactRobloxFiber.spec.luau +++ b/modules/react-roblox/src/client/__tests__/ReactRobloxFiber.spec.luau @@ -993,7 +993,7 @@ it("should update portal context if it changes due to setState", function() end) it("should update portal context if it changes due to re-render", function() - -- ROBLOX TODO: This test is essentially duplicated in RobloxRenderer.roblox.spec.lua. Where do we want it? + -- ROBLOX TODO: This test is essentially duplicated in RobloxRenderer.roblox.spec.luau. Where do we want it? local portalContainer = Instance.new("Folder") local Context = React.createContext(1) diff --git a/modules/react-roblox/src/client/roblox/RobloxComponentProps.luau b/modules/react-roblox/src/client/roblox/RobloxComponentProps.luau index 5ca0a5e1..9a34c414 100644 --- a/modules/react-roblox/src/client/roblox/RobloxComponentProps.luau +++ b/modules/react-roblox/src/client/roblox/RobloxComponentProps.luau @@ -28,7 +28,7 @@ local SingleEventManager = require("./SingleEventManager") type EventManager = SingleEventManager.EventManager local Type = require("@pkg/@jsdotlua/shared").Type local getDefaultInstanceProperty = require("./getDefaultInstanceProperty") -local ReactRobloxHostTypes = require("../ReactRobloxHostTypes.roblox.lua") +local ReactRobloxHostTypes = require("../ReactRobloxHostTypes.roblox.luau") type HostInstance = ReactRobloxHostTypes.HostInstance local Tag = require("@pkg/@jsdotlua/react").Tag diff --git a/modules/react-roblox/src/init.luau b/modules/react-roblox/src/init.luau index 33ea3cd7..49afccc7 100644 --- a/modules/react-roblox/src/init.luau +++ b/modules/react-roblox/src/init.luau @@ -9,6 +9,6 @@ * @flow ]] -local HostTypes = require("./client/ReactRobloxHostTypes.roblox.lua") +local HostTypes = require("./client/ReactRobloxHostTypes.roblox.luau") export type RootType = HostTypes.RootType return require("./client/ReactRoblox") diff --git a/modules/react-shallow-renderer/.npmignore b/modules/react-shallow-renderer/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-shallow-renderer/.npmignore +++ b/modules/react-shallow-renderer/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-shallow-renderer/package.json b/modules/react-shallow-renderer/package.json index 5aee2869..9b3e1872 100644 --- a/modules/react-shallow-renderer/package.json +++ b/modules/react-shallow-renderer/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-shallow-renderer" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -20,4 +20,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/react-test-renderer/.npmignore b/modules/react-test-renderer/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react-test-renderer/.npmignore +++ b/modules/react-test-renderer/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react-test-renderer/package.json b/modules/react-test-renderer/package.json index 0496343d..cd052683 100644 --- a/modules/react-test-renderer/package.json +++ b/modules/react-test-renderer/package.json @@ -7,7 +7,7 @@ "directory": "modules/react-test-renderer" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -21,4 +21,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/react/.npmignore b/modules/react/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/react/.npmignore +++ b/modules/react/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/react/package.json b/modules/react/package.json index 08b3d5c7..37c02591 100644 --- a/modules/react/package.json +++ b/modules/react/package.json @@ -7,7 +7,7 @@ "directory": "modules/react" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, diff --git a/modules/react/src/React.luau b/modules/react/src/React.luau index d75f30b2..6d2ac006 100644 --- a/modules/react/src/React.luau +++ b/modules/react/src/React.luau @@ -27,9 +27,9 @@ local ReactLazy = require("./ReactLazy") type LazyComponent = ReactLazy.LazyComponent -- ROBLOX DEVIATION: Bindings -local ReactBinding = require("./ReactBinding.roblox.lua") +local ReactBinding = require("./ReactBinding.roblox.luau") -- ROBLOX DEVIATION: Re-export `None` marker -local ReactNone = require("./None.roblox.lua") +local ReactNone = require("./None.roblox.luau") local SharedModule = require("@pkg/@jsdotlua/shared") local ReactSymbols = SharedModule.ReactSymbols diff --git a/modules/react/src/ReactBinding.roblox.luau b/modules/react/src/ReactBinding.roblox.luau index 28a14d0c..44fceb04 100644 --- a/modules/react/src/ReactBinding.roblox.luau +++ b/modules/react/src/ReactBinding.roblox.luau @@ -22,7 +22,7 @@ type Binding = ReactTypes.ReactBinding type BindingUpdater = ReactTypes.ReactBindingUpdater local Symbol = LuauPolyfill.Symbol -local createSignal = require("./createSignal.roblox.lua") +local createSignal = require("./createSignal.roblox.luau") local BindingImpl = Symbol("BindingImpl") diff --git a/modules/react/src/ReactCreateRef.luau b/modules/react/src/ReactCreateRef.luau index 2fac640e..68657542 100644 --- a/modules/react/src/ReactCreateRef.luau +++ b/modules/react/src/ReactCreateRef.luau @@ -16,7 +16,7 @@ type RefObject = ReactTypes.RefObject A ref is nothing more than a binding with a special field 'current' that maps to the getValue method of the binding ]] -local Binding = require("./ReactBinding.roblox.lua") +local Binding = require("./ReactBinding.roblox.luau") local exports = {} diff --git a/modules/react/src/__tests__/ReactBinding.spec.luau b/modules/react/src/__tests__/ReactBinding.spec.luau index ea52ffa0..2c362dcc 100644 --- a/modules/react/src/__tests__/ReactBinding.spec.luau +++ b/modules/react/src/__tests__/ReactBinding.spec.luau @@ -8,7 +8,7 @@ local it = JestGlobals.it local ReactTypes = require("@pkg/@jsdotlua/shared") type Binding = ReactTypes.ReactBinding -local Binding = require("../ReactBinding.roblox.lua") +local Binding = require("../ReactBinding.roblox.luau") local ReactCreateRef = require("../ReactCreateRef") describe("Binding.create", function() diff --git a/modules/react/src/__tests__/ReactElementValidator-internal.spec.luau b/modules/react/src/__tests__/ReactElementValidator-internal.spec.luau index b5a49653..7cdab523 100644 --- a/modules/react/src/__tests__/ReactElementValidator-internal.spec.luau +++ b/modules/react/src/__tests__/ReactElementValidator-internal.spec.luau @@ -611,7 +611,7 @@ describe("ReactElementValidator", function() jestExpect(function() React.createElement(Foo, { __source = { - fileName = "fileName.lua", + fileName = "fileName.luau", lineNumber = 100, }, }, { React.createElement("Frame") }) diff --git a/modules/react/src/__tests__/createSignal.spec.luau b/modules/react/src/__tests__/createSignal.spec.luau index 6ff03370..6bd873a3 100644 --- a/modules/react/src/__tests__/createSignal.spec.luau +++ b/modules/react/src/__tests__/createSignal.spec.luau @@ -1,4 +1,4 @@ -local createSignal = require("../createSignal.roblox.lua") +local createSignal = require("../createSignal.roblox.luau") local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect diff --git a/modules/roact-compat/.npmignore b/modules/roact-compat/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/roact-compat/.npmignore +++ b/modules/roact-compat/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/roact-compat/package.json b/modules/roact-compat/package.json index 09cb5ef7..b5f193b1 100644 --- a/modules/roact-compat/package.json +++ b/modules/roact-compat/package.json @@ -7,7 +7,7 @@ "directory": "modules/roact-compat" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -20,4 +20,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/scheduler/.npmignore b/modules/scheduler/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/scheduler/.npmignore +++ b/modules/scheduler/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/scheduler/README.md b/modules/scheduler/README.md index 3f28495a..47f55eaf 100644 --- a/modules/scheduler/README.md +++ b/modules/scheduler/README.md @@ -8,10 +8,10 @@ Source: https://github.com/facebook/react/tree/master/packages/scheduler --- ### ✏️ Notes -* The upstream implementation of min-heap does not include tests. To validate the port, `src/__tests__/SchedulerMinHeap.spec.lua` was added +* The upstream implementation of min-heap does not include tests. To validate the port, `src/__tests__/SchedulerMinHeap.spec.luau` was added * The scheduler contains two sets of tests * A small, basic set of tests using the real scheduler and mock timers. - * A more thorough test suite that uses `MockSchedulerHostConfig.lua`, which mocks the entire HostConfig interface and provides functionality to manipulate it within tests. + * A more thorough test suite that uses `MockSchedulerHostConfig.luau`, which mocks the entire HostConfig interface and provides functionality to manipulate it within tests. #### Profiling diff --git a/modules/scheduler/package.json b/modules/scheduler/package.json index 06985182..a2981069 100644 --- a/modules/scheduler/package.json +++ b/modules/scheduler/package.json @@ -7,7 +7,7 @@ "directory": "modules/scheduler" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -18,4 +18,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/scheduler/src/SchedulerHostConfig.luau b/modules/scheduler/src/SchedulerHostConfig.luau index e7e44000..3f5ba452 100644 --- a/modules/scheduler/src/SchedulerHostConfig.luau +++ b/modules/scheduler/src/SchedulerHostConfig.luau @@ -12,4 +12,4 @@ -- deviation: In React, this module throws an error and is expected to be -- replaced via a bundler. In our case, we mock it explicitly when we need to -- mock it, and return the "default" here -return require("./forks/SchedulerHostConfig.default.lua") +return require("./forks/SchedulerHostConfig.default.luau") diff --git a/modules/scheduler/src/unstable_mock.luau b/modules/scheduler/src/unstable_mock.luau index 96420dcf..2b3a7559 100644 --- a/modules/scheduler/src/unstable_mock.luau +++ b/modules/scheduler/src/unstable_mock.luau @@ -11,7 +11,7 @@ local TracingSubscriptions = require("./TracingSubscriptions") export type Interaction = Tracing.Interaction local initializeScheduler = require("./Scheduler") -local HostConfig = require("./forks/SchedulerHostConfig.mock.lua") +local HostConfig = require("./forks/SchedulerHostConfig.mock.luau") local Scheduler = initializeScheduler(HostConfig) diff --git a/modules/shared/.npmignore b/modules/shared/.npmignore index 835df8f5..d289ef47 100644 --- a/modules/shared/.npmignore +++ b/modules/shared/.npmignore @@ -9,14 +9,14 @@ rotriever.toml .luaurc default.project.json -/globalTypes.d.lua +/globalTypes.d.luau **/sourcemap.json **/*.project.json **/__tests__ -**/*.test.lua -**/*.spec.lua -**/jest.config.lua +**/*.test.luau +**/*.spec.luau +**/jest.config.luau **/*.rbxl **/*.rbxlx diff --git a/modules/shared/README.md b/modules/shared/README.md index ec456916..8ff49579 100644 --- a/modules/shared/README.md +++ b/modules/shared/README.md @@ -8,9 +8,9 @@ Source: https://github.com/facebook/react/tree/master/packages/shared --- ### ✏️ Notes -* `ReactTypes.js` contains a number of complex flow-type definitions that are not yet possible with Luau, so it's been simplified to a stub called `ReactTypes.roblox.lua` -* `ReactComponentStackFrame.js` is replaced by a partially-ported stub (`ReactComponentStackFrame.roblox.lua`) since it contains logic for parsing/navigating JS-specific stack structure. This needs to be ported to the equivalent functionality in Luau. -* Some slight changes to `isValidElement.lua` that account for the divergent shape of Component and PureComponent objects in our port (for `react`, they're functions; for us, they're tables) +* `ReactTypes.js` contains a number of complex flow-type definitions that are not yet possible with Luau, so it's been simplified to a stub called `ReactTypes.roblox.luau` +* `ReactComponentStackFrame.js` is replaced by a partially-ported stub (`ReactComponentStackFrame.roblox.luau`) since it contains logic for parsing/navigating JS-specific stack structure. This needs to be ported to the equivalent functionality in Luau. +* Some slight changes to `isValidElement.luau` that account for the divergent shape of Component and PureComponent objects in our port (for `react`, they're functions; for us, they're tables) ### ❌ Excluded diff --git a/modules/shared/package.json b/modules/shared/package.json index 031f7bb1..db71b888 100644 --- a/modules/shared/package.json +++ b/modules/shared/package.json @@ -7,7 +7,7 @@ "directory": "modules/shared" }, "license": "MIT", - "main": "src/init.lua", + "main": "src/init.luau", "scripts": { "prepare": "npmluau" }, @@ -17,4 +17,4 @@ "devDependencies": { "npmluau": "^0.1.0" } -} +} \ No newline at end of file diff --git a/modules/shared/src/PropMarkers/Change.luau b/modules/shared/src/PropMarkers/Change.luau index 084da588..efdeea57 100644 --- a/modules/shared/src/PropMarkers/Change.luau +++ b/modules/shared/src/PropMarkers/Change.luau @@ -25,7 +25,7 @@ }) ]] -local Type = require("../Type.roblox.lua") +local Type = require("../Type.roblox.luau") local Change = {} diff --git a/modules/shared/src/PropMarkers/Event.luau b/modules/shared/src/PropMarkers/Event.luau index a67f3483..cfe1ba36 100644 --- a/modules/shared/src/PropMarkers/Event.luau +++ b/modules/shared/src/PropMarkers/Event.luau @@ -27,7 +27,7 @@ }) ]] -local Type = require("../Type.roblox.lua") +local Type = require("../Type.roblox.luau") local Event = {} diff --git a/modules/shared/src/PropMarkers/Tag.luau b/modules/shared/src/PropMarkers/Tag.luau index 35daf94d..90246ac2 100644 --- a/modules/shared/src/PropMarkers/Tag.luau +++ b/modules/shared/src/PropMarkers/Tag.luau @@ -15,7 +15,7 @@ --[[ Special value for assigning tags to roblox instances via Roact ]] -local Symbol = require("../Symbol.roblox.lua") +local Symbol = require("../Symbol.roblox.luau") local Tag = Symbol.named("RobloxTag") diff --git a/modules/shared/src/PropMarkers/__tests__/Change.spec.luau b/modules/shared/src/PropMarkers/__tests__/Change.spec.luau index 363a3164..5cee2f0b 100644 --- a/modules/shared/src/PropMarkers/__tests__/Change.spec.luau +++ b/modules/shared/src/PropMarkers/__tests__/Change.spec.luau @@ -17,7 +17,7 @@ local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect local it = JestGlobals.it -local Type = require("../../Type.roblox.lua") +local Type = require("../../Type.roblox.luau") local Change = require("../Change") it("should yield change listener objects when indexed", function() diff --git a/modules/shared/src/PropMarkers/__tests__/Event.spec.luau b/modules/shared/src/PropMarkers/__tests__/Event.spec.luau index 57f79004..faf54c46 100644 --- a/modules/shared/src/PropMarkers/__tests__/Event.spec.luau +++ b/modules/shared/src/PropMarkers/__tests__/Event.spec.luau @@ -17,7 +17,7 @@ local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect local it = JestGlobals.it -local Type = require("../../Type.roblox.lua") +local Type = require("../../Type.roblox.luau") local Event = require("../Event") it("should yield event objects when indexed", function() diff --git a/modules/shared/src/ReactComponentStackFrame.luau b/modules/shared/src/ReactComponentStackFrame.luau index 366414c9..74c7a417 100644 --- a/modules/shared/src/ReactComponentStackFrame.luau +++ b/modules/shared/src/ReactComponentStackFrame.luau @@ -16,7 +16,7 @@ local ReactElementType = require("./ReactElementType") type Source = ReactElementType.Source -- ROBLOX deviation: Needed to properly type class components -local flowtypes = require("./flowtypes.roblox.lua") +local flowtypes = require("./flowtypes.roblox.luau") type React_StatelessFunctionalComponent

= flowtypes.React_StatelessFunctionalComponent< P > @@ -35,7 +35,7 @@ local REACT_MEMO_TYPE = ReactSymbols.REACT_MEMO_TYPE local REACT_BLOCK_TYPE = ReactSymbols.REACT_BLOCK_TYPE local REACT_LAZY_TYPE = ReactSymbols.REACT_LAZY_TYPE -local ConsolePatchingDev = require("./ConsolePatchingDev.roblox.lua") +local ConsolePatchingDev = require("./ConsolePatchingDev.roblox.luau") local disableLogs = ConsolePatchingDev.disableLogs local reenableLogs = ConsolePatchingDev.reenableLogs diff --git a/modules/shared/src/ReactElementType.luau b/modules/shared/src/ReactElementType.luau index 7a4640f3..750dff40 100644 --- a/modules/shared/src/ReactElementType.luau +++ b/modules/shared/src/ReactElementType.luau @@ -10,7 +10,7 @@ local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Object = LuauPolyfill.Object -local flowtypes = require("./flowtypes.roblox.lua") +local flowtypes = require("./flowtypes.roblox.luau") type React_Element = flowtypes.React_Element type React_StatelessFunctionalComponent

= flowtypes.React_StatelessFunctionalComponent< P diff --git a/modules/shared/src/ReactTypes.luau b/modules/shared/src/ReactTypes.luau index 927fd167..6ad68e85 100644 --- a/modules/shared/src/ReactTypes.luau +++ b/modules/shared/src/ReactTypes.luau @@ -13,7 +13,7 @@ type Object = LuauPolyfill.Object type void = nil type NonMaybeType = T -local flowtypes = require("./flowtypes.roblox.lua") +local flowtypes = require("./flowtypes.roblox.luau") type React_Element = flowtypes.React_Element type React_Node = flowtypes.React_Node type SimpleMap = { [K]: V } @@ -133,12 +133,12 @@ export type ReactFundamentalComponentInstance = { export type ReactFundamentalImpl = { displayName: string, reconcileChildren: boolean, - getInitialState: nil | (Object) -> (Object), - getInstance: (C, Object, Object) -> (H), - getServerSideString: nil | (C, Object) -> (string), - getServerSideStringClose: nil | (C, Object) -> (string), + getInitialState: nil | (Object) -> Object, + getInstance: (C, Object, Object) -> H, + getServerSideString: nil | (C, Object) -> string, + getServerSideStringClose: nil | (C, Object) -> string, onMount: (C, any, Object, Object) -> (), - shouldUpdate: nil | (C, Object?, Object, Object) -> (boolean), + shouldUpdate: nil | (C, Object?, Object, Object) -> boolean, onUpdate: nil | (C, any, Object?, Object, Object) -> (), onUnmount: nil | (C, any, Object, Object) -> (), onHydrate: nil | (C, Object, Object) -> boolean, @@ -196,7 +196,7 @@ export type MutableSourceGetSnapshotFn = (source: Source) -> S export type MutableSourceSubscribeFn = ( source: Source, callback: (snapshot: Snapshot) -> () -) -> (() -> ()) +) -> () -> () export type MutableSourceGetVersionFn = ( _source: NonMaybeType diff --git a/modules/shared/src/Type.roblox.luau b/modules/shared/src/Type.roblox.luau index 415a8d62..13aba5a9 100644 --- a/modules/shared/src/Type.roblox.luau +++ b/modules/shared/src/Type.roblox.luau @@ -23,7 +23,7 @@ } ]] -local Symbol = require("./Symbol.roblox.lua") +local Symbol = require("./Symbol.roblox.luau") local Type = newproxy(true) diff --git a/modules/shared/src/__tests__/ErrorHandling.roblox.spec.luau b/modules/shared/src/__tests__/ErrorHandling.roblox.spec.luau index ac1ef744..e3505c06 100644 --- a/modules/shared/src/__tests__/ErrorHandling.roblox.spec.luau +++ b/modules/shared/src/__tests__/ErrorHandling.roblox.spec.luau @@ -6,7 +6,7 @@ local it = JestGlobals.it local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local inspect = LuauPolyfill.util.inspect -local ErrorHandling = require("../ErrorHandling.roblox.lua") +local ErrorHandling = require("../ErrorHandling.roblox.luau") local describeError = ErrorHandling.describeError local errorToString = ErrorHandling.errorToString local parseReactError = ErrorHandling.parseReactError diff --git a/modules/shared/src/__tests__/ReactComponentStackFrame.roblox.spec.luau b/modules/shared/src/__tests__/ReactComponentStackFrame.roblox.spec.luau index 81c29be7..d60e7087 100644 --- a/modules/shared/src/__tests__/ReactComponentStackFrame.roblox.spec.luau +++ b/modules/shared/src/__tests__/ReactComponentStackFrame.roblox.spec.luau @@ -97,30 +97,30 @@ describe("with enableComponentStackLocations to false", function() ["Bar\\Foo"] = "Foo", ["Baz/Bar/Foo"] = "Foo", ["Baz\\Bar\\Foo"] = "Foo", - ["Foo.lua"] = "Foo.lua", - ["/Foo.lua"] = "Foo.lua", - ["\\Foo.lua"] = "Foo.lua", - ["Bar/Foo.lua"] = "Foo.lua", - ["Bar\\Foo.lua"] = "Foo.lua", - ["/Bar/Foo.lua"] = "Foo.lua", - ["\\Bar\\Foo.lua"] = "Foo.lua", - ["Bar/Baz/Foo.lua"] = "Foo.lua", - ["Bar\\Baz\\Foo.lua"] = "Foo.lua", - ["/Bar/Baz/Foo.lua"] = "Foo.lua", - ["\\Bar\\Baz\\Foo.lua"] = "Foo.lua", - ["C:\\funny long (path)/Foo.lua"] = "Foo.lua", - ["init.lua"] = "init.lua", - ["/init.lua"] = "init.lua", - ["\\init.lua"] = "init.lua", - ["Bar/init.lua"] = "Bar/init.lua", - ["Bar\\init.lua"] = "Bar/init.lua", - ["/Bar/init.lua"] = "Bar/init.lua", - ["\\Bar\\init.lua"] = "Bar/init.lua", - ["Bar/Baz/init.lua"] = "Baz/init.lua", - ["Bar\\Baz\\init.lua"] = "Baz/init.lua", - ["/Bar/Baz/init.lua"] = "Baz/init.lua", - ["\\Bar\\Baz\\init.lua"] = "Baz/init.lua", - ["C:\\funny long (path)/init.lua"] = "funny long (path)/init.lua", + ["Foo.luau"] = "Foo.luau", + ["/Foo.luau"] = "Foo.luau", + ["\\Foo.luau"] = "Foo.luau", + ["Bar/Foo.luau"] = "Foo.luau", + ["Bar\\Foo.luau"] = "Foo.luau", + ["/Bar/Foo.luau"] = "Foo.luau", + ["\\Bar\\Foo.luau"] = "Foo.luau", + ["Bar/Baz/Foo.luau"] = "Foo.luau", + ["Bar\\Baz\\Foo.luau"] = "Foo.luau", + ["/Bar/Baz/Foo.luau"] = "Foo.luau", + ["\\Bar\\Baz\\Foo.luau"] = "Foo.luau", + ["C:\\funny long (path)/Foo.luau"] = "Foo.luau", + ["init.luau"] = "init.luau", + ["/init.luau"] = "init.luau", + ["\\init.luau"] = "init.luau", + ["Bar/init.luau"] = "Bar/init.luau", + ["Bar\\init.luau"] = "Bar/init.luau", + ["/Bar/init.luau"] = "Bar/init.luau", + ["\\Bar\\init.luau"] = "Bar/init.luau", + ["Bar/Baz/init.luau"] = "Baz/init.luau", + ["Bar\\Baz\\init.luau"] = "Baz/init.luau", + ["/Bar/Baz/init.luau"] = "Baz/init.luau", + ["\\Bar\\Baz\\init.luau"] = "Baz/init.luau", + ["C:\\funny long (path)/init.luau"] = "funny long (path)/init.luau", } local lineNumber = 0 @@ -215,7 +215,7 @@ describe("DEV warning stack trace", function() end local source = { - fileName = "TestDev-file.lua", + fileName = "TestDev-file.luau", lineNumber = 20, } @@ -231,7 +231,7 @@ describe("DEV warning stack trace", function() if _G.__DEV__ then jestExpect(description).toEqual( - "\n in TestDevStackComponent (at TestDev-file.lua:20)" + "\n in TestDevStackComponent (at TestDev-file.luau:20)" ) else jestExpect(description).toEqual("") @@ -247,7 +247,7 @@ describe("DEV warning stack trace", function() end local source = { - fileName = "TestDevFunction-file.lua", + fileName = "TestDevFunction-file.luau", lineNumber = 15, } @@ -263,7 +263,7 @@ describe("DEV warning stack trace", function() if _G.__DEV__ then jestExpect(description).toEqual( - "\n in DevStackFunctionComponent (at TestDevFunction-file.lua:15)" + "\n in DevStackFunctionComponent (at TestDevFunction-file.luau:15)" ) else jestExpect(description).toEqual("") diff --git a/modules/shared/src/checkPropTypes.luau b/modules/shared/src/checkPropTypes.luau index 6182e551..219cf9e7 100644 --- a/modules/shared/src/checkPropTypes.luau +++ b/modules/shared/src/checkPropTypes.luau @@ -24,7 +24,7 @@ local describeUnknownElementTypeFrameInDEV = local ReactSharedInternals = require("./ReactSharedInternals") -local describeError = require("./ErrorHandling.roblox.lua").describeError +local describeError = require("./ErrorHandling.roblox.luau").describeError local ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame diff --git a/modules/shared/src/getComponentName.luau b/modules/shared/src/getComponentName.luau index dab16c2a..edcd957f 100644 --- a/modules/shared/src/getComponentName.luau +++ b/modules/shared/src/getComponentName.luau @@ -35,7 +35,7 @@ local ReactTypes = require("./ReactTypes") type ReactContext = ReactTypes.ReactContext type ReactProviderType = ReactTypes.ReactProviderType -local describeError = require("./ErrorHandling.roblox.lua").describeError +local describeError = require("./ErrorHandling.roblox.luau").describeError local function getWrappedName(outerType: any, innerType: any, wrapperName: string): string -- deviation: Account for indexing into function diff --git a/modules/shared/src/init.luau b/modules/shared/src/init.luau index 67475507..e268fd60 100644 --- a/modules/shared/src/init.luau +++ b/modules/shared/src/init.luau @@ -20,11 +20,11 @@ local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Object = LuauPolyfill.Object local ReactTypes = require("./ReactTypes") -local flowtypes = require("./flowtypes.roblox.lua") +local flowtypes = require("./flowtypes.roblox.luau") local ReactElementType = require("./ReactElementType") local ReactFiberHostConfig = require("./ReactFiberHostConfig") local ReactSharedInternals = require("./ReactSharedInternals") -local ErrorHandling = require("./ErrorHandling.roblox.lua") +local ErrorHandling = require("./ErrorHandling.roblox.luau") -- Re-export all top-level public types export type ReactEmpty = ReactTypes.ReactEmpty @@ -91,9 +91,9 @@ export type React_Key = flowtypes.React_Key return { checkPropTypes = require("./checkPropTypes"), console = require("./console"), - ConsolePatchingDev = require("./ConsolePatchingDev.roblox.lua"), + ConsolePatchingDev = require("./ConsolePatchingDev.roblox.luau"), consoleWithStackDev = require("./consoleWithStackDev"), - enqueueTask = require("./enqueueTask.roblox.lua"), + enqueueTask = require("./enqueueTask.roblox.luau"), ExecutionEnvironment = require("./ExecutionEnvironment"), formatProdErrorMessage = require("./formatProdErrorMessage"), getComponentName = require("./getComponentName"), @@ -117,7 +117,7 @@ return { ReactSymbols = require("./ReactSymbols"), ReactVersion = require("./ReactVersion"), shallowEqual = require("./shallowEqual"), - UninitializedState = require("./UninitializedState.roblox.lua"), + UninitializedState = require("./UninitializedState.roblox.luau"), ReactTypes = ReactTypes, -- ROBLOX DEVIATION: export error-stack-preserving utilities for use in @@ -127,8 +127,8 @@ return { parseReactError = ErrorHandling.parseReactError, -- ROBLOX DEVIATION: export Symbol and Type from Shared - Symbol = require("./Symbol.roblox.lua"), - Type = require("./Type.roblox.lua"), + Symbol = require("./Symbol.roblox.luau"), + Type = require("./Type.roblox.luau"), -- ROBLOX DEVIATION: export propmarkers from Shared Change = require("./PropMarkers/Change"), diff --git a/modules/shared/src/invokeGuardedCallbackImpl.luau b/modules/shared/src/invokeGuardedCallbackImpl.luau index e720e3cd..98d727bd 100644 --- a/modules/shared/src/invokeGuardedCallbackImpl.luau +++ b/modules/shared/src/invokeGuardedCallbackImpl.luau @@ -9,7 +9,7 @@ * @flow ]] -- local invariant = require("./invariant") -local describeError = require("./ErrorHandling.roblox.lua").describeError +local describeError = require("./ErrorHandling.roblox.luau").describeError -- deviation: with flow types stripped, it's easier to use varargs directly local function invokeGuardedCallbackProd(reporter, name, func, context, ...) diff --git a/scripts/remove-tests.sh b/scripts/remove-tests.sh index 7d3af7e1..49188a25 100755 --- a/scripts/remove-tests.sh +++ b/scripts/remove-tests.sh @@ -6,5 +6,5 @@ FOLDER=$1 find $FOLDER -name '__tests__' -type d -exec rm -r {} + find $FOLDER -name '.robloxrc' -type f -exec rm -r {} + -find $FOLDER -name '*.spec.lua' -type f -exec rm -r {} + -find $FOLDER -name 'jest.config.lua' -type f -exec rm -r {} + +find $FOLDER -name '*.spec.luau' -type f -exec rm -r {} + +find $FOLDER -name 'jest.config.luau' -type f -exec rm -r {} +