From 1edaa6718d48d001c73e8b6cf6334a773a17ca4c Mon Sep 17 00:00:00 2001 From: jeparlefrancais Date: Thu, 21 Dec 2023 18:23:47 -0500 Subject: [PATCH 1/3] Refactor Roblox requires --- .../__tests__/toArrayContains.spec.lua | 2 +- .../__tests__/toArrayEqual.spec.lua | 2 +- src/TestMatchers/__tests__/toBeNaN.spec.lua | 5 +- src/TestMatchers/__tests__/toEqual.spec.lua | 2 +- .../__tests__/toHaveSameMembers.spec.lua | 2 +- src/TestMatchers/devPrint.lua | 4 +- src/TestMatchers/toArrayContains.lua | 6 +- src/TestMatchers/toArrayEqual.lua | 4 +- src/TestMatchers/toBeNaN.lua | 2 +- src/TestMatchers/toBeOneOf.lua | 2 +- src/TestMatchers/toEqual.lua | 2 +- src/TestMatchers/toHaveSameMembers.lua | 6 +- src/TestMatchers/toObjectContain.lua | 6 +- src/__fixtures__/init.lua | 2 +- src/__testUtils__/__tests__/dedent.spec.lua | 7 +- .../__tests__/genFuzzStrings.spec.lua | 2 +- .../__tests__/inspectStr.spec.lua | 2 +- .../__tests__/resolveOnNextTick.spec.lua | 4 +- src/__testUtils__/dedent.lua | 7 +- src/__testUtils__/resolveOnNextTick.lua | 2 +- src/__tests__/starWarsData.lua | 9 +-- src/__tests__/starWarsIntrospection.spec.lua | 11 ++- src/__tests__/starWarsQuery.spec.lua | 9 +-- src/__tests__/starWarsSchema.lua | 15 ++-- src/__tests__/starWarsValidation.spec.lua | 9 +-- src/__tests__/version.spec.lua | 6 +- src/error/GraphQLError.lua | 16 ++-- src/error/__tests__/GraphQLError.spec.lua | 21 ++--- src/error/__tests__/formatError.spec.lua | 5 +- src/error/__tests__/init.roblox.spec.lua | 10 +-- src/error/__tests__/locatedError.spec.lua | 10 +-- src/error/formatError.lua | 10 +-- src/error/init.lua | 8 +- src/error/locatedError.lua | 13 +-- src/error/syntaxError.lua | 3 +- src/execution/__tests__/abstract.spec.lua | 25 +++--- src/execution/__tests__/directives.spec.lua | 13 ++- src/execution/__tests__/executor.spec.lua | 29 +++---- src/execution/__tests__/init.roblox.spec.lua | 10 +-- src/execution/__tests__/lists.spec.lua | 18 ++--- src/execution/__tests__/mutations.spec.lua | 16 ++-- src/execution/__tests__/nonnull.spec.lua | 26 +++--- src/execution/__tests__/resolve.spec.lua | 15 ++-- src/execution/__tests__/schema.spec.lua | 13 ++- src/execution/__tests__/sync.spec.lua | 23 +++--- .../__tests__/union-interface.spec.lua | 19 ++--- .../__tests__/values.roblox.spec.lua | 2 +- src/execution/__tests__/variables.spec.lua | 26 +++--- src/execution/execute.lua | 69 +++++++--------- src/execution/init.lua | 6 +- src/execution/values.lua | 41 +++++----- src/graphql.lua | 25 +++--- src/init.lua | 22 +++--- src/init.spec.lua | 20 +++-- src/jsutils/Path.lua | 3 +- src/jsutils/PromiseOrValue.lua | 4 +- .../__tests__/devAssert.roblox.spec.lua | 2 +- src/jsutils/__tests__/didYouMean.spec.lua | 2 +- src/jsutils/__tests__/identityFunc.spec.lua | 2 +- src/jsutils/__tests__/inspect.spec.lua | 6 +- .../__tests__/instanceOf.roblox.spec.lua | 2 +- src/jsutils/__tests__/invariant.spec.lua | 2 +- .../__tests__/isIteratableObject.spec.lua | 4 +- src/jsutils/__tests__/isObjectLike.spec.lua | 4 +- src/jsutils/__tests__/naturalCompare.spec.lua | 2 +- .../__tests__/promiseReduce.roblox.spec.lua | 6 +- src/jsutils/__tests__/suggestionList.spec.lua | 2 +- src/jsutils/__tests__/toObjMap.spec.lua | 2 +- src/jsutils/didYouMean.lua | 5 +- src/jsutils/inspect.lua | 8 +- src/jsutils/instanceOf.lua | 2 +- src/jsutils/isPromise.lua | 5 +- src/jsutils/keyMap.lua | 5 +- src/jsutils/keyValMap.lua | 3 +- src/jsutils/mapValue.lua | 2 +- src/jsutils/memoize3.lua | 5 +- src/jsutils/naturalCompare.lua | 3 +- src/jsutils/printPathArray.lua | 3 +- src/jsutils/promiseForObject.lua | 9 +-- src/jsutils/promiseReduce.lua | 9 +-- src/jsutils/suggestionList.lua | 7 +- src/jsutils/toObjMap.lua | 2 +- .../__tests__/blockString-fuzz.spec.lua | 14 ++-- src/language/__tests__/blockString.spec.lua | 4 +- .../directiveLocation.roblox.spec.lua | 2 +- src/language/__tests__/init.roblox.spec.lua | 56 ++++++------- src/language/__tests__/lexer.spec.lua | 14 ++-- .../__tests__/location.roblox.spec.lua | 4 +- src/language/__tests__/parser.roblox.spec.lua | 6 +- src/language/__tests__/parser.spec.lua | 18 ++--- src/language/__tests__/predicates.spec.lua | 6 +- src/language/__tests__/printLocation.spec.lua | 6 +- src/language/__tests__/printer.spec.lua | 14 ++-- src/language/__tests__/schema-parser.spec.lua | 8 +- .../__tests__/schema-printer.spec.lua | 12 +-- src/language/__tests__/source.spec.lua | 2 +- src/language/__tests__/toJSONDeep.lua | 4 +- src/language/__tests__/visitor.spec.lua | 14 ++-- src/language/ast.lua | 7 +- src/language/blockString.lua | 6 +- src/language/directiveLocation.lua | 2 +- src/language/init.lua | 24 +++--- src/language/lexer.lua | 17 ++-- src/language/location.lua | 5 +- src/language/parser.lua | 21 +++-- src/language/predicates.lua | 2 +- src/language/printLocation.lua | 7 +- src/language/printer.lua | 10 +-- src/language/source.lua | 9 +-- src/language/visitor.lua | 11 ++- src/luaUtils/__tests__/arrayContains.spec.lua | 2 +- .../__tests__/coerceToPromise.spec.lua | 4 +- .../__tests__/deepContains.roblox.spec.lua | 4 +- src/luaUtils/__tests__/deepEqual.spec.lua | 4 +- src/luaUtils/__tests__/isNillish.spec.lua | 6 +- src/luaUtils/__tests__/json.spec.lua | 2 +- src/luaUtils/__tests__/null.spec.lua | 2 +- src/luaUtils/__tests__/stringify.spec.lua | 6 +- .../__tests__/toUnicodeString.spec.lua | 2 +- src/luaUtils/arrayContains.lua | 4 +- src/luaUtils/coerceToPromise.lua | 8 +- src/luaUtils/deepContains.lua | 4 +- src/luaUtils/deepEqual.lua | 4 +- src/luaUtils/isNillish.lua | 2 +- src/luaUtils/keyMapOrdered.lua | 3 +- src/luaUtils/mapValueOrdered.lua | 3 +- src/luaUtils/stringify.lua | 2 +- src/luaUtils/toUnicodeString.lua | 3 +- src/polyfills/objectEntries.lua | 4 +- src/polyfills/objectValues.lua | 4 +- .../subscription-stub.roblox.spec.lua | 4 +- src/subscription/init.lua | 2 +- src/subscription/subscribe.lua | 12 ++- src/type/__tests__/definition.spec.lua | 14 ++-- src/type/__tests__/directive.spec.lua | 4 +- src/type/__tests__/directives.spec.lua | 8 +- src/type/__tests__/introspection.spec.lua | 11 +-- src/type/__tests__/scalars.spec.lua | 7 +- src/type/__tests__/schema.spec.lua | 14 ++-- src/type/__tests__/validation.spec.lua | 32 ++++---- src/type/definition.lua | 51 ++++++------ src/type/directives.lua | 27 +++---- src/type/init.lua | 14 ++-- src/type/introspection.lua | 25 +++--- src/type/scalars.lua | 18 ++--- src/type/schema.lua | 33 ++++---- src/type/validate.lua | 27 +++---- src/utilities/TypeInfo.lua | 26 +++--- src/utilities/__tests__/TypeInfo.spec.lua | 23 +++--- .../__tests__/assertValidName.spec.lua | 2 +- src/utilities/__tests__/astFromValue.spec.lua | 14 ++-- .../__tests__/buildASTSchema.spec.lua | 33 ++++---- .../__tests__/buildClientSchema.spec.lua | 25 +++--- .../__tests__/coerceInputValue.spec.lua | 16 ++-- src/utilities/__tests__/concatAST.spec.lua | 12 ++- src/utilities/__tests__/extendSchema.spec.lua | 39 ++++----- .../__tests__/findBreakingChanges.spec.lua | 9 +-- .../__tests__/getIntrospectionQuery.spec.lua | 3 +- .../__tests__/getOperationAST.spec.lua | 6 +- .../__tests__/getOperationRootType.spec.lua | 19 ++--- src/utilities/__tests__/init.roblox.spec.lua | 62 +++++++-------- .../introspectionFromSchema.spec.lua | 20 ++--- .../lexicographicSortSchema.spec.lua | 13 ++- src/utilities/__tests__/printSchema.spec.lua | 22 +++--- .../__tests__/separateOperations.spec.lua | 12 ++- .../stripIgnoredCharacters-fuzz.spec.lua | 14 ++-- .../__tests__/stripIgnoredCharacters.spec.lua | 25 +++--- .../__tests__/typeComparators.spec.lua | 11 +-- .../__tests__/typeFromAST.roblox.spec.lua | 10 +-- src/utilities/__tests__/valueFromAST.spec.lua | 20 ++--- .../__tests__/valueFromASTUntyped.spec.lua | 10 +-- src/utilities/assertValidName.lua | 5 +- src/utilities/astFromValue.lua | 27 +++---- src/utilities/buildASTSchema.lua | 20 ++--- src/utilities/buildClientSchema.lua | 33 ++++---- src/utilities/coerceInputValue.lua | 35 ++++---- src/utilities/concatAST.lua | 5 +- src/utilities/extendSchema.lua | 40 +++++----- src/utilities/findBreakingChanges.lua | 30 +++---- src/utilities/getIntrospectionQuery.lua | 5 +- src/utilities/getOperationAST.lua | 4 +- src/utilities/getOperationRootType.lua | 8 +- src/utilities/init.lua | 42 +++++----- src/utilities/introspectionFromSchema.lua | 14 ++-- src/utilities/lexicographicSortSchema.lua | 23 +++--- src/utilities/printSchema.lua | 34 ++++---- src/utilities/separateOperations.lua | 13 ++- src/utilities/stripIgnoredCharacters.lua | 13 ++- src/utilities/typeComparators.lua | 6 +- src/utilities/typeFromAST.lua | 15 ++-- src/utilities/valueFromAST.lua | 17 ++-- src/utilities/valueFromASTUntyped.lua | 20 ++--- src/validation/ValidationContext.lua | 25 +++--- .../ExecutableDefinitionsRule.spec.lua | 7 +- .../FieldsOnCorrectTypeRule.spec.lua | 12 ++- .../FragmentsOnCompositeTypesRule.spec.lua | 7 +- .../__tests__/KnownArgumentNamesRule.spec.lua | 8 +- .../__tests__/KnownDirectivesRule.spec.lua | 8 +- .../__tests__/KnownFragmentNamesRule.spec.lua | 5 +- .../__tests__/KnownTypeNamesRule.spec.lua | 8 +- .../LoneAnonymousOperationRule.spec.lua | 7 +- .../LoneSchemaDefinitionRule.spec.lua | 8 +- .../__tests__/NoDeprecatedCustomRule.spec.lua | 10 +-- .../__tests__/NoFragmentCyclesRule.spec.lua | 5 +- .../NoSchemaIntrospectionCustomRule.spec.lua | 10 +-- .../NoUndefinedVariablesRule.spec.lua | 5 +- .../__tests__/NoUnusedFragmentsRule.spec.lua | 5 +- .../__tests__/NoUnusedVariablesRule.spec.lua | 5 +- .../OverlappingFieldsCanBeMergedRule.spec.lua | 10 +-- .../PossibleFragmentSpreadsRule.spec.lua | 7 +- .../PossibleTypeExtensionsRule.spec.lua | 10 +-- .../ProvidedRequiredArgumentsRule.spec.lua | 10 +-- .../__tests__/ScalarLeafsRule.spec.lua | 5 +- .../SingleFieldSubscriptionsRule.spec.lua | 7 +- .../UniqueArgumentNamesRule.spec.lua | 5 +- .../UniqueDirectiveNamesRule.spec.lua | 8 +- .../UniqueDirectivesPerLocationRule.spec.lua | 12 +-- .../UniqueEnumValueNamesRule.spec.lua | 8 +- .../UniqueFieldDefinitionNamesRule.spec.lua | 10 +-- .../UniqueFragmentNamesRule.spec.lua | 5 +- .../UniqueInputFieldNamesRule.spec.lua | 7 +- .../UniqueOperationNamesRule.spec.lua | 5 +- .../UniqueOperationTypesRule.spec.lua | 8 +- .../__tests__/UniqueTypeNamesRule.spec.lua | 8 +- .../UniqueVariableNamesRule.spec.lua | 5 +- .../ValuesOfCorrectTypeRule.spec.lua | 19 ++--- .../VariablesAreInputTypesRule.spec.lua | 7 +- .../VariablesInAllowedPositionRule.spec.lua | 7 +- src/validation/__tests__/harness.lua | 13 ++- src/validation/__tests__/validation.spec.lua | 18 ++--- src/validation/init.lua | 79 +++++++++---------- .../rules/ExecutableDefinitionsRule.lua | 8 +- .../rules/FieldsOnCorrectTypeRule.lua | 15 ++-- .../rules/FragmentsOnCompositeTypesRule.lua | 10 +-- .../rules/KnownArgumentNamesRule.lua | 16 ++-- src/validation/rules/KnownDirectivesRule.lua | 18 ++--- .../rules/KnownFragmentNamesRule.lua | 3 +- src/validation/rules/KnownTypeNamesRule.lua | 20 ++--- .../rules/LoneAnonymousOperationRule.lua | 9 +-- .../rules/LoneSchemaDefinitionRule.lua | 6 +- src/validation/rules/NoFragmentCyclesRule.lua | 6 +- .../rules/NoUndefinedVariablesRule.lua | 3 +- .../rules/NoUnusedFragmentsRule.lua | 3 +- .../rules/NoUnusedVariablesRule.lua | 3 +- .../OverlappingFieldsCanBeMergedRule.lua | 20 ++--- .../rules/PossibleFragmentSpreadsRule.lua | 12 ++- .../rules/PossibleTypeExtensionsRule.lua | 22 +++--- .../rules/ProvidedRequiredArgumentsRule.lua | 20 ++--- src/validation/rules/ScalarLeafsRule.lua | 8 +- .../rules/SingleFieldSubscriptionsRule.lua | 6 +- .../rules/UniqueArgumentNamesRule.lua | 3 +- .../rules/UniqueDirectiveNamesRule.lua | 3 +- .../rules/UniqueDirectivesPerLocationRule.lua | 10 +-- .../rules/UniqueEnumValueNamesRule.lua | 8 +- .../rules/UniqueFieldDefinitionNamesRule.lua | 10 +-- .../rules/UniqueFragmentNamesRule.lua | 3 +- .../rules/UniqueInputFieldNamesRule.lua | 10 +-- .../rules/UniqueOperationNamesRule.lua | 3 +- .../rules/UniqueOperationTypesRule.lua | 3 +- src/validation/rules/UniqueTypeNamesRule.lua | 3 +- .../rules/UniqueVariableNamesRule.lua | 3 +- .../rules/ValuesOfCorrectTypeRule.lua | 20 ++--- .../rules/VariablesAreInputTypesRule.lua | 9 +-- .../rules/VariablesInAllowedPositionRule.lua | 14 ++-- .../rules/custom/NoDeprecatedCustomRule.lua | 7 +- .../NoSchemaIntrospectionCustomRule.lua | 7 +- src/validation/specifiedRules.lua | 68 ++++++++-------- src/validation/validate.lua | 24 +++--- src/version.lua | 3 +- 269 files changed, 1310 insertions(+), 1808 deletions(-) diff --git a/src/TestMatchers/__tests__/toArrayContains.spec.lua b/src/TestMatchers/__tests__/toArrayContains.spec.lua index 5b141bd..30859bc 100644 --- a/src/TestMatchers/__tests__/toArrayContains.spec.lua +++ b/src/TestMatchers/__tests__/toArrayContains.spec.lua @@ -13,7 +13,7 @@ * limitations under the License. ]] return function() - local toArrayContains = require(script.Parent.Parent.toArrayContains) + local toArrayContains = require("../toArrayContains") describe("toArrayContains", function() it("should fail with a message printing full table values", function() diff --git a/src/TestMatchers/__tests__/toArrayEqual.spec.lua b/src/TestMatchers/__tests__/toArrayEqual.spec.lua index 4b2523c..97f77d6 100644 --- a/src/TestMatchers/__tests__/toArrayEqual.spec.lua +++ b/src/TestMatchers/__tests__/toArrayEqual.spec.lua @@ -13,7 +13,7 @@ * limitations under the License. ]] return function() - local toArrayEqual = require(script.Parent.Parent.toArrayEqual) + local toArrayEqual = require("../toArrayEqual") describe("toArrayEqual", function() describe("strict comparison", function() diff --git a/src/TestMatchers/__tests__/toBeNaN.spec.lua b/src/TestMatchers/__tests__/toBeNaN.spec.lua index 721908f..6e03149 100644 --- a/src/TestMatchers/__tests__/toBeNaN.spec.lua +++ b/src/TestMatchers/__tests__/toBeNaN.spec.lua @@ -13,11 +13,10 @@ * limitations under the License. ]] return function() - local rootWorkspace = script.Parent.Parent.Parent.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local NaN = LuauPolyfill.Number.NaN - local toBeNaN = require(script.Parent.Parent.toBeNaN) + local toBeNaN = require("../toBeNaN") describe("toBeNaN", function() it("should fail when passed a number", function() diff --git a/src/TestMatchers/__tests__/toEqual.spec.lua b/src/TestMatchers/__tests__/toEqual.spec.lua index e917268..ba82097 100644 --- a/src/TestMatchers/__tests__/toEqual.spec.lua +++ b/src/TestMatchers/__tests__/toEqual.spec.lua @@ -13,7 +13,7 @@ * limitations under the License. ]] return function() - local toEqual = require(script.Parent.Parent.toEqual) + local toEqual = require("../toEqual") it("should fail with a message when args are not equal", function() local result = toEqual(1, 2) diff --git a/src/TestMatchers/__tests__/toHaveSameMembers.spec.lua b/src/TestMatchers/__tests__/toHaveSameMembers.spec.lua index 72a7ccc..db14edc 100644 --- a/src/TestMatchers/__tests__/toHaveSameMembers.spec.lua +++ b/src/TestMatchers/__tests__/toHaveSameMembers.spec.lua @@ -13,7 +13,7 @@ * limitations under the License. ]] return function() - local toHaveSameMembers = require(script.Parent.Parent.toHaveSameMembers) + local toHaveSameMembers = require("../toHaveSameMembers") describe("toHaveSameMembers", function() describe("strict comparison", function() diff --git a/src/TestMatchers/devPrint.lua b/src/TestMatchers/devPrint.lua index 5293fc6..4922e00 100644 --- a/src/TestMatchers/devPrint.lua +++ b/src/TestMatchers/devPrint.lua @@ -12,9 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local inspect = require(Packages.LuauPolyfill).util.inspect +local inspect = require("@pkg/@jsdotlua/luau-polyfill").util.inspect local function devPrint(...) local inspected = {} diff --git a/src/TestMatchers/toArrayContains.lua b/src/TestMatchers/toArrayContains.lua index 8e3d2fa..624d14b 100644 --- a/src/TestMatchers/toArrayContains.lua +++ b/src/TestMatchers/toArrayContains.lua @@ -12,10 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local inspect = require(Packages.LuauPolyfill).util.inspect -local arrayContains = require(srcWorkspace.luaUtils.arrayContains) +local inspect = require("@pkg/@jsdotlua/luau-polyfill").util.inspect +local arrayContains = require("../luaUtils/arrayContains") local function toArrayContains(tbl, item, looseEquals) local success = arrayContains(tbl, item, looseEquals) diff --git a/src/TestMatchers/toArrayEqual.lua b/src/TestMatchers/toArrayEqual.lua index 703a3a4..6d240cc 100644 --- a/src/TestMatchers/toArrayEqual.lua +++ b/src/TestMatchers/toArrayEqual.lua @@ -12,8 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local deepEqual = require(script.Parent.Parent.luaUtils.deepEqual) -local deepContains = require(script.Parent.Parent.luaUtils.deepContains) +local deepEqual = require("../luaUtils/deepEqual") +local deepContains = require("../luaUtils/deepContains") local function toArrayEqual(arrA, arrB, looseEquals) local sameLength = #arrA == #arrB diff --git a/src/TestMatchers/toBeNaN.lua b/src/TestMatchers/toBeNaN.lua index 15e1165..e3dc2d2 100644 --- a/src/TestMatchers/toBeNaN.lua +++ b/src/TestMatchers/toBeNaN.lua @@ -12,7 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local Number = require(script.Parent.Parent.Parent.LuauPolyfill).Number +local Number = require("@pkg/@jsdotlua/luau-polyfill").Number local function toBeNaN(a) local success = Number.isNaN(a) diff --git a/src/TestMatchers/toBeOneOf.lua b/src/TestMatchers/toBeOneOf.lua index 1db8f21..d90503b 100644 --- a/src/TestMatchers/toBeOneOf.lua +++ b/src/TestMatchers/toBeOneOf.lua @@ -12,7 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local toArrayContains = require(script.Parent.toArrayContains) +local toArrayContains = require("./toArrayContains") local function toBeOneOf(item, arr) return toArrayContains(arr, item) diff --git a/src/TestMatchers/toEqual.lua b/src/TestMatchers/toEqual.lua index 63a98ee..74702d5 100644 --- a/src/TestMatchers/toEqual.lua +++ b/src/TestMatchers/toEqual.lua @@ -12,7 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local deepEqual = require(script.Parent.Parent.luaUtils.deepEqual) +local deepEqual = require("../luaUtils/deepEqual") local function toEqual(a: any, b: any) local success, innerMessageTemplate = deepEqual(a, b) diff --git a/src/TestMatchers/toHaveSameMembers.lua b/src/TestMatchers/toHaveSameMembers.lua index b648210..df567a6 100644 --- a/src/TestMatchers/toHaveSameMembers.lua +++ b/src/TestMatchers/toHaveSameMembers.lua @@ -12,10 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local inspect = require(Packages.LuauPolyfill).util.inspect -local arrayContains = require(script.Parent.Parent.luaUtils.arrayContains) +local inspect = require("@pkg/@jsdotlua/luau-polyfill").util.inspect +local arrayContains = require("../luaUtils/arrayContains") local function toHaveSameMembers(arrA, arrB, looseEquals) local sameLength = #arrA == #arrB diff --git a/src/TestMatchers/toObjectContain.lua b/src/TestMatchers/toObjectContain.lua index 1c43d40..0a55975 100644 --- a/src/TestMatchers/toObjectContain.lua +++ b/src/TestMatchers/toObjectContain.lua @@ -12,10 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local inspect = require(Packages.LuauPolyfill).util.inspect -local deepContains = require(script.Parent.Parent.luaUtils.deepContains) +local inspect = require("@pkg/@jsdotlua/luau-polyfill").util.inspect +local deepContains = require("../luaUtils/deepContains") local function toObjectContain(a, b) local success = deepContains(a, b) diff --git a/src/__fixtures__/init.lua b/src/__fixtures__/init.lua index 7702c24..1d7bb66 100644 --- a/src/__fixtures__/init.lua +++ b/src/__fixtures__/init.lua @@ -1,3 +1,3 @@ return { - kitchenSinkQuery = require(script.kitchenSink), + kitchenSinkQuery = require("./kitchenSink"), } diff --git a/src/__testUtils__/__tests__/dedent.spec.lua b/src/__testUtils__/__tests__/dedent.spec.lua index 34f9c44..ac76ae9 100644 --- a/src/__testUtils__/__tests__/dedent.spec.lua +++ b/src/__testUtils__/__tests__/dedent.spec.lua @@ -7,13 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/__testUtils__/__tests__/dedent-test.js return function() - local testUtilsWorkspace = script.Parent.Parent - local srcWorkspace = testUtilsWorkspace.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array - local dedent = require(testUtilsWorkspace.dedent).dedent + local dedent = require("../dedent").dedent describe("dedent", function() it("removes indentation in typical usage", function() diff --git a/src/__testUtils__/__tests__/genFuzzStrings.spec.lua b/src/__testUtils__/__tests__/genFuzzStrings.spec.lua index 58b3b40..a740f94 100644 --- a/src/__testUtils__/__tests__/genFuzzStrings.spec.lua +++ b/src/__testUtils__/__tests__/genFuzzStrings.spec.lua @@ -7,7 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/__testUtils__/__tests__/genFuzzStrings-test.js return function() - local genFuzzStrings = require(script.Parent.Parent.genFuzzStrings).genFuzzStrings + local genFuzzStrings = require("../genFuzzStrings").genFuzzStrings local function expectFuzzStrings(options) -- create an array from generator local arr = {} diff --git a/src/__testUtils__/__tests__/inspectStr.spec.lua b/src/__testUtils__/__tests__/inspectStr.spec.lua index d57261c..9609783 100644 --- a/src/__testUtils__/__tests__/inspectStr.spec.lua +++ b/src/__testUtils__/__tests__/inspectStr.spec.lua @@ -7,7 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/__testUtils__/__tests__/inspectStr-test.js return function() - local inspectStr = require(script.Parent.Parent.inspectStr).inspectStr + local inspectStr = require("../inspectStr").inspectStr describe("inspectStr", function() -- ROBLOX deviation: Lua has only nil value instead of null & undefined diff --git a/src/__testUtils__/__tests__/resolveOnNextTick.spec.lua b/src/__testUtils__/__tests__/resolveOnNextTick.spec.lua index b8110dd..293502c 100644 --- a/src/__testUtils__/__tests__/resolveOnNextTick.spec.lua +++ b/src/__testUtils__/__tests__/resolveOnNextTick.spec.lua @@ -7,8 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/__testUtils__/__tests__/resolveOnNextTick-test.js return function() - local resolveOnNextTick = require(script.Parent.Parent.resolveOnNextTick) - local Promise = require(script.Parent.Parent.Parent.Parent.Promise) + local resolveOnNextTick = require("../resolveOnNextTick") + local Promise = require("@pkg/@jsdotlua/promise") describe("resolveOnNextTick", function() it("resolves promise on the next tick", function() diff --git a/src/__testUtils__/dedent.lua b/src/__testUtils__/dedent.lua index 125cf1f..3df6ce5 100644 --- a/src/__testUtils__/dedent.lua +++ b/src/__testUtils__/dedent.lua @@ -5,12 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/__testUtils__/dedent.js -local testUtilsWorkspace = script.Parent -local srcWorkspace = testUtilsWorkspace.Parent -local rootWorkspace = srcWorkspace.Parent -local Packages = rootWorkspace - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local String = LuauPolyfill.String type Array = LuauPolyfill.Array diff --git a/src/__testUtils__/resolveOnNextTick.lua b/src/__testUtils__/resolveOnNextTick.lua index 901aafa..438c5ff 100644 --- a/src/__testUtils__/resolveOnNextTick.lua +++ b/src/__testUtils__/resolveOnNextTick.lua @@ -6,7 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/__testUtils__/resolveOnNextTick.js -local Promise = require(script.Parent.Parent.Parent.Promise) +local Promise = require("@pkg/@jsdotlua/promise") return function() -- ROBLOX deviation: Promise.resolve resolves immediately - defer guarantees next tick diff --git a/src/__tests__/starWarsData.lua b/src/__tests__/starWarsData.lua index e54d8af..8c3cade 100644 --- a/src/__tests__/starWarsData.lua +++ b/src/__tests__/starWarsData.lua @@ -6,15 +6,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/__tests__/starWarsData.js -local rootWorkspace = script.Parent.Parent -local Packages = rootWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) -local Array = require(Packages.LuauPolyfill).Array +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") +local Array = require("@pkg/@jsdotlua/luau-polyfill").Array type Array = LuauPolyfill.Array type Promise = LuauPolyfill.Promise -local Promise = require(Packages.Promise) +local Promise = require("@pkg/@jsdotlua/promise") --[[* * These are types which correspond to the schema. diff --git a/src/__tests__/starWarsIntrospection.spec.lua b/src/__tests__/starWarsIntrospection.spec.lua index 7e85684..2e1a344 100644 --- a/src/__tests__/starWarsIntrospection.spec.lua +++ b/src/__tests__/starWarsIntrospection.spec.lua @@ -5,16 +5,15 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/__tests__/starWarsIntrospection-test.js -local Packages = script.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array -local NULL = require(script.Parent.Parent.luaUtils.null) -local objMap = require(script.Parent.Parent.jsutils.ObjMap) +local NULL = require("../luaUtils/null") +local objMap = require("../jsutils/ObjMap") type ObjMap = objMap.ObjMap -local graphql = require(script.Parent.Parent.graphql) +local graphql = require("../graphql") local graphqlSync = graphql.graphqlSync -local starWarsSchema = require(script.Parent.starWarsSchema) +local starWarsSchema = require("./starWarsSchema") local StarWarsSchema = starWarsSchema.StarWarsSchema return function() diff --git a/src/__tests__/starWarsQuery.spec.lua b/src/__tests__/starWarsQuery.spec.lua index 6c735f2..6e67a2a 100644 --- a/src/__tests__/starWarsQuery.spec.lua +++ b/src/__tests__/starWarsQuery.spec.lua @@ -5,13 +5,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/__tests__/starWarsQuery-test.js -local NULL = require(script.Parent.Parent.luaUtils.null) -local Packages = script.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local NULL = require("../luaUtils/null") +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array -local graphql = require(script.Parent.Parent.graphql).graphql -local starWarsSchema = require(script.Parent.starWarsSchema) +local graphql = require("../graphql").graphql +local starWarsSchema = require("./starWarsSchema") local schema = starWarsSchema.StarWarsSchema return function() diff --git a/src/__tests__/starWarsSchema.lua b/src/__tests__/starWarsSchema.lua index c8e582b..35428de 100644 --- a/src/__tests__/starWarsSchema.lua +++ b/src/__tests__/starWarsSchema.lua @@ -5,19 +5,16 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/__tests__/starWarsSchema.js -local rootWorkspace = script.Parent.Parent -local Packages = rootWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map type Array = LuauPolyfill.Array -local _invariant = require(rootWorkspace.jsutils.invariant).invariant +local _invariant = require("../jsutils/invariant").invariant -local GraphQLSchema = require(rootWorkspace.type.schema).GraphQLSchema -local GraphQLString = require(rootWorkspace.type.scalars).GraphQLString -local definitionModule = require(rootWorkspace.type.definition) +local GraphQLSchema = require("../type/schema").GraphQLSchema +local GraphQLString = require("../type/scalars").GraphQLString +local definitionModule = require("../type/definition") local GraphQLList = definitionModule.GraphQLList local GraphQLNonNull = definitionModule.GraphQLNonNull local GraphQLEnumType = definitionModule.GraphQLEnumType @@ -25,7 +22,7 @@ local GraphQLInterfaceType = definitionModule.GraphQLInterfaceType local GraphQLObjectType = definitionModule.GraphQLObjectType type GraphQLObjectType = definitionModule.GraphQLObjectType -local starWarsDataModule = require(script.Parent.starWarsData) +local starWarsDataModule = require("./starWarsData") local getFriends = starWarsDataModule.getFriends local getHero = starWarsDataModule.getHero local getHuman = starWarsDataModule.getHuman diff --git a/src/__tests__/starWarsValidation.spec.lua b/src/__tests__/starWarsValidation.spec.lua index a94af6f..60b28dc 100644 --- a/src/__tests__/starWarsValidation.spec.lua +++ b/src/__tests__/starWarsValidation.spec.lua @@ -5,13 +5,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/__tests__/starWarsValidation-test.js -local rootWorkspace = script.Parent.Parent -local parse = require(rootWorkspace.language.parser).parse -local Source = require(rootWorkspace.language.source).Source +local parse = require("../language/parser").parse +local Source = require("../language/source").Source -local validate = require(rootWorkspace.validation.validate).validate +local validate = require("../validation/validate").validate -local StarWarsSchema = require(script.Parent.starWarsSchema).StarWarsSchema +local StarWarsSchema = require("./starWarsSchema").StarWarsSchema --[[* * Helper function to test a query and the expected response. diff --git a/src/__tests__/version.spec.lua b/src/__tests__/version.spec.lua index 9646b99..d28fe62 100644 --- a/src/__tests__/version.spec.lua +++ b/src/__tests__/version.spec.lua @@ -7,11 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/__tests__/version-test.js return function() - local srcWorkspace = script.Parent.Parent + local Object = require("@pkg/@jsdotlua/luau-polyfill").Object - local Object = require(srcWorkspace.Parent.LuauPolyfill).Object - - local versionModule = require(script.Parent.Parent.version) + local versionModule = require("../version") local version = versionModule.version local versionInfo = versionModule.versionInfo diff --git a/src/error/GraphQLError.lua b/src/error/GraphQLError.lua index 31ba64b..91e9f2a 100644 --- a/src/error/GraphQLError.lua +++ b/src/error/GraphQLError.lua @@ -6,11 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/error/GraphQLError.js -local srcWorkspace = script.Parent.Parent -local languageWorkspace = srcWorkspace.language -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Object = LuauPolyfill.Object @@ -20,17 +16,17 @@ type void = nil local HttpService = game:GetService("HttpService") -local isObjectLike = require(srcWorkspace.jsutils.isObjectLike).isObjectLike +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike -local _astModule = require(languageWorkspace.ast) +local _astModule = require("../language/ast") type ASTNode = _astModule.ASTNode type Location = _astModule.Location -local _sourceModule = require(languageWorkspace.source) +local _sourceModule = require("../language/source") type Source = _sourceModule.Source -local locationModule = require(languageWorkspace.location) +local locationModule = require("../language/location") type SourceLocation = locationModule.SourceLocation local getLocation = locationModule.getLocation -local printLocationModule = require(languageWorkspace.printLocation) +local printLocationModule = require("../language/printLocation") local printLocation = printLocationModule.printLocation local printSourceLocation = printLocationModule.printSourceLocation diff --git a/src/error/__tests__/GraphQLError.spec.lua b/src/error/__tests__/GraphQLError.spec.lua index a066cb5..83cd9ad 100644 --- a/src/error/__tests__/GraphQLError.spec.lua +++ b/src/error/__tests__/GraphQLError.spec.lua @@ -7,22 +7,17 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/error/__tests__/GraphQLError-test.js return function() - local errorWorkspace = script.Parent.Parent - local srcWorkspace = errorWorkspace.Parent - local languageWorkspace = srcWorkspace.language - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local instanceof = LuauPolyfill.instanceof - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent - local invariant = require(srcWorkspace.jsutils.invariant).invariant - local Kind = require(languageWorkspace.kinds).Kind - local parse = require(languageWorkspace.parser).parse - local Source = require(languageWorkspace.source).Source - local GraphQLError = require(errorWorkspace.GraphQLError).GraphQLError - local printError = require(errorWorkspace.GraphQLError).printError + local dedent = require("../../__testUtils__/dedent").dedent + local invariant = require("../../jsutils/invariant").invariant + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse + local Source = require("../../language/source").Source + local GraphQLError = require("../GraphQLError").GraphQLError + local printError = require("../GraphQLError").printError local source = Source.new(dedent([[ { diff --git a/src/error/__tests__/formatError.spec.lua b/src/error/__tests__/formatError.spec.lua index b905801..acf9ae3 100644 --- a/src/error/__tests__/formatError.spec.lua +++ b/src/error/__tests__/formatError.spec.lua @@ -7,9 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/error/__tests__/formatError-test.js return function() - local errorWorkspace = script.Parent.Parent - local formatError = require(errorWorkspace.formatError).formatError - local GraphQLErrorModule = require(errorWorkspace.GraphQLError) + local formatError = require("../formatError").formatError + local GraphQLErrorModule = require("../GraphQLError") local GraphQLError = GraphQLErrorModule.GraphQLError describe("formatError: default error formatter", function() diff --git a/src/error/__tests__/init.roblox.spec.lua b/src/error/__tests__/init.roblox.spec.lua index 53e69ff..57f5d4d 100644 --- a/src/error/__tests__/init.roblox.spec.lua +++ b/src/error/__tests__/init.roblox.spec.lua @@ -17,27 +17,27 @@ return function() describe("Error - init", function() it("should contain GraphQLError table", function() - local GraphQLError = require(script.Parent.Parent).GraphQLError + local GraphQLError = require("../init").GraphQLError expect(GraphQLError).to.be.a("table") end) it("should contain printError function", function() - local printError = require(script.Parent.Parent).printError + local printError = require("../init").printError expect(printError).to.be.a("function") end) it("should contain syntaxError function", function() - local syntaxError = require(script.Parent.Parent).syntaxError + local syntaxError = require("../init").syntaxError expect(syntaxError).to.be.a("function") end) it("should contain locatedError function", function() - local locatedError = require(script.Parent.Parent).locatedError + local locatedError = require("../init").locatedError expect(locatedError).to.be.a("function") end) it("should contain formatError function", function() - local formatError = require(script.Parent.Parent).formatError + local formatError = require("../init").formatError expect(formatError).to.be.a("function") end) end) diff --git a/src/error/__tests__/locatedError.spec.lua b/src/error/__tests__/locatedError.spec.lua index 3bfa9a8..4b1d30c 100644 --- a/src/error/__tests__/locatedError.spec.lua +++ b/src/error/__tests__/locatedError.spec.lua @@ -7,15 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/error/__tests__/locatedError-test.js return function() - local errorsWorkspace = script.Parent.Parent - local srcWorkspace = script.Parent.Parent.Parent - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error - local GraphQLError = require(errorsWorkspace.GraphQLError).GraphQLError - local locatedError = require(errorsWorkspace.locatedError).locatedError + local GraphQLError = require("../GraphQLError").GraphQLError + local locatedError = require("../locatedError").locatedError describe("locatedError", function() it("passes GraphQLError through", function() diff --git a/src/error/formatError.lua b/src/error/formatError.lua index 3798824..238382e 100644 --- a/src/error/formatError.lua +++ b/src/error/formatError.lua @@ -6,14 +6,12 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/error/formatError.js -local src = script.Parent.Parent -local rootWorkspace = src.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array -local devAssert = require(src.jsutils.devAssert).devAssert -local locationModule = require(src.language.location) +local devAssert = require("../jsutils/devAssert").devAssert +local locationModule = require("../language/location") type SourceLocation = locationModule.SourceLocation -local GraphQLErrorModule = require(script.Parent.GraphQLError) +local GraphQLErrorModule = require("./GraphQLError") type GraphQLError = GraphQLErrorModule.GraphQLError local exports = {} diff --git a/src/error/init.lua b/src/error/init.lua index 202dfb3..5b2ab59 100644 --- a/src/error/init.lua +++ b/src/error/init.lua @@ -6,8 +6,8 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/error/index.js -local graphQLErrorModule = require(script.GraphQLError) -local formatErrorModule = require(script.formatError) +local graphQLErrorModule = require("./GraphQLError") +local formatErrorModule = require("./formatError") export type GraphQLFormattedError = formatErrorModule.GraphQLFormattedError export type GraphQLError = graphQLErrorModule.GraphQLError @@ -15,7 +15,7 @@ export type GraphQLError = graphQLErrorModule.GraphQLError return { GraphQLError = graphQLErrorModule.GraphQLError, printError = graphQLErrorModule.printError, - syntaxError = require(script.syntaxError).syntaxError, - locatedError = require(script.locatedError).locatedError, + syntaxError = require("./syntaxError").syntaxError, + locatedError = require("./locatedError").locatedError, formatError = formatErrorModule.formatError, } diff --git a/src/error/locatedError.lua b/src/error/locatedError.lua index ef78ec1..115846c 100644 --- a/src/error/locatedError.lua +++ b/src/error/locatedError.lua @@ -6,24 +6,19 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/error/locatedError.js -local errorWorkspace = script.Parent -local srcWorkspace = errorWorkspace.Parent -local rootWorkspace = srcWorkspace.Parent -local Packages = rootWorkspace - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local instanceof = LuauPolyfill.instanceof type Array = LuauPolyfill.Array type Error = LuauPolyfill.Error -local inspect = require(srcWorkspace.jsutils.inspect).inspect +local inspect = require("../jsutils/inspect").inspect -local astModule = require(srcWorkspace.language.ast) +local astModule = require("../language/ast") type ASTNode = astModule.ASTNode -local GraphQLErrorModule = require(errorWorkspace.GraphQLError) +local GraphQLErrorModule = require("./GraphQLError") local GraphQLError = GraphQLErrorModule.GraphQLError type GraphQLError = GraphQLErrorModule.GraphQLError diff --git a/src/error/syntaxError.lua b/src/error/syntaxError.lua index f5cd0c0..e2f4654 100644 --- a/src/error/syntaxError.lua +++ b/src/error/syntaxError.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/error/syntaxError.js -local error_ = script.Parent -local GraphQLError = require(error_.GraphQLError).GraphQLError +local GraphQLError = require("./GraphQLError").GraphQLError -- /** -- * Produces a GraphQLError representing a syntax error, containing useful diff --git a/src/execution/__tests__/abstract.spec.lua b/src/execution/__tests__/abstract.spec.lua index 0ba72b3..b28f937 100644 --- a/src/execution/__tests__/abstract.spec.lua +++ b/src/execution/__tests__/abstract.spec.lua @@ -1,36 +1,33 @@ --upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/abstract-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Object = LuauPolyfill.Object local instanceof = LuauPolyfill.instanceof - local inspect = require(srcWorkspace.jsutils.inspect).inspect - local NULL = require(srcWorkspace.luaUtils.null) - local coerceToPromise = require(srcWorkspace.luaUtils.coerceToPromise).coerceToPromise - local Promise = require(Packages.Promise) + local inspect = require("../../jsutils/inspect").inspect + local NULL = require("../../luaUtils/null") + local coerceToPromise = require("../../luaUtils/coerceToPromise").coerceToPromise + local Promise = require("@pkg/@jsdotlua/promise") local HttpService = game:GetService("HttpService") - local parse = require(srcWorkspace.language.parser).parse + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local scalarsModule = require(srcWorkspace.type.scalars) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalarsModule = require("../../type/scalars") local GraphQLString = scalarsModule.GraphQLString local GraphQLBoolean = scalarsModule.GraphQLBoolean - local definitionModule = require(srcWorkspace.type.definition) + local definitionModule = require("../../type/definition") local GraphQLList = definitionModule.GraphQLList local GraphQLObjectType = definitionModule.GraphQLObjectType local GraphQLInterfaceType = definitionModule.GraphQLInterfaceType local GraphQLUnionType = definitionModule.GraphQLUnionType - local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema + local buildSchema = require("../../utilities/buildASTSchema").buildSchema - local executeModule = require(srcWorkspace.execution.execute) + local executeModule = require("../../execution/execute") local executeSync = executeModule.executeSync local execute = executeModule.execute diff --git a/src/execution/__tests__/directives.spec.lua b/src/execution/__tests__/directives.spec.lua index 6516fed..14230c3 100644 --- a/src/execution/__tests__/directives.spec.lua +++ b/src/execution/__tests__/directives.spec.lua @@ -7,16 +7,13 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/directives-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent + local parse = require("../../language/parser").parse - local parse = require(srcWorkspace.language.parser).parse + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLString = require(srcWorkspace.type.scalars).GraphQLString - local GraphQLObjectType = require(srcWorkspace.type.definition).GraphQLObjectType - - local executeSync = require(executionWorkspace.execute).executeSync + local executeSync = require("../execute").executeSync local schema = GraphQLSchema.new({ query = GraphQLObjectType.new({ diff --git a/src/execution/__tests__/executor.spec.lua b/src/execution/__tests__/executor.spec.lua index 8d02c16..ed5451e 100644 --- a/src/execution/__tests__/executor.spec.lua +++ b/src/execution/__tests__/executor.spec.lua @@ -7,42 +7,37 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/executor-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - local luaUtilsWorkspace = srcWorkspace.luaUtils - - local Packages = srcWorkspace.Parent - local JestGlobals = require(Packages.Dev.JestGlobals) + local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect -- ROBLOX deviation: utils - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object - local Promise = require(Packages.Promise) + local Promise = require("@pkg/@jsdotlua/promise") local instanceof = LuauPolyfill.instanceof - local NULL = require(luaUtilsWorkspace.null) + local NULL = require("../../luaUtils/null") local HttpService = game:GetService("HttpService") - local inspect = require(srcWorkspace.jsutils.inspect).inspect - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local inspect = require("../../jsutils/inspect").inspect + local invariant = require("../../jsutils/invariant").invariant - local Kind = require(srcWorkspace.language.kinds).Kind - local parse = require(srcWorkspace.language.parser).parse + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local scalarsImport = require(srcWorkspace.type.scalars) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalarsImport = require("../../type/scalars") local GraphQLInt = scalarsImport.GraphQLInt local GraphQLBoolean = scalarsImport.GraphQLBoolean local GraphQLString = scalarsImport.GraphQLString - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLScalarType = definitionImport.GraphQLScalarType local GraphQLInterfaceType = definitionImport.GraphQLInterfaceType local GraphQLObjectType = definitionImport.GraphQLObjectType local GraphQLUnionType = definitionImport.GraphQLUnionType - local executeImport = require(executionWorkspace.execute) + local executeImport = require("../execute") local execute = executeImport.execute local executeSync = executeImport.executeSync diff --git a/src/execution/__tests__/init.roblox.spec.lua b/src/execution/__tests__/init.roblox.spec.lua index 06bc890..7304689 100644 --- a/src/execution/__tests__/init.roblox.spec.lua +++ b/src/execution/__tests__/init.roblox.spec.lua @@ -17,27 +17,27 @@ return function() describe("Execute - init", function() it("should contain execute function", function() - local execute = require(script.Parent.Parent).execute + local execute = require("../init").execute expect(execute).to.be.a("function") end) it("should contain executeSync function", function() - local executeSync = require(script.Parent.Parent).executeSync + local executeSync = require("../init").executeSync expect(executeSync).to.be.a("function") end) it("should contain defaultFieldResolver function", function() - local defaultFieldResolver = require(script.Parent.Parent).defaultFieldResolver + local defaultFieldResolver = require("../init").defaultFieldResolver expect(defaultFieldResolver).to.be.a("function") end) it("should contain defaultTypeResolver function", function() - local defaultTypeResolver = require(script.Parent.Parent).defaultTypeResolver + local defaultTypeResolver = require("../init").defaultTypeResolver expect(defaultTypeResolver).to.be.a("function") end) it("should contain getDirectiveValues function", function() - local getDirectiveValues = require(script.Parent.Parent).getDirectiveValues + local getDirectiveValues = require("../init").getDirectiveValues expect(getDirectiveValues).to.be.a("function") end) end) diff --git a/src/execution/__tests__/lists.spec.lua b/src/execution/__tests__/lists.spec.lua index bb0d5ca..ac1b91c 100644 --- a/src/execution/__tests__/lists.spec.lua +++ b/src/execution/__tests__/lists.spec.lua @@ -6,27 +6,23 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/lists-test.js -local srcWorkspace = script.Parent.Parent.Parent -local luaUtilsWorkspace = srcWorkspace.luaUtils -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Set = LuauPolyfill.Set local instanceof = LuauPolyfill.instanceof -local Promise = require(Packages.Promise) -local NULL = require(luaUtilsWorkspace.null) +local Promise = require("@pkg/@jsdotlua/promise") +local NULL = require("../../luaUtils/null") -local JestGlobals = require(Packages.Dev.JestGlobals) +local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect -local parse = require(srcWorkspace.language.parser).parse +local parse = require("../../language/parser").parse -local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema +local buildSchema = require("../../utilities/buildASTSchema").buildSchema -local executeModule = require(script.Parent.Parent.execute) +local executeModule = require("../execute") local execute = executeModule.execute local executeSync = executeModule.executeSync diff --git a/src/execution/__tests__/mutations.spec.lua b/src/execution/__tests__/mutations.spec.lua index a249ad1..81c5812 100644 --- a/src/execution/__tests__/mutations.spec.lua +++ b/src/execution/__tests__/mutations.spec.lua @@ -7,18 +7,16 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/mutations-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - - local resolveOnNextTick = require(srcWorkspace.__testUtils__.resolveOnNextTick) - local parse = require(srcWorkspace.language.parser).parse - local GraphQLInt = require(srcWorkspace.type.scalars).GraphQLInt - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLObjectType = require(srcWorkspace.type.definition).GraphQLObjectType - local executeModule = require(srcWorkspace.execution.execute) + local resolveOnNextTick = require("../../__testUtils__/resolveOnNextTick") + local parse = require("../../language/parser").parse + local GraphQLInt = require("../../type/scalars").GraphQLInt + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType + local executeModule = require("../../execution/execute") local execute = executeModule.execute local executeSync = executeModule.executeSync - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") local NumberHolder = {} diff --git a/src/execution/__tests__/nonnull.spec.lua b/src/execution/__tests__/nonnull.spec.lua index acbfa61..1ea9c4d 100644 --- a/src/execution/__tests__/nonnull.spec.lua +++ b/src/execution/__tests__/nonnull.spec.lua @@ -7,31 +7,27 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/nonnull-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Object = LuauPolyfill.Object - local NULL = require(srcWorkspace.luaUtils.null) - local isNotNillish = require(srcWorkspace.luaUtils.isNillish).isNotNillish - local Promise = require(Packages.Promise) + local NULL = require("../../luaUtils/null") + local isNotNillish = require("../../luaUtils/isNillish").isNotNillish + local Promise = require("@pkg/@jsdotlua/promise") local HttpService = game:GetService("HttpService") - local inspect = require(srcWorkspace.jsutils.inspect).inspect + local inspect = require("../../jsutils/inspect").inspect - local parse = require(srcWorkspace.language.parser).parse + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLString = require(srcWorkspace.type.scalars).GraphQLString - local definitionModule = require(srcWorkspace.type.definition) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local definitionModule = require("../../type/definition") local GraphQLNonNull = definitionModule.GraphQLNonNull local GraphQLObjectType = definitionModule.GraphQLObjectType - local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema + local buildSchema = require("../../utilities/buildASTSchema").buildSchema - local executeModule = require(script.Parent.Parent.execute) + local executeModule = require("../execute") local execute = executeModule.execute local executeSync = executeModule.executeSync diff --git a/src/execution/__tests__/resolve.spec.lua b/src/execution/__tests__/resolve.spec.lua index 749a240..984abbf 100644 --- a/src/execution/__tests__/resolve.spec.lua +++ b/src/execution/__tests__/resolve.spec.lua @@ -7,21 +7,18 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/resolve-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - -- ROBLOX deviation: utils - local inspect = require(srcWorkspace.jsutils.inspect).inspect + local inspect = require("../../jsutils/inspect").inspect - local parse = require(srcWorkspace.language.parser).parse + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local scalarsImport = require(srcWorkspace.type.scalars) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalarsImport = require("../../type/scalars") local GraphQLInt = scalarsImport.GraphQLInt local GraphQLString = scalarsImport.GraphQLString - local GraphQLObjectType = require(srcWorkspace.type.definition).GraphQLObjectType + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType - local executeSync = require(executionWorkspace.execute).executeSync + local executeSync = require("../execute").executeSync describe("Execute: resolve function", function() local function testSchema(testField) diff --git a/src/execution/__tests__/schema.spec.lua b/src/execution/__tests__/schema.spec.lua index 070b2f8..002ec65 100644 --- a/src/execution/__tests__/schema.spec.lua +++ b/src/execution/__tests__/schema.spec.lua @@ -7,23 +7,20 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/schema-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent + local parse = require("../../language/parser").parse - local parse = require(srcWorkspace.language.parser).parse - - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local definitionImport = require(srcWorkspace.type.definition) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLObjectType = definitionImport.GraphQLObjectType - local scalarsImport = require(srcWorkspace.type.scalars) + local scalarsImport = require("../../type/scalars") local GraphQLID = scalarsImport.GraphQLID local GraphQLInt = scalarsImport.GraphQLInt local GraphQLString = scalarsImport.GraphQLString local GraphQLBoolean = scalarsImport.GraphQLBoolean - local executeSync = require(executionWorkspace.execute).executeSync + local executeSync = require("../execute").executeSync describe("Execute: Handles execution with a complex schema", function() it("executes using a schema", function() diff --git a/src/execution/__tests__/sync.spec.lua b/src/execution/__tests__/sync.spec.lua index ced251f..74395b1 100644 --- a/src/execution/__tests__/sync.spec.lua +++ b/src/execution/__tests__/sync.spec.lua @@ -7,28 +7,25 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/sync-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - - local LuauPolyfill = require(srcWorkspace.Parent.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object - local Promise = require(srcWorkspace.Parent.Promise) + local Promise = require("@pkg/@jsdotlua/promise") local HttpService = game:GetService("HttpService") - local inspect = require(srcWorkspace.jsutils.inspect).inspect + local inspect = require("../../jsutils/inspect").inspect - local parse = require(srcWorkspace.language.parser).parse + local parse = require("../../language/parser").parse - local validate = require(srcWorkspace.validation.validate).validate + local validate = require("../../validation/validate").validate - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLString = require(srcWorkspace.type.scalars).GraphQLString - local GraphQLObjectType = require(srcWorkspace.type.definition).GraphQLObjectType + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType - local graphqlSync = require(srcWorkspace.graphql).graphqlSync + local graphqlSync = require("../../graphql").graphqlSync - local executeImport = require(executionWorkspace.execute) + local executeImport = require("../execute") local execute = executeImport.execute local executeSync = executeImport.executeSync diff --git a/src/execution/__tests__/union-interface.spec.lua b/src/execution/__tests__/union-interface.spec.lua index 75bccad..d5e8418 100644 --- a/src/execution/__tests__/union-interface.spec.lua +++ b/src/execution/__tests__/union-interface.spec.lua @@ -7,28 +7,25 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/union-interface-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - -- ROBLOX deviation: utilities - local instanceOf = require(srcWorkspace.jsutils.instanceOf) - local NULL = require(srcWorkspace.luaUtils.null) + local instanceOf = require("../../jsutils/instanceOf") + local NULL = require("../../luaUtils/null") - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local parse = require(srcWorkspace.language.parser).parse + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local scalarsImport = require(srcWorkspace.type.scalars) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalarsImport = require("../../type/scalars") local GraphQLString = scalarsImport.GraphQLString local GraphQLBoolean = scalarsImport.GraphQLBoolean - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLUnionType = definitionImport.GraphQLUnionType local GraphQLObjectType = definitionImport.GraphQLObjectType local GraphQLInterfaceType = definitionImport.GraphQLInterfaceType - local executeSync = require(executionWorkspace.execute).executeSync + local executeSync = require("../execute").executeSync local Dog = {} local DogMetatable = { __index = Dog } diff --git a/src/execution/__tests__/values.roblox.spec.lua b/src/execution/__tests__/values.roblox.spec.lua index 38ea1d7..86c6740 100644 --- a/src/execution/__tests__/values.roblox.spec.lua +++ b/src/execution/__tests__/values.roblox.spec.lua @@ -15,7 +15,7 @@ -- ROBLOX deviation: no upstream tests return function() - local valuesImport = require(script.Parent.Parent.values) + local valuesImport = require("../values") local getVariableValues = valuesImport.getVariableValues local getArgumentValues = valuesImport.getArgumentValues local getDirectiveValues = valuesImport.getDirectiveValues diff --git a/src/execution/__tests__/variables.spec.lua b/src/execution/__tests__/variables.spec.lua index fb8633c..6c9ff9c 100644 --- a/src/execution/__tests__/variables.spec.lua +++ b/src/execution/__tests__/variables.spec.lua @@ -7,27 +7,23 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/__tests__/variables-test.js return function() - local executionWorkspace = script.Parent.Parent - local srcWorkspace = executionWorkspace.Parent - local rootWorkspace = srcWorkspace.Parent - - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map local Number = LuauPolyfill.Number local Object = LuauPolyfill.Object local NaN = Number.NaN - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") - local inspect = require(srcWorkspace.jsutils.inspect).inspect - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local inspect = require("../../jsutils/inspect").inspect + local invariant = require("../../jsutils/invariant").invariant - local Kind = require(srcWorkspace.language.kinds).Kind - local parse = require(srcWorkspace.language.parser).parse + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLString = require(srcWorkspace.type.scalars).GraphQLString - local definitionImport = require(srcWorkspace.type.definition) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLScalarType = definitionImport.GraphQLScalarType @@ -35,8 +31,8 @@ return function() local GraphQLInputObjectType = definitionImport.GraphQLInputObjectType local GraphQLEnumType = definitionImport.GraphQLEnumType - local executeSync = require(executionWorkspace.execute).executeSync - local getVariableValues = require(executionWorkspace.values).getVariableValues + local executeSync = require("../execute").executeSync + local getVariableValues = require("../values").getVariableValues local TestComplexScalar = GraphQLScalarType.new({ name = "ComplexScalar", diff --git a/src/execution/execute.lua b/src/execution/execute.lua index 8b2244d..a08c9d7 100644 --- a/src/execution/execute.lua +++ b/src/execution/execute.lua @@ -5,16 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/execute.js -local srcWorkspace = script.Parent.Parent -local jsUtilsWorkspace = srcWorkspace.jsutils -local errorWorkspace = srcWorkspace.error -local languageWorkspace = srcWorkspace.language -local typeWorkspace = srcWorkspace.type -local utilitiesWorkspace = srcWorkspace.utilities -local luaUtilsWorkspace = srcWorkspace.luaUtils -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map @@ -23,38 +14,38 @@ local instanceof = LuauPolyfill.instanceof type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map -local ObjMapImport = require(jsUtilsWorkspace.ObjMap) +local ObjMapImport = require("../jsutils/ObjMap") type ObjMap = ObjMapImport.ObjMap -local PromiseOrValueImport = require(jsUtilsWorkspace.PromiseOrValue) +local PromiseOrValueImport = require("../jsutils/PromiseOrValue") type PromiseOrValue = PromiseOrValueImport.PromiseOrValue -local Promise = require(srcWorkspace.Parent.Promise) +local Promise = require("@pkg/@jsdotlua/promise") type Promise = LuauPolyfill.Promise -local NULL = require(luaUtilsWorkspace.null) -local isNillish = require(luaUtilsWorkspace.isNillish).isNillish - -local inspect = require(jsUtilsWorkspace.inspect).inspect -local memoize3 = require(jsUtilsWorkspace.memoize3).memoize3 -local invariant = require(jsUtilsWorkspace.invariant).invariant -local devAssert = require(jsUtilsWorkspace.devAssert).devAssert -local isPromise = require(jsUtilsWorkspace.isPromise).isPromise -local isObjectLike = require(jsUtilsWorkspace.isObjectLike).isObjectLike -local promiseReduce = require(jsUtilsWorkspace.promiseReduce).promiseReduce -local promiseForObject = require(jsUtilsWorkspace.promiseForObject).promiseForObject -local pathImport = require(jsUtilsWorkspace.Path) +local NULL = require("../luaUtils/null") +local isNillish = require("../luaUtils/isNillish").isNillish + +local inspect = require("../jsutils/inspect").inspect +local memoize3 = require("../jsutils/memoize3").memoize3 +local invariant = require("../jsutils/invariant").invariant +local devAssert = require("../jsutils/devAssert").devAssert +local isPromise = require("../jsutils/isPromise").isPromise +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike +local promiseReduce = require("../jsutils/promiseReduce").promiseReduce +local promiseForObject = require("../jsutils/promiseForObject").promiseForObject +local pathImport = require("../jsutils/Path") type Path = pathImport.Path local addPath = pathImport.addPath local pathToArray = pathImport.pathToArray -local isIteratableObject = require(jsUtilsWorkspace.isIteratableObject).isIteratableObject +local isIteratableObject = require("../jsutils/isIteratableObject").isIteratableObject -local formatErrorImport = require(errorWorkspace.formatError) +local formatErrorImport = require("../error/formatError") type GraphQLFormattedError = formatErrorImport.GraphQLFormattedError -local graphQLErrorImport = require(errorWorkspace.GraphQLError) +local graphQLErrorImport = require("../error/GraphQLError") type GraphQLError = graphQLErrorImport.GraphQLError local GraphQLError = graphQLErrorImport.GraphQLError -local locatedError = require(errorWorkspace.locatedError).locatedError +local locatedError = require("../error/locatedError").locatedError -local astImport = require(languageWorkspace.ast) +local astImport = require("../language/ast") type DocumentNode = astImport.DocumentNode type OperationDefinitionNode = astImport.OperationDefinitionNode type SelectionSetNode = astImport.SelectionSetNode @@ -63,11 +54,11 @@ type FragmentSpreadNode = astImport.FragmentSpreadNode type InlineFragmentNode = astImport.InlineFragmentNode type FragmentDefinitionNode = astImport.FragmentDefinitionNode type NamedTypeNode = astImport.NamedTypeNode -local Kind = require(srcWorkspace.language.kinds).Kind +local Kind = require("../language/kinds").Kind -local schemaImport = require(typeWorkspace.schema) +local schemaImport = require("../type/schema") type GraphQLSchema = schemaImport.GraphQLSchema -local definitionImport = require(typeWorkspace.definition) +local definitionImport = require("../type/definition") type GraphQLType = definitionImport.GraphQLType type GraphQLObjectType = definitionImport.GraphQLObjectType type GraphQLOutputType = definitionImport.GraphQLOutputType @@ -84,12 +75,12 @@ type GraphQLResolveInfo = definitionImport.GraphQLResolveInfo type GraphQLTypeResolver = definitionImport.GraphQLTypeResolver type GraphQLList = definitionImport.GraphQLList type GraphQLNonNull = definitionImport.GraphQLNonNull -local assertValidSchema = require(typeWorkspace.validate).assertValidSchema -local introspectionImport = require(typeWorkspace.introspection) +local assertValidSchema = require("../type/validate").assertValidSchema +local introspectionImport = require("../type/introspection") local SchemaMetaFieldDef = introspectionImport.SchemaMetaFieldDef local TypeMetaFieldDef = introspectionImport.TypeMetaFieldDef local TypeNameMetaFieldDef = introspectionImport.TypeNameMetaFieldDef -local directivesImport = require(typeWorkspace.directives) +local directivesImport = require("../type/directives") local GraphQLIncludeDirective = directivesImport.GraphQLIncludeDirective local GraphQLSkipDirective = directivesImport.GraphQLSkipDirective local isObjectType = definitionImport.isObjectType @@ -98,10 +89,10 @@ local isLeafType = definitionImport.isLeafType local isListType = definitionImport.isListType local isNonNullType = definitionImport.isNonNullType -local typeFromAST = require(utilitiesWorkspace.typeFromAST).typeFromAST -local getOperationRootType = require(utilitiesWorkspace.getOperationRootType).getOperationRootType +local typeFromAST = require("../utilities/typeFromAST").typeFromAST +local getOperationRootType = require("../utilities/getOperationRootType").getOperationRootType -local valuesImport = require(script.Parent.values) +local valuesImport = require("./values") local getVariableValues = valuesImport.getVariableValues local getArgumentValues = valuesImport.getArgumentValues local getDirectiveValues = valuesImport.getDirectiveValues diff --git a/src/execution/init.lua b/src/execution/init.lua index 7bf7686..2464aed 100644 --- a/src/execution/init.lua +++ b/src/execution/init.lua @@ -6,15 +6,15 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/index.js -local executeModule = require(script.execute) -local valuesModule = require(script.values) +local executeModule = require("./execute") +local valuesModule = require("./values") export type ExecutionArgs = executeModule.ExecutionArgs export type ExecutionResult = executeModule.ExecutionResult export type FormattedExecutionResult = executeModule.FormattedExecutionResult return { - responsePathAsArray = require(script.Parent.jsutils.Path).pathToArray, + responsePathAsArray = require("../jsutils/Path").pathToArray, execute = executeModule.execute, executeSync = executeModule.executeSync, diff --git a/src/execution/values.lua b/src/execution/values.lua index 696856d..b43d2dd 100644 --- a/src/execution/values.lua +++ b/src/execution/values.lua @@ -5,51 +5,46 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/execution/values.js -local srcWorkspace = script.Parent.Parent - -local root = srcWorkspace.Parent -local LuauPolyfill = require(root.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type void = nil local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array -local NULL = require(srcWorkspace.luaUtils.null) -local isNillish = require(srcWorkspace.luaUtils.isNillish).isNillish +local NULL = require("../luaUtils/null") +local isNillish = require("../luaUtils/isNillish").isNillish -local objMapImport = require(srcWorkspace.jsutils.ObjMap) +local objMapImport = require("../jsutils/ObjMap") type ObjMap = objMapImport.ObjMap -local keyMap = require(srcWorkspace.jsutils.keyMap).keyMap -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local printPathArray = require(srcWorkspace.jsutils.printPathArray).printPathArray +local keyMap = require("../jsutils/keyMap").keyMap +local inspect = require("../jsutils/inspect").inspect +local printPathArray = require("../jsutils/printPathArray").printPathArray -local graphqlErrorImport = require(srcWorkspace.error.GraphQLError) +local graphqlErrorImport = require("../error/GraphQLError") local GraphQLError = graphqlErrorImport.GraphQLError type GraphQLError = graphqlErrorImport.GraphQLError -local languageWorkspace = srcWorkspace.language -local astImport = require(languageWorkspace.ast) +local astImport = require("../language/ast") type ArgumentNode = astImport.ArgumentNode type FieldNode = astImport.FieldNode type DirectiveNode = astImport.DirectiveNode type VariableDefinitionNode = astImport.VariableDefinitionNode type ASTNode = astImport.ASTNode -local Kind = require(languageWorkspace.kinds).Kind -local print_ = require(languageWorkspace.printer).print +local Kind = require("../language/kinds").Kind +local print_ = require("../language/printer").print -local typeWorkspace = srcWorkspace.type -local schemaImport = require(typeWorkspace.schema) +local schemaImport = require("../type/schema") type GraphQLSchema = schemaImport.GraphQLSchema -local definitionImport = require(typeWorkspace.definition) +local definitionImport = require("../type/definition") type GraphQLField = definitionImport.GraphQLField -local directivesImport = require(typeWorkspace.directives) +local directivesImport = require("../type/directives") type GraphQLDirective = directivesImport.GraphQLDirective -local definition = require(srcWorkspace.type.definition) +local definition = require("../type/definition") local isInputType = definition.isInputType local isNonNullType = definition.isNonNullType -local typeFromAST = require(srcWorkspace.utilities.typeFromAST).typeFromAST -local valueFromAST = require(srcWorkspace.utilities.valueFromAST).valueFromAST -local coerceInputValue = require(srcWorkspace.utilities.coerceInputValue).coerceInputValue +local typeFromAST = require("../utilities/typeFromAST").typeFromAST +local valueFromAST = require("../utilities/valueFromAST").valueFromAST +local coerceInputValue = require("../utilities/coerceInputValue").coerceInputValue -- ROBLOX deviation: predeclare functions local getVariableValues diff --git a/src/graphql.lua b/src/graphql.lua index d3f7813..ea6aba7 100644 --- a/src/graphql.lua +++ b/src/graphql.lua @@ -5,33 +5,30 @@ * LICENSE file in the root directory of this source tree. ]] -- upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/graphql.js -local rootWorkspace = script.Parent - -local Packages = rootWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error -local Promise = require(Packages.Promise) +local Promise = require("@pkg/@jsdotlua/promise") type Promise = LuauPolyfill.Promise -local PromiseOrValueModule = require(rootWorkspace.jsutils.PromiseOrValue) +local PromiseOrValueModule = require("./jsutils/PromiseOrValue") type PromiseOrValue = PromiseOrValueModule.PromiseOrValue -local isPromise = require(rootWorkspace.jsutils.isPromise).isPromise +local isPromise = require("./jsutils/isPromise").isPromise -local sourceModule = require(rootWorkspace.language.source) +local sourceModule = require("./language/source") type Source = sourceModule.Source -local parse = require(rootWorkspace.language.parser).parse +local parse = require("./language/parser").parse -local definitionModule = require(rootWorkspace.type.definition) +local definitionModule = require("./type/definition") -- ROBLOX deviation: Luau doesn't currently support default type args, so add the third one here until it does type GraphQLFieldResolver = definitionModule.GraphQLFieldResolver type GraphQLTypeResolver = definitionModule.GraphQLTypeResolver -local schemaModule = require(rootWorkspace.type.schema) +local schemaModule = require("./type/schema") type GraphQLSchema = schemaModule.GraphQLSchema -local validate = require(rootWorkspace.validation.validate).validate +local validate = require("./validation/validate").validate -local validateSchema = require(rootWorkspace.type.validate).validateSchema +local validateSchema = require("./type/validate").validateSchema -local executeModule = require(rootWorkspace.execution.execute) +local executeModule = require("./execution/execute") local execute = executeModule.execute type ExecutionResult = executeModule.ExecutionResult diff --git a/src/init.lua b/src/init.lua index cbb8f83..1e3fc58 100644 --- a/src/init.lua +++ b/src/init.lua @@ -34,19 +34,19 @@ local exports = {} -- The GraphQL.js version info. -local versionModule = require(script.version) +local versionModule = require("./version") exports.version = versionModule.version exports.versionInfo = versionModule.versionInfo -- The primary entry point into fulfilling a GraphQL request. -local graphQlModule = require(script.graphql) +local graphQlModule = require("./graphql") exports.graphql = graphQlModule.graphql exports.graphqlSync = graphQlModule.graphqlSync export type GraphQLArgs = graphQlModule.GraphQLArgs -- Create and operate on GraphQL type definitions and schema. -local typeModule = require(script.type) +local typeModule = require("./type") -- Definitions exports.GraphQLSchema = typeModule.GraphQLSchema @@ -221,7 +221,7 @@ export type GraphQLInputObjectType = typeModule.GraphQLInputObjectType export type GraphQLDirective = typeModule.GraphQLDirective export type GraphQLSchema = typeModule.GraphQLSchema -local languageModule = require(script.language) +local languageModule = require("./language") -- Parse and operate on GraphQL language source files. @@ -337,7 +337,7 @@ export type UnionTypeExtensionNode = languageModule.UnionTypeExtensionNode export type EnumTypeExtensionNode = languageModule.EnumTypeExtensionNode export type InputObjectTypeExtensionNode = languageModule.InputObjectTypeExtensionNode -local executionModule = require(script.execution) +local executionModule = require("./execution") -- Execute GraphQL queries. exports.execute = executionModule.execute @@ -351,13 +351,13 @@ export type ExecutionArgs = executionModule.ExecutionArgs export type ExecutionResult = executionModule.ExecutionResult export type FormattedExecutionResult = executionModule.FormattedExecutionResult -local subscriptionModule = require(script.subscription) +local subscriptionModule = require("./subscription") exports.subscribe = subscriptionModule.subscribe exports.createSourceEventStream = subscriptionModule.createSourceEventStream export type SubscriptionArgs = subscriptionModule.SubscriptionArgs -- Validate GraphQL documents. -local validationModule = require(script.validation) +local validationModule = require("./validation") exports.validate = validationModule.validate exports.ValidationContext = validationModule.ValidationContext @@ -408,7 +408,7 @@ export type SDLValidationContext = validationModule.SDLValidationContext export type ValidationContext = validationModule.ValidationContext -- Create, format, and print GraphQL errors. -local errorModule = require(script.error) +local errorModule = require("./error") exports.GraphQLError = errorModule.GraphQLError exports.syntaxError = errorModule.syntaxError exports.locatedError = errorModule.locatedError @@ -419,7 +419,7 @@ export type GraphQLFormattedError = errorModule.GraphQLFormattedError export type GraphQLError = errorModule.GraphQLError -- Utilities for operating on GraphQL type schema and parsed sources. -local utilitiesModule = require(script.utilities) +local utilitiesModule = require("./utilities") -- Produce the GraphQL query recommended for a full schema introspection. -- Accepts optional IntrospectionOptions. @@ -511,9 +511,9 @@ export type DangerousChange = utilitiesModule.DangerousChange export type TypeInfo = utilitiesModule.TypeInfo -- ROBLOX comment: reexport NULL -exports.NULL = require(script.luaUtils.null) +exports.NULL = require("./luaUtils/null") -- ROBLOX comment: export stringify -exports.stringify = require(script.luaUtils.stringify) +exports.stringify = require("./luaUtils/stringify") return exports diff --git a/src/init.spec.lua b/src/init.spec.lua index b93ddfb..96729e4 100644 --- a/src/init.spec.lua +++ b/src/init.spec.lua @@ -13,17 +13,15 @@ * limitations under the License. ]] return function() - local TestMatchers = script.Parent.TestMatchers - local toEqual = require(TestMatchers.toEqual) - local toArrayContains = require(TestMatchers.toArrayContains) - local toHaveSameMembers = require(TestMatchers.toHaveSameMembers) - local toArrayEqual = require(TestMatchers.toArrayEqual) - local toObjectContain = require(TestMatchers.toObjectContain) - local toBeOneOf = require(TestMatchers.toBeOneOf) - local toThrow = require(TestMatchers.toThrow) - local toBeNaN = require(TestMatchers.toBeNaN) - local Packages = script.Parent.Parent - local JestGlobals = require(Packages.Dev.JestGlobals) + local toEqual = require("./TestMatchers/toEqual") + local toArrayContains = require("./TestMatchers/toArrayContains") + local toHaveSameMembers = require("./TestMatchers/toHaveSameMembers") + local toArrayEqual = require("./TestMatchers/toArrayEqual") + local toObjectContain = require("./TestMatchers/toObjectContain") + local toBeOneOf = require("./TestMatchers/toBeOneOf") + local toThrow = require("./TestMatchers/toThrow") + local toBeNaN = require("./TestMatchers/toBeNaN") + local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect beforeAll(function() diff --git a/src/jsutils/Path.lua b/src/jsutils/Path.lua index c6b61d4..a22ebea 100644 --- a/src/jsutils/Path.lua +++ b/src/jsutils/Path.lua @@ -5,8 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/Path.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array diff --git a/src/jsutils/PromiseOrValue.lua b/src/jsutils/PromiseOrValue.lua index e25cef5..d841d5c 100644 --- a/src/jsutils/PromiseOrValue.lua +++ b/src/jsutils/PromiseOrValue.lua @@ -6,9 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/jsutils/PromiseOrValue.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Promise = LuauPolyfill.Promise export type PromiseOrValue = Promise | T diff --git a/src/jsutils/__tests__/devAssert.roblox.spec.lua b/src/jsutils/__tests__/devAssert.roblox.spec.lua index c9e3b2a..23b8771 100644 --- a/src/jsutils/__tests__/devAssert.roblox.spec.lua +++ b/src/jsutils/__tests__/devAssert.roblox.spec.lua @@ -15,7 +15,7 @@ -- ROBLOX deviation: no upstream tests return function() - local devAssert = require(script.Parent.Parent.devAssert).devAssert + local devAssert = require("../devAssert").devAssert describe("Source", function() it("checks reponse message when assertion is false", function() diff --git a/src/jsutils/__tests__/didYouMean.spec.lua b/src/jsutils/__tests__/didYouMean.spec.lua index 8810f37..c4fe28b 100644 --- a/src/jsutils/__tests__/didYouMean.spec.lua +++ b/src/jsutils/__tests__/didYouMean.spec.lua @@ -7,7 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/__tests__/didYouMean-test.js return function() local jsutils = script.Parent.Parent - local didYouMean = require(jsutils.didYouMean).didYouMean + local didYouMean = require("../didYouMean").didYouMean describe("didYouMean", function() it("Does accept an empty list", function() diff --git a/src/jsutils/__tests__/identityFunc.spec.lua b/src/jsutils/__tests__/identityFunc.spec.lua index 9390c76..20b9338 100644 --- a/src/jsutils/__tests__/identityFunc.spec.lua +++ b/src/jsutils/__tests__/identityFunc.spec.lua @@ -7,7 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/__tests__/identityFunc-test.js return function() local jsutils = script.Parent.Parent - local identityFunc = require(jsutils.identityFunc).identityFunc + local identityFunc = require("../identityFunc").identityFunc describe("identityFunc", function() it("returns the first argument it receives", function() diff --git a/src/jsutils/__tests__/inspect.spec.lua b/src/jsutils/__tests__/inspect.spec.lua index 07653f8..f519aa5 100644 --- a/src/jsutils/__tests__/inspect.spec.lua +++ b/src/jsutils/__tests__/inspect.spec.lua @@ -7,13 +7,13 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/__tests__/inspect-test.js return function() local rootWorkspace = script.Parent.Parent.Parent.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array local NaN = LuauPolyfill.Number.NaN local jsutils = script.Parent.Parent - local inspect = require(jsutils.inspect).inspect - local invariant = require(jsutils.invariant).invariant + local inspect = require("../inspect").inspect + local invariant = require("../invariant").invariant describe("inspect", function() -- it("undefined", function() diff --git a/src/jsutils/__tests__/instanceOf.roblox.spec.lua b/src/jsutils/__tests__/instanceOf.roblox.spec.lua index 6fffc23..4970bb8 100644 --- a/src/jsutils/__tests__/instanceOf.roblox.spec.lua +++ b/src/jsutils/__tests__/instanceOf.roblox.spec.lua @@ -16,7 +16,7 @@ return function() local jsutils = script.Parent.Parent - local instanceOf = require(jsutils.instanceOf) + local instanceOf = require("../instanceOf") describe("instanceOf", function() type ParentClass = { diff --git a/src/jsutils/__tests__/invariant.spec.lua b/src/jsutils/__tests__/invariant.spec.lua index a7436f7..06d6363 100644 --- a/src/jsutils/__tests__/invariant.spec.lua +++ b/src/jsutils/__tests__/invariant.spec.lua @@ -7,7 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/__tests__/invariant-test.js return function() local jsutils = script.Parent.Parent - local invariant = require(jsutils.invariant).invariant + local invariant = require("../invariant").invariant describe("invariant", function() it("throws on false conditions", function() diff --git a/src/jsutils/__tests__/isIteratableObject.spec.lua b/src/jsutils/__tests__/isIteratableObject.spec.lua index c83c357..b8935a8 100644 --- a/src/jsutils/__tests__/isIteratableObject.spec.lua +++ b/src/jsutils/__tests__/isIteratableObject.spec.lua @@ -7,10 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/jsutils/__tests__/isIteratableObject-test.js return function() local rootWorkspace = script.Parent.Parent.Parent.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local NaN = LuauPolyfill.Number.NaN - local isIteratableObject = require(script.Parent.Parent.isIteratableObject).isIteratableObject + local isIteratableObject = require("../isIteratableObject").isIteratableObject describe("isIteratableObject", function() it("should return `true` for collections", function() diff --git a/src/jsutils/__tests__/isObjectLike.spec.lua b/src/jsutils/__tests__/isObjectLike.spec.lua index ddb9c51..8f4d55b 100644 --- a/src/jsutils/__tests__/isObjectLike.spec.lua +++ b/src/jsutils/__tests__/isObjectLike.spec.lua @@ -8,8 +8,8 @@ return function() local jsutils = script.Parent.Parent - local identityFunc = require(jsutils.identityFunc).identityFunc - local isObjectLike = require(jsutils.isObjectLike).isObjectLike + local identityFunc = require("../identityFunc").identityFunc + local isObjectLike = require("../isObjectLike").isObjectLike describe("isObjectLike", function() it("should return `true` for objects", function() diff --git a/src/jsutils/__tests__/naturalCompare.spec.lua b/src/jsutils/__tests__/naturalCompare.spec.lua index 0e78e17..496a795 100644 --- a/src/jsutils/__tests__/naturalCompare.spec.lua +++ b/src/jsutils/__tests__/naturalCompare.spec.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/__tests__/naturalCompare.js -local naturalCompare = require(script.Parent.Parent.naturalCompare).naturalCompare +local naturalCompare = require("../naturalCompare").naturalCompare return function() describe("naturalCompare", function() diff --git a/src/jsutils/__tests__/promiseReduce.roblox.spec.lua b/src/jsutils/__tests__/promiseReduce.roblox.spec.lua index 2a6de0f..308399a 100644 --- a/src/jsutils/__tests__/promiseReduce.roblox.spec.lua +++ b/src/jsutils/__tests__/promiseReduce.roblox.spec.lua @@ -16,10 +16,10 @@ return function() local jsutils = script.Parent.Parent local graphql = jsutils.Parent local Packages = graphql.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Promise = LuauPolyfill.Promise - local Promise = require(Packages.Promise) - local promiseReduce = require(jsutils.promiseReduce).promiseReduce + local Promise = require("@pkg/@jsdotlua/promise") + local promiseReduce = require("../promiseReduce").promiseReduce describe("promiseReduce", function() it("should return the initial value when the list is empty", function() diff --git a/src/jsutils/__tests__/suggestionList.spec.lua b/src/jsutils/__tests__/suggestionList.spec.lua index b9b511f..db1ca96 100644 --- a/src/jsutils/__tests__/suggestionList.spec.lua +++ b/src/jsutils/__tests__/suggestionList.spec.lua @@ -8,7 +8,7 @@ return function() local jsutils = script.Parent.Parent - local suggestionList = require(jsutils.suggestionList).suggestionList + local suggestionList = require("../suggestionList").suggestionList describe("suggestionList", function() -- ROBLOX TODO: TestEZ extensions aren't tracked by Luau hard-coded defs, this goes away when we move to jest diff --git a/src/jsutils/__tests__/toObjMap.spec.lua b/src/jsutils/__tests__/toObjMap.spec.lua index 0262d17..7fcc5d9 100644 --- a/src/jsutils/__tests__/toObjMap.spec.lua +++ b/src/jsutils/__tests__/toObjMap.spec.lua @@ -8,7 +8,7 @@ return function() -- local jsutils = script.Parent.Parent - -- local toObjMap = require(jsutils.toObjMap).toObjMap + -- local toObjMap = require("../toObjMap").toObjMap describe("toObjMap", function() -- deviation: usage of JavaScript prototype and diff --git a/src/jsutils/didYouMean.lua b/src/jsutils/didYouMean.lua index 06ef3d4..5b0c573 100644 --- a/src/jsutils/didYouMean.lua +++ b/src/jsutils/didYouMean.lua @@ -5,10 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/didYouMean.js -local jsutils = script.Parent -local srcWorkspace = jsutils.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array local MAX_SUGGESTIONS = 5 diff --git a/src/jsutils/inspect.lua b/src/jsutils/inspect.lua index 6ada964..ec0d43f 100644 --- a/src/jsutils/inspect.lua +++ b/src/jsutils/inspect.lua @@ -7,15 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/inspect.js local HttpService = game:GetService("HttpService") -local jsutils = script.Parent -local srcWorkspace = jsutils.Parent -local graphql = jsutils.Parent -local Packages = graphql.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array -local NULL = require(srcWorkspace.luaUtils.null) +local NULL = require("../luaUtils/null") local MAX_ARRAY_LENGTH = 10 local MAX_RECURSIVE_DEPTH = 2 diff --git a/src/jsutils/instanceOf.lua b/src/jsutils/instanceOf.lua index fb500c2..58942b0 100644 --- a/src/jsutils/instanceOf.lua +++ b/src/jsutils/instanceOf.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/instanceOf.js -local isNillish = require(script.Parent.Parent.luaUtils.isNillish).isNillish +local isNillish = require("../luaUtils/isNillish").isNillish local function instanceOf(subject, super) if isNillish(subject) then diff --git a/src/jsutils/isPromise.lua b/src/jsutils/isPromise.lua index da98682..8c8d36e 100644 --- a/src/jsutils/isPromise.lua +++ b/src/jsutils/isPromise.lua @@ -5,10 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/isPromise.js -local jsutils = script.Parent -local graphql = jsutils.Parent -local Packages = graphql.Parent -local Promise = require(Packages.Promise) +local Promise = require("@pkg/@jsdotlua/promise") --[[ * Returns true if the value acts like a Promise, i.e. has a "then" function, diff --git a/src/jsutils/keyMap.lua b/src/jsutils/keyMap.lua index c8bb6cd..979f5fb 100644 --- a/src/jsutils/keyMap.lua +++ b/src/jsutils/keyMap.lua @@ -5,11 +5,10 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/keyMap.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array -local ObjMapModule = require(script.Parent.ObjMap) +local ObjMapModule = require("./ObjMap") type ObjMap = ObjMapModule.ObjMap --[[ diff --git a/src/jsutils/keyValMap.lua b/src/jsutils/keyValMap.lua index 3ae958c..fce89d4 100644 --- a/src/jsutils/keyValMap.lua +++ b/src/jsutils/keyValMap.lua @@ -5,8 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/jsutils/keyValMap.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map diff --git a/src/jsutils/mapValue.lua b/src/jsutils/mapValue.lua index 19230fb..108b17e 100644 --- a/src/jsutils/mapValue.lua +++ b/src/jsutils/mapValue.lua @@ -9,7 +9,7 @@ * Creates an object map with the same keys as `map` and values generated by * running each value of `map` thru `fn`. ]] -local ObjMapModule = require(script.Parent.ObjMap) +local ObjMapModule = require("./ObjMap") type ObjMap = ObjMapModule.ObjMap local function mapValue(map: ObjMap, fn: (value: T, key: string) -> V): ObjMap diff --git a/src/jsutils/memoize3.lua b/src/jsutils/memoize3.lua index 35502bd..7a09ab3 100644 --- a/src/jsutils/memoize3.lua +++ b/src/jsutils/memoize3.lua @@ -5,10 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/memoize3.js -local jsutils = script.Parent -local srcWorkspace = jsutils.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array type Function = (...any) -> ...any type Object = LuauPolyfill.Object diff --git a/src/jsutils/naturalCompare.lua b/src/jsutils/naturalCompare.lua index 1a486eb..d3d1598 100644 --- a/src/jsutils/naturalCompare.lua +++ b/src/jsutils/naturalCompare.lua @@ -13,8 +13,7 @@ * ]] -local Packages = script.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Number = LuauPolyfill.Number local String = LuauPolyfill.String local isNaN = Number.isNaN diff --git a/src/jsutils/printPathArray.lua b/src/jsutils/printPathArray.lua index 856a967..91b42f5 100644 --- a/src/jsutils/printPathArray.lua +++ b/src/jsutils/printPathArray.lua @@ -5,8 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/printPathArray.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array --[[ diff --git a/src/jsutils/promiseForObject.lua b/src/jsutils/promiseForObject.lua index be9b917..4e64654 100644 --- a/src/jsutils/promiseForObject.lua +++ b/src/jsutils/promiseForObject.lua @@ -5,15 +5,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/promiseForObject.js -local jsutils = script.Parent -local graphql = jsutils.Parent -local Packages = graphql.Parent -local Promise = require(Packages.Promise) -local LuauPolyfill = require(Packages.LuauPolyfill) +local Promise = require("@pkg/@jsdotlua/promise") +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object -local ObjMapModule = require(script.Parent.ObjMap) +local ObjMapModule = require("./ObjMap") type ObjMap = ObjMapModule.ObjMap local function promiseForObject(object: ObjMap) diff --git a/src/jsutils/promiseReduce.lua b/src/jsutils/promiseReduce.lua index c84bbea..52bdd9d 100644 --- a/src/jsutils/promiseReduce.lua +++ b/src/jsutils/promiseReduce.lua @@ -5,16 +5,13 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/promiseReduce.js -local jsutils = script.Parent -local graphql = jsutils.Parent -local Packages = graphql.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Promise = LuauPolyfill.Promise type Array = LuauPolyfill.Array -local PromiseOrValueModule = require(jsutils.PromiseOrValue) +local PromiseOrValueModule = require("./PromiseOrValue") type PromiseOrValue = PromiseOrValueModule.PromiseOrValue -local isPromise = require(jsutils.isPromise).isPromise +local isPromise = require("./isPromise").isPromise --[[ * Similar to Array.prototype.reduce(), however the reducing callback may return diff --git a/src/jsutils/suggestionList.lua b/src/jsutils/suggestionList.lua index ec46c80..0ee5fe9 100644 --- a/src/jsutils/suggestionList.lua +++ b/src/jsutils/suggestionList.lua @@ -5,14 +5,11 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/suggestionList.js -local jsutils = script.Parent -local graphql = jsutils.Parent -local Packages = graphql.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array -local naturalCompare = require(script.Parent.naturalCompare).naturalCompare +local naturalCompare = require("./naturalCompare").naturalCompare type LexicalDistance = { _input: string, diff --git a/src/jsutils/toObjMap.lua b/src/jsutils/toObjMap.lua index 9ef3c42..df0840f 100644 --- a/src/jsutils/toObjMap.lua +++ b/src/jsutils/toObjMap.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/toObjMap.js -local ObjMapModule = require(script.Parent.ObjMap) +local ObjMapModule = require("./ObjMap") type ReadOnlyObjMap = ObjMapModule.ReadOnlyObjMap type ReadOnlyObjMapLike = ObjMapModule.ReadOnlyObjMapLike diff --git a/src/language/__tests__/blockString-fuzz.spec.lua b/src/language/__tests__/blockString-fuzz.spec.lua index 2038953..7c35e7e 100644 --- a/src/language/__tests__/blockString-fuzz.spec.lua +++ b/src/language/__tests__/blockString-fuzz.spec.lua @@ -11,15 +11,15 @@ return function() local language = script.Parent.Parent local src = language.Parent - local dedent = require(src.__testUtils__.dedent).dedent - local inspectStr = require(src.__testUtils__.inspectStr).inspectStr - local genFuzzStrings = require(src.__testUtils__.genFuzzStrings).genFuzzStrings + local dedent = require("../../__testUtils__/dedent").dedent + local inspectStr = require("../../__testUtils__/inspectStr").inspectStr + local genFuzzStrings = require("../../__testUtils__/genFuzzStrings").genFuzzStrings - local invariant = require(src.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local Lexer = require(language.lexer).Lexer - local Source = require(language.source).Source - local printBlockString = require(language.blockString).printBlockString + local Lexer = require("../lexer").Lexer + local Source = require("../source").Source + local printBlockString = require("../blockString").printBlockString local function lexValue(str: string) local lexer = Lexer.new(Source.new(str)) diff --git a/src/language/__tests__/blockString.spec.lua b/src/language/__tests__/blockString.spec.lua index fddf9a1..e02ba26 100644 --- a/src/language/__tests__/blockString.spec.lua +++ b/src/language/__tests__/blockString.spec.lua @@ -6,11 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/__tests__/blockString-test.js local Packages = script.Parent.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array return function() - local blockString = require(script.Parent.Parent.blockString) + local blockString = require("../blockString") local dedentBlockStringValue = blockString.dedentBlockStringValue local getBlockStringIndentation = blockString.getBlockStringIndentation local printBlockString = blockString.printBlockString diff --git a/src/language/__tests__/directiveLocation.roblox.spec.lua b/src/language/__tests__/directiveLocation.roblox.spec.lua index 68f728c..ac27d8c 100644 --- a/src/language/__tests__/directiveLocation.roblox.spec.lua +++ b/src/language/__tests__/directiveLocation.roblox.spec.lua @@ -13,7 +13,7 @@ * limitations under the License. ]] return function() - local directiveLocation = require(script.Parent.Parent.directiveLocation) + local directiveLocation = require("../directiveLocation") local DirectiveLocation = directiveLocation.DirectiveLocation diff --git a/src/language/__tests__/init.roblox.spec.lua b/src/language/__tests__/init.roblox.spec.lua index 5a34561..2bf71ae 100644 --- a/src/language/__tests__/init.roblox.spec.lua +++ b/src/language/__tests__/init.roblox.spec.lua @@ -17,145 +17,145 @@ return function() describe("Language - init", function() it("should contain Source table", function() - local Source = require(script.Parent.Parent).Source + local Source = require("..").Source expect(Source).to.be.a("table") end) it("should contain getLocation function", function() - local getLocation = require(script.Parent.Parent).getLocation + local getLocation = require("..").getLocation expect(getLocation).to.be.a("function") end) it("should contain printLocation function", function() - local printLocation = require(script.Parent.Parent).printLocation + local printLocation = require("..").printLocation expect(printLocation).to.be.a("function") end) it("should contain printSourceLocation function", function() - local printSourceLocation = require(script.Parent.Parent).printSourceLocation + local printSourceLocation = require("..").printSourceLocation expect(printSourceLocation).to.be.a("function") end) it("should contain Kind table", function() - local Kind = require(script.Parent.Parent).Kind + local Kind = require("..").Kind expect(Kind).to.be.a("table") end) it("should contain TokenKind table", function() - local TokenKind = require(script.Parent.Parent).TokenKind + local TokenKind = require("..").TokenKind expect(TokenKind).to.be.a("table") end) it("should contain Lexer table", function() - local Lexer = require(script.Parent.Parent).Lexer + local Lexer = require("..").Lexer expect(Lexer).to.be.a("table") end) it("should contain parse function", function() - local parse = require(script.Parent.Parent).parse + local parse = require("..").parse expect(parse).to.be.a("function") end) it("should contain parseValue function", function() - local parseValue = require(script.Parent.Parent).parseValue + local parseValue = require("..").parseValue expect(parseValue).to.be.a("function") end) it("should contain parseType function", function() - local parseType = require(script.Parent.Parent).parseType + local parseType = require("..").parseType expect(parseType).to.be.a("function") end) it("should contain print function", function() - local print_ = require(script.Parent.Parent).print + local print_ = require("..").print expect(print_).to.be.a("function") end) it("should contain visit function", function() - local visit = require(script.Parent.Parent).visit + local visit = require("..").visit expect(visit).to.be.a("function") end) it("should contain visitInParallel function", function() - local visitInParallel = require(script.Parent.Parent).visitInParallel + local visitInParallel = require("..").visitInParallel expect(visitInParallel).to.be.a("function") end) it("should contain getVisitFn function", function() - local getVisitFn = require(script.Parent.Parent).getVisitFn + local getVisitFn = require("..").getVisitFn expect(getVisitFn).to.be.a("function") end) it("should contain BREAK table", function() - local BREAK = require(script.Parent.Parent).BREAK + local BREAK = require("..").BREAK expect(BREAK).to.be.a("table") end) it("should contain REMOVE table", function() - local REMOVE = require(script.Parent.Parent).REMOVE + local REMOVE = require("..").REMOVE expect(REMOVE).to.be.a("table") end) it("should contain Location table", function() - local Location = require(script.Parent.Parent).Location + local Location = require("..").Location expect(Location).to.be.a("table") end) it("should contain Token table", function() - local Token = require(script.Parent.Parent).Token + local Token = require("..").Token expect(Token).to.be.a("table") end) it("should contain isDefinitionNode function", function() - local isDefinitionNode = require(script.Parent.Parent).isDefinitionNode + local isDefinitionNode = require("..").isDefinitionNode expect(isDefinitionNode).to.be.a("function") end) it("should contain isExecutableDefinitionNode function", function() local isExecutableDefinitionNode = - require(script.Parent.Parent).isExecutableDefinitionNode + require("..").isExecutableDefinitionNode expect(isExecutableDefinitionNode).to.be.a("function") end) it("should contain isSelectionNode function", function() - local isSelectionNode = require(script.Parent.Parent).isSelectionNode + local isSelectionNode = require("..").isSelectionNode expect(isSelectionNode).to.be.a("function") end) it("should contain isValueNode function", function() - local isValueNode = require(script.Parent.Parent).isValueNode + local isValueNode = require("..").isValueNode expect(isValueNode).to.be.a("function") end) it("should contain isTypeNode function", function() - local isTypeNode = require(script.Parent.Parent).isTypeNode + local isTypeNode = require("..").isTypeNode expect(isTypeNode).to.be.a("function") end) it("should contain isTypeSystemDefinitionNode function", function() local isTypeSystemDefinitionNode = - require(script.Parent.Parent).isTypeSystemDefinitionNode + require("..").isTypeSystemDefinitionNode expect(isTypeSystemDefinitionNode).to.be.a("function") end) it("should contain isTypeDefinitionNode function", function() - local isTypeDefinitionNode = require(script.Parent.Parent).isTypeDefinitionNode + local isTypeDefinitionNode = require("..").isTypeDefinitionNode expect(isTypeDefinitionNode).to.be.a("function") end) it("should contain isTypeSystemExtensionNode function", function() local isTypeSystemExtensionNode = - require(script.Parent.Parent).isTypeSystemExtensionNode + require("..").isTypeSystemExtensionNode expect(isTypeSystemExtensionNode).to.be.a("function") end) it("should contain isTypeExtensionNode function", function() - local isTypeExtensionNode = require(script.Parent.Parent).isTypeExtensionNode + local isTypeExtensionNode = require("..").isTypeExtensionNode expect(isTypeExtensionNode).to.be.a("function") end) it("should contain DirectiveLocation table", function() - local DirectiveLocation = require(script.Parent.Parent).DirectiveLocation + local DirectiveLocation = require("..").DirectiveLocation expect(DirectiveLocation).to.be.a("table") end) end) diff --git a/src/language/__tests__/lexer.spec.lua b/src/language/__tests__/lexer.spec.lua index 6fc87e9..91cab07 100644 --- a/src/language/__tests__/lexer.spec.lua +++ b/src/language/__tests__/lexer.spec.lua @@ -11,16 +11,16 @@ return function() local language = script.Parent.Parent local src = language.Parent local Packages = src.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local instanceof = LuauPolyfill.instanceof - local dedent = require(src.__testUtils__.dedent).dedent - local inspect = require(src.jsutils.inspect).inspect - local lexerExport = require(language.lexer) - local sourceExport = require(language.source) - local tokenKindExport = require(language.tokenKind) - local GraphQLError = require(src.error.GraphQLError).GraphQLError + local dedent = require("../../__testUtils__/dedent").dedent + local inspect = require("../../jsutils/inspect").inspect + local lexerExport = require("../lexer") + local sourceExport = require("../source") + local tokenKindExport = require("../tokenKind") + local GraphQLError = require("../../error/GraphQLError").GraphQLError local Lexer = lexerExport.Lexer local isPunctuatorTokenKind = lexerExport.isPunctuatorTokenKind diff --git a/src/language/__tests__/location.roblox.spec.lua b/src/language/__tests__/location.roblox.spec.lua index 811c5d8..0073877 100644 --- a/src/language/__tests__/location.roblox.spec.lua +++ b/src/language/__tests__/location.roblox.spec.lua @@ -16,8 +16,8 @@ -- ROBLOX deviation: no upstream tests return function() - local getLocation = require(script.Parent.Parent.location).getLocation - local Source = require(script.Parent.Parent.source).Source + local getLocation = require("../location").getLocation + local Source = require("../source").Source describe("Location", function() it("returns line and column", function() diff --git a/src/language/__tests__/parser.roblox.spec.lua b/src/language/__tests__/parser.roblox.spec.lua index 0859cc4..367013d 100644 --- a/src/language/__tests__/parser.roblox.spec.lua +++ b/src/language/__tests__/parser.roblox.spec.lua @@ -18,10 +18,10 @@ return function() local languageWorkspace = script.Parent.Parent - local Kind = require(languageWorkspace.kinds).Kind - local parser = require(languageWorkspace.parser) + local Kind = require("../kinds").Kind + local parser = require("../parser") local parseValue = parser.parseValue - local toJSONDeep = require(script.Parent.toJSONDeep).toJSONDeep + local toJSONDeep = require("./toJSONDeep").toJSONDeep describe("Parser - Roblox", function() describe("parseValue", function() diff --git a/src/language/__tests__/parser.spec.lua b/src/language/__tests__/parser.spec.lua index a9bb1fb..94b9c78 100644 --- a/src/language/__tests__/parser.spec.lua +++ b/src/language/__tests__/parser.spec.lua @@ -11,23 +11,23 @@ return function() local languageWorkspace = script.Parent.Parent local srcWorkspace = languageWorkspace.Parent local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent - local kitchenSinkQuery = require(srcWorkspace.__fixtures__).kitchenSinkQuery + local dedent = require("../../__testUtils__/dedent").dedent + local kitchenSinkQuery = require("../../__fixtures__").kitchenSinkQuery - local inspect = require(srcWorkspace.jsutils.inspect).inspect + local inspect = require("../../jsutils/inspect").inspect - local Kind = require(languageWorkspace.kinds).Kind - local Source = require(languageWorkspace.source).Source - local TokenKind = require(languageWorkspace.tokenKind).TokenKind - local parser = require(languageWorkspace.parser) + local Kind = require("../kinds").Kind + local Source = require("../source").Source + local TokenKind = require("../tokenKind").TokenKind + local parser = require("../parser") local parse = parser.parse local parseValue = parser.parseValue local parseType = parser.parseType - local toJSONDeep = require(script.Parent.toJSONDeep).toJSONDeep + local toJSONDeep = require("./toJSONDeep").toJSONDeep -- ROBLOX deviation: expect cannot be called unless inside of an it -- ROBLOX deviation: pass expect into this function and use local scope diff --git a/src/language/__tests__/predicates.spec.lua b/src/language/__tests__/predicates.spec.lua index eaa1f04..91967b9 100644 --- a/src/language/__tests__/predicates.spec.lua +++ b/src/language/__tests__/predicates.spec.lua @@ -7,13 +7,13 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/__tests__/predicates-test.js return function() - local LuauPolyfill = require(script.Parent.Parent.Parent.Parent.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array - local Kind = require(script.Parent.Parent.kinds).Kind - local predicates = require(script.Parent.Parent.predicates) + local Kind = require("../kinds").Kind + local predicates = require("../predicates") -- ROBLOX deviation: we need to sort kinds to have deterministic order local allKinds = Object.values(Kind) diff --git a/src/language/__tests__/printLocation.spec.lua b/src/language/__tests__/printLocation.spec.lua index 45f9a44..20bd190 100644 --- a/src/language/__tests__/printLocation.spec.lua +++ b/src/language/__tests__/printLocation.spec.lua @@ -10,9 +10,9 @@ return function() local languageWorkspace = script.Parent.Parent local srcWorkspace = languageWorkspace.Parent - local Source = require(languageWorkspace.source).Source - local printSourceLocation = require(languageWorkspace.printLocation).printSourceLocation - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local Source = require("../source").Source + local printSourceLocation = require("../printLocation").printSourceLocation + local dedent = require("../../__testUtils__/dedent").dedent describe("printSourceLocation", function() it("prints minified documents", function() diff --git a/src/language/__tests__/printer.spec.lua b/src/language/__tests__/printer.spec.lua index cdf40ab..ab13470 100644 --- a/src/language/__tests__/printer.spec.lua +++ b/src/language/__tests__/printer.spec.lua @@ -9,20 +9,20 @@ local languageWorkspace = script.Parent.Parent local srcWorkspace = languageWorkspace.Parent local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") -- ROBLOX deviation: use jestExpect here so that we get reasonably text diffing on failures -local JestGlobals = require(Packages.Dev.JestGlobals) +local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect -local astModule = require(languageWorkspace.ast) +local astModule = require("../ast") type FieldNode = astModule.FieldNode return function() - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local dedent = require("../../__testUtils__/dedent").dedent local kitchenSinkQuery = - require(script.Parent.Parent.Parent.__testUtils__.kitchenSinkQuery).kitchenSinkQuery + require("../../__testUtils__/kitchenSinkQuery").kitchenSinkQuery - local parse = require(script.Parent.Parent.parser).parse - local print_ = require(script.Parent.Parent.printer).print + local parse = require("../parser").parse + local print_ = require("../printer").print --ROBLOX TODO: make proper JSON.stringify export in polyfill local inspect = LuauPolyfill.util.inspect diff --git a/src/language/__tests__/schema-parser.spec.lua b/src/language/__tests__/schema-parser.spec.lua index f6dfcab..26ec457 100644 --- a/src/language/__tests__/schema-parser.spec.lua +++ b/src/language/__tests__/schema-parser.spec.lua @@ -11,12 +11,12 @@ return function() local testUtilsWorkspace = script.Parent.Parent.Parent.__testUtils__ local languageWorkspace = script.Parent.Parent - local dedent = require(testUtilsWorkspace.dedent).dedent - local kitchenSinkSDL = require(testUtilsWorkspace.kitchenSinkSDL).kitchenSinkSDL + local dedent = require("../../__testUtils__/dedent").dedent + local kitchenSinkSDL = require("../../__testUtils__/kitchenSinkSDL").kitchenSinkSDL - local parse = require(languageWorkspace.parser).parse + local parse = require("../parser").parse - local toJSONDeep = require(languageWorkspace.__tests__.toJSONDeep).toJSONDeep + local toJSONDeep = require("../__tests__/toJSONDeep").toJSONDeep -- ROBLOX deviation: predeclare functions local expectSyntaxError diff --git a/src/language/__tests__/schema-printer.spec.lua b/src/language/__tests__/schema-printer.spec.lua index ba5dcaf..64135ec 100644 --- a/src/language/__tests__/schema-printer.spec.lua +++ b/src/language/__tests__/schema-printer.spec.lua @@ -9,19 +9,19 @@ local languageWorkspace = script.Parent.Parent local srcWorkspace = languageWorkspace.Parent local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") --ROBLOX TODO: make proper JSON.stringify export in polyfill local inspect = LuauPolyfill.util.inspect -local JestGlobals = require(Packages.Dev.JestGlobals) +local JestGlobals = require("@pkg/@jsdotlua/jest-globals") -- ROBLOX deviation: use jestExpect here so that we get reasonably text diffing on failures local jestExpect = JestGlobals.expect local testUtilsWorkspace = srcWorkspace.__testUtils__ -local dedent = require(testUtilsWorkspace.dedent).dedent -local kitchenSinkSDL = require(testUtilsWorkspace.kitchenSinkSDL).kitchenSinkSDL +local dedent = require("../../__testUtils__/dedent").dedent +local kitchenSinkSDL = require("../../__testUtils__/kitchenSinkSDL").kitchenSinkSDL -local parse = require(languageWorkspace.parser).parse -local print_ = require(languageWorkspace.printer).print +local parse = require("../parser").parse +local print_ = require("../printer").print return function() describe("Printer: SDL document", function() diff --git a/src/language/__tests__/source.spec.lua b/src/language/__tests__/source.spec.lua index 6ad203e..18fa368 100644 --- a/src/language/__tests__/source.spec.lua +++ b/src/language/__tests__/source.spec.lua @@ -8,7 +8,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/__tests__/source-test.js return function() - local Source = require(script.Parent.Parent.source).Source + local Source = require("../source").Source describe("Source", function() it("can be Object.toStringified", function() local source = Source.new("") diff --git a/src/language/__tests__/toJSONDeep.lua b/src/language/__tests__/toJSONDeep.lua index 705d4f3..0d5d407 100644 --- a/src/language/__tests__/toJSONDeep.lua +++ b/src/language/__tests__/toJSONDeep.lua @@ -8,9 +8,9 @@ local srcWorkspace = script.Parent.Parent.Parent local root = srcWorkspace.Parent -local Array = require(root.LuauPolyfill).Array +local Array = require("@pkg/@jsdotlua/luau-polyfill").Array -local isObjectLike = require(srcWorkspace.jsutils.isObjectLike).isObjectLike +local isObjectLike = require("../../jsutils/isObjectLike").isObjectLike -- /** -- * Deeply transforms an arbitrary value to a JSON-safe value by calling toJSON -- * on any nested value which defines it. diff --git a/src/language/__tests__/visitor.spec.lua b/src/language/__tests__/visitor.spec.lua index 45a7e75..6ea8818 100644 --- a/src/language/__tests__/visitor.spec.lua +++ b/src/language/__tests__/visitor.spec.lua @@ -9,21 +9,21 @@ return function() local srcWorkspace = script.Parent.Parent.Parent local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object - local kitchenSinkQuery = require(srcWorkspace.__fixtures__).kitchenSinkQuery + local kitchenSinkQuery = require("../../__fixtures__").kitchenSinkQuery - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local Kind = require(script.Parent.Parent.kinds).Kind - local parse = require(script.Parent.Parent.parser).parse - local visitorExports = require(script.Parent.Parent.visitor) + local Kind = require("../kinds").Kind + local parse = require("../parser").parse + local visitorExports = require("../visitor") local visit = visitorExports.visit local visitInParallel = visitorExports.visitInParallel local BREAK = visitorExports.BREAK - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") local QueryDocumentKeys = visitorExports.QueryDocumentKeys -- ROBLOX deviation: expect cannot be called unless inside of an it diff --git a/src/language/ast.lua b/src/language/ast.lua index 708ff61..dc19494 100644 --- a/src/language/ast.lua +++ b/src/language/ast.lua @@ -5,13 +5,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/ast.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array -local SourceModule = require(script.Parent.source) +local SourceModule = require("./source") type Source = SourceModule.Source -local TokenKindModule = require(script.Parent.tokenKind) +local TokenKindModule = require("./tokenKind") type TokenKindEnum = TokenKindModule.TokenKindEnum export type Location = { diff --git a/src/language/blockString.lua b/src/language/blockString.lua index 5ffb067..adcaac8 100644 --- a/src/language/blockString.lua +++ b/src/language/blockString.lua @@ -6,11 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/blockString.js -local language = script.Parent -local src = language.Parent -local Packages = src.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local String = LuauPolyfill.String diff --git a/src/language/directiveLocation.lua b/src/language/directiveLocation.lua index 771744c..f4c1d1c 100644 --- a/src/language/directiveLocation.lua +++ b/src/language/directiveLocation.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/v15.5.1/src/language/directiveLocation.js -local Object = require(script.Parent.Parent.Parent.LuauPolyfill).Object +local Object = require("@pkg/@jsdotlua/luau-polyfill").Object -- ROBLOX FIXME: APPFDN-2420 fix definition of Object.freeze to preserve inner type local DirectiveLocation = ( diff --git a/src/language/init.lua b/src/language/init.lua index 9111a16..c49070e 100644 --- a/src/language/init.lua +++ b/src/language/init.lua @@ -7,23 +7,23 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/language/index.js --!strict -local locationModule = require(script.location) -local printLocationModule = require(script.printLocation) -local kindsModule = require(script.kinds) -local tokenKindModule = require(script.tokenKind) -local parserModule = require(script.parser) -local visitorModule = require(script.visitor) -local astModule = require(script.ast) -local predicatesModule = require(script.predicates) -local directiveLocationModule = require(script.directiveLocation) -local sourceModule = require(script.source) +local locationModule = require("./location") +local printLocationModule = require("./printLocation") +local kindsModule = require("./kinds") +local tokenKindModule = require("./tokenKind") +local parserModule = require("./parser") +local visitorModule = require("./visitor") +local astModule = require("./ast") +local predicatesModule = require("./predicates") +local directiveLocationModule = require("./directiveLocation") +local sourceModule = require("./source") export type SourceLocation = locationModule.SourceLocation export type KindEnum = kindsModule.KindEnum export type TokenKindEnum = tokenKindModule.TokenKindEnum -local lexerModule = require(script.lexer) +local lexerModule = require("./lexer") export type Lexer = lexerModule.Lexer export type ParseOptions = parserModule.ParseOptions @@ -112,7 +112,7 @@ return { parse = parserModule.parse, parseValue = parserModule.parseValue, parseType = parserModule.parseType, - print = require(script.printer).print, + print = require("./printer").print, visit = visitorModule.visit, visitInParallel = visitorModule.visitInParallel, getVisitFn = visitorModule.getVisitFn, diff --git a/src/language/lexer.lua b/src/language/lexer.lua index 7ddac9f..73fedba 100644 --- a/src/language/lexer.lua +++ b/src/language/lexer.lua @@ -5,26 +5,23 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/lexer.js -local language = script.Parent -local src = language.Parent -local Packages = src.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Number = LuauPolyfill.Number local String = LuauPolyfill.String local isNaN = Number.isNaN local HttpService = game:GetService("HttpService") -local syntaxError = require(src.error.syntaxError).syntaxError -local sourceImport = require(script.Parent.source) +local syntaxError = require("../error/syntaxError").syntaxError +local sourceImport = require("./source") type Source = sourceImport.Source -local tokenKindImport = require(language.tokenKind) +local tokenKindImport = require("./tokenKind") type TokenKindEnum = tokenKindImport.TokenKindEnum -local astImport = require(language.ast) +local astImport = require("./ast") local Token = astImport.Token local TokenKind = tokenKindImport.TokenKind type Token = astImport.Token -local toUnicodeString = require(src.luaUtils.toUnicodeString) -local dedentBlockStringValue = require(language.blockString).dedentBlockStringValue +local toUnicodeString = require("../luaUtils/toUnicodeString") +local dedentBlockStringValue = require("./blockString").dedentBlockStringValue -- deviation: pre-declare functions local readBlockString diff --git a/src/language/location.lua b/src/language/location.lua index 34208b3..08675f3 100644 --- a/src/language/location.lua +++ b/src/language/location.lua @@ -5,10 +5,9 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/location.js -local Packages = script.Parent.Parent.Parent -local String = require(Packages.LuauPolyfill).String +local String = require("@pkg/@jsdotlua/luau-polyfill").String -local Source = require(script.Parent.source) +local Source = require("./source") type Source = Source.Source -- /** diff --git a/src/language/parser.lua b/src/language/parser.lua index 27f2c54..24c8577 100644 --- a/src/language/parser.lua +++ b/src/language/parser.lua @@ -6,20 +6,17 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/parser.js --!strict -local language = script.Parent -local srcWorkspace = language.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Array = LuauPolyfill.Array type void = nil -local errorImport = require(srcWorkspace.error) +local errorImport = require("../error") type GraphQLError = errorImport.GraphQLError -local TokenKindModule = require(language.tokenKind) +local TokenKindModule = require("./tokenKind") type TokenKindEnum = TokenKindModule.TokenKindEnum -local AstModule = require(language.ast) +local AstModule = require("./ast") local Location = AstModule.Location type DocumentNode = AstModule.DocumentNode type NonNullTypeNode = AstModule.NonNullTypeNode @@ -69,20 +66,20 @@ type InlineFragmentNode = AstModule.InlineFragmentNode type Location = AstModule.Location type Token = AstModule.Token -local sourceModule = require(language.source) +local sourceModule = require("./source") local Source = sourceModule.Source type Source = sourceModule.Source -local lexer = require(language.lexer) +local lexer = require("./lexer") local Lexer = lexer.Lexer type Lexer = lexer.Lexer local isPunctuatorTokenKind = lexer.isPunctuatorTokenKind local TokenKind = TokenKindModule.TokenKind -local DirectiveLocation = require(language.directiveLocation).DirectiveLocation -local Kind = require(language.kinds).Kind +local DirectiveLocation = require("./directiveLocation").DirectiveLocation +local Kind = require("./kinds").Kind -local syntaxError = require(script.Parent.Parent.error.syntaxError).syntaxError +local syntaxError = require("../error/syntaxError").syntaxError --[[ * Configuration options to control parser behavior diff --git a/src/language/predicates.lua b/src/language/predicates.lua index e3261c7..72c2182 100644 --- a/src/language/predicates.lua +++ b/src/language/predicates.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/predicates.js -local Kind = require(script.Parent.kinds).Kind +local Kind = require("./kinds").Kind -- deviation: pre-declare functions local isExecutableDefinitionNode diff --git a/src/language/printLocation.lua b/src/language/printLocation.lua index bec5ed7..952b0cf 100644 --- a/src/language/printLocation.lua +++ b/src/language/printLocation.lua @@ -5,15 +5,12 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/printLocation.js -local language = script.Parent -local srcWorkspace = language.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local String = LuauPolyfill.String -local getLocation = require(language.location).getLocation +local getLocation = require("./location").getLocation -- deviation: pre-declare functions local whitespace diff --git a/src/language/printer.lua b/src/language/printer.lua index 604a7fc..9d33378 100644 --- a/src/language/printer.lua +++ b/src/language/printer.lua @@ -6,14 +6,12 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/printer.js --!strict -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local HttpService = game:GetService("HttpService") -local astImport = require(script.Parent.ast) +local astImport = require("./ast") type ASTNode = astImport.ASTNode type ArgumentNode = astImport.ArgumentNode type ScalarTypeDefinitionNode = astImport.ScalarTypeDefinitionNode @@ -55,8 +53,8 @@ type NonNullTypeNode = astImport.NonNullTypeNode type EnumValueNode = astImport.EnumValueNode type SelectionSetNode = astImport.SelectionSetNode -local visit = require(script.Parent.visitor).visit -local printBlockString = require(script.Parent.blockString).printBlockString +local visit = require("./visitor").visit +local printBlockString = require("./blockString").printBlockString -- ROBLOX deviation: pre-declare functions, with repeat of types due to toposorting issue local printDocASTReducer diff --git a/src/language/source.lua b/src/language/source.lua index d08f52f..56cd214 100644 --- a/src/language/source.lua +++ b/src/language/source.lua @@ -5,12 +5,9 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/language/source.js -local language = script.Parent -local src = language.Parent - -local inspect = require(src.jsutils.inspect).inspect -local devAssert = require(src.jsutils.devAssert).devAssert -local instanceOf = require(src.jsutils.instanceOf) +local inspect = require("../jsutils/inspect").inspect +local devAssert = require("../jsutils/devAssert").devAssert +local instanceOf = require("../jsutils/instanceOf") type Location = { line: number, diff --git a/src/language/visitor.lua b/src/language/visitor.lua index b54c67e..f3efff9 100644 --- a/src/language/visitor.lua +++ b/src/language/visitor.lua @@ -6,18 +6,17 @@ ]] -- ROBLOX upstream https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/language/visitor.js -local srcWorkspace = script.Parent.Parent -local LuauPolyfill = require(srcWorkspace.Parent.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array type ObjMap = { [K]: V } -local inspect = require(srcWorkspace.jsutils.inspect).inspect +local inspect = require("../jsutils/inspect").inspect -local astModule = require(srcWorkspace.language.ast) +local astModule = require("../language/ast") type ASTNode = astModule.ASTNode type ASTKindToNode = astModule.ASTKindToNode -local isNode = require(script.Parent.ast).isNode +local isNode = require("./ast").isNode --[[* * A visitor is provided to visit, it contains the collection of @@ -150,7 +149,7 @@ local QueryDocumentKeys: VisitorKeyMap = { local BREAK = Object.freeze({}) -local NULL = require(srcWorkspace.luaUtils.null) +local NULL = require("../luaUtils/null") -- deviation: pre-declare functions local visitInParallel diff --git a/src/luaUtils/__tests__/arrayContains.spec.lua b/src/luaUtils/__tests__/arrayContains.spec.lua index 167b239..5af11d7 100644 --- a/src/luaUtils/__tests__/arrayContains.spec.lua +++ b/src/luaUtils/__tests__/arrayContains.spec.lua @@ -1,5 +1,5 @@ return function() - local arrayContains = require(script.Parent.Parent.arrayContains) + local arrayContains = require("../arrayContains") describe("arrayContains", function() it("table contains simple string", function() diff --git a/src/luaUtils/__tests__/coerceToPromise.spec.lua b/src/luaUtils/__tests__/coerceToPromise.spec.lua index aeca177..a6b5ce5 100644 --- a/src/luaUtils/__tests__/coerceToPromise.spec.lua +++ b/src/luaUtils/__tests__/coerceToPromise.spec.lua @@ -1,8 +1,8 @@ return function() local srcWorkspace = script.Parent.Parent.Parent - local Promise = require(srcWorkspace.Parent.Promise) + local Promise = require("@pkg/@jsdotlua/promise") - local coerceToPromise = require(script.Parent.Parent.coerceToPromise).coerceToPromise + local coerceToPromise = require("../coerceToPromise").coerceToPromise describe("coerceToPromise", function() it("returns promise when passed promise", function() diff --git a/src/luaUtils/__tests__/deepContains.roblox.spec.lua b/src/luaUtils/__tests__/deepContains.roblox.spec.lua index 64a6067..5164faa 100644 --- a/src/luaUtils/__tests__/deepContains.roblox.spec.lua +++ b/src/luaUtils/__tests__/deepContains.roblox.spec.lua @@ -1,6 +1,6 @@ return function() - local deepContains = require(script.Parent.Parent.deepContains) - local NULL = require(script.Parent.Parent.null) + local deepContains = require("../deepContains") + local NULL = require("../null") describe("deepContains", function() it("contain empty object", function() diff --git a/src/luaUtils/__tests__/deepEqual.spec.lua b/src/luaUtils/__tests__/deepEqual.spec.lua index 04b39f4..8569bb9 100644 --- a/src/luaUtils/__tests__/deepEqual.spec.lua +++ b/src/luaUtils/__tests__/deepEqual.spec.lua @@ -1,6 +1,6 @@ return function() - local deepEqual = require(script.Parent.Parent.deepEqual) - local NULL = require(script.Parent.Parent.null) + local deepEqual = require("../deepEqual") + local NULL = require("../null") describe("deepEqual", function() it("should deep equal if objects have same shape and values", function() diff --git a/src/luaUtils/__tests__/isNillish.spec.lua b/src/luaUtils/__tests__/isNillish.spec.lua index 7d8945d..c245696 100644 --- a/src/luaUtils/__tests__/isNillish.spec.lua +++ b/src/luaUtils/__tests__/isNillish.spec.lua @@ -1,8 +1,8 @@ return function() local luaUtils = script.Parent.Parent - local isNillish = require(luaUtils.isNillish).isNillish - local isNotNillish = require(luaUtils.isNillish).isNotNillish - local NULL = require(luaUtils.null) + local isNillish = require("../isNillish").isNillish + local isNotNillish = require("../isNillish").isNotNillish + local NULL = require("../null") describe("isNillish", function() it("returns true when nil", function() diff --git a/src/luaUtils/__tests__/json.spec.lua b/src/luaUtils/__tests__/json.spec.lua index dd0c37b..27c619f 100644 --- a/src/luaUtils/__tests__/json.spec.lua +++ b/src/luaUtils/__tests__/json.spec.lua @@ -1,6 +1,6 @@ return function() local luaUtils = script.Parent.Parent - local json = require(luaUtils.json) + local json = require("../json") describe("json.stringify", function() it("stringifies table", function() diff --git a/src/luaUtils/__tests__/null.spec.lua b/src/luaUtils/__tests__/null.spec.lua index 78aeb63..414e839 100644 --- a/src/luaUtils/__tests__/null.spec.lua +++ b/src/luaUtils/__tests__/null.spec.lua @@ -1,6 +1,6 @@ local HttpService = game:GetService("HttpService") return function() - local NULL = require(script.Parent.Parent.null) + local NULL = require("../null") describe("NULL", function() it("should stringify correclty", function() diff --git a/src/luaUtils/__tests__/stringify.spec.lua b/src/luaUtils/__tests__/stringify.spec.lua index 1c5ddf7..5e310cb 100644 --- a/src/luaUtils/__tests__/stringify.spec.lua +++ b/src/luaUtils/__tests__/stringify.spec.lua @@ -1,10 +1,10 @@ local HttpService = game:GetService("HttpService") -local stringify = require(script.Parent.Parent.stringify) -local NULL = require(script.Parent.Parent.null) +local stringify = require("../stringify") +local NULL = require("../null") local srcWorkspace = script.Parent.Parent.Parent local Packages = srcWorkspace.Parent -local JestGlobals = require(Packages.Dev.JestGlobals) +local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect return function() diff --git a/src/luaUtils/__tests__/toUnicodeString.spec.lua b/src/luaUtils/__tests__/toUnicodeString.spec.lua index 05244a6..56f40c3 100644 --- a/src/luaUtils/__tests__/toUnicodeString.spec.lua +++ b/src/luaUtils/__tests__/toUnicodeString.spec.lua @@ -1,6 +1,6 @@ return function() local luaUtils = script.Parent.Parent - local toUnicodeString = require(luaUtils.toUnicodeString) + local toUnicodeString = require("../toUnicodeString") describe("toUnicodeString", function() it("returns stringified character code", function() diff --git a/src/luaUtils/arrayContains.lua b/src/luaUtils/arrayContains.lua index 1667e9d..62a2eb2 100644 --- a/src/luaUtils/arrayContains.lua +++ b/src/luaUtils/arrayContains.lua @@ -1,5 +1,5 @@ -local deepEqual = require(script.Parent.deepEqual) -local deepContains = require(script.Parent.deepContains) +local deepEqual = require("./deepEqual") +local deepContains = require("./deepContains") return function(tbl, item, looseEquals) -- see if item exists in table diff --git a/src/luaUtils/coerceToPromise.lua b/src/luaUtils/coerceToPromise.lua index 3188e6b..ce47a6c 100644 --- a/src/luaUtils/coerceToPromise.lua +++ b/src/luaUtils/coerceToPromise.lua @@ -1,10 +1,8 @@ -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Promise = LuauPolyfill.Promise -local Promise = require(rootWorkspace.Promise) -local PromiseOrValueModule = require(srcWorkspace.jsutils.PromiseOrValue) +local Promise = require("@pkg/@jsdotlua/promise") +local PromiseOrValueModule = require('../jsutils/PromiseOrValue') type PromiseOrValue = PromiseOrValueModule.PromiseOrValue local function coerceToPromise(value: PromiseOrValue): Promise diff --git a/src/luaUtils/deepContains.lua b/src/luaUtils/deepContains.lua index 10a2928..128691c 100644 --- a/src/luaUtils/deepContains.lua +++ b/src/luaUtils/deepContains.lua @@ -1,5 +1,5 @@ -local Number = require(script.Parent.Parent.Parent.LuauPolyfill).Number -local NULL = require(script.Parent.null) +local Number = require("@pkg/@jsdotlua/luau-polyfill").Number +local NULL = require("./null") local function deepContains(a: any, b: any): (boolean, string?) if typeof(a) ~= typeof(b) then diff --git a/src/luaUtils/deepEqual.lua b/src/luaUtils/deepEqual.lua index 22daa59..3669b03 100644 --- a/src/luaUtils/deepEqual.lua +++ b/src/luaUtils/deepEqual.lua @@ -7,8 +7,8 @@ ]] -- FIXME: Replace this with jest-roblox builtins -local Number = require(script.Parent.Parent.Parent.LuauPolyfill).Number -local NULL = require(script.Parent.null) +local Number = require("@pkg/@jsdotlua/luau-polyfill").Number +local NULL = require("./null") local function deepEqual(a: any, b: any): (boolean, string?) if typeof(a) ~= typeof(b) then diff --git a/src/luaUtils/isNillish.lua b/src/luaUtils/isNillish.lua index 50ad23e..3569a39 100644 --- a/src/luaUtils/isNillish.lua +++ b/src/luaUtils/isNillish.lua @@ -1,4 +1,4 @@ -local NULL = require(script.Parent.null) +local NULL = require("./null") local function isNillish(val: any): boolean return val == nil or val == NULL diff --git a/src/luaUtils/keyMapOrdered.lua b/src/luaUtils/keyMapOrdered.lua index 36464a8..82618a8 100644 --- a/src/luaUtils/keyMapOrdered.lua +++ b/src/luaUtils/keyMapOrdered.lua @@ -5,8 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1951bce42092123e844763b6a8e985a8a3327511/src/jsutils/keyMap.js -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map diff --git a/src/luaUtils/mapValueOrdered.lua b/src/luaUtils/mapValueOrdered.lua index 0c5b11e..9d66df7 100644 --- a/src/luaUtils/mapValueOrdered.lua +++ b/src/luaUtils/mapValueOrdered.lua @@ -9,8 +9,7 @@ * Creates an object map with the same keys as `map` and values generated by * running each value of `map` thru `fn`. ]] -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map type Map = LuauPolyfill.Map diff --git a/src/luaUtils/stringify.lua b/src/luaUtils/stringify.lua index e61fd84..03f3c2a 100644 --- a/src/luaUtils/stringify.lua +++ b/src/luaUtils/stringify.lua @@ -1,5 +1,5 @@ local HttpService = game:GetService("HttpService") -local NULL = require(script.Parent.null) +local NULL = require("./null") local encodedNull = HttpService:JSONEncode(NULL) local function stringify(obj: any): string diff --git a/src/luaUtils/toUnicodeString.lua b/src/luaUtils/toUnicodeString.lua index 1fb44a3..fbb279d 100644 --- a/src/luaUtils/toUnicodeString.lua +++ b/src/luaUtils/toUnicodeString.lua @@ -1,5 +1,4 @@ -local Packages = script.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local String = LuauPolyfill.String -- used in lexer.printCharCode diff --git a/src/polyfills/objectEntries.lua b/src/polyfills/objectEntries.lua index fd5a83f..dd2d2ac 100644 --- a/src/polyfills/objectEntries.lua +++ b/src/polyfills/objectEntries.lua @@ -12,9 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local graphql = script.Parent.Parent -local Packages = graphql.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") return { objectEntries = LuauPolyfill.Object.entries, diff --git a/src/polyfills/objectValues.lua b/src/polyfills/objectValues.lua index e0c1948..8a0dd10 100644 --- a/src/polyfills/objectValues.lua +++ b/src/polyfills/objectValues.lua @@ -12,9 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ]] -local graphql = script.Parent.Parent -local Packages = graphql.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") return { objectValues = LuauPolyfill.Object.values, diff --git a/src/subscription/__tests__/subscription-stub.roblox.spec.lua b/src/subscription/__tests__/subscription-stub.roblox.spec.lua index 257a3dc..e891d4c 100644 --- a/src/subscription/__tests__/subscription-stub.roblox.spec.lua +++ b/src/subscription/__tests__/subscription-stub.roblox.spec.lua @@ -13,9 +13,7 @@ * limitations under the License. ]] return function() - local subscriptionWorkspace = script.Parent.Parent - - local subscriptionModule = require(subscriptionWorkspace) + local subscriptionModule = require("../init") local subscribe = subscriptionModule.subscribe local createSourceEventStream = subscriptionModule.createSourceEventStream diff --git a/src/subscription/init.lua b/src/subscription/init.lua index 41bbf3f..6152dee 100644 --- a/src/subscription/init.lua +++ b/src/subscription/init.lua @@ -5,7 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/v15.5.1/src/subscription/index.js -local subscribeModule = require(script.subscribe) +local subscribeModule = require("./subscribe") local subscribe = subscribeModule.subscribe local createSourceEventStream = subscribeModule.createSourceEventStream diff --git a/src/subscription/subscribe.lua b/src/subscription/subscribe.lua index afa4c63..4c4373e 100644 --- a/src/subscription/subscribe.lua +++ b/src/subscription/subscribe.lua @@ -5,19 +5,17 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/v15.5.1/src/subscription/subscribe.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Promise = LuauPolyfill.Promise -local astModule = require(srcWorkspace.language.ast) +local astModule = require("../language/ast") type DocumentNode = astModule.DocumentNode -local executeModule = require(srcWorkspace.execution.execute) +local executeModule = require("../execution/execute") type ExecutionResult = executeModule.ExecutionResult type ExecutionContext = executeModule.ExecutionContext -local schemaModule = require(srcWorkspace.type.schema) +local schemaModule = require("../type/schema") type GraphQLSchema = schemaModule.GraphQLSchema -local definitionModule = require(srcWorkspace.type.definition) +local definitionModule = require("../type/definition") -- ROBLOX TODO: Luau doesn't currently support default type args, so inline any type GraphQLFieldResolver = definitionModule.GraphQLFieldResolver diff --git a/src/type/__tests__/definition.spec.lua b/src/type/__tests__/definition.spec.lua index c3835ba..a8b5d9c 100644 --- a/src/type/__tests__/definition.spec.lua +++ b/src/type/__tests__/definition.spec.lua @@ -7,22 +7,20 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/__tests__/definition-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local rootWorkspace = srcWorkspace.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map local Number = LuauPolyfill.Number local coerceToTable = LuauPolyfill.coerceToTable - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") local NaN = Number.NaN - local inspect = require(srcWorkspace.jsutils.inspect).inspect - local identityFunc = require(srcWorkspace.jsutils.identityFunc).identityFunc + local inspect = require("../../jsutils/inspect").inspect + local identityFunc = require("../../jsutils/identityFunc").identityFunc - local parseValue = require(srcWorkspace.language.parser).parseValue + local parseValue = require("../../language/parser").parseValue - local definitionImport = require(script.Parent.Parent.definition) + local definitionImport = require("../definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLScalarType = definitionImport.GraphQLScalarType diff --git a/src/type/__tests__/directive.spec.lua b/src/type/__tests__/directive.spec.lua index 979ee40..d0a6a9c 100644 --- a/src/type/__tests__/directive.spec.lua +++ b/src/type/__tests__/directive.spec.lua @@ -5,9 +5,9 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/__tests__/directive-test.js -local directives = require(script.Parent.Parent.directives) +local directives = require("../directives") local GraphQLDirective = directives.GraphQLDirective -local scalars = require(script.Parent.Parent.scalars) +local scalars = require("../scalars") local GraphQLString = scalars.GraphQLString local GraphQLInt = scalars.GraphQLInt diff --git a/src/type/__tests__/directives.spec.lua b/src/type/__tests__/directives.spec.lua index c609887..b64a134 100644 --- a/src/type/__tests__/directives.spec.lua +++ b/src/type/__tests__/directives.spec.lua @@ -6,14 +6,12 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/__tests__/directive-test.js -local srcWorkspace = script.Parent.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map -local directives = require(script.Parent.Parent.directives) +local directives = require("../directives") local GraphQLDirective = directives.GraphQLDirective -local scalars = require(script.Parent.Parent.scalars) +local scalars = require("../scalars") local GraphQLString = scalars.GraphQLString local GraphQLInt = scalars.GraphQLInt diff --git a/src/type/__tests__/introspection.spec.lua b/src/type/__tests__/introspection.spec.lua index 914c881..b1180cc 100644 --- a/src/type/__tests__/introspection.spec.lua +++ b/src/type/__tests__/introspection.spec.lua @@ -7,13 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/01bcc7d9be982226bcf56b8f983f38fd89dced1b/src/type/__tests__/introspection-test.js return function() - local root = script.Parent.Parent.Parent - local jsutils = root.jsutils - local invariant = require(jsutils.invariant).invariant - local utilities = root.utilities - local buildSchema = require(utilities.buildASTSchema).buildSchema - local getIntrospectionQuery = require(utilities.getIntrospectionQuery).getIntrospectionQuery - local graphql = require(root.graphql) + local invariant = require("../../jsutils/invariant").invariant + local buildSchema = require("../../utilities/buildASTSchema").buildSchema + local getIntrospectionQuery = require("../../utilities/getIntrospectionQuery").getIntrospectionQuery + local graphql = require("../../graphql") local graphqlSync = graphql.graphqlSync describe("Introspection", function() diff --git a/src/type/__tests__/scalars.spec.lua b/src/type/__tests__/scalars.spec.lua index b7b226b..d893553 100644 --- a/src/type/__tests__/scalars.spec.lua +++ b/src/type/__tests__/scalars.spec.lua @@ -6,14 +6,13 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/__tests__/scalars-test.js -local rootWorkspace = script.Parent.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local NaN = LuauPolyfill.Number.NaN local Infinity = math.huge -local parser = require(script.Parent.Parent.Parent.language.parser) +local parser = require("../../language/parser") local parseValueToAST = parser.parseValue -local scalars = require(script.Parent.Parent.scalars) +local scalars = require("../scalars") local GraphQLID = scalars.GraphQLID local GraphQLInt = scalars.GraphQLInt local GraphQLFloat = scalars.GraphQLFloat diff --git a/src/type/__tests__/schema.spec.lua b/src/type/__tests__/schema.spec.lua index 97ebeb2..65a3836 100644 --- a/src/type/__tests__/schema.spec.lua +++ b/src/type/__tests__/schema.spec.lua @@ -8,21 +8,19 @@ local HttpService = game:GetService("HttpService") return function() - local root = script.Parent.Parent.Parent + local dedent = require("../../__testUtils__/dedent").dedent - local dedent = require(root.__testUtils__.dedent).dedent + local printSchema = require("../../utilities/printSchema").printSchema - local printSchema = require(root.utilities.printSchema).printSchema - - local GraphQLSchema = require(root.type.schema).GraphQLSchema - local directives = require(root.type.directives) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local directives = require("../../type/directives") local GraphQLDirective = directives.GraphQLDirective - local scalars = require(root.type.scalars) + local scalars = require("../../type/scalars") local GraphQLInt = scalars.GraphQLInt local GraphQLString = scalars.GraphQLString local GraphQLBoolean = scalars.GraphQLBoolean - local definition = require(root.type.definition) + local definition = require("../../type/definition") local GraphQLList = definition.GraphQLList local GraphQLScalarType = definition.GraphQLScalarType local GraphQLObjectType = definition.GraphQLObjectType diff --git a/src/type/__tests__/validation.spec.lua b/src/type/__tests__/validation.spec.lua index 3623c64..9aae068 100644 --- a/src/type/__tests__/validation.spec.lua +++ b/src/type/__tests__/validation.spec.lua @@ -6,30 +6,26 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/__tests__/validation-test.js return function() - local typeWorkspace = script.Parent.Parent - local srcWorkspace = typeWorkspace.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array - local JestGlobals = require(Packages.Dev.JestGlobals) + local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect - local luaUtilsWorkspace = srcWorkspace.luaUtils - local NULL = require(luaUtilsWorkspace.null) - - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent - local inspect = require(srcWorkspace.jsutils.inspect).inspect - local parse = require(srcWorkspace.language.parser).parse - local extendSchema = require(srcWorkspace.utilities.extendSchema).extendSchema - local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema - local GraphQLSchema = require(typeWorkspace.schema).GraphQLSchema - local GraphQLString = require(typeWorkspace.scalars).GraphQLString - local validate = require(typeWorkspace.validate) + local NULL = require("../../luaUtils/null") + + local dedent = require("../../__testUtils__/dedent").dedent + local inspect = require("../../jsutils/inspect").inspect + local parse = require("../../language/parser").parse + local extendSchema = require("../../utilities/extendSchema").extendSchema + local buildSchema = require("../../utilities/buildASTSchema").buildSchema + local GraphQLSchema = require("../schema").GraphQLSchema + local GraphQLString = require("../scalars").GraphQLString + local validate = require("../validate") local validateSchema = validate.validateSchema local assertValidSchema = validate.assertValidSchema - local directives = require(typeWorkspace.directives) + local directives = require("../directives") local GraphQLDirective = directives.GraphQLDirective local assertDirective = directives.assertDirective - local definition = require(typeWorkspace.definition) + local definition = require("../definition") local GraphQLList = definition.GraphQLList local GraphQLNonNull = definition.GraphQLNonNull local GraphQLObjectType = definition.GraphQLObjectType diff --git a/src/type/definition.lua b/src/type/definition.lua index 82aed62..5db60eb 100644 --- a/src/type/definition.lua +++ b/src/type/definition.lua @@ -9,9 +9,7 @@ -- file checks out okay other than that issue, which looks like "definition.lua:149:5-15: (E001) Generic type 'GraphQLList' expects 0 type arguments, but 1 is specified" -- Luau issue: https://jira.rbx.com/browse/CLI-34658 --!nonstrict -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map @@ -24,43 +22,40 @@ type Promise = LuauPolyfill.Promise type Function = (...any) -> ...any -local NULL = require(srcWorkspace.luaUtils.null) +local NULL = require("../luaUtils/null") local NaN_KEY = Object.freeze({}) -local luaUtilsWorkspace = srcWorkspace.luaUtils -- ROBLOX deviation: no distinction between undefined and null in Lua so we need to go around this with custom NULL like constant -local isNillish = require(luaUtilsWorkspace.isNillish).isNillish +local isNillish = require("../luaUtils/isNillish").isNillish -local jsutilsWorkspace = srcWorkspace.jsutils -local ObjMap = require(jsutilsWorkspace.ObjMap) +local ObjMap = require("../jsutils/ObjMap") type ObjMap = ObjMap.ObjMap type ReadOnlyObjMap = ObjMap.ReadOnlyObjMap type ReadOnlyObjMapLike = ObjMap.ReadOnlyObjMapLike -local inspect = require(jsutilsWorkspace.inspect).inspect -local keyMap = require(jsutilsWorkspace.keyMap).keyMap -local toObjMap = require(jsutilsWorkspace.toObjMap).toObjMap -local keyValMap = require(jsutilsWorkspace.keyValMap).keyValMap -local devAssert = require(jsutilsWorkspace.devAssert).devAssert -local instanceOf = require(jsutilsWorkspace.instanceOf) -local didYouMean = require(jsutilsWorkspace.didYouMean).didYouMean -local isObjectLike = require(jsutilsWorkspace.isObjectLike).isObjectLike -local identityFunc = require(jsutilsWorkspace.identityFunc).identityFunc -local suggestionList = require(jsutilsWorkspace.suggestionList).suggestionList -local PromiseOrValueModule = require(jsutilsWorkspace.PromiseOrValue) +local inspect = require("../jsutils/inspect").inspect +local keyMap = require("../jsutils/keyMap").keyMap +local toObjMap = require("../jsutils/toObjMap").toObjMap +local keyValMap = require("../jsutils/keyValMap").keyValMap +local devAssert = require("../jsutils/devAssert").devAssert +local instanceOf = require("../jsutils/instanceOf") +local didYouMean = require("../jsutils/didYouMean").didYouMean +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike +local identityFunc = require("../jsutils/identityFunc").identityFunc +local suggestionList = require("../jsutils/suggestionList").suggestionList +local PromiseOrValueModule = require("../jsutils/PromiseOrValue") type PromiseOrValue = PromiseOrValueModule.PromiseOrValue -local PathModule = require(jsutilsWorkspace.Path) +local PathModule = require("../jsutils/Path") type Path = PathModule.Path -- ROBLOX deviation: use map value ordered -local mapValueOrdered = require(srcWorkspace.luaUtils.mapValueOrdered).mapValueOrdered +local mapValueOrdered = require("../luaUtils/mapValueOrdered").mapValueOrdered -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError +local GraphQLError = require("../error/GraphQLError").GraphQLError -local languageWorkspace = srcWorkspace.language -local Kind = require(languageWorkspace.kinds).Kind -local print_ = require(languageWorkspace.printer).print +local Kind = require("../language/kinds").Kind +local print_ = require("../language/printer").print -local Ast = require(srcWorkspace.language.ast) +local Ast = require("../language/ast") type ScalarTypeDefinitionNode = Ast.ScalarTypeDefinitionNode type ObjectTypeDefinitionNode = Ast.ObjectTypeDefinitionNode type FieldDefinitionNode = Ast.FieldDefinitionNode @@ -82,10 +77,10 @@ type FragmentDefinitionNode = Ast.FragmentDefinitionNode type ValueNode = Ast.ValueNode type EnumValueNode = Ast.EnumValueNode -local valueFromASTUntyped = require(srcWorkspace.utilities.valueFromASTUntyped).valueFromASTUntyped +local valueFromASTUntyped = require("../utilities/valueFromASTUntyped").valueFromASTUntyped -- ROBLOX deviation: this results in a circular dependency due toe the Resolver types, so we fudge the type here --- local schemaModule = require(script.Parent.schema) :: any +-- local schemaModule = require("./schema") :: any -- type GraphQLSchema = schemaModule.GraphQLSchema type GraphQLSchema = Object diff --git a/src/type/directives.lua b/src/type/directives.lua index 820c3a6..0ffcfb7 100644 --- a/src/type/directives.lua +++ b/src/type/directives.lua @@ -5,10 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/directives.js -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map @@ -16,29 +13,29 @@ local Object = LuauPolyfill.Object local coerceToMap = LuauPolyfill.coerceToMap type Array = LuauPolyfill.Array -local _ObjMapModule = require(srcWorkspace.jsutils.ObjMap) +local _ObjMapModule = require("../jsutils/ObjMap") type ObjMap = _ObjMapModule.ObjMap -local ObjMap = require(script.Parent.Parent.jsutils.ObjMap) +local ObjMap = require("../jsutils/ObjMap") type ReadOnlyObjMap = ObjMap.ReadOnlyObjMap type ReadOnlyObjMapLike = ObjMap.ReadOnlyObjMapLike -local inspect = require(script.Parent.Parent.jsutils.inspect).inspect -local toObjMap = require(script.Parent.Parent.jsutils.toObjMap).toObjMap -local devAssert = require(script.Parent.Parent.jsutils.devAssert).devAssert -local instanceOf = require(script.Parent.Parent.jsutils.instanceOf) -local isObjectLike = require(script.Parent.Parent.jsutils.isObjectLike).isObjectLike +local inspect = require("../jsutils/inspect").inspect +local toObjMap = require("../jsutils/toObjMap").toObjMap +local devAssert = require("../jsutils/devAssert").devAssert +local instanceOf = require("../jsutils/instanceOf") +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike -local AstModule = require(script.Parent.Parent.language.ast) +local AstModule = require("../language/ast") type DirectiveDefinitionNode = AstModule.DirectiveDefinitionNode -local DirectiveLocationModule = require(script.Parent.Parent.language.directiveLocation) +local DirectiveLocationModule = require("../language/directiveLocation") type DirectiveLocationEnum = DirectiveLocationModule.DirectiveLocationEnum local DirectiveLocation = DirectiveLocationModule.DirectiveLocation -local definition = require(script.Parent.definition) +local definition = require("./definition") type GraphQLArgument = definition.GraphQLArgument type GraphQLFieldConfigArgumentMap = definition.GraphQLFieldConfigArgumentMap -local scalars = require(script.Parent.scalars) +local scalars = require("./scalars") local GraphQLString = scalars.GraphQLString local GraphQLBoolean = scalars.GraphQLBoolean local argsToArgsConfig = definition.argsToArgsConfig diff --git a/src/type/init.lua b/src/type/init.lua index 66648ce..df223b8 100644 --- a/src/type/init.lua +++ b/src/type/init.lua @@ -8,10 +8,10 @@ local exports = {} -local PathModule = require(script.Parent.jsutils.Path) +local PathModule = require("../jsutils/Path") export type ResponsePath = PathModule.Path -local schemaModule = require(script.schema) +local schemaModule = require("./schema") -- Predicate exports.isSchema = schemaModule.isSchema -- Assertion @@ -22,7 +22,7 @@ exports.GraphQLSchema = schemaModule.GraphQLSchema export type GraphQLSchemaConfig = schemaModule.GraphQLSchemaConfig export type GraphQLSchema = schemaModule.GraphQLSchema -local definitionModule = require(script.definition) +local definitionModule = require("./definition") -- Predicates exports.isType = definitionModule.isType exports.isScalarType = definitionModule.isScalarType @@ -82,7 +82,7 @@ export type GraphQLUnionType = definitionModule.GraphQLUnionType export type GraphQLEnumType = definitionModule.GraphQLEnumType export type GraphQLInputObjectType = definitionModule.GraphQLInputObjectType -local directivesModule = require(script.directives) +local directivesModule = require("./directives") -- Predicate exports.isDirective = directivesModule.isDirective @@ -104,7 +104,7 @@ export type GraphQLDirectiveConfig = directivesModule.GraphQLDirectiveConfig export type GraphQLDirective = directivesModule.GraphQLDirective -- Common built-in scalar instances. -local scalarsModule = require(script.scalars) +local scalarsModule = require("./scalars") -- Predicate exports.isSpecifiedScalarType = scalarsModule.isSpecifiedScalarType @@ -116,7 +116,7 @@ exports.GraphQLString = scalarsModule.GraphQLString exports.GraphQLBoolean = scalarsModule.GraphQLBoolean exports.GraphQLID = scalarsModule.GraphQLID -local introspectionModule = require(script.introspection) +local introspectionModule = require("./introspection") -- Predicate exports.isIntrospectionType = introspectionModule.isIntrospectionType @@ -212,7 +212,7 @@ export type GraphQLScalarLiteralParser = definitionModule.GraphQLScal > -- Validate GraphQL schema. -local validateModule = require(script.validate) +local validateModule = require("./validate") exports.validateSchema = validateModule.validateSchema exports.assertValidSchema = validateModule.assertValidSchema diff --git a/src/type/introspection.lua b/src/type/introspection.lua index 35e867f..88119f4 100644 --- a/src/type/introspection.lua +++ b/src/type/introspection.lua @@ -6,32 +6,27 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/056fac955b7172e55b33e0a1b35b4ddb8951a99c/src/type/introspection.js --!strict -local srcWorkspace = script.Parent.Parent -local jsutilsWorkspace = srcWorkspace.jsutils -local languageWorkspace = srcWorkspace.language -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local Map = LuauPolyfill.Map local Object = LuauPolyfill.Object -local isNotNillish = require(srcWorkspace.luaUtils.isNillish).isNotNillish +local isNotNillish = require("../luaUtils/isNillish").isNotNillish -local inspect = require(jsutilsWorkspace.inspect).inspect -local invariant = require(jsutilsWorkspace.invariant).invariant +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant -local print_ = require(languageWorkspace.printer).print -local DirectiveLocation = require(languageWorkspace.directiveLocation).DirectiveLocation -local astFromValue = require(srcWorkspace.utilities.astFromValue).astFromValue -local astImport = require(srcWorkspace.language.ast) +local print_ = require("../language/printer").print +local DirectiveLocation = require("../language/directiveLocation").DirectiveLocation +local astFromValue = require("../utilities/astFromValue").astFromValue +local astImport = require("../language/ast") type ValueNode = astImport.ValueNode -local scalarsModule = require(script.Parent.scalars) +local scalarsModule = require("./scalars") local GraphQLString = scalarsModule.GraphQLString local GraphQLBoolean = scalarsModule.GraphQLBoolean -local definitionModule = require(script.Parent.definition) +local definitionModule = require("./definition") type GraphQLType = definitionModule.GraphQLType type GraphQLNamedType = definitionModule.GraphQLNamedType type GraphQLInputField = definitionModule.GraphQLInputField diff --git a/src/type/scalars.lua b/src/type/scalars.lua index b2338ed..4fe168d 100644 --- a/src/type/scalars.lua +++ b/src/type/scalars.lua @@ -12,27 +12,25 @@ local function NumberisFinite(value) return typeof(value) == "number" and value ~= math.huge and value == value end local parseFloat = parseInt -local Workspace = script.Parent.Parent -local Packages = Workspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local Number = LuauPolyfill.Number local Object = LuauPolyfill.Object -local ast = require(script.Parent.Parent.language.ast) +local ast = require("../language/ast") type IntValueNode = ast.IntValueNode type FloatValueNode = ast.FloatValueNode type StringValueNode = ast.StringValueNode type BooleanValueNode = ast.BooleanValueNode -local inspect = require(script.Parent.Parent.jsutils.inspect).inspect -local isObjectLike = require(script.Parent.Parent.jsutils.isObjectLike).isObjectLike -local Kind = require(script.Parent.Parent.language.kinds).Kind -local print_ = require(script.Parent.Parent.language.printer).print -local GraphQLError = require(script.Parent.Parent.error.GraphQLError).GraphQLError +local inspect = require("../jsutils/inspect").inspect +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike +local Kind = require("../language/kinds").Kind +local print_ = require("../language/printer").print +local GraphQLError = require("../error/GraphQLError").GraphQLError -local DefinitionModule = require(script.Parent.definition) +local DefinitionModule = require("./definition") type GraphQLNamedType = DefinitionModule.GraphQLNamedType local GraphQLScalarType = DefinitionModule.GraphQLScalarType type GraphQLScalarType = DefinitionModule.GraphQLScalarType< diff --git a/src/type/schema.lua b/src/type/schema.lua index c10663c..1b8f2cb 100644 --- a/src/type/schema.lua +++ b/src/type/schema.lua @@ -5,11 +5,7 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/aa650618426a301e3f0f61ead3adcd755055a627/src/type/schema.js -local srcWorkspace = script.Parent.Parent -local luaUtilsWorkspace = srcWorkspace.luaUtils - -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map @@ -18,39 +14,38 @@ type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map type Set = LuauPolyfill.Set -local isNillishModule = require(luaUtilsWorkspace.isNillish) +local isNillishModule = require("../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish -local NULL = require(luaUtilsWorkspace.null) +local NULL = require("../luaUtils/null") type NULL = typeof(NULL) -local jsutilsWorkspace = srcWorkspace.jsutils -local inspect = require(jsutilsWorkspace.inspect).inspect -local toObjMap = require(jsutilsWorkspace.toObjMap).toObjMap -local devAssert = require(jsutilsWorkspace.devAssert).devAssert -local instanceOf = require(jsutilsWorkspace.instanceOf) -local isObjectLike = require(jsutilsWorkspace.isObjectLike).isObjectLike +local inspect = require("../jsutils/inspect").inspect +local toObjMap = require("../jsutils/toObjMap").toObjMap +local devAssert = require("../jsutils/devAssert").devAssert +local instanceOf = require("../jsutils/instanceOf") +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike -local introspectionModule = require(script.Parent.introspection) +local introspectionModule = require("./introspection") local __Schema = introspectionModule.__Schema -local astModule = require(srcWorkspace.language.ast) +local astModule = require("../language/ast") type SchemaDefinitionNode = astModule.SchemaDefinitionNode type SchemaExtensionNode = astModule.SchemaExtensionNode -local GraphQLErrorModule = require(srcWorkspace.error.GraphQLError) +local GraphQLErrorModule = require("../error/GraphQLError") type GraphQLError = GraphQLErrorModule.GraphQLError -local directivesModule = require(script.Parent.directives) +local directivesModule = require("./directives") type GraphQLDirective = directivesModule.GraphQLDirective local isDirective = directivesModule.isDirective local specifiedDirectives = directivesModule.specifiedDirectives -local ObjMapModule = require(jsutilsWorkspace.ObjMap) +local ObjMapModule = require("../jsutils/ObjMap") type ObjMap = ObjMapModule.ObjMap type ObjMapLike = ObjMapModule.ObjMapLike -local definitionModule = require(script.Parent.definition) +local definitionModule = require("./definition") type GraphQLType = definitionModule.GraphQLType type GraphQLNamedType = definitionModule.GraphQLNamedType type GraphQLAbstractType = definitionModule.GraphQLAbstractType diff --git a/src/type/validate.lua b/src/type/validate.lua index 6fcf368..b862c01 100644 --- a/src/type/validate.lua +++ b/src/type/validate.lua @@ -6,10 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/type/validate.js --# selene: allow(if_same_then_else) -local srcWorkspace = script.Parent.Parent -local root = srcWorkspace.Parent - -local LuauPolyfill = require(root.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Boolean = LuauPolyfill.Boolean local Error = LuauPolyfill.Error @@ -17,29 +14,29 @@ type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map type Set = LuauPolyfill.Set -local isNotNillish = require(srcWorkspace.luaUtils.isNillish).isNotNillish +local isNotNillish = require("../luaUtils/isNillish").isNotNillish -local inspect = require(script.Parent.Parent.jsutils.inspect).inspect -local GraphQLErrorModule = require(script.Parent.Parent.error.GraphQLError) +local inspect = require("../jsutils/inspect").inspect +local GraphQLErrorModule = require("../error/GraphQLError") local GraphQLError = GraphQLErrorModule.GraphQLError type GraphQLError = GraphQLErrorModule.GraphQLError -local locatedError = require(script.Parent.Parent.error).locatedError +local locatedError = require("../error").locatedError -local astModule = require(srcWorkspace.language.ast) +local astModule = require("../language/ast") type ASTNode = astModule.ASTNode type NamedTypeNode = astModule.NamedTypeNode type DirectiveNode = astModule.DirectiveNode type OperationTypeNode = astModule.OperationTypeNode -local isValidNameError = require(srcWorkspace.utilities.assertValidName).isValidNameError -local typeComparators = require(script.Parent.Parent.utilities.typeComparators) +local isValidNameError = require("../utilities/assertValidName").isValidNameError +local typeComparators = require("../utilities/typeComparators") local isEqualType = typeComparators.isEqualType local isTypeSubTypeOf = typeComparators.isTypeSubTypeOf -local schemaModule = require(script.Parent.schema) +local schemaModule = require("./schema") local assertSchema = schemaModule.assertSchema type GraphQLSchema = schemaModule.GraphQLSchema -local definitionModule = require(script.Parent.definition) +local definitionModule = require("./definition") type GraphQLArgument = definitionModule.GraphQLArgument type GraphQLInputField = definitionModule.GraphQLInputField type GraphQLObjectType = definitionModule.GraphQLObjectType @@ -48,8 +45,8 @@ type GraphQLUnionType = definitionModule.GraphQLUnionType type GraphQLEnumType = definitionModule.GraphQLEnumType type GraphQLInputObjectType = definitionModule.GraphQLInputObjectType -local isIntrospectionType = require(script.Parent.introspection).isIntrospectionType -local directives = require(script.Parent.directives) +local isIntrospectionType = require("./introspection").isIntrospectionType +local directives = require("./directives") local isDirective = directives.isDirective local GraphQLDeprecatedDirective = directives.GraphQLDeprecatedDirective local isObjectType = definitionModule.isObjectType diff --git a/src/utilities/TypeInfo.lua b/src/utilities/TypeInfo.lua index e901122..c9ca85f 100644 --- a/src/utilities/TypeInfo.lua +++ b/src/utilities/TypeInfo.lua @@ -6,20 +6,14 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/TypeInfo.js --!strict -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array -local luaUtilsWorkspace = srcWorkspace.luaUtils -local NULL = require(luaUtilsWorkspace.null) +local NULL = require("../luaUtils/null") type NULL = typeof(NULL) -local language = srcWorkspace.language -local typeWorkspace = srcWorkspace.type - -local visitorImport = require(language.visitor) -local astImport = require(language.ast) +local visitorImport = require("../language/visitor") +local astImport = require("../language/ast") -- ROBLOX deviation: Luau can't do default type args, so we inline here type Visitor = visitorImport.Visitor -- ROBLOX TODO: looks like a type violation in upstream, not all members of ASTNode union have 'name' or 'value' fields @@ -37,15 +31,15 @@ type NamedTypeNode = astImport.NamedTypeNode type ASTNode = astImport.ASTNode type ASTKindToNode = astImport.ASTKindToNode type FieldNode = astImport.FieldNode -local Kind = require(language.kinds).Kind +local Kind = require("../language/kinds").Kind local isNode = astImport.isNode local getVisitFn = visitorImport.getVisitFn -local schemaImport = require(typeWorkspace.schema) +local schemaImport = require("../type/schema") type GraphQLSchema = schemaImport.GraphQLSchema -local _directivesImport = require(typeWorkspace.directives) +local _directivesImport = require("../type/directives") type GraphQLDirective = _directivesImport.GraphQLDirective -local definitionImport = require(typeWorkspace.definition) +local definitionImport = require("../type/definition") type GraphQLType = definitionImport.GraphQLType type GraphQLInputType = definitionImport.GraphQLInputType type GraphQLNamedType = definitionImport.GraphQLNamedType @@ -67,12 +61,12 @@ local isInputType = definitionImport.isInputType local isOutputType = definitionImport.isOutputType local getNullableType = definitionImport.getNullableType local getNamedType = definitionImport.getNamedType -local introspectionImport = require(typeWorkspace.introspection) +local introspectionImport = require("../type/introspection") local SchemaMetaFieldDef = introspectionImport.SchemaMetaFieldDef local TypeMetaFieldDef = introspectionImport.TypeMetaFieldDef local TypeNameMetaFieldDef = introspectionImport.TypeNameMetaFieldDef -local typeFromAST = require(srcWorkspace.utilities.typeFromAST).typeFromAST +local typeFromAST = require("../utilities/typeFromAST").typeFromAST -- ROBLOX deviation: use the following table as a symbol to represent -- a `null` value within the arrays diff --git a/src/utilities/__tests__/TypeInfo.spec.lua b/src/utilities/__tests__/TypeInfo.spec.lua index badc62a..d3ed12a 100644 --- a/src/utilities/__tests__/TypeInfo.spec.lua +++ b/src/utilities/__tests__/TypeInfo.spec.lua @@ -7,29 +7,24 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/TypeInfo-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Object = LuauPolyfill.Object - local invariant = require(srcWorkspace.jsutils.invariant).invariant - local languageWorkspace = srcWorkspace.language - local parserImport = require(languageWorkspace.parser) + local invariant = require("../../jsutils/invariant").invariant + local parserImport = require("../../language/parser") local parse = parserImport.parse local parseValue = parserImport.parseValue - local print_ = require(languageWorkspace.printer).print - local visit = require(languageWorkspace.visitor).visit - local definitionImport = require(srcWorkspace.type.definition) + local print_ = require("../../language/printer").print + local visit = require("../../language/visitor").visit + local definitionImport = require("../../type/definition") local getNamedType = definitionImport.getNamedType local isCompositeType = definitionImport.isCompositeType - local buildASTSchema = require(utilitiesWorkspace.buildASTSchema) + local buildASTSchema = require("../buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local TypeInfoImport = require(utilitiesWorkspace.TypeInfo) + local TypeInfoImport = require("../TypeInfo") local TypeInfo = TypeInfoImport.TypeInfo local visitWithTypeInfo = TypeInfoImport.visitWithTypeInfo - local testSchema = require(srcWorkspace.validation.__tests__.harness).testSchema + local testSchema = require("../../validation/__tests__/harness").testSchema local NULL = "$NULL SYMBOL" local function wrapNullArgs(...) diff --git a/src/utilities/__tests__/assertValidName.spec.lua b/src/utilities/__tests__/assertValidName.spec.lua index f3f43c9..5bf22f9 100644 --- a/src/utilities/__tests__/assertValidName.spec.lua +++ b/src/utilities/__tests__/assertValidName.spec.lua @@ -6,7 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/assertValidName-test.js -local assertValidName = require(script.Parent.Parent.assertValidName).assertValidName +local assertValidName = require("../assertValidName").assertValidName return function() describe("assertValidName()", function() diff --git a/src/utilities/__tests__/astFromValue.spec.lua b/src/utilities/__tests__/astFromValue.spec.lua index 5cc6bd4..21cd2b5 100644 --- a/src/utilities/__tests__/astFromValue.spec.lua +++ b/src/utilities/__tests__/astFromValue.spec.lua @@ -1,31 +1,27 @@ --upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/astFromValue-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local rootWorkspace = srcWorkspace.Parent - - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map local NaN = LuauPolyfill.Number.NaN -- ROBLOX deviation: bring in NULL type - local NULL = require(utilitiesWorkspace.astFromValue).NULL + local NULL = require("../astFromValue").NULL - local scalarsImport = require(srcWorkspace.type.scalars) + local scalarsImport = require("../../type/scalars") local GraphQLID = scalarsImport.GraphQLID local GraphQLInt = scalarsImport.GraphQLInt local GraphQLFloat = scalarsImport.GraphQLFloat local GraphQLString = scalarsImport.GraphQLString local GraphQLBoolean = scalarsImport.GraphQLBoolean - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLScalarType = definitionImport.GraphQLScalarType local GraphQLEnumType = definitionImport.GraphQLEnumType local GraphQLInputObjectType = definitionImport.GraphQLInputObjectType - local astFromValue = require(utilitiesWorkspace.astFromValue).astFromValue + local astFromValue = require("../astFromValue").astFromValue describe("astFromValue", function() it("converts boolean values to ASTs", function() diff --git a/src/utilities/__tests__/buildASTSchema.spec.lua b/src/utilities/__tests__/buildASTSchema.spec.lua index 4c3a522..f7f4a9f 100644 --- a/src/utilities/__tests__/buildASTSchema.spec.lua +++ b/src/utilities/__tests__/buildASTSchema.spec.lua @@ -7,38 +7,35 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/buildASTSchema-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local dedent = require("../../__testUtils__/dedent").dedent - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local Kind = require(srcWorkspace.language.kinds).Kind - local parse = require(srcWorkspace.language.parser).parse - local print_ = require(srcWorkspace.language.printer).print + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse + local print_ = require("../../language/printer").print - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local validateSchema = require(srcWorkspace.type.validate).validateSchema - local introspectionImport = require(srcWorkspace.type.introspection) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local validateSchema = require("../../type/validate").validateSchema + local introspectionImport = require("../../type/introspection") local __Schema = introspectionImport.__Schema local __EnumValue = introspectionImport.__EnumValue - local directivesImport = require(srcWorkspace.type.directives) + local directivesImport = require("../../type/directives") local assertDirective = directivesImport.assertDirective local GraphQLSkipDirective = directivesImport.GraphQLSkipDirective local GraphQLIncludeDirective = directivesImport.GraphQLIncludeDirective local GraphQLDeprecatedDirective = directivesImport.GraphQLDeprecatedDirective local GraphQLSpecifiedByDirective = directivesImport.GraphQLSpecifiedByDirective - local scalarsImport = require(srcWorkspace.type.scalars) + local scalarsImport = require("../../type/scalars") local GraphQLID = scalarsImport.GraphQLID local GraphQLInt = scalarsImport.GraphQLInt local GraphQLFloat = scalarsImport.GraphQLFloat local GraphQLString = scalarsImport.GraphQLString local GraphQLBoolean = scalarsImport.GraphQLBoolean - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local assertObjectType = definitionImport.assertObjectType local assertInputObjectType = definitionImport.assertInputObjectType local assertEnumType = definitionImport.assertEnumType @@ -46,12 +43,12 @@ return function() local assertInterfaceType = definitionImport.assertInterfaceType local assertScalarType = definitionImport.assertScalarType - local graphqlSync = require(srcWorkspace.graphql).graphqlSync + local graphqlSync = require("../../graphql").graphqlSync - local printSchemaImport = require(utilitiesWorkspace.printSchema) + local printSchemaImport = require("../printSchema") local printType = printSchemaImport.printType local printSchema = printSchemaImport.printSchema - local buildASTSchemaImport = require(utilitiesWorkspace.buildASTSchema) + local buildASTSchemaImport = require("../buildASTSchema") local buildASTSchema = buildASTSchemaImport.buildASTSchema local buildSchema = buildASTSchemaImport.buildSchema diff --git a/src/utilities/__tests__/buildClientSchema.spec.lua b/src/utilities/__tests__/buildClientSchema.spec.lua index 08bcdbf..3fd196f 100644 --- a/src/utilities/__tests__/buildClientSchema.spec.lua +++ b/src/utilities/__tests__/buildClientSchema.spec.lua @@ -7,38 +7,35 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/buildClientSchema-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local rootWorkspace = srcWorkspace.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Map = LuauPolyfill.Map -- ROBLOX deviation: utils - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local dedent = require("../../__testUtils__/dedent").dedent - local graphqlSync = require(srcWorkspace.graphql).graphqlSync + local graphqlSync = require("../../graphql").graphqlSync - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema + local GraphQLSchema = require("../../type/schema").GraphQLSchema - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local assertEnumType = definitionImport.assertEnumType local GraphQLObjectType = definitionImport.GraphQLObjectType local GraphQLEnumType = definitionImport.GraphQLEnumType - local scalarsImport = require(srcWorkspace.type.scalars) + local scalarsImport = require("../../type/scalars") local GraphQLInt = scalarsImport.GraphQLInt local GraphQLFloat = scalarsImport.GraphQLFloat local GraphQLString = scalarsImport.GraphQLString local GraphQLBoolean = scalarsImport.GraphQLBoolean local GraphQLID = scalarsImport.GraphQLID - local printSchema = require(utilitiesWorkspace.printSchema).printSchema - local buildSchema = require(utilitiesWorkspace.buildASTSchema).buildSchema - local buildClientSchema = require(utilitiesWorkspace.buildClientSchema).buildClientSchema + local printSchema = require("../printSchema").printSchema + local buildSchema = require("../buildASTSchema").buildSchema + local buildClientSchema = require("../buildClientSchema").buildClientSchema local introspectionFromSchema = - require(utilitiesWorkspace.introspectionFromSchema).introspectionFromSchema + require("../introspectionFromSchema").introspectionFromSchema --[[* -- * This function does a full cycle of going from a string with the contents of diff --git a/src/utilities/__tests__/coerceInputValue.spec.lua b/src/utilities/__tests__/coerceInputValue.spec.lua index a5329ab..656df97 100644 --- a/src/utilities/__tests__/coerceInputValue.spec.lua +++ b/src/utilities/__tests__/coerceInputValue.spec.lua @@ -7,27 +7,25 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/coerceInputValue-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map local Number = LuauPolyfill.Number - local NULL = require(srcWorkspace.luaUtils.null) - local isNotNillish = require(srcWorkspace.luaUtils.isNillish).isNotNillish + local NULL = require("../../luaUtils/null") + local isNotNillish = require("../../luaUtils/isNillish").isNotNillish - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local GraphQLInt = require(srcWorkspace.type.scalars).GraphQLInt - local definition = require(srcWorkspace.type.definition) + local GraphQLInt = require("../../type/scalars").GraphQLInt + local definition = require("../../type/definition") local GraphQLList = definition.GraphQLList local GraphQLNonNull = definition.GraphQLNonNull local GraphQLEnumType = definition.GraphQLEnumType local GraphQLScalarType = definition.GraphQLScalarType local GraphQLInputObjectType = definition.GraphQLInputObjectType - local coerceInputValue = require(srcWorkspace.utilities.coerceInputValue).coerceInputValue + local coerceInputValue = require("../../utilities/coerceInputValue").coerceInputValue -- ROBLOX Deviation = expect only exists in describe block, henced it has to be passed as an argument here local function expectValue(expect_, result) diff --git a/src/utilities/__tests__/concatAST.spec.lua b/src/utilities/__tests__/concatAST.spec.lua index 1551db6..7e959e3 100644 --- a/src/utilities/__tests__/concatAST.spec.lua +++ b/src/utilities/__tests__/concatAST.spec.lua @@ -7,15 +7,13 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/concatAST-test.js return function() - local languageWorkspace = script.Parent.Parent.Parent.language + local dedent = require("../../__testUtils__/dedent").dedent - local dedent = require(script.Parent.Parent.Parent.__testUtils__.dedent).dedent + local parse = require("../../language/parser").parse + local print_ = require("../../language/printer").print + local Source = require("../../language/source").Source - local parse = require(languageWorkspace.parser).parse - local print_ = require(languageWorkspace.printer).print - local Source = require(languageWorkspace.source).Source - - local concatAST = require(script.Parent.Parent.concatAST).concatAST + local concatAST = require("../concatAST").concatAST describe("concat", function() it("concatenates two ASTs together", function() diff --git a/src/utilities/__tests__/extendSchema.spec.lua b/src/utilities/__tests__/extendSchema.spec.lua index dab67f7..4b0db25 100644 --- a/src/utilities/__tests__/extendSchema.spec.lua +++ b/src/utilities/__tests__/extendSchema.spec.lua @@ -7,44 +7,39 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/056fac955b7172e55b33e0a1b35b4ddb8951a99c/src/utilities/__tests__/extendSchema-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent - local invariant = require(srcWorkspace.jsutils.invariant).invariant - local language = srcWorkspace.language - local Kind = require(language.kinds).Kind - local parse = require(language.parser).parse - local print_ = require(language.printer).print - local graphqlSync = require(srcWorkspace.graphql).graphqlSync - - local typeWorkspace = srcWorkspace.type - local GraphQLSchema = require(typeWorkspace.schema).GraphQLSchema - local validateSchema = require(typeWorkspace.validate).validateSchema - local directives = require(typeWorkspace.directives) + local dedent = require("../../__testUtils__/dedent").dedent + local invariant = require("../../jsutils/invariant").invariant + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse + local print_ = require("../../language/printer").print + local graphqlSync = require("../../graphql").graphqlSync + + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local validateSchema = require("../../type/validate").validateSchema + local directives = require("../../type/directives") local assertDirective = directives.assertDirective - local scalars = require(typeWorkspace.scalars) + local scalars = require("../../type/scalars") local GraphQLID = scalars.GraphQLID local GraphQLInt = scalars.GraphQLInt local GraphQLFloat = scalars.GraphQLFloat local GraphQLString = scalars.GraphQLString local GraphQLBoolean = scalars.GraphQLBoolean - local definition = require(typeWorkspace.definition) + local definition = require("../../type/definition") local assertObjectType = definition.assertObjectType local assertInputObjectType = definition.assertInputObjectType local assertEnumType = definition.assertEnumType local assertUnionType = definition.assertUnionType local assertInterfaceType = definition.assertInterfaceType local assertScalarType = definition.assertScalarType - local utilities = srcWorkspace.utilities - local concatAST = require(utilities.concatAST).concatAST - local printSchema = require(utilities.printSchema).printSchema - local extendSchema = require(utilities.extendSchema).extendSchema - local buildSchema = require(utilities.buildASTSchema).buildSchema + local concatAST = require("../../utilities/concatAST").concatAST + local printSchema = require("../../utilities/printSchema").printSchema + local extendSchema = require("../../utilities/extendSchema").extendSchema + local buildSchema = require("../../utilities/buildASTSchema").buildSchema local function printExtensionNodes(obj): string invariant((obj and obj.extensionASTNodes) ~= nil) diff --git a/src/utilities/__tests__/findBreakingChanges.spec.lua b/src/utilities/__tests__/findBreakingChanges.spec.lua index 1b91614..f84a8de 100644 --- a/src/utilities/__tests__/findBreakingChanges.spec.lua +++ b/src/utilities/__tests__/findBreakingChanges.spec.lua @@ -7,15 +7,14 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/findBreakingChanges-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local directivesModule = require(srcWorkspace.type.directives) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local directivesModule = require("../../type/directives") local GraphQLSkipDirective = directivesModule.GraphQLSkipDirective local GraphQLIncludeDirective = directivesModule.GraphQLIncludeDirective local GraphQLSpecifiedByDirective = directivesModule.GraphQLSpecifiedByDirective local GraphQLDeprecatedDirective = directivesModule.GraphQLDeprecatedDirective - local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema - local findBreakingChangesModule = require(srcWorkspace.utilities.findBreakingChanges) + local buildSchema = require("../../utilities/buildASTSchema").buildSchema + local findBreakingChangesModule = require("../../utilities/findBreakingChanges") local findBreakingChanges = findBreakingChangesModule.findBreakingChanges local BreakingChangeType = findBreakingChangesModule.BreakingChangeType local DangerousChangeType = findBreakingChangesModule.DangerousChangeType diff --git a/src/utilities/__tests__/getIntrospectionQuery.spec.lua b/src/utilities/__tests__/getIntrospectionQuery.spec.lua index 8287620..c34fa82 100644 --- a/src/utilities/__tests__/getIntrospectionQuery.spec.lua +++ b/src/utilities/__tests__/getIntrospectionQuery.spec.lua @@ -6,9 +6,8 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/getIntrospectionQuery-test.js -local srcWorkspace = script.Parent.Parent.Parent local getIntrospectionQuery = - require(srcWorkspace.utilities.getIntrospectionQuery).getIntrospectionQuery + require("../../utilities/getIntrospectionQuery").getIntrospectionQuery -- ROBLOX Deviation: utility function for finding multiple matches local function stringFindAll(str, pattern) diff --git a/src/utilities/__tests__/getOperationAST.spec.lua b/src/utilities/__tests__/getOperationAST.spec.lua index 8c91561..6f6513d 100644 --- a/src/utilities/__tests__/getOperationAST.spec.lua +++ b/src/utilities/__tests__/getOperationAST.spec.lua @@ -7,10 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/getOperationAST-test.js return function() - local utilities = script.Parent.Parent - local language = utilities.Parent.language - local parse = require(language.parser).parse - local getOperationAST = require(utilities.getOperationAST).getOperationAST + local parse = require("../../language/parser").parse + local getOperationAST = require("../getOperationAST").getOperationAST describe("getOperationAST", function() it("Gets an operation from a simple document", function() diff --git a/src/utilities/__tests__/getOperationRootType.spec.lua b/src/utilities/__tests__/getOperationRootType.spec.lua index 9c84dde..6e1c644 100644 --- a/src/utilities/__tests__/getOperationRootType.spec.lua +++ b/src/utilities/__tests__/getOperationRootType.spec.lua @@ -7,19 +7,16 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/getOperationRootType-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - - local invariant = require(srcWorkspace.jsutils.invariant).invariant - local Kind = require(srcWorkspace.language.kinds).Kind - local parse = require(srcWorkspace.language.parser).parse - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local GraphQLString = require(srcWorkspace.type.scalars).GraphQLString - local GraphQLObjectType = require(srcWorkspace.type.definition).GraphQLObjectType + local invariant = require("../../jsutils/invariant").invariant + local Kind = require("../../language/kinds").Kind + local parse = require("../../language/parser").parse + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType local getOperationRootType = - require(utilitiesWorkspace.getOperationRootType).getOperationRootType + require("../getOperationRootType").getOperationRootType - local Object = require(srcWorkspace.Parent.LuauPolyfill).Object + local Object = require("@pkg/@jsdotlua/luau-polyfill").Object local queryType = GraphQLObjectType.new({ name = "FooQuery", diff --git a/src/utilities/__tests__/init.roblox.spec.lua b/src/utilities/__tests__/init.roblox.spec.lua index 17b7f71..20baa9e 100644 --- a/src/utilities/__tests__/init.roblox.spec.lua +++ b/src/utilities/__tests__/init.roblox.spec.lua @@ -3,157 +3,157 @@ return function() describe("Utilities - init", function() it("should contain getIntrospectionQuery function", function() - local getIntrospectionQuery = require(script.Parent.Parent).getIntrospectionQuery + local getIntrospectionQuery = require("../init").getIntrospectionQuery expect(getIntrospectionQuery).to.be.a("function") end) it("should contain getOperationAST function", function() - local getOperationAST = require(script.Parent.Parent).getOperationAST + local getOperationAST = require("../init").getOperationAST expect(getOperationAST).to.be.a("function") end) it("should contain getOperationRootType function", function() - local getOperationRootType = require(script.Parent.Parent).getOperationRootType + local getOperationRootType = require("../init").getOperationRootType expect(getOperationRootType).to.be.a("function") end) it("should contain introspectionFromSchema function", function() - local introspectionFromSchema = require(script.Parent.Parent).introspectionFromSchema + local introspectionFromSchema = require("../init").introspectionFromSchema expect(introspectionFromSchema).to.be.a("function") end) it("should contain buildClientSchema function", function() - local buildClientSchema = require(script.Parent.Parent).buildClientSchema + local buildClientSchema = require("../init").buildClientSchema expect(buildClientSchema).to.be.a("function") end) it("should contain buildASTSchema function", function() - local buildASTSchema = require(script.Parent.Parent).buildASTSchema + local buildASTSchema = require("../init").buildASTSchema expect(buildASTSchema).to.be.a("function") end) it("should contain buildSchema function", function() - local buildSchema = require(script.Parent.Parent).buildSchema + local buildSchema = require("../init").buildSchema expect(buildSchema).to.be.a("function") end) it("should contain extendSchema function", function() - local extendSchema = require(script.Parent.Parent).extendSchema + local extendSchema = require("../init").extendSchema expect(extendSchema).to.be.a("function") end) it("should contain lexicographicSortSchema function", function() - local lexicographicSortSchema = require(script.Parent.Parent).lexicographicSortSchema + local lexicographicSortSchema = require("../init").lexicographicSortSchema expect(lexicographicSortSchema).to.be.a("function") end) it("should contain printSchema function", function() - local printSchema = require(script.Parent.Parent).printSchema + local printSchema = require("../init").printSchema expect(printSchema).to.be.a("function") end) it("should contain printType function", function() - local printType = require(script.Parent.Parent).printType + local printType = require("../init").printType expect(printType).to.be.a("function") end) it("should contain printIntrospectionSchema function", function() - local printIntrospectionSchema = require(script.Parent.Parent).printIntrospectionSchema + local printIntrospectionSchema = require("../init").printIntrospectionSchema expect(printIntrospectionSchema).to.be.a("function") end) it("should contain typeFromAST function", function() - local typeFromAST = require(script.Parent.Parent).typeFromAST + local typeFromAST = require("../init").typeFromAST expect(typeFromAST).to.be.a("function") end) it("should contain valueFromAST function", function() - local valueFromAST = require(script.Parent.Parent).valueFromAST + local valueFromAST = require("../init").valueFromAST expect(valueFromAST).to.be.a("function") end) it("should contain valueFromASTUntyped function", function() - local valueFromASTUntyped = require(script.Parent.Parent).valueFromASTUntyped + local valueFromASTUntyped = require("../init").valueFromASTUntyped expect(valueFromASTUntyped).to.be.a("function") end) it("should contain astFromValue function", function() - local astFromValue = require(script.Parent.Parent).astFromValue + local astFromValue = require("../init").astFromValue expect(astFromValue).to.be.a("function") end) it("should contain TypeInfo table", function() - local TypeInfo = require(script.Parent.Parent).TypeInfo + local TypeInfo = require("../init").TypeInfo expect(TypeInfo).to.be.a("table") end) it("should contain visitWithTypeInfo function", function() - local visitWithTypeInfo = require(script.Parent.Parent).visitWithTypeInfo + local visitWithTypeInfo = require("../init").visitWithTypeInfo expect(visitWithTypeInfo).to.be.a("function") end) it("should contain coerceInputValue function", function() - local coerceInputValue = require(script.Parent.Parent).coerceInputValue + local coerceInputValue = require("../init").coerceInputValue expect(coerceInputValue).to.be.a("function") end) it("should contain concatAST function", function() - local concatAST = require(script.Parent.Parent).concatAST + local concatAST = require("../init").concatAST expect(concatAST).to.be.a("function") end) it("should contain separateOperations function", function() - local separateOperations = require(script.Parent.Parent).separateOperations + local separateOperations = require("../init").separateOperations expect(separateOperations).to.be.a("function") end) it("should contain stripIgnoredCharacters function", function() - local stripIgnoredCharacters = require(script.Parent.Parent).stripIgnoredCharacters + local stripIgnoredCharacters = require("../init").stripIgnoredCharacters expect(stripIgnoredCharacters).to.be.a("function") end) it("should contain isEqualType function", function() - local isEqualType = require(script.Parent.Parent).isEqualType + local isEqualType = require("../init").isEqualType expect(isEqualType).to.be.a("function") end) it("should contain isTypeSubTypeOf function", function() - local isTypeSubTypeOf = require(script.Parent.Parent).isTypeSubTypeOf + local isTypeSubTypeOf = require("../init").isTypeSubTypeOf expect(isTypeSubTypeOf).to.be.a("function") end) it("should contain doTypesOverlap function", function() - local doTypesOverlap = require(script.Parent.Parent).doTypesOverlap + local doTypesOverlap = require("../init").doTypesOverlap expect(doTypesOverlap).to.be.a("function") end) it("should contain assertValidName function", function() - local assertValidName = require(script.Parent.Parent).assertValidName + local assertValidName = require("../init").assertValidName expect(assertValidName).to.be.a("function") end) it("should contain isValidNameError function", function() - local isValidNameError = require(script.Parent.Parent).isValidNameError + local isValidNameError = require("../init").isValidNameError expect(isValidNameError).to.be.a("function") end) it("should contain BreakingChangeType table", function() - local BreakingChangeType = require(script.Parent.Parent).BreakingChangeType + local BreakingChangeType = require("../init").BreakingChangeType expect(BreakingChangeType).to.be.a("table") end) it("should contain DangerousChangeType table", function() - local DangerousChangeType = require(script.Parent.Parent).DangerousChangeType + local DangerousChangeType = require("../init").DangerousChangeType expect(DangerousChangeType).to.be.a("table") end) it("should contain findBreakingChanges function", function() - local findBreakingChanges = require(script.Parent.Parent).findBreakingChanges + local findBreakingChanges = require("../init").findBreakingChanges expect(findBreakingChanges).to.be.a("function") end) it("should contain findDangerousChanges function", function() - local findDangerousChanges = require(script.Parent.Parent).findDangerousChanges + local findDangerousChanges = require("../init").findDangerousChanges expect(findDangerousChanges).to.be.a("function") end) end) diff --git a/src/utilities/__tests__/introspectionFromSchema.spec.lua b/src/utilities/__tests__/introspectionFromSchema.spec.lua index df61d9b..15dab1e 100644 --- a/src/utilities/__tests__/introspectionFromSchema.spec.lua +++ b/src/utilities/__tests__/introspectionFromSchema.spec.lua @@ -7,22 +7,18 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/introspectionFromSchema-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local typeWorkspace = srcWorkspace.type + local dedent = require("../../__testUtils__/dedent").dedent - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local GraphQLString = require("../../type/scalars").GraphQLString + local GraphQLObjectType = require("../../type/definition").GraphQLObjectType - local GraphQLSchema = require(typeWorkspace.schema).GraphQLSchema - local GraphQLString = require(typeWorkspace.scalars).GraphQLString - local GraphQLObjectType = require(typeWorkspace.definition).GraphQLObjectType - - local getIntrospectionQueryModule = require(utilitiesWorkspace.getIntrospectionQuery) + local getIntrospectionQueryModule = require("../getIntrospectionQuery") type IntrospectionQuery = getIntrospectionQueryModule.IntrospectionQuery local introspectionFromSchema = - require(srcWorkspace.utilities.introspectionFromSchema).introspectionFromSchema - local printSchema = require(utilitiesWorkspace.printSchema).printSchema - local buildClientSchema = require(utilitiesWorkspace.buildClientSchema).buildClientSchema + require("../../utilities/introspectionFromSchema").introspectionFromSchema + local printSchema = require("../printSchema").printSchema + local buildClientSchema = require("../buildClientSchema").buildClientSchema local function introspectionToSDL(introspection: IntrospectionQuery): string return printSchema(buildClientSchema(introspection)) diff --git a/src/utilities/__tests__/lexicographicSortSchema.spec.lua b/src/utilities/__tests__/lexicographicSortSchema.spec.lua index 93e91fa..3ca7a9e 100644 --- a/src/utilities/__tests__/lexicographicSortSchema.spec.lua +++ b/src/utilities/__tests__/lexicographicSortSchema.spec.lua @@ -7,18 +7,15 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/lexicographicSortSchema-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local utilitiesWorkspace = script.Parent.Parent - local Packages = srcWorkspace.Parent - local JestGlobals = require(Packages.Dev.JestGlobals) + local JestGlobals = require("@pkg/@jsdotlua/jest-globals") local jestExpect = JestGlobals.expect - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local dedent = require("../../__testUtils__/dedent").dedent - local printSchema = require(utilitiesWorkspace.printSchema).printSchema - local buildSchema = require(utilitiesWorkspace.buildASTSchema).buildSchema + local printSchema = require("../printSchema").printSchema + local buildSchema = require("../buildASTSchema").buildSchema local lexicographicSortSchema = - require(utilitiesWorkspace.lexicographicSortSchema).lexicographicSortSchema + require("../lexicographicSortSchema").lexicographicSortSchema local function sortSDL(sdl) local schema = buildSchema(sdl) diff --git a/src/utilities/__tests__/printSchema.spec.lua b/src/utilities/__tests__/printSchema.spec.lua index 8660c56..a67ff9f 100644 --- a/src/utilities/__tests__/printSchema.spec.lua +++ b/src/utilities/__tests__/printSchema.spec.lua @@ -6,26 +6,22 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/printSchema-test.js -local utilitiesWorkspace = script.Parent.Parent -local srcWorkspace = script.Parent.Parent.Parent -local rootWorkspace = srcWorkspace.Parent - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map -local dedent = require(srcWorkspace.__testUtils__.dedent).dedent +local dedent = require("../../__testUtils__/dedent").dedent -local DirectiveLocation = require(srcWorkspace.language.directiveLocation).DirectiveLocation +local DirectiveLocation = require("../../language/directiveLocation").DirectiveLocation -local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema -local GraphQLDirective = require(srcWorkspace.type.directives).GraphQLDirective +local GraphQLSchema = require("../../type/schema").GraphQLSchema +local GraphQLDirective = require("../../type/directives").GraphQLDirective -local ScalarsModule = require(srcWorkspace.type.scalars) +local ScalarsModule = require("../../type/scalars") local GraphQLInt = ScalarsModule.GraphQLInt local GraphQLString = ScalarsModule.GraphQLString local GraphQLBoolean = ScalarsModule.GraphQLBoolean -local DefinitionModule = require(srcWorkspace.type.definition) +local DefinitionModule = require("../../type/definition") local GraphQLList = DefinitionModule.GraphQLList local GraphQLNonNull = DefinitionModule.GraphQLNonNull local GraphQLScalarType = DefinitionModule.GraphQLScalarType @@ -35,8 +31,8 @@ local GraphQLUnionType = DefinitionModule.GraphQLUnionType local GraphQLEnumType = DefinitionModule.GraphQLEnumType local GraphQLInputObjectType = DefinitionModule.GraphQLInputObjectType -local buildSchema = require(utilitiesWorkspace.buildASTSchema).buildSchema -local PrintSchemaModule = require(utilitiesWorkspace.printSchema) +local buildSchema = require("../buildASTSchema").buildSchema +local PrintSchemaModule = require("../printSchema") local printSchema = PrintSchemaModule.printSchema local printIntrospectionSchema = PrintSchemaModule.printIntrospectionSchema diff --git a/src/utilities/__tests__/separateOperations.spec.lua b/src/utilities/__tests__/separateOperations.spec.lua index 2760c1b..0495346 100644 --- a/src/utilities/__tests__/separateOperations.spec.lua +++ b/src/utilities/__tests__/separateOperations.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/separateOperations-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local languageWorkspace = srcWorkspace.language - local parse = require(languageWorkspace.parser).parse - local mapValue = require(srcWorkspace.jsutils.mapValue).mapValue - local separateOperations = require(srcWorkspace.utilities.separateOperations).separateOperations - local print_ = require(srcWorkspace.language.printer).print - local dedent = require(srcWorkspace.__testUtils__.dedent).dedent + local parse = require("../../language/parser").parse + local mapValue = require("../../jsutils/mapValue").mapValue + local separateOperations = require("../../utilities/separateOperations").separateOperations + local print_ = require("../../language/printer").print + local dedent = require("../../__testUtils__/dedent").dedent describe("separateOperations", function() it("separates one AST into multiple, maintaining document order", function() diff --git a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua index 75b019f..4d16a1c 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua +++ b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua @@ -7,18 +7,18 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/stripIgnoredCharacters-fuzz.js return function() - local dedent = require(script.Parent.Parent.Parent.__testUtils__.dedent).dedent - local inspectStr = require(script.Parent.Parent.Parent.__testUtils__.inspectStr).inspectStr + local dedent = require("../../__testUtils__/dedent").dedent + local inspectStr = require("../../__testUtils__/inspectStr").inspectStr local genFuzzStrings = - require(script.Parent.Parent.Parent.__testUtils__.genFuzzStrings).genFuzzStrings + require("../../__testUtils__/genFuzzStrings").genFuzzStrings - local invariant = require(script.Parent.Parent.Parent.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local Lexer = require(script.Parent.Parent.Parent.language.lexer).Lexer - local Source = require(script.Parent.Parent.Parent.language.source).Source + local Lexer = require("../../language/lexer").Lexer + local Source = require("../../language/source").Source local stripIgnoredCharacters = - require(script.Parent.Parent.stripIgnoredCharacters).stripIgnoredCharacters + require("../stripIgnoredCharacters").stripIgnoredCharacters local function lexValue(str: string) local lexer = Lexer.new(Source.new(str)) diff --git a/src/utilities/__tests__/stripIgnoredCharacters.spec.lua b/src/utilities/__tests__/stripIgnoredCharacters.spec.lua index 75c0757..378763f 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters.spec.lua +++ b/src/utilities/__tests__/stripIgnoredCharacters.spec.lua @@ -7,26 +7,23 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/stripIgnoredCharacters-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local Array = require(srcWorkspace.Parent.LuauPolyfill).Array - local testUtilsWorkspace = script.Parent.Parent.Parent.__testUtils__ - local languageWorkspace = script.Parent.Parent.Parent.language + local Array = require("@pkg/@jsdotlua/luau-polyfill").Array - local dedent = require(testUtilsWorkspace.dedent).dedent - local inspectStr = require(testUtilsWorkspace.inspectStr).inspectStr - local kitchenSinkSDL = require(testUtilsWorkspace.kitchenSinkSDL).kitchenSinkSDL - local kitchenSinkQuery = require(testUtilsWorkspace.kitchenSinkQuery).kitchenSinkQuery + local dedent = require("../../__testUtils__/dedent").dedent + local inspectStr = require("../../__testUtils__/inspectStr").inspectStr + local kitchenSinkSDL = require("../../__testUtils__/kitchenSinkSDL").kitchenSinkSDL + local kitchenSinkQuery = require("../../__testUtils__/kitchenSinkQuery").kitchenSinkQuery - local invariant = require(srcWorkspace.jsutils.invariant).invariant + local invariant = require("../../jsutils/invariant").invariant - local Lexer = require(languageWorkspace.lexer).Lexer - local parse = require(languageWorkspace.parser).parse - local Source = require(languageWorkspace.source).Source + local Lexer = require("../../language/lexer").Lexer + local parse = require("../../language/parser").parse + local Source = require("../../language/source").Source - local inspect = require(srcWorkspace.jsutils.inspect).inspect + local inspect = require("../../jsutils/inspect").inspect local stripIgnoredCharacters = - require(script.Parent.Parent.stripIgnoredCharacters).stripIgnoredCharacters + require("../stripIgnoredCharacters").stripIgnoredCharacters local ignoredTokens = { "\u{FEFF}", "\t", diff --git a/src/utilities/__tests__/typeComparators.spec.lua b/src/utilities/__tests__/typeComparators.spec.lua index f4fe0f9..5ea69e0 100644 --- a/src/utilities/__tests__/typeComparators.spec.lua +++ b/src/utilities/__tests__/typeComparators.spec.lua @@ -7,22 +7,19 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/typeComparators-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - - local GraphQLSchema = require(srcWorkspace.type.schema).GraphQLSchema - local scalarsImport = require(srcWorkspace.type.scalars) + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalarsImport = require("../../type/scalars") local GraphQLString = scalarsImport.GraphQLString local GraphQLInt = scalarsImport.GraphQLInt local GraphQLFloat = scalarsImport.GraphQLFloat - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLObjectType = definitionImport.GraphQLObjectType local GraphQLInterfaceType = definitionImport.GraphQLInterfaceType local GraphQLUnionType = definitionImport.GraphQLUnionType - local typeComparatorsImport = require(utilitiesWorkspace.typeComparators) + local typeComparatorsImport = require("../typeComparators") local isEqualType = typeComparatorsImport.isEqualType local isTypeSubTypeOf = typeComparatorsImport.isTypeSubTypeOf diff --git a/src/utilities/__tests__/typeFromAST.roblox.spec.lua b/src/utilities/__tests__/typeFromAST.roblox.spec.lua index f1ced75..79a8ece 100644 --- a/src/utilities/__tests__/typeFromAST.roblox.spec.lua +++ b/src/utilities/__tests__/typeFromAST.roblox.spec.lua @@ -1,14 +1,14 @@ -- ROBLOX deviation: no upstream tests return function() - local typeFromAST = require(script.Parent.Parent.typeFromAST).typeFromAST + local typeFromAST = require("../typeFromAST").typeFromAST - local Kind = require(script.Parent.Parent.Parent.language.kinds).Kind - local GraphQLID = require(script.Parent.Parent.Parent.type.scalars).GraphQLID - local definitionImport = require(script.Parent.Parent.Parent.type.definition) + local Kind = require("../../language/kinds").Kind + local GraphQLID = require("../../type/scalars").GraphQLID + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull - local instanceOf = require(script.Parent.Parent.Parent.jsutils.instanceOf) + local instanceOf = require("../../jsutils/instanceOf") describe("typeFromAST", function() local namedTypeNode = { diff --git a/src/utilities/__tests__/valueFromAST.spec.lua b/src/utilities/__tests__/valueFromAST.spec.lua index 92a8776..0b90edc 100644 --- a/src/utilities/__tests__/valueFromAST.spec.lua +++ b/src/utilities/__tests__/valueFromAST.spec.lua @@ -7,31 +7,27 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/valueFromAST-test.js return function() - local utilitiesWorkspace = script.Parent.Parent - local srcWorkspace = utilitiesWorkspace.Parent - local Packages = srcWorkspace.Parent - - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Number = LuauPolyfill.Number -- ROBLOX deviation: no distinction between undefined and null in Lua so we need to go around this with custom NULL like constant - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") - local invariant = require(srcWorkspace.jsutils.invariant).invariant - local identityFunc = require(srcWorkspace.jsutils.identityFunc).identityFunc - local parseValue = require(srcWorkspace.language.parser).parseValue + local invariant = require("../../jsutils/invariant").invariant + local identityFunc = require("../../jsutils/identityFunc").identityFunc + local parseValue = require("../../language/parser").parseValue - local definitionImport = require(srcWorkspace.type.definition) + local definitionImport = require("../../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull local GraphQLScalarType = definitionImport.GraphQLScalarType local GraphQLEnumType = definitionImport.GraphQLEnumType local GraphQLInputObjectType = definitionImport.GraphQLInputObjectType - local valueFromAST = require(utilitiesWorkspace.valueFromAST).valueFromAST + local valueFromAST = require("../valueFromAST").valueFromAST - local scalars = require(srcWorkspace.type.scalars) + local scalars = require("../../type/scalars") local GraphQLInt = scalars.GraphQLInt local GraphQLFloat = scalars.GraphQLFloat local GraphQLString = scalars.GraphQLString diff --git a/src/utilities/__tests__/valueFromASTUntyped.spec.lua b/src/utilities/__tests__/valueFromASTUntyped.spec.lua index 9c57bce..d12c2b3 100644 --- a/src/utilities/__tests__/valueFromASTUntyped.spec.lua +++ b/src/utilities/__tests__/valueFromASTUntyped.spec.lua @@ -7,17 +7,15 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/valueFromASTUntyped-test.js return function() - local srcWorkspace = script.Parent.Parent.Parent - local rootWorkspace = srcWorkspace.Parent - local LuauPolyfill = require(rootWorkspace.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Number = LuauPolyfill.Number local NaN = Number.NaN - local parseValue = require(srcWorkspace.language.parser).parseValue + local parseValue = require("../../language/parser").parseValue local valueFromASTUntyped = - require(script.Parent.Parent.valueFromASTUntyped).valueFromASTUntyped + require("../valueFromASTUntyped").valueFromASTUntyped - local NULL = require(srcWorkspace.luaUtils.null) + local NULL = require("../../luaUtils/null") describe("valueFromASTUntyped", function() local function expectValueFrom(expect_, valueText: string, variables) diff --git a/src/utilities/assertValidName.lua b/src/utilities/assertValidName.lua index 616ee93..ba3aff4 100644 --- a/src/utilities/assertValidName.lua +++ b/src/utilities/assertValidName.lua @@ -6,9 +6,8 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/assertValidName.js -local srcWorkspace = script.Parent.Parent -local devAssert = require(srcWorkspace.jsutils.devAssert).devAssert -local graphqlErrorImport = require(srcWorkspace.error.GraphQLError) +local devAssert = require("../jsutils/devAssert").devAssert +local graphqlErrorImport = require("../error/GraphQLError") local GraphQLError = graphqlErrorImport.GraphQLError type GraphQLError = graphqlErrorImport.GraphQLError diff --git a/src/utilities/astFromValue.lua b/src/utilities/astFromValue.lua index 8406d66..c7c69f9 100644 --- a/src/utilities/astFromValue.lua +++ b/src/utilities/astFromValue.lua @@ -6,28 +6,25 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/astFromValue.js -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local luaUtilsWorkspace = srcWorkspace.luaUtils -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error local Number = LuauPolyfill.Number -local RegExp = require(Packages.RegExp) +local RegExp = require("@pkg/luau-regexp") type RegExp = RegExp.RegExp -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local invariant = require(srcWorkspace.jsutils.invariant).invariant -local isObjectLike = require(srcWorkspace.jsutils.isObjectLike).isObjectLike -local isIteratableObject = require(srcWorkspace.jsutils.isIteratableObject).isIteratableObject +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike +local isIteratableObject = require("../jsutils/isIteratableObject").isIteratableObject -local astImport = require(srcWorkspace.language.ast) +local astImport = require("../language/ast") type ValueNode = astImport.ValueNode type ObjectFieldNode = astImport.ObjectFieldNode -local Kind = require(srcWorkspace.language.kinds).Kind +local Kind = require("../language/kinds").Kind -local scalarsImport = require(srcWorkspace.type.scalars) +local scalarsImport = require("../type/scalars") local GraphQLID = scalarsImport.GraphQLID -local definitionImport = require(srcWorkspace.type.definition) +local definitionImport = require("../type/definition") local isLeafType = definitionImport.isLeafType local isEnumType = definitionImport.isEnumType local isInputObjectType = definitionImport.isInputObjectType @@ -35,8 +32,8 @@ local isListType = definitionImport.isListType local isNonNullType = definitionImport.isNonNullType type GraphQLInputType = definitionImport.GraphQLInputType -local NULL = require(luaUtilsWorkspace.null) -local isNillishModule = require(luaUtilsWorkspace.isNillish) +local NULL = require("../luaUtils/null") +local isNillishModule = require("../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish diff --git a/src/utilities/buildASTSchema.lua b/src/utilities/buildASTSchema.lua index b86852f..2b39a00 100644 --- a/src/utilities/buildASTSchema.lua +++ b/src/utilities/buildASTSchema.lua @@ -6,29 +6,29 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/aa650618426a301e3f0f61ead3adcd755055a627/src/utilities/buildASTSchema.js -local Array = require(script.Parent.Parent.Parent.LuauPolyfill).Array -local devAssertModule = require(script.Parent.Parent.jsutils.devAssert) +local Array = require("@pkg/@jsdotlua/luau-polyfill").Array +local devAssertModule = require("../jsutils/devAssert") local devAssert = devAssertModule.devAssert -local sourceModule = require(script.Parent.Parent.language.source) +local sourceModule = require("../language/source") type Source = sourceModule.Source -local astModule = require(script.Parent.Parent.language.ast) +local astModule = require("../language/ast") type DocumentNode = astModule.DocumentNode -local parserModule = require(script.Parent.Parent.language.parser) +local parserModule = require("../language/parser") type ParseOptions = parserModule.ParseOptions -local kinds = require(script.Parent.Parent.language.kinds) +local kinds = require("../language/kinds") local Kind = kinds.Kind local parse = parserModule.parse -local assertValidSDL = require(script.Parent.Parent.validation.validate).assertValidSDL +local assertValidSDL = require("../validation/validate").assertValidSDL -local schemaModule = require(script.Parent.Parent.type.schema) +local schemaModule = require("../type/schema") type GraphQLSchemaValidationOptions = schemaModule.GraphQLSchemaValidationOptions type GraphQLSchema = schemaModule.GraphQLSchema local GraphQLSchema = schemaModule.GraphQLSchema -local directivesModule = require(script.Parent.Parent.type.directives) +local directivesModule = require("../type/directives") local specifiedDirectives = directivesModule.specifiedDirectives -local extendSchema = require(script.Parent.extendSchema) +local extendSchema = require("./extendSchema") local extendSchemaImpl = extendSchema.extendSchemaImpl export type BuildSchemaOptions = GraphQLSchemaValidationOptions & { diff --git a/src/utilities/buildClientSchema.lua b/src/utilities/buildClientSchema.lua index e3323d6..e3af934 100644 --- a/src/utilities/buildClientSchema.lua +++ b/src/utilities/buildClientSchema.lua @@ -7,30 +7,27 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/buildClientSchema.js -- ROBLOX deviation: utils -local srcWorkspace = script.Parent.Parent -local luaUtilsWorkspace = srcWorkspace.luaUtils -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map -local NULL = require(luaUtilsWorkspace.null) +local NULL = require("../luaUtils/null") type NULL = typeof(NULL) -local isNillishModule = require(luaUtilsWorkspace.isNillish) +local isNillishModule = require("../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local devAssert = require(srcWorkspace.jsutils.devAssert).devAssert -local keyValMap = require(srcWorkspace.jsutils.keyValMap).keyValMap -local isObjectLike = require(srcWorkspace.jsutils.isObjectLike).isObjectLike +local inspect = require("../jsutils/inspect").inspect +local devAssert = require("../jsutils/devAssert").devAssert +local keyValMap = require("../jsutils/keyValMap").keyValMap +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike -local parseValue = require(srcWorkspace.language.parser).parseValue +local parseValue = require("../language/parser").parseValue -local GraphQLSchemaModule = require(srcWorkspace.type.schema) +local GraphQLSchemaModule = require("../type/schema") type GraphQLSchemaValidationOptions = GraphQLSchemaModule.GraphQLSchemaValidationOptions -local definition = require(srcWorkspace.type.definition) +local definition = require("../type/definition") type GraphQLType = definition.GraphQLType type GraphQLNamedType = definition.GraphQLNamedType type GraphQLEnumValueConfig = definition.GraphQLEnumValueConfig @@ -39,10 +36,10 @@ type GraphQLFieldConfig = definition.GraphQLFieldConfig = definition.GraphQLFieldConfigMap type GraphQLSchema = GraphQLSchemaModule.GraphQLSchema local GraphQLSchema = GraphQLSchemaModule.GraphQLSchema -local GraphQLDirective = require(srcWorkspace.type.directives).GraphQLDirective -local scalarsImport = require(srcWorkspace.type.scalars) +local GraphQLDirective = require("../type/directives").GraphQLDirective +local scalarsImport = require("../type/scalars") local specifiedScalarTypes = scalarsImport.specifiedScalarTypes -local introspectionImport = require(srcWorkspace.type.introspection) +local introspectionImport = require("../type/introspection") local introspectionTypes = introspectionImport.introspectionTypes local TypeKind = introspectionImport.TypeKind local isInputType = definition.isInputType @@ -65,7 +62,7 @@ local assertNullableType = definition.assertNullableType local assertObjectType = definition.assertObjectType local assertInterfaceType = definition.assertInterfaceType -local getIntrospectionQueryModule = require(script.Parent.getIntrospectionQuery) +local getIntrospectionQueryModule = require("./getIntrospectionQuery") type IntrospectionQuery = getIntrospectionQueryModule.IntrospectionQuery type IntrospectionDirective = getIntrospectionQueryModule.IntrospectionDirective type IntrospectionField = getIntrospectionQueryModule.IntrospectionField @@ -82,7 +79,7 @@ type IntrospectionTypeRef = getIntrospectionQueryModule.IntrospectionTypeRef type IntrospectionListTypeRef = getIntrospectionQueryModule.IntrospectionListTypeRef type IntrospectionNonNullTypeRef = getIntrospectionQueryModule.IntrospectionNonNullTypeRef type IntrospectionNamedTypeRef = getIntrospectionQueryModule.IntrospectionNamedTypeRef -local valueFromAST = require(script.Parent.valueFromAST).valueFromAST +local valueFromAST = require("./valueFromAST").valueFromAST --[[* -- * Build a GraphQLSchema for use by client tools. diff --git a/src/utilities/coerceInputValue.lua b/src/utilities/coerceInputValue.lua index a8f1a4e..286230a 100644 --- a/src/utilities/coerceInputValue.lua +++ b/src/utilities/coerceInputValue.lua @@ -6,37 +6,32 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/coerceInputValue.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local jsutilsWorkspace = srcWorkspace.jsutils -local luaUtilsWorkspace = srcWorkspace.luaUtils - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local Object = LuauPolyfill.Object -local inspect = require(jsutilsWorkspace.inspect).inspect -local invariant = require(jsutilsWorkspace.invariant).invariant -local didYouMean = require(jsutilsWorkspace.didYouMean).didYouMean -local isObjectLike = require(jsutilsWorkspace.isObjectLike).isObjectLike -local suggestionList = require(jsutilsWorkspace.suggestionList).suggestionList -local printPathArray = require(jsutilsWorkspace.printPathArray).printPathArray -local pathImport = require(jsutilsWorkspace.Path) +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local didYouMean = require("../jsutils/didYouMean").didYouMean +local isObjectLike = require("../jsutils/isObjectLike").isObjectLike +local suggestionList = require("../jsutils/suggestionList").suggestionList +local printPathArray = require("../jsutils/printPathArray").printPathArray +local pathImport = require("../jsutils/Path") local addPath = pathImport.addPath type Path = pathImport.Path -local instanceOf = require(jsutilsWorkspace.instanceOf) -local NULL = require(luaUtilsWorkspace.null) -local isNillishModule = require(luaUtilsWorkspace.isNillish) +local instanceOf = require("../jsutils/instanceOf") +local NULL = require("../luaUtils/null") +local isNillishModule = require("../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish -local pathToArray = require(jsutilsWorkspace.Path).pathToArray -local isIteratableObject = require(jsutilsWorkspace.isIteratableObject).isIteratableObject -local graphQLErrorImport = require(srcWorkspace.error.GraphQLError) +local pathToArray = require("../jsutils/Path").pathToArray +local isIteratableObject = require("../jsutils/isIteratableObject").isIteratableObject +local graphQLErrorImport = require("../error/GraphQLError") local GraphQLError = graphQLErrorImport.GraphQLError type GraphQLError = graphQLErrorImport.GraphQLError -local definition = require(srcWorkspace.type.definition) +local definition = require("../type/definition") type GraphQLInputType = definition.GraphQLInputType local isLeafType = definition.isLeafType diff --git a/src/utilities/concatAST.lua b/src/utilities/concatAST.lua index 4b92977..75f0900 100644 --- a/src/utilities/concatAST.lua +++ b/src/utilities/concatAST.lua @@ -6,12 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/concatAST.js -local Packages = script.Parent.Parent.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array -local astModule = require(script.Parent.Parent.language.ast) +local astModule = require("../language/ast") type DocumentNode = astModule.DocumentNode type DefinitionNode = astModule.DefinitionNode diff --git a/src/utilities/extendSchema.lua b/src/utilities/extendSchema.lua index 40d2ffe..99ce7a4 100644 --- a/src/utilities/extendSchema.lua +++ b/src/utilities/extendSchema.lua @@ -6,9 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/4931f93f297511c6f8465d0c8104b20388a517e8/src/utilities/extendSchema.js --!strict -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error local Map = LuauPolyfill.Map @@ -17,18 +15,17 @@ local coerceToMap = LuauPolyfill.coerceToMap type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map -local mapValueOrdered = require(srcWorkspace.luaUtils.mapValueOrdered).mapValueOrdered -local NULL = require(srcWorkspace.luaUtils.null) +local mapValueOrdered = require("../luaUtils/mapValueOrdered").mapValueOrdered +local NULL = require("../luaUtils/null") type NULL = typeof(NULL) -local jsutils = srcWorkspace.jsutils -local keyMap = require(jsutils.keyMap).keyMap -local inspect = require(jsutils.inspect).inspect -local devAssert = require(jsutils.devAssert).devAssert -local ObjMapModule = require(jsutils.ObjMap) +local keyMap = require("../jsutils/keyMap").keyMap +local inspect = require("../jsutils/inspect").inspect +local devAssert = require("../jsutils/devAssert").devAssert +local ObjMapModule = require("../jsutils/ObjMap") type ObjMap = ObjMapModule.ObjMap -local _astImport = require(srcWorkspace.language.ast) +local _astImport = require("../language/ast") type DocumentNode = _astImport.DocumentNode type TypeNode = _astImport.TypeNode type ListTypeNode = _astImport.ListTypeNode @@ -55,35 +52,34 @@ type EnumValueDefinitionNode = _astImport.EnumValueDefinitionNode type DirectiveDefinitionNode = _astImport.DirectiveDefinitionNode type ScalarTypeDefinitionNode = _astImport.ScalarTypeDefinitionNode type ScalarTypeExtensionNode = _astImport.ScalarTypeExtensionNode -local Kind = require(srcWorkspace.language.kinds).Kind +local Kind = require("../language/kinds").Kind -local predicates = require(srcWorkspace.language.predicates) +local predicates = require("../language/predicates") local isTypeDefinitionNode = predicates.isTypeDefinitionNode local isTypeExtensionNode = predicates.isTypeExtensionNode -local assertValidSDLExtension = require(srcWorkspace.validation.validate).assertValidSDLExtension +local assertValidSDLExtension = require("../validation/validate").assertValidSDLExtension -local getDirectiveValues = require(srcWorkspace.execution.values).getDirectiveValues +local getDirectiveValues = require("../execution/values").getDirectiveValues -local typeWorkspace = srcWorkspace.type -local schemaImport = require(typeWorkspace.schema) +local schemaImport = require("../type/schema") type GraphQLSchemaNormalizedConfig = schemaImport.GraphQLSchemaNormalizedConfig type GraphQLSchemaValidationOptions = schemaImport.GraphQLSchemaValidationOptions local assertSchema = schemaImport.assertSchema local GraphQLSchema = schemaImport.GraphQLSchema -local scalarsImport = require(typeWorkspace.scalars) +local scalarsImport = require("../type/scalars") local specifiedScalarTypes = scalarsImport.specifiedScalarTypes local isSpecifiedScalarType = scalarsImport.isSpecifiedScalarType -local introspectionImport = require(typeWorkspace.introspection) +local introspectionImport = require("../type/introspection") local introspectionTypes = introspectionImport.introspectionTypes local isIntrospectionType = introspectionImport.isIntrospectionType -local directives = require(typeWorkspace.directives) +local directives = require("../type/directives") type GraphQLDirective = directives.GraphQLDirective local GraphQLDirective = directives.GraphQLDirective local GraphQLDeprecatedDirective = directives.GraphQLDeprecatedDirective local GraphQLSpecifiedByDirective = directives.GraphQLSpecifiedByDirective -local definitionImport = require(typeWorkspace.definition) +local definitionImport = require("../type/definition") type GraphQLType = definitionImport.GraphQLType type GraphQLNamedType = definitionImport.GraphQLNamedType -- ROBLOX TODO: Luau doesn't currently support default type args, so we inline here @@ -121,7 +117,7 @@ type GraphQLEnumType = definitionImport.GraphQLEnumType local GraphQLInputObjectType = definitionImport.GraphQLInputObjectType type GraphQLInputObjectType = definitionImport.GraphQLInputObjectType -local valueFromAST = require(script.Parent.valueFromAST).valueFromAST +local valueFromAST = require("./valueFromAST").valueFromAST -- ROBLOX deviation: pre-declare variables local stdTypeMap: ObjMap diff --git a/src/utilities/findBreakingChanges.lua b/src/utilities/findBreakingChanges.lua index 4de021f..c7f7895 100644 --- a/src/utilities/findBreakingChanges.lua +++ b/src/utilities/findBreakingChanges.lua @@ -6,32 +6,26 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/findBreakingChanges.js --!strict -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array -local keyMapOrdered = require(srcWorkspace.luaUtils.keyMapOrdered).keyMapOrdered +local keyMapOrdered = require("../luaUtils/keyMapOrdered").keyMapOrdered -local jsutils = srcWorkspace.jsutils -local inspect = require(jsutils.inspect).inspect -local invariant = require(jsutils.invariant).invariant -local naturalCompare = require(jsutils.naturalCompare).naturalCompare +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local naturalCompare = require("../jsutils/naturalCompare").naturalCompare -local language = srcWorkspace.language -local print_ = require(language.printer).print -local visit = require(language.visitor).visit -local astModule = require(language.ast) +local print_ = require("../language/printer").print +local visit = require("../language/visitor").visit +local astModule = require("../language/ast") type ObjectValueNode = astModule.ObjectValueNode type ValueNode = astModule.ValueNode -local typeDir = srcWorkspace.type -local schemaModule = require(typeDir.schema) +local schemaModule = require("../type/schema") type GraphQLSchema = schemaModule.GraphQLSchema -local definition = require(typeDir.definition) +local definition = require("../type/definition") -- ROBLOX FIXME Luau: doesn't correctly replicate default type args, so we inline `any` here type GraphQLField = definition.GraphQLField< TSource, @@ -47,7 +41,7 @@ type GraphQLObjectType = definition.GraphQLObjectType type GraphQLInterfaceType = definition.GraphQLInterfaceType type GraphQLInputObjectType = definition.GraphQLInputObjectType -local isSpecifiedScalarType = require(typeDir.scalars).isSpecifiedScalarType +local isSpecifiedScalarType = require("../type/scalars").isSpecifiedScalarType local isScalarType = definition.isScalarType local isObjectType = definition.isObjectType local isInterfaceType = definition.isInterfaceType @@ -60,7 +54,7 @@ local isNamedType = definition.isNamedType local isRequiredArgument = definition.isRequiredArgument local isRequiredInputField = definition.isRequiredInputField -local astFromValue = require(script.Parent.astFromValue).astFromValue +local astFromValue = require("./astFromValue").astFromValue local findSchemaChanges local findTypeChanges diff --git a/src/utilities/getIntrospectionQuery.lua b/src/utilities/getIntrospectionQuery.lua index c46e056..291b9f3 100644 --- a/src/utilities/getIntrospectionQuery.lua +++ b/src/utilities/getIntrospectionQuery.lua @@ -6,12 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/getIntrospectionQuery.js -- ROBLOX note: resolving the default generic arg TODOs in here will require improved support for recursive generic types in Luau -local rootWorkspace = script.Parent.Parent.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array -local directiveLocationModule = require(script.Parent.Parent.language.directiveLocation) +local directiveLocationModule = require("../language/directiveLocation") type DirectiveLocationEnum = directiveLocationModule.DirectiveLocationEnum export type IntrospectionOptions = { diff --git a/src/utilities/getOperationAST.lua b/src/utilities/getOperationAST.lua index 6f1de87..052c2d7 100644 --- a/src/utilities/getOperationAST.lua +++ b/src/utilities/getOperationAST.lua @@ -6,10 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/getOperationAST.js -local astImport = require(script.Parent.Parent.language.ast) +local astImport = require("../language/ast") type DocumentNode = astImport.DocumentNode type OperationDefinitionNode = astImport.OperationDefinitionNode -local Kind = require(script.Parent.Parent.language.kinds).Kind +local Kind = require("../language/kinds").Kind local exports = {} diff --git a/src/utilities/getOperationRootType.lua b/src/utilities/getOperationRootType.lua index 075d4f0..7793d2f 100644 --- a/src/utilities/getOperationRootType.lua +++ b/src/utilities/getOperationRootType.lua @@ -6,14 +6,14 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/getOperationRootType.js -local GraphQLError = require(script.Parent.Parent.error.GraphQLError).GraphQLError +local GraphQLError = require("../error/GraphQLError").GraphQLError -local astImport = require(script.Parent.Parent.language.ast) +local astImport = require("../language/ast") type OperationDefinitionNode = astImport.OperationDefinitionNode type OperationTypeDefinitionNode = astImport.OperationTypeDefinitionNode -local definitionImport = require(script.Parent.Parent.type.definition) +local definitionImport = require("../type/definition") type GraphQLObjectType = definitionImport.GraphQLObjectType -local schemaImport = require(script.Parent.Parent.type.schema) +local schemaImport = require("../type/schema") type GraphQLSchema = schemaImport.GraphQLSchema --[[* diff --git a/src/utilities/init.lua b/src/utilities/init.lua index 286e7e1..789e091 100644 --- a/src/utilities/init.lua +++ b/src/utilities/init.lua @@ -6,13 +6,13 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/index.js --!strict -local getIntrospectionQueryModule = require(script.getIntrospectionQuery) -local buildASTSchemaModule = require(script.buildASTSchema) -local printSchemaModule = require(script.printSchema) -local TypeInfoModule = require(script.TypeInfo) -local typeComparatorsModule = require(script.typeComparators) -local assertValidNameModule = require(script.assertValidName) -local findBreakingChangesModule = require(script.findBreakingChanges) +local getIntrospectionQueryModule = require("./getIntrospectionQuery") +local buildASTSchemaModule = require("./buildASTSchema") +local printSchemaModule = require("./printSchema") +local TypeInfoModule = require("./TypeInfo") +local typeComparatorsModule = require("./typeComparators") +local assertValidNameModule = require("./assertValidName") +local findBreakingChangesModule = require("./findBreakingChanges") -- ROBLOX deviation: add types export type IntrospectionOptions = getIntrospectionQueryModule.IntrospectionOptions @@ -53,26 +53,26 @@ return { getIntrospectionQuery = getIntrospectionQueryModule.getIntrospectionQuery, -- Gets the target Operation from a Document. - getOperationAST = require(script.getOperationAST).getOperationAST, + getOperationAST = require("./getOperationAST").getOperationAST, -- Gets the Type for the target Operation AST. - getOperationRootType = require(script.getOperationRootType).getOperationRootType, + getOperationRootType = require("./getOperationRootType").getOperationRootType, -- Convert a GraphQLSchema to an IntrospectionQuery. - introspectionFromSchema = require(script.introspectionFromSchema).introspectionFromSchema, + introspectionFromSchema = require("./introspectionFromSchema").introspectionFromSchema, -- Build a GraphQLSchema from an introspection result. - buildClientSchema = require(script.buildClientSchema).buildClientSchema, + buildClientSchema = require("./buildClientSchema").buildClientSchema, -- Build a GraphQLSchema from GraphQL Schema language. buildASTSchema = buildASTSchemaModule.buildASTSchema, buildSchema = buildASTSchemaModule.buildSchema, -- Extends an existing GraphQLSchema from a parsed GraphQL Schema language AST. - extendSchema = require(script.extendSchema).extendSchema, + extendSchema = require("./extendSchema").extendSchema, -- Sort a GraphQLSchema. - lexicographicSortSchema = require(script.lexicographicSortSchema).lexicographicSortSchema, + lexicographicSortSchema = require("./lexicographicSortSchema").lexicographicSortSchema, -- Print a GraphQLSchema to GraphQL Schema language. printSchema = printSchemaModule.printSchema, @@ -80,16 +80,16 @@ return { printIntrospectionSchema = printSchemaModule.printIntrospectionSchema, -- Create a GraphQLType from a GraphQL language AST. - typeFromAST = require(script.typeFromAST).typeFromAST, + typeFromAST = require("./typeFromAST").typeFromAST, -- Create a JavaScript value from a GraphQL language AST with a type. - valueFromAST = require(script.valueFromAST).valueFromAST, + valueFromAST = require("./valueFromAST").valueFromAST, -- Create a JavaScript value from a GraphQL language AST without a type. - valueFromASTUntyped = require(script.valueFromASTUntyped).valueFromASTUntyped, + valueFromASTUntyped = require("./valueFromASTUntyped").valueFromASTUntyped, -- Create a GraphQL language AST from a JavaScript value. - astFromValue = require(script.astFromValue).astFromValue, + astFromValue = require("./astFromValue").astFromValue, -- A helper to use within recursive-descent visitors which need to be aware of -- the GraphQL type system. @@ -97,17 +97,17 @@ return { visitWithTypeInfo = TypeInfoModule.visitWithTypeInfo, -- Coerces a JavaScript value to a GraphQL type, or produces errors. - coerceInputValue = require(script.coerceInputValue).coerceInputValue, + coerceInputValue = require("./coerceInputValue").coerceInputValue, -- Concatenates multiple AST together. - concatAST = require(script.concatAST).concatAST, + concatAST = require("./concatAST").concatAST, -- Separates an AST into an AST per Operation. - separateOperations = require(script.separateOperations).separateOperations, + separateOperations = require("./separateOperations").separateOperations, -- Strips characters that are not significant to the validity or execution -- of a GraphQL document. - stripIgnoredCharacters = require(script.stripIgnoredCharacters).stripIgnoredCharacters, + stripIgnoredCharacters = require("./stripIgnoredCharacters").stripIgnoredCharacters, -- Comparators for types isEqualType = typeComparatorsModule.isEqualType, diff --git a/src/utilities/introspectionFromSchema.lua b/src/utilities/introspectionFromSchema.lua index 680f25c..06a4496 100644 --- a/src/utilities/introspectionFromSchema.lua +++ b/src/utilities/introspectionFromSchema.lua @@ -6,21 +6,19 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/introspectionFromSchema.js -local srcWorkspace = script.Parent.Parent - -- ROBLOX deviation: utils -local Object = require(srcWorkspace.Parent.LuauPolyfill).Object +local Object = require("@pkg/@jsdotlua/luau-polyfill").Object -local invariant = require(srcWorkspace.jsutils.invariant).invariant +local invariant = require("../jsutils/invariant").invariant -local schemaModule = require(srcWorkspace.type.schema) +local schemaModule = require("../type/schema") type GraphQLSchema = schemaModule.GraphQLSchema -local parse = require(srcWorkspace.language.parser).parse +local parse = require("../language/parser").parse -local executeSync = require(srcWorkspace.execution.execute).executeSync +local executeSync = require("../execution/execute").executeSync -local getIntrospectionQueryModule = require(script.Parent.getIntrospectionQuery) +local getIntrospectionQueryModule = require("./getIntrospectionQuery") type IntrospectionQuery = getIntrospectionQueryModule.IntrospectionQuery type IntrospectionOptions = getIntrospectionQueryModule.IntrospectionOptions local getIntrospectionQuery = getIntrospectionQueryModule.getIntrospectionQuery diff --git a/src/utilities/lexicographicSortSchema.lua b/src/utilities/lexicographicSortSchema.lua index 8e0d779..dc71a78 100644 --- a/src/utilities/lexicographicSortSchema.lua +++ b/src/utilities/lexicographicSortSchema.lua @@ -6,30 +6,27 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/lexicographicSortSchema.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Map = LuauPolyfill.Map local Object = LuauPolyfill.Object type Array = LuauPolyfill.Array type Map = LuauPolyfill.Map -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local invariant = require(srcWorkspace.jsutils.invariant).invariant -local keyValMap = require(srcWorkspace.jsutils.keyValMap).keyValMap -local naturalCompare = require(srcWorkspace.jsutils.naturalCompare).naturalCompare +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local keyValMap = require("../jsutils/keyValMap").keyValMap +local naturalCompare = require("../jsutils/naturalCompare").naturalCompare -local SchemaModule = require(srcWorkspace.type.schema) +local SchemaModule = require("../type/schema") local GraphQLSchema = SchemaModule.GraphQLSchema -- ROBLOX deviation: bring in types separately type GraphQLSchema = SchemaModule.GraphQLSchema -local directivesImport = require(srcWorkspace.type.directives) +local directivesImport = require("../type/directives") local GraphQLDirective = directivesImport.GraphQLDirective type GraphQLDirective = directivesImport.GraphQLDirective -local DefinitionModule = require(srcWorkspace.type.definition) +local DefinitionModule = require("../type/definition") type GraphQLType = DefinitionModule.GraphQLType type GraphQLList = DefinitionModule.GraphQLList type GraphQLNonNull = DefinitionModule.GraphQLNonNull @@ -43,14 +40,14 @@ type GraphQLInterfaceType = DefinitionModule.GraphQLInterfaceType type GraphQLUnionType = DefinitionModule.GraphQLUnionType type GraphQLEnumType = DefinitionModule.GraphQLEnumType type GraphQLInputObjectType = DefinitionModule.GraphQLInputObjectType -local _astImport = require(srcWorkspace.language.ast) +local _astImport = require("../language/ast") type ListTypeNode = _astImport.ListTypeNode type NamedTypeNode = _astImport.NamedTypeNode type NonNullTypeNode = _astImport.NonNullTypeNode -- ROBLOX deviation END -local isIntrospectionType = require(srcWorkspace.type.introspection).isIntrospectionType +local isIntrospectionType = require("../type/introspection").isIntrospectionType local GraphQLList = DefinitionModule.GraphQLList local GraphQLNonNull = DefinitionModule.GraphQLNonNull local GraphQLObjectType = DefinitionModule.GraphQLObjectType diff --git a/src/utilities/printSchema.lua b/src/utilities/printSchema.lua index fbf3ee7..321e92c 100644 --- a/src/utilities/printSchema.lua +++ b/src/utilities/printSchema.lua @@ -6,29 +6,25 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/printSchema.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local PackagesWorkspace = rootWorkspace - -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array local Boolean = LuauPolyfill.Boolean -local inspect = require(script.Parent.Parent.jsutils.inspect).inspect -local invariant = require(script.Parent.Parent.jsutils.invariant).invariant +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant -local print_ = require(script.Parent.Parent.language.printer).print -local printBlockString = require(script.Parent.Parent.language.blockString).printBlockString +local print_ = require("../language/printer").print +local printBlockString = require("../language/blockString").printBlockString -local isIntrospectionType = require(script.Parent.Parent.type.introspection).isIntrospectionType -local GraphQLString = require(script.Parent.Parent.type.scalars).GraphQLString -local isSpecifiedScalarType = require(script.Parent.Parent.type.scalars).isSpecifiedScalarType -local DirectivesModules = require(script.Parent.Parent.type.directives) +local isIntrospectionType = require("../type/introspection").isIntrospectionType +local GraphQLString = require("../type/scalars").GraphQLString +local isSpecifiedScalarType = require("../type/scalars").isSpecifiedScalarType +local DirectivesModules = require("../type/directives") type GraphQLDirective = DirectivesModules.GraphQLDirective local DEFAULT_DEPRECATION_REASON = DirectivesModules.DEFAULT_DEPRECATION_REASON local isSpecifiedDirective = DirectivesModules.isSpecifiedDirective -local DefinitionModule = require(script.Parent.Parent.type.definition) +local DefinitionModule = require("../type/definition") local isScalarType = DefinitionModule.isScalarType local isObjectType = DefinitionModule.isObjectType local isInterfaceType = DefinitionModule.isInterfaceType @@ -58,15 +54,15 @@ type GraphQLFieldConfigMap = DefinitionModule.GraphQLFieldConfigMap type GraphQLFieldMap = DefinitionModule.GraphQLFieldMap type GraphQLFieldConfigArgumentMap = DefinitionModule.GraphQLFieldConfigArgumentMap type GraphQLInputFieldConfigMap = DefinitionModule.GraphQLInputFieldConfigMap -local SchemaModule = require(script.Parent.Parent.type.schema) +local SchemaModule = require("../type/schema") type GraphQLSchema = SchemaModule.GraphQLSchema -local astModule = require(script.Parent.Parent.language.ast) +local astModule = require("../language/ast") type StringValueNode = astModule.StringValueNode type ValueNode = astModule.ValueNode -local astFromValue = require(script.Parent.astFromValue).astFromValue -local NULL = require(script.Parent.astFromValue).NULL -local isNillishModule = require(script.Parent.Parent.luaUtils.isNillish) +local astFromValue = require("./astFromValue").astFromValue +local NULL = require("./astFromValue").NULL +local isNillishModule = require("../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish diff --git a/src/utilities/separateOperations.lua b/src/utilities/separateOperations.lua index c16f891..64b2010 100644 --- a/src/utilities/separateOperations.lua +++ b/src/utilities/separateOperations.lua @@ -5,26 +5,23 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/separateOperations.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Set = LuauPolyfill.Set type Array = LuauPolyfill.Array type Set = LuauPolyfill.Set -local ObjMapModule = require(srcWorkspace.jsutils.ObjMap) -- type { ObjMap } from '../jsutils/ObjMap'; +local ObjMapModule = require("../jsutils/ObjMap") -- type { ObjMap } from '../jsutils/ObjMap'; type ObjMap = ObjMapModule.ObjMap -local languageAstModule = require(srcWorkspace.language.ast) +local languageAstModule = require("../language/ast") type DocumentNode = languageAstModule.DocumentNode type OperationDefinitionNode = languageAstModule.OperationDefinitionNode type FragmentDefinitionNode = languageAstModule.FragmentDefinitionNode type SelectionSetNode = languageAstModule.SelectionSetNode -local Kind = require(srcWorkspace.language.kinds).Kind -local visit = require(srcWorkspace.language.visitor).visit +local Kind = require("../language/kinds").Kind +local visit = require("../language/visitor").visit local collectDependencies local collectTransitiveDependencies diff --git a/src/utilities/stripIgnoredCharacters.lua b/src/utilities/stripIgnoredCharacters.lua index 1ac3170..0378b33 100644 --- a/src/utilities/stripIgnoredCharacters.lua +++ b/src/utilities/stripIgnoredCharacters.lua @@ -6,20 +6,17 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/stripIgnoredCharacters.js -local srcWorkspace = script.Parent.Parent -local languageWorkspace = srcWorkspace.language -local Packages = srcWorkspace.Parent -local String = require(Packages.LuauPolyfill).String +local String = require("@pkg/@jsdotlua/luau-polyfill").String -local sourceImport = require(languageWorkspace.source) +local sourceImport = require("../language/source") local Source = sourceImport.Source type Source = sourceImport.Source local isSource = sourceImport.isSource -local TokenKind = require(languageWorkspace.tokenKind).TokenKind -local lexerImport = require(languageWorkspace.lexer) +local TokenKind = require("../language/tokenKind").TokenKind +local lexerImport = require("../language/lexer") local Lexer = lexerImport.Lexer local isPunctuatorTokenKind = lexerImport.isPunctuatorTokenKind -local blockStringImport = require(languageWorkspace.blockString) +local blockStringImport = require("../language/blockString") local dedentBlockStringValue = blockStringImport.dedentBlockStringValue local getBlockStringIndentation = blockStringImport.getBlockStringIndentation diff --git a/src/utilities/typeComparators.lua b/src/utilities/typeComparators.lua index 5514763..a2e5460 100644 --- a/src/utilities/typeComparators.lua +++ b/src/utilities/typeComparators.lua @@ -6,12 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/typeComparators.js -local srcRoot = script.Parent.Parent -local Packages = srcRoot.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local definitionImport = require(srcRoot.type.definition) +local definitionImport = require("../type/definition") local isInterfaceType = definitionImport.isInterfaceType local isObjectType = definitionImport.isObjectType local isListType = definitionImport.isListType diff --git a/src/utilities/typeFromAST.lua b/src/utilities/typeFromAST.lua index 1ae8d0c..4fe43db 100644 --- a/src/utilities/typeFromAST.lua +++ b/src/utilities/typeFromAST.lua @@ -6,20 +6,17 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/typeFromAST.js -local srcWorkspace = script.Parent.Parent -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local invariant = require(srcWorkspace.jsutils.invariant).invariant -local languageWorkspace = srcWorkspace.language -local astImport = require(languageWorkspace.ast) +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local astImport = require("../language/ast") type TypeNode = astImport.TypeNode -local Kind = require(srcWorkspace.language.kinds).Kind -local definitionImport = require(srcWorkspace.type.definition) +local Kind = require("../language/kinds").Kind +local definitionImport = require("../type/definition") local GraphQLList = definitionImport.GraphQLList local GraphQLNonNull = definitionImport.GraphQLNonNull type GraphQLType = definitionImport.GraphQLType -local typeWorkspace = srcWorkspace.type -local schemaImport = require(typeWorkspace.schema) +local schemaImport = require("../type/schema") type GraphQLSchema = schemaImport.GraphQLSchema --[[* diff --git a/src/utilities/valueFromAST.lua b/src/utilities/valueFromAST.lua index 0fa937a..3bc1fe8 100644 --- a/src/utilities/valueFromAST.lua +++ b/src/utilities/valueFromAST.lua @@ -8,28 +8,27 @@ --!strict -- ROBLOX TODO: change this to `()` once Luau supports type packs type void = nil -local srcWorkspace = script.Parent.Parent -local objMapImport = require(srcWorkspace.jsutils.ObjMap) +local objMapImport = require("../jsutils/ObjMap") type ObjMap = objMapImport.ObjMap -local keyMap = require(srcWorkspace.jsutils.keyMap).keyMap -local inspect = require(srcWorkspace.jsutils.inspect).inspect -local invariant = require(srcWorkspace.jsutils.invariant).invariant +local keyMap = require("../jsutils/keyMap").keyMap +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant -local astImport = require(srcWorkspace.language.ast) +local astImport = require("../language/ast") type ListValueNode = astImport.ListValueNode type ObjectValueNode = astImport.ObjectValueNode type ValueNode = astImport.ValueNode type VariableNode = astImport.VariableNode -local Kind = require(srcWorkspace.language.kinds).Kind +local Kind = require("../language/kinds").Kind -local definitionImport = require(srcWorkspace.type.definition) +local definitionImport = require("../type/definition") type GraphQLInputType = definitionImport.GraphQLInputType local isLeafType = definitionImport.isLeafType local isInputObjectType = definitionImport.isInputObjectType local isListType = definitionImport.isListType local isNonNullType = definitionImport.isNonNullType -- ROBLOX deviation: no distinction between undefined and null in Lua so we need to go around this with custom NULL like constant -local NULL = require(srcWorkspace.luaUtils.null) +local NULL = require("../luaUtils/null") -- ROBLOX deviation: predeclare functions local isMissingVariable diff --git a/src/utilities/valueFromASTUntyped.lua b/src/utilities/valueFromASTUntyped.lua index d60a430..c81c725 100644 --- a/src/utilities/valueFromASTUntyped.lua +++ b/src/utilities/valueFromASTUntyped.lua @@ -5,27 +5,23 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/valueFromASTUntyped.js -local srcWorkspace = script.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local jsUtilsWorkspace = srcWorkspace.jsutils -local languageWorkspace = srcWorkspace.language -- ROBLOX deviation: bring in polyfills -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local coerceToTable = LuauPolyfill.coerceToTable type Array = LuauPolyfill.Array -local NULL = require(srcWorkspace.luaUtils.null) +local NULL = require("../luaUtils/null") -local ObjMapModule = require(jsUtilsWorkspace.ObjMap) +local ObjMapModule = require("../jsutils/ObjMap") type ObjMap = ObjMapModule.ObjMap -local inspect = require(jsUtilsWorkspace.inspect).inspect -local invariant = require(jsUtilsWorkspace.invariant).invariant -local keyValMap = require(jsUtilsWorkspace.keyValMap).keyValMap +local inspect = require("../jsutils/inspect").inspect +local invariant = require("../jsutils/invariant").invariant +local keyValMap = require("../jsutils/keyValMap").keyValMap -local Kind = require(languageWorkspace.kinds).Kind -local astModule = require(languageWorkspace.ast) +local Kind = require("../language/kinds").Kind +local astModule = require("../language/ast") type ValueNode = astModule.ValueNode --[[** diff --git a/src/validation/ValidationContext.lua b/src/validation/ValidationContext.lua index 568bfbe..c533622 100644 --- a/src/validation/ValidationContext.lua +++ b/src/validation/ValidationContext.lua @@ -5,27 +5,22 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/661ff1a6b591eea1e7a7e7c9e6b8b2dcfabf3bd7/src/validation/ValidationContext.js -local srcWorkspace = script.Parent.Parent -local Packages = srcWorkspace.Parent - -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array type Array = LuauPolyfill.Array type Object = LuauPolyfill.Object local Map = LuauPolyfill.Map type Map = LuauPolyfill.Map -local jsutilsWorkspace = srcWorkspace.jsutils -local ObjMap = require(jsutilsWorkspace.ObjMap) +local ObjMap = require("../jsutils/ObjMap") type ObjMap = ObjMap.ObjMap -local language = srcWorkspace.language -local Kind = require(language.kinds).Kind -local visitor = require(language.visitor) +local Kind = require("../language/kinds").Kind +local visitor = require("../language/visitor") local visit = visitor.visit type ASTVisitor = visitor.ASTVisitor -local _ast = require(language.ast) +local _ast = require("../language/ast") type DocumentNode = _ast.DocumentNode type OperationDefinitionNode = _ast.OperationDefinitionNode type VariableNode = _ast.VariableNode @@ -35,20 +30,20 @@ type InlineFragmentNode = _ast.InlineFragmentNode type FragmentSpreadNode = _ast.FragmentSpreadNode type FragmentDefinitionNode = _ast.FragmentDefinitionNode -local _GraphQLErrorExports = require(srcWorkspace.error.GraphQLError) +local _GraphQLErrorExports = require("../error/GraphQLError") type GraphQLError = _GraphQLErrorExports.GraphQLError -local TypeInfoExports = require(srcWorkspace.utilities.TypeInfo) +local TypeInfoExports = require("../utilities/TypeInfo") local TypeInfo = TypeInfoExports.TypeInfo local visitWithTypeInfo = TypeInfoExports.visitWithTypeInfo type TypeInfo = TypeInfoExports.TypeInfo -local _schemaExports = require(srcWorkspace.type.schema) +local _schemaExports = require("../type/schema") type GraphQLSchema = _schemaExports.GraphQLSchema -local directivesExports = require(srcWorkspace.type.directives) +local directivesExports = require("../type/directives") type GraphQLDirective = directivesExports.GraphQLDirective -local definitionModule = require(srcWorkspace.type.definition) +local definitionModule = require("../type/definition") type GraphQLInputType = definitionModule.GraphQLInputType type GraphQLOutputType = definitionModule.GraphQLOutputType type GraphQLCompositeType = definitionModule.GraphQLCompositeType diff --git a/src/validation/__tests__/ExecutableDefinitionsRule.spec.lua b/src/validation/__tests__/ExecutableDefinitionsRule.spec.lua index 5d7ec4e..ff8ebbd 100644 --- a/src/validation/__tests__/ExecutableDefinitionsRule.spec.lua +++ b/src/validation/__tests__/ExecutableDefinitionsRule.spec.lua @@ -7,12 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/ExecutableDefinitionsRule-test.js return function() - local validationWorkspace = script.Parent.Parent local ExecutableDefinitionsRule = - require( - validationWorkspace.rules.ExecutableDefinitionsRule - ).ExecutableDefinitionsRule - local harness = require(script.Parent.harness) + require("../rules/ExecutableDefinitionsRule").ExecutableDefinitionsRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/FieldsOnCorrectTypeRule.spec.lua b/src/validation/__tests__/FieldsOnCorrectTypeRule.spec.lua index 21b93f4..1fdd52f 100644 --- a/src/validation/__tests__/FieldsOnCorrectTypeRule.spec.lua +++ b/src/validation/__tests__/FieldsOnCorrectTypeRule.spec.lua @@ -7,16 +7,14 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/FieldsOnCorrectTypeRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local parser = require(root.language.parser) + local parser = require("../../language/parser") local parse = parser.parse - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local validate = require(validationWorkspace.validate).validate + local validate = require("../validate").validate local FieldsOnCorrectTypeRule = - require(validationWorkspace.rules.FieldsOnCorrectTypeRule).FieldsOnCorrectTypeRule - local harness = require(script.Parent.harness) + require("../rules/FieldsOnCorrectTypeRule").FieldsOnCorrectTypeRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua b/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua index 6474758..db94e60 100644 --- a/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua +++ b/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua @@ -7,11 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/FragmentsOnCompositeTypesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local FragmentsOnCompositeTypesRule = require( - validationWorkspace.rules.FragmentsOnCompositeTypesRule - ).FragmentsOnCompositeTypesRule - local harness = require(script.Parent.harness) + local FragmentsOnCompositeTypesRule = require("../rules/FragmentsOnCompositeTypesRule").FragmentsOnCompositeTypesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/KnownArgumentNamesRule.spec.lua b/src/validation/__tests__/KnownArgumentNamesRule.spec.lua index ff51862..43c07c0 100644 --- a/src/validation/__tests__/KnownArgumentNamesRule.spec.lua +++ b/src/validation/__tests__/KnownArgumentNamesRule.spec.lua @@ -7,15 +7,13 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/KnownArgumentNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local KnownArgumentNamesRuleExports = require(validationWorkspace.rules.KnownArgumentNamesRule) + local KnownArgumentNamesRuleExports = require("../rules/KnownArgumentNamesRule") local KnownArgumentNamesRule = KnownArgumentNamesRuleExports.KnownArgumentNamesRule local KnownArgumentNamesOnDirectivesRule = KnownArgumentNamesRuleExports.KnownArgumentNamesOnDirectivesRule - local harness = require(script.Parent.harness) + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/KnownDirectivesRule.spec.lua b/src/validation/__tests__/KnownDirectivesRule.spec.lua index fc5630d..99bc19d 100644 --- a/src/validation/__tests__/KnownDirectivesRule.spec.lua +++ b/src/validation/__tests__/KnownDirectivesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/KnownDirectivesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local KnownDirectivesRule = - require(validationWorkspace.rules.KnownDirectivesRule).KnownDirectivesRule - local harness = require(script.Parent.harness) + require("../rules/KnownDirectivesRule").KnownDirectivesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/KnownFragmentNamesRule.spec.lua b/src/validation/__tests__/KnownFragmentNamesRule.spec.lua index 1dfd30b..7f493e9 100644 --- a/src/validation/__tests__/KnownFragmentNamesRule.spec.lua +++ b/src/validation/__tests__/KnownFragmentNamesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/KnownFragmentNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local KnownFragmentNamesRule = - require(validationWorkspace.rules.KnownFragmentNamesRule).KnownFragmentNamesRule - local harness = require(script.Parent.harness) + require("../rules/KnownFragmentNamesRule").KnownFragmentNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/KnownTypeNamesRule.spec.lua b/src/validation/__tests__/KnownTypeNamesRule.spec.lua index 88ec8df..f6dbbc0 100644 --- a/src/validation/__tests__/KnownTypeNamesRule.spec.lua +++ b/src/validation/__tests__/KnownTypeNamesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/KnownTypeNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local KnownTypeNamesRule = - require(validationWorkspace.rules.KnownTypeNamesRule).KnownTypeNamesRule - local harness = require(script.Parent.harness) + require("../rules/KnownTypeNamesRule").KnownTypeNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/LoneAnonymousOperationRule.spec.lua b/src/validation/__tests__/LoneAnonymousOperationRule.spec.lua index 995161d..5842a2a 100644 --- a/src/validation/__tests__/LoneAnonymousOperationRule.spec.lua +++ b/src/validation/__tests__/LoneAnonymousOperationRule.spec.lua @@ -7,12 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/LoneAnonymousOperationRule-test.js return function() - local validationWorkspace = script.Parent.Parent local LoneAnonymousOperationRule = - require( - validationWorkspace.rules.LoneAnonymousOperationRule - ).LoneAnonymousOperationRule - local harness = require(script.Parent.harness) + require("../rules/LoneAnonymousOperationRule").LoneAnonymousOperationRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/LoneSchemaDefinitionRule.spec.lua b/src/validation/__tests__/LoneSchemaDefinitionRule.spec.lua index 964edde..08c8baa 100644 --- a/src/validation/__tests__/LoneSchemaDefinitionRule.spec.lua +++ b/src/validation/__tests__/LoneSchemaDefinitionRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/LoneSchemaDefinitionRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local LoneSchemaDefinitionRule = - require(validationWorkspace.rules.LoneSchemaDefinitionRule).LoneSchemaDefinitionRule - local harness = require(script.Parent.harness) + require("../rules/LoneSchemaDefinitionRule").LoneSchemaDefinitionRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr: string, schema) diff --git a/src/validation/__tests__/NoDeprecatedCustomRule.spec.lua b/src/validation/__tests__/NoDeprecatedCustomRule.spec.lua index 6feb98f..ddf7125 100644 --- a/src/validation/__tests__/NoDeprecatedCustomRule.spec.lua +++ b/src/validation/__tests__/NoDeprecatedCustomRule.spec.lua @@ -7,15 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/01bcc7d9be982226bcf56b8f983f38fd89dced1b/src/validation/__tests__/NoDeprecatedCustomRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local NoDeprecatedCustomRule = - require( - validationWorkspace.rules.custom.NoDeprecatedCustomRule - ).NoDeprecatedCustomRule - local harness = require(script.Parent.harness) + require("../rules/custom/NoDeprecatedCustomRule").NoDeprecatedCustomRule + local harness = require("./harness") local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema local function buildAssertion(sdlStr: string) diff --git a/src/validation/__tests__/NoFragmentCyclesRule.spec.lua b/src/validation/__tests__/NoFragmentCyclesRule.spec.lua index a88c192..b0c6459 100644 --- a/src/validation/__tests__/NoFragmentCyclesRule.spec.lua +++ b/src/validation/__tests__/NoFragmentCyclesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoFragmentCyclesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local NoFragmentCyclesRule = - require(validationWorkspace.rules.NoFragmentCyclesRule).NoFragmentCyclesRule - local harness = require(script.Parent.harness) + require("../rules/NoFragmentCyclesRule").NoFragmentCyclesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua b/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua index 93bd4d3..a4902d6 100644 --- a/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua +++ b/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua @@ -7,14 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoSchemaIntrospectionCustomRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local NoSchemaIntrospectionCustomRule = require( - validationWorkspace.rules.custom.NoSchemaIntrospectionCustomRule - ).NoSchemaIntrospectionCustomRule - local harness = require(script.Parent.harness) + local NoSchemaIntrospectionCustomRule = require("../rules/custom/NoSchemaIntrospectionCustomRule").NoSchemaIntrospectionCustomRule + local harness = require("./harness") local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema -- ROBLOX deviation: pre-declare constant diff --git a/src/validation/__tests__/NoUndefinedVariablesRule.spec.lua b/src/validation/__tests__/NoUndefinedVariablesRule.spec.lua index b725dd0..23c328a 100644 --- a/src/validation/__tests__/NoUndefinedVariablesRule.spec.lua +++ b/src/validation/__tests__/NoUndefinedVariablesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoUndefinedVariablesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local NoUndefinedVariablesRule = - require(validationWorkspace.rules.NoUndefinedVariablesRule).NoUndefinedVariablesRule - local harness = require(script.Parent.harness) + require("../rules/NoUndefinedVariablesRule").NoUndefinedVariablesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua b/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua index 017dd72..1e5242d 100644 --- a/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua +++ b/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoUndefinedVariablesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local NoUnusedFragmentsRule = - require(validationWorkspace.rules.NoUnusedFragmentsRule).NoUnusedFragmentsRule - local harness = require(script.Parent.harness) + require("../rules/NoUnusedFragmentsRule").NoUnusedFragmentsRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/NoUnusedVariablesRule.spec.lua b/src/validation/__tests__/NoUnusedVariablesRule.spec.lua index 7c61759..e38fb9e 100644 --- a/src/validation/__tests__/NoUnusedVariablesRule.spec.lua +++ b/src/validation/__tests__/NoUnusedVariablesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoUnusedVariablesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local NoUnusedVariablesRule = - require(validationWorkspace.rules.NoUnusedVariablesRule).NoUnusedVariablesRule - local harness = require(script.Parent.harness) + require("../rules/NoUnusedVariablesRule").NoUnusedVariablesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua b/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua index ad925bf..88ca68f 100644 --- a/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua +++ b/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua @@ -7,14 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/OverlappingFieldsCanBeMergedRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local OverlappingFieldsCanBeMergedRule = require( - validationWorkspace.rules.OverlappingFieldsCanBeMergedRule - ).OverlappingFieldsCanBeMergedRule - local harness = require(script.Parent.harness) + local OverlappingFieldsCanBeMergedRule = require("../rules/OverlappingFieldsCanBeMergedRule").OverlappingFieldsCanBeMergedRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua b/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua index 0be2cf3..b4fd7c3 100644 --- a/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua +++ b/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua @@ -7,11 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/PossibleFragmentSpreadsRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local PossibleFragmentSpreadsRule = require( - validationWorkspace.rules.PossibleFragmentSpreadsRule - ).PossibleFragmentSpreadsRule - local harness = require(script.Parent.harness) + local PossibleFragmentSpreadsRule = require("../rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/PossibleTypeExtensionsRule.spec.lua b/src/validation/__tests__/PossibleTypeExtensionsRule.spec.lua index cc220aa..eb03d96 100644 --- a/src/validation/__tests__/PossibleTypeExtensionsRule.spec.lua +++ b/src/validation/__tests__/PossibleTypeExtensionsRule.spec.lua @@ -7,15 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/PossibleTypeExtensionsRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local PossibleTypeExtensionsRule = - require( - validationWorkspace.rules.PossibleTypeExtensionsRule - ).PossibleTypeExtensionsRule - local harness = require(script.Parent.harness) + require("../rules/PossibleTypeExtensionsRule").PossibleTypeExtensionsRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr, schema) diff --git a/src/validation/__tests__/ProvidedRequiredArgumentsRule.spec.lua b/src/validation/__tests__/ProvidedRequiredArgumentsRule.spec.lua index 36258b8..2bb0aa6 100644 --- a/src/validation/__tests__/ProvidedRequiredArgumentsRule.spec.lua +++ b/src/validation/__tests__/ProvidedRequiredArgumentsRule.spec.lua @@ -7,18 +7,14 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/ProvidedRequiredArgumentsRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local ProvidedRequiredArgumentsRuleExports = require( - validationWorkspace.rules.ProvidedRequiredArgumentsRule - ) + local ProvidedRequiredArgumentsRuleExports = require("../rules/ProvidedRequiredArgumentsRule") local ProvidedRequiredArgumentsRule = ProvidedRequiredArgumentsRuleExports.ProvidedRequiredArgumentsRule local ProvidedRequiredArgumentsOnDirectivesRule = ProvidedRequiredArgumentsRuleExports.ProvidedRequiredArgumentsOnDirectivesRule - local harness = require(script.Parent.harness) + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/ScalarLeafsRule.spec.lua b/src/validation/__tests__/ScalarLeafsRule.spec.lua index ad80057..d857339 100644 --- a/src/validation/__tests__/ScalarLeafsRule.spec.lua +++ b/src/validation/__tests__/ScalarLeafsRule.spec.lua @@ -7,9 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/ScalarLeafsRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local ScalarLeafsRule = require(validationWorkspace.rules.ScalarLeafsRule).ScalarLeafsRule - local harness = require(script.Parent.harness) + local ScalarLeafsRule = require("../rules/ScalarLeafsRule").ScalarLeafsRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr) diff --git a/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua b/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua index 5027b9d..a27a2af 100644 --- a/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua +++ b/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua @@ -7,11 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/SingleFieldSubscriptionsRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local SingleFieldSubscriptionsRule = require( - validationWorkspace.rules.SingleFieldSubscriptionsRule - ).SingleFieldSubscriptionsRule - local harness = require(script.Parent.harness) + local SingleFieldSubscriptionsRule = require("../rules/SingleFieldSubscriptionsRule").SingleFieldSubscriptionsRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/UniqueArgumentNamesRule.spec.lua b/src/validation/__tests__/UniqueArgumentNamesRule.spec.lua index 16fc833..7bd1a90 100644 --- a/src/validation/__tests__/UniqueArgumentNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueArgumentNamesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueArgumentNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local UniqueArgumentNamesRule = - require(validationWorkspace.rules.UniqueArgumentNamesRule).UniqueArgumentNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueArgumentNamesRule").UniqueArgumentNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/UniqueDirectiveNamesRule.spec.lua b/src/validation/__tests__/UniqueDirectiveNamesRule.spec.lua index 03cde9c..de13b5d 100644 --- a/src/validation/__tests__/UniqueDirectiveNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueDirectiveNamesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueDirectiveNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local UniqueDirectiveNamesRule = - require(validationWorkspace.rules.UniqueDirectiveNamesRule).UniqueDirectiveNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueDirectiveNamesRule").UniqueDirectiveNamesRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr, schema) diff --git a/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua b/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua index 5d8bda9..fc2a693 100644 --- a/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua +++ b/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua @@ -7,14 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueDirectivesPerLocationRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local parse = require(root.language.parser).parse - local extendSchema = require(root.utilities.extendSchema).extendSchema - local UniqueDirectivesPerLocationRule = require( - validationWorkspace.rules.UniqueDirectivesPerLocationRule - ).UniqueDirectivesPerLocationRule - local harness = require(script.Parent.harness) + local parse = require("../../language/parser").parse + local extendSchema = require("../../utilities/extendSchema").extendSchema + local UniqueDirectivesPerLocationRule = require("../rules/UniqueDirectivesPerLocationRule").UniqueDirectivesPerLocationRule + local harness = require("./harness") local testSchema = harness.testSchema local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/UniqueEnumValueNamesRule.spec.lua b/src/validation/__tests__/UniqueEnumValueNamesRule.spec.lua index 4cfd8fd..f164070 100644 --- a/src/validation/__tests__/UniqueEnumValueNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueEnumValueNamesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueEnumValueNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local UniqueEnumValueNamesRule = - require(validationWorkspace.rules.UniqueEnumValueNamesRule).UniqueEnumValueNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueEnumValueNamesRule").UniqueEnumValueNamesRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr: string, schema) diff --git a/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua b/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua index 0884b1f..fbffdb5 100644 --- a/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua @@ -7,14 +7,10 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueFieldDefinitionNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local UniqueFieldDefinitionNamesRule = require( - validationWorkspace.rules.UniqueFieldDefinitionNamesRule - ).UniqueFieldDefinitionNamesRule - local harness = require(script.Parent.harness) + local UniqueFieldDefinitionNamesRule = require("../rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr: string, schema) diff --git a/src/validation/__tests__/UniqueFragmentNamesRule.spec.lua b/src/validation/__tests__/UniqueFragmentNamesRule.spec.lua index 5506cf9..5d300d7 100644 --- a/src/validation/__tests__/UniqueFragmentNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueFragmentNamesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueFragmentNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local UniqueFragmentNamesRule = - require(validationWorkspace.rules.UniqueFragmentNamesRule).UniqueFragmentNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueFragmentNamesRule").UniqueFragmentNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/UniqueInputFieldNamesRule.spec.lua b/src/validation/__tests__/UniqueInputFieldNamesRule.spec.lua index ff303c0..660e952 100644 --- a/src/validation/__tests__/UniqueInputFieldNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueInputFieldNamesRule.spec.lua @@ -7,12 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueInputFieldNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local UniqueInputFieldNamesRule = - require( - validationWorkspace.rules.UniqueInputFieldNamesRule - ).UniqueInputFieldNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueInputFieldNamesRule").UniqueInputFieldNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/UniqueOperationNamesRule.spec.lua b/src/validation/__tests__/UniqueOperationNamesRule.spec.lua index 9f4019a..5669565 100644 --- a/src/validation/__tests__/UniqueOperationNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueOperationNamesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueOperationNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local UniqueOperationNamesRule = - require(validationWorkspace.rules.UniqueOperationNamesRule).UniqueOperationNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueOperationNamesRule").UniqueOperationNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/UniqueOperationTypesRule.spec.lua b/src/validation/__tests__/UniqueOperationTypesRule.spec.lua index 5461048..ec066e6 100644 --- a/src/validation/__tests__/UniqueOperationTypesRule.spec.lua +++ b/src/validation/__tests__/UniqueOperationTypesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueOperationTypesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local UniqueOperationTypesRule = - require(validationWorkspace.rules.UniqueOperationTypesRule).UniqueOperationTypesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueOperationTypesRule").UniqueOperationTypesRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr: string, schema) diff --git a/src/validation/__tests__/UniqueTypeNamesRule.spec.lua b/src/validation/__tests__/UniqueTypeNamesRule.spec.lua index b26f044..2b1b45a 100644 --- a/src/validation/__tests__/UniqueTypeNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueTypeNamesRule.spec.lua @@ -7,13 +7,11 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueTypeNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local root = validationWorkspace.Parent - local buildASTSchema = require(root.utilities.buildASTSchema) + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema local UniqueTypeNamesRule = - require(validationWorkspace.rules.UniqueTypeNamesRule).UniqueTypeNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueTypeNamesRule").UniqueTypeNamesRule + local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors local function expectSDLErrors(expect_, sdlStr: string, schema) diff --git a/src/validation/__tests__/UniqueVariableNamesRule.spec.lua b/src/validation/__tests__/UniqueVariableNamesRule.spec.lua index d7d7c6f..5d0a689 100644 --- a/src/validation/__tests__/UniqueVariableNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueVariableNamesRule.spec.lua @@ -7,10 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/UniqueVariableNamesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local UniqueVariableNamesRule = - require(validationWorkspace.rules.UniqueVariableNamesRule).UniqueVariableNamesRule - local harness = require(script.Parent.harness) + require("../rules/UniqueVariableNamesRule").UniqueVariableNamesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/ValuesOfCorrectTypeRule.spec.lua b/src/validation/__tests__/ValuesOfCorrectTypeRule.spec.lua index d685a28..955eeb3 100644 --- a/src/validation/__tests__/ValuesOfCorrectTypeRule.spec.lua +++ b/src/validation/__tests__/ValuesOfCorrectTypeRule.spec.lua @@ -7,24 +7,19 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/833da8281c06b720b56f513818d13bfdf13a06e7/src/validation/__tests__/ValuesOfCorrectTypeRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local srcWorkspace = validationWorkspace.Parent - local Packages = srcWorkspace.Parent - local LuauPolyfill = require(Packages.LuauPolyfill) + local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Error = LuauPolyfill.Error - local jsutils = srcWorkspace.jsutils - local inspect = require(jsutils.inspect).inspect - local typeWorkspace = srcWorkspace.type - local GraphQLSchema = require(typeWorkspace.schema).GraphQLSchema - local scalars = require(typeWorkspace.scalars) + local inspect = require("../../jsutils/inspect").inspect + local GraphQLSchema = require("../../type/schema").GraphQLSchema + local scalars = require("../../type/scalars") local GraphQLString = scalars.GraphQLString - local definition = require(typeWorkspace.definition) + local definition = require("../../type/definition") local GraphQLScalarType = definition.GraphQLScalarType local GraphQLObjectType = definition.GraphQLObjectType local ValuesOfCorrectTypeRule = - require(validationWorkspace.rules.ValuesOfCorrectTypeRule).ValuesOfCorrectTypeRule - local harness = require(script.Parent.harness) + require("../rules/ValuesOfCorrectTypeRule").ValuesOfCorrectTypeRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/VariablesAreInputTypesRule.spec.lua b/src/validation/__tests__/VariablesAreInputTypesRule.spec.lua index fe5e38f..ea90127 100644 --- a/src/validation/__tests__/VariablesAreInputTypesRule.spec.lua +++ b/src/validation/__tests__/VariablesAreInputTypesRule.spec.lua @@ -7,12 +7,9 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/VariablesAreInputTypesRule-test.js return function() - local validationWorkspace = script.Parent.Parent local VariablesAreInputTypesRule = - require( - validationWorkspace.rules.VariablesAreInputTypesRule - ).VariablesAreInputTypesRule - local harness = require(script.Parent.harness) + require("../rules/VariablesAreInputTypesRule").VariablesAreInputTypesRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua b/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua index 36321ae..6007258 100644 --- a/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua +++ b/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua @@ -7,11 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/VariablesInAllowedPositionRule-test.js return function() - local validationWorkspace = script.Parent.Parent - local VariablesInAllowedPositionRule = require( - validationWorkspace.rules.VariablesInAllowedPositionRule - ).VariablesInAllowedPositionRule - local harness = require(script.Parent.harness) + local VariablesInAllowedPositionRule = require("../rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule + local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local function expectErrors(expect_, queryStr: string) diff --git a/src/validation/__tests__/harness.lua b/src/validation/__tests__/harness.lua index ff44307..319f1a1 100644 --- a/src/validation/__tests__/harness.lua +++ b/src/validation/__tests__/harness.lua @@ -6,20 +6,17 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/validation/__tests__/harness.js -local validationWorkspace = script.Parent.Parent -local srcWorkspace = validationWorkspace.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local parse = require(srcWorkspace.language.parser).parse +local parse = require("../../language/parser").parse -local _schemaImport = require(srcWorkspace.type.schema) +local _schemaImport = require("../../type/schema") type GraphQLSchema = _schemaImport.GraphQLSchema -local buildSchema = require(srcWorkspace.utilities.buildASTSchema).buildSchema +local buildSchema = require("../../utilities/buildASTSchema").buildSchema -local validateImport = require(validationWorkspace.validate) +local validateImport = require("../validate") local validate = validateImport.validate local validateSDL = validateImport.validateSDL diff --git a/src/validation/__tests__/validation.spec.lua b/src/validation/__tests__/validation.spec.lua index 3f24c57..6119ddf 100644 --- a/src/validation/__tests__/validation.spec.lua +++ b/src/validation/__tests__/validation.spec.lua @@ -5,23 +5,19 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/1611bbb08a88f734e9490b14cfe6afea11a838e0/src/validation/__tests__/validation-test.js -local validationWorkspace = script.Parent.Parent -local srcWorkspace = validationWorkspace.Parent -local Packages = srcWorkspace.Parent -local LuauPolyfill = require(Packages.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error return function() - local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError - local parser = require(srcWorkspace.language.parser) + local GraphQLError = require("../../error/GraphQLError").GraphQLError + local parser = require("../../language/parser") local parse = parser.parse - local utilities = srcWorkspace.utilities - local TypeInfo = require(utilities.TypeInfo).TypeInfo - local buildASTSchema = require(utilities.buildASTSchema) + local TypeInfo = require("../../utilities/TypeInfo").TypeInfo + local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local validate = require(validationWorkspace.validate).validate - local harness = require(script.Parent.harness) + local validate = require("../validate").validate + local harness = require("./harness") local testSchema = harness.testSchema describe("Validate: Supports full validation", function() diff --git a/src/validation/init.lua b/src/validation/init.lua index 6a5c3fd..7c6c0e9 100644 --- a/src/validation/init.lua +++ b/src/validation/init.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/index.js -local validation = script -local ValidationContextModule = require(validation.ValidationContext) +local ValidationContextModule = require("./ValidationContext") export type ValidationRule = ValidationContextModule.ValidationRule export type ASTValidationContext = ValidationContextModule.ASTValidationContext @@ -15,103 +14,101 @@ export type SDLValidationContext = ValidationContextModule.SDLValidationContext export type ValidationContext = ValidationContextModule.ValidationContext return { - validate = require(validation.validate).validate, + validate = require("./validate").validate, ValidationContext = ValidationContextModule.ValidationContext, -- // All validation rules in the GraphQL Specification. - specifiedRules = require(validation.specifiedRules).specifiedRules, + specifiedRules = require("./specifiedRules").specifiedRules, -- // Spec Section: "Executable Definitions" - ExecutableDefinitionsRule = require(validation.rules.ExecutableDefinitionsRule).ExecutableDefinitionsRule, + ExecutableDefinitionsRule = require("./rules/ExecutableDefinitionsRule").ExecutableDefinitionsRule, -- // Spec Section: "Field Selections on Objects, Interfaces, and Unions Types" - FieldsOnCorrectTypeRule = require(validation.rules.FieldsOnCorrectTypeRule).FieldsOnCorrectTypeRule, + FieldsOnCorrectTypeRule = require("./rules/FieldsOnCorrectTypeRule").FieldsOnCorrectTypeRule, -- // Spec Section: "Fragments on Composite Types" - FragmentsOnCompositeTypesRule = require(validation.rules.FragmentsOnCompositeTypesRule).FragmentsOnCompositeTypesRule, + FragmentsOnCompositeTypesRule = require("./rules/FragmentsOnCompositeTypesRule").FragmentsOnCompositeTypesRule, -- // Spec Section: "Argument Names" - KnownArgumentNamesRule = require(validation.rules.KnownArgumentNamesRule).KnownArgumentNamesRule, + KnownArgumentNamesRule = require("./rules/KnownArgumentNamesRule").KnownArgumentNamesRule, -- // Spec Section: "Directives Are Defined" - KnownDirectivesRule = require(validation.rules.KnownDirectivesRule).KnownDirectivesRule, + KnownDirectivesRule = require("./rules/KnownDirectivesRule").KnownDirectivesRule, -- // Spec Section: "Fragment spread target defined" - KnownFragmentNamesRule = require(validation.rules.KnownFragmentNamesRule).KnownFragmentNamesRule, + KnownFragmentNamesRule = require("./rules/KnownFragmentNamesRule").KnownFragmentNamesRule, -- // Spec Section: "Fragment Spread Type Existence" - KnownTypeNamesRule = require(validation.rules.KnownTypeNamesRule).KnownTypeNamesRule, + KnownTypeNamesRule = require("./rules/KnownTypeNamesRule").KnownTypeNamesRule, -- // Spec Section: "Lone Anonymous Operation" - LoneAnonymousOperationRule = require(validation.rules.LoneAnonymousOperationRule).LoneAnonymousOperationRule, + LoneAnonymousOperationRule = require("./rules/LoneAnonymousOperationRule").LoneAnonymousOperationRule, -- // Spec Section: "Fragments must not form cycles" - NoFragmentCyclesRule = require(validation.rules.NoFragmentCyclesRule).NoFragmentCyclesRule, + NoFragmentCyclesRule = require("./rules/NoFragmentCyclesRule").NoFragmentCyclesRule, -- // Spec Section: "All Variable Used Defined" - NoUndefinedVariablesRule = require(validation.rules.NoUndefinedVariablesRule).NoUndefinedVariablesRule, + NoUndefinedVariablesRule = require("./rules/NoUndefinedVariablesRule").NoUndefinedVariablesRule, -- // Spec Section: "Fragments must be used" - NoUnusedFragmentsRule = require(validation.rules.NoUnusedFragmentsRule).NoUnusedFragmentsRule, + NoUnusedFragmentsRule = require("./rules/NoUnusedFragmentsRule").NoUnusedFragmentsRule, -- // Spec Section: "All Variables Used" - NoUnusedVariablesRule = require(validation.rules.NoUnusedVariablesRule).NoUnusedVariablesRule, + NoUnusedVariablesRule = require("./rules/NoUnusedVariablesRule").NoUnusedVariablesRule, -- // Spec Section: "Field Selection Merging" - OverlappingFieldsCanBeMergedRule = require(validation.rules.OverlappingFieldsCanBeMergedRule).OverlappingFieldsCanBeMergedRule, + OverlappingFieldsCanBeMergedRule = require("./rules/OverlappingFieldsCanBeMergedRule").OverlappingFieldsCanBeMergedRule, -- // Spec Section: "Fragment spread is possible" - PossibleFragmentSpreadsRule = require(validation.rules.PossibleFragmentSpreadsRule).PossibleFragmentSpreadsRule, + PossibleFragmentSpreadsRule = require("./rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule, -- // Spec Section: "Argument Optionality" - ProvidedRequiredArgumentsRule = require(validation.rules.ProvidedRequiredArgumentsRule).ProvidedRequiredArgumentsRule, + ProvidedRequiredArgumentsRule = require("./rules/ProvidedRequiredArgumentsRule").ProvidedRequiredArgumentsRule, -- // Spec Section: "Leaf Field Selections" - ScalarLeafsRule = require(validation.rules.ScalarLeafsRule).ScalarLeafsRule, + ScalarLeafsRule = require("./rules/ScalarLeafsRule").ScalarLeafsRule, -- // Spec Section: "Subscriptions with Single Root Field" - SingleFieldSubscriptionsRule = require(validation.rules.SingleFieldSubscriptionsRule).SingleFieldSubscriptionsRule, + SingleFieldSubscriptionsRule = require("./rules/SingleFieldSubscriptionsRule").SingleFieldSubscriptionsRule, -- // Spec Section: "Argument Uniqueness" - UniqueArgumentNamesRule = require(validation.rules.UniqueArgumentNamesRule).UniqueArgumentNamesRule, + UniqueArgumentNamesRule = require("./rules/UniqueArgumentNamesRule").UniqueArgumentNamesRule, -- // Spec Section: "Directives Are Unique Per Location" - UniqueDirectivesPerLocationRule = require(validation.rules.UniqueDirectivesPerLocationRule).UniqueDirectivesPerLocationRule, + UniqueDirectivesPerLocationRule = require("./rules/UniqueDirectivesPerLocationRule").UniqueDirectivesPerLocationRule, -- // Spec Section: "Fragment Name Uniqueness" - UniqueFragmentNamesRule = require(validation.rules.UniqueFragmentNamesRule).UniqueFragmentNamesRule, + UniqueFragmentNamesRule = require("./rules/UniqueFragmentNamesRule").UniqueFragmentNamesRule, -- // Spec Section: "Input Object Field Uniqueness" - UniqueInputFieldNamesRule = require(validation.rules.UniqueInputFieldNamesRule).UniqueInputFieldNamesRule, + UniqueInputFieldNamesRule = require("./rules/UniqueInputFieldNamesRule").UniqueInputFieldNamesRule, -- // Spec Section: "Operation Name Uniqueness" - UniqueOperationNamesRule = require(validation.rules.UniqueOperationNamesRule).UniqueOperationNamesRule, + UniqueOperationNamesRule = require("./rules/UniqueOperationNamesRule").UniqueOperationNamesRule, -- // Spec Section: "Variable Uniqueness" - UniqueVariableNamesRule = require(validation.rules.UniqueVariableNamesRule).UniqueVariableNamesRule, + UniqueVariableNamesRule = require("./rules/UniqueVariableNamesRule").UniqueVariableNamesRule, -- // Spec Section: "Values Type Correctness" - ValuesOfCorrectTypeRule = require(validation.rules.ValuesOfCorrectTypeRule).ValuesOfCorrectTypeRule, + ValuesOfCorrectTypeRule = require("./rules/ValuesOfCorrectTypeRule").ValuesOfCorrectTypeRule, -- // Spec Section: "Variables are Input Types" - VariablesAreInputTypesRule = require(validation.rules.VariablesAreInputTypesRule).VariablesAreInputTypesRule, + VariablesAreInputTypesRule = require("./rules/VariablesAreInputTypesRule").VariablesAreInputTypesRule, -- // Spec Section: "All Variable Usages Are Allowed" - VariablesInAllowedPositionRule = require(validation.rules.VariablesInAllowedPositionRule).VariablesInAllowedPositionRule, + VariablesInAllowedPositionRule = require("./rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule, -- // SDL-specific validation rules - LoneSchemaDefinitionRule = require(validation.rules.LoneSchemaDefinitionRule).LoneSchemaDefinitionRule, - UniqueOperationTypesRule = require(validation.rules.UniqueOperationTypesRule).UniqueOperationTypesRule, - UniqueTypeNamesRule = require(validation.rules.UniqueTypeNamesRule).UniqueTypeNamesRule, - UniqueEnumValueNamesRule = require(validation.rules.UniqueEnumValueNamesRule).UniqueEnumValueNamesRule, - UniqueFieldDefinitionNamesRule = require(validation.rules.UniqueFieldDefinitionNamesRule).UniqueFieldDefinitionNamesRule, - UniqueDirectiveNamesRule = require(validation.rules.UniqueDirectiveNamesRule).UniqueDirectiveNamesRule, - PossibleTypeExtensionsRule = require(validation.rules.PossibleTypeExtensionsRule).PossibleTypeExtensionsRule, + LoneSchemaDefinitionRule = require("./rules/LoneSchemaDefinitionRule").LoneSchemaDefinitionRule, + UniqueOperationTypesRule = require("./rules/UniqueOperationTypesRule").UniqueOperationTypesRule, + UniqueTypeNamesRule = require("./rules/UniqueTypeNamesRule").UniqueTypeNamesRule, + UniqueEnumValueNamesRule = require("./rules/UniqueEnumValueNamesRule").UniqueEnumValueNamesRule, + UniqueFieldDefinitionNamesRule = require("./rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule, + UniqueDirectiveNamesRule = require("./rules/UniqueDirectiveNamesRule").UniqueDirectiveNamesRule, + PossibleTypeExtensionsRule = require("./rules/PossibleTypeExtensionsRule").PossibleTypeExtensionsRule, -- // Optional rules not defined by the GraphQL Specification - NoDeprecatedCustomRule = require(validation.rules.custom.NoDeprecatedCustomRule).NoDeprecatedCustomRule, - NoSchemaIntrospectionCustomRule = require( - validation.rules.custom.NoSchemaIntrospectionCustomRule - ).NoSchemaIntrospectionCustomRule, + NoDeprecatedCustomRule = require("./rules/custom/NoDeprecatedCustomRule").NoDeprecatedCustomRule, + NoSchemaIntrospectionCustomRule = require("./rules/custom/NoSchemaIntrospectionCustomRule").NoSchemaIntrospectionCustomRule, } diff --git a/src/validation/rules/ExecutableDefinitionsRule.lua b/src/validation/rules/ExecutableDefinitionsRule.lua index 6743080..a5c00f8 100644 --- a/src/validation/rules/ExecutableDefinitionsRule.lua +++ b/src/validation/rules/ExecutableDefinitionsRule.lua @@ -6,11 +6,9 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/ExecutableDefinitionsRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local Kind = require(language.kinds).Kind -local isExecutableDefinitionNode = require(language.predicates).isExecutableDefinitionNode +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind +local isExecutableDefinitionNode = require("../../language/predicates").isExecutableDefinitionNode local exports = {} diff --git a/src/validation/rules/FieldsOnCorrectTypeRule.lua b/src/validation/rules/FieldsOnCorrectTypeRule.lua index efefeef..b2e106f 100644 --- a/src/validation/rules/FieldsOnCorrectTypeRule.lua +++ b/src/validation/rules/FieldsOnCorrectTypeRule.lua @@ -6,17 +6,14 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/687d209245b4603f56514c44e7b1517c8be8f46f/src/validation/rules/FieldsOnCorrectTypeRule.js -local root = script.Parent.Parent.Parent -local jsutils = root.jsutils -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local didYouMean = require(jsutils.didYouMean).didYouMean -local suggestionList = require(jsutils.suggestionList).suggestionList -local naturalCompare = require(jsutils.naturalCompare).naturalCompare -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local definition = require(root.type.definition) +local didYouMean = require("../../jsutils/didYouMean").didYouMean +local suggestionList = require("../../jsutils/suggestionList").suggestionList +local naturalCompare = require("../../jsutils/naturalCompare").naturalCompare +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local definition = require("../../type/definition") local isObjectType = definition.isObjectType local isInterfaceType = definition.isInterfaceType local isAbstractType = definition.isAbstractType diff --git a/src/validation/rules/FragmentsOnCompositeTypesRule.lua b/src/validation/rules/FragmentsOnCompositeTypesRule.lua index 4caa339..989af7e 100644 --- a/src/validation/rules/FragmentsOnCompositeTypesRule.lua +++ b/src/validation/rules/FragmentsOnCompositeTypesRule.lua @@ -6,12 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/FragmentsOnCompositeTypesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local print_ = require(language.printer).print -local isCompositeType = require(root.type.definition).isCompositeType -local typeFromAST = require(root.utilities.typeFromAST).typeFromAST +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local print_ = require("../../language/printer").print +local isCompositeType = require("../../type/definition").isCompositeType +local typeFromAST = require("../../utilities/typeFromAST").typeFromAST local exports = {} -- /** diff --git a/src/validation/rules/KnownArgumentNamesRule.lua b/src/validation/rules/KnownArgumentNamesRule.lua index 26a406d..4d52059 100644 --- a/src/validation/rules/KnownArgumentNamesRule.lua +++ b/src/validation/rules/KnownArgumentNamesRule.lua @@ -6,19 +6,15 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/fe27912e56dc257eca720e07fc84a4370236dd9d/src/validation/rules/KnownArgumentNamesRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local jsutils = root.jsutils -local didYouMean = require(jsutils.didYouMean).didYouMean -local suggestionList = require(jsutils.suggestionList).suggestionList -local Kind = require(language.kinds).Kind -local specifiedDirectives = require(root.type.directives).specifiedDirectives +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local didYouMean = require("../../jsutils/didYouMean").didYouMean +local suggestionList = require("../../jsutils/suggestionList").suggestionList +local Kind = require("../../language/kinds").Kind +local specifiedDirectives = require("../../type/directives").specifiedDirectives local exports = {} diff --git a/src/validation/rules/KnownDirectivesRule.lua b/src/validation/rules/KnownDirectivesRule.lua index 7e92dab..7ebf591 100644 --- a/src/validation/rules/KnownDirectivesRule.lua +++ b/src/validation/rules/KnownDirectivesRule.lua @@ -6,19 +6,15 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/KnownDirectivesRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local jsutils = root.jsutils -local inspect = require(jsutils.inspect).inspect -local invariant = require(jsutils.invariant).invariant -local Kind = require(language.kinds).Kind -local DirectiveLocation = require(language.directiveLocation).DirectiveLocation -local specifiedDirectives = require(root.type.directives).specifiedDirectives +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local inspect = require("../../jsutils/inspect").inspect +local invariant = require("../../jsutils/invariant").invariant +local Kind = require("../../language/kinds").Kind +local DirectiveLocation = require("../../language/directiveLocation").DirectiveLocation +local specifiedDirectives = require("../../type/directives").specifiedDirectives local exports = {} diff --git a/src/validation/rules/KnownFragmentNamesRule.lua b/src/validation/rules/KnownFragmentNamesRule.lua index a02e6cb..a6bbdcf 100644 --- a/src/validation/rules/KnownFragmentNamesRule.lua +++ b/src/validation/rules/KnownFragmentNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/KnownFragmentNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} -- /** diff --git a/src/validation/rules/KnownTypeNamesRule.lua b/src/validation/rules/KnownTypeNamesRule.lua index 7eb93eb..ab96fa4 100644 --- a/src/validation/rules/KnownTypeNamesRule.lua +++ b/src/validation/rules/KnownTypeNamesRule.lua @@ -6,26 +6,20 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/KnownTypeNamesRule.js -local srcWorkspace = script.Parent.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local jsutils = srcWorkspace.jsutils - -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Map = LuauPolyfill.Map local Object = LuauPolyfill.Object -local didYouMean = require(jsutils.didYouMean).didYouMean -local suggestionList = require(jsutils.suggestionList).suggestionList -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError -local language = srcWorkspace.language -local predicates = require(language.predicates) +local didYouMean = require("../../jsutils/didYouMean").didYouMean +local suggestionList = require("../../jsutils/suggestionList").suggestionList +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local predicates = require("../../language/predicates") local isTypeDefinitionNode = predicates.isTypeDefinitionNode local isTypeSystemDefinitionNode = predicates.isTypeSystemDefinitionNode local isTypeSystemExtensionNode = predicates.isTypeSystemExtensionNode -local typeDirectory = srcWorkspace.type -local specifiedScalarTypes = require(typeDirectory.scalars).specifiedScalarTypes -local introspectionTypes = require(typeDirectory.introspection).introspectionTypes +local specifiedScalarTypes = require("../../type/scalars").specifiedScalarTypes +local introspectionTypes = require("../../type/introspection").introspectionTypes local exports = {} diff --git a/src/validation/rules/LoneAnonymousOperationRule.lua b/src/validation/rules/LoneAnonymousOperationRule.lua index ddefa94..eda1e84 100644 --- a/src/validation/rules/LoneAnonymousOperationRule.lua +++ b/src/validation/rules/LoneAnonymousOperationRule.lua @@ -6,14 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/LoneAnonymousOperationRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local Kind = require(language.kinds).Kind +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind local exports = {} diff --git a/src/validation/rules/LoneSchemaDefinitionRule.lua b/src/validation/rules/LoneSchemaDefinitionRule.lua index fd7c467..f96d0f6 100644 --- a/src/validation/rules/LoneSchemaDefinitionRule.lua +++ b/src/validation/rules/LoneSchemaDefinitionRule.lua @@ -6,11 +6,9 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/LoneSchemaDefinitionRule.js -local srcWorkspace = script.Parent.Parent.Parent +local GraphQLError = require("../../error/GraphQLError").GraphQLError -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError - -local isNillishModule = require(srcWorkspace.luaUtils.isNillish) +local isNillishModule = require("../../luaUtils/isNillish") local isNillish = isNillishModule.isNillish local isNotNillish = isNillishModule.isNotNillish diff --git a/src/validation/rules/NoFragmentCyclesRule.lua b/src/validation/rules/NoFragmentCyclesRule.lua index 0073846..48632ca 100644 --- a/src/validation/rules/NoFragmentCyclesRule.lua +++ b/src/validation/rules/NoFragmentCyclesRule.lua @@ -6,12 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/NoFragmentCyclesRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/NoUndefinedVariablesRule.lua b/src/validation/rules/NoUndefinedVariablesRule.lua index 113d311..3315e9c 100644 --- a/src/validation/rules/NoUndefinedVariablesRule.lua +++ b/src/validation/rules/NoUndefinedVariablesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/NoUndefinedVariablesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/NoUnusedFragmentsRule.lua b/src/validation/rules/NoUnusedFragmentsRule.lua index 129909e..e273f6b 100644 --- a/src/validation/rules/NoUnusedFragmentsRule.lua +++ b/src/validation/rules/NoUnusedFragmentsRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/NoUnusedFragmentsRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/NoUnusedVariablesRule.lua b/src/validation/rules/NoUnusedVariablesRule.lua index 823a654..bf4f18e 100644 --- a/src/validation/rules/NoUnusedVariablesRule.lua +++ b/src/validation/rules/NoUnusedVariablesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/NoUnusedVariablesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/OverlappingFieldsCanBeMergedRule.lua b/src/validation/rules/OverlappingFieldsCanBeMergedRule.lua index 567656c..351a910 100644 --- a/src/validation/rules/OverlappingFieldsCanBeMergedRule.lua +++ b/src/validation/rules/OverlappingFieldsCanBeMergedRule.lua @@ -6,29 +6,25 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/05b8d0716ea513a7efc88cd173a2a15a8aba5bbc/src/validation/rules/OverlappingFieldsCanBeMergedRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Map = LuauPolyfill.Map local Object = LuauPolyfill.Object type Map = LuauPolyfill.Map -local NULL = require(root.luaUtils.null) -local jsutils = root.jsutils -local language = root.language -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local inspect = require(jsutils.inspect).inspect -local Kind = require(language.kinds).Kind -local print_ = require(language.printer).print -local definition = require(root.type.definition) +local NULL = require("../../luaUtils/null") +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local inspect = require("../../jsutils/inspect").inspect +local Kind = require("../../language/kinds").Kind +local print_ = require("../../language/printer").print +local definition = require("../../type/definition") local getNamedType = definition.getNamedType local isNonNullType = definition.isNonNullType local isLeafType = definition.isLeafType local isObjectType = definition.isObjectType local isListType = definition.isListType local isInterfaceType = definition.isInterfaceType -local typeFromAST = require(root.utilities.typeFromAST).typeFromAST +local typeFromAST = require("../../utilities/typeFromAST").typeFromAST local exports = {} diff --git a/src/validation/rules/PossibleFragmentSpreadsRule.lua b/src/validation/rules/PossibleFragmentSpreadsRule.lua index 1859532..4f0f5d2 100644 --- a/src/validation/rules/PossibleFragmentSpreadsRule.lua +++ b/src/validation/rules/PossibleFragmentSpreadsRule.lua @@ -6,14 +6,12 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/PossibleFragmentSpreadsRule.js -local root = script.Parent.Parent.Parent -local inspect = require(root.jsutils.inspect).inspect -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local definition = require(root.type.definition) +local inspect = require("../../jsutils/inspect").inspect +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local definition = require("../../type/definition") local isCompositeType = definition.isCompositeType -local utilities = root.utilities -local typeFromAST = require(utilities.typeFromAST).typeFromAST -local typeComparators = require(utilities.typeComparators) +local typeFromAST = require("../../utilities/typeFromAST").typeFromAST +local typeComparators = require("../../utilities/typeComparators") local doTypesOverlap = typeComparators.doTypesOverlap local exports = {} diff --git a/src/validation/rules/PossibleTypeExtensionsRule.lua b/src/validation/rules/PossibleTypeExtensionsRule.lua index 79a2ad7..2840e9f 100644 --- a/src/validation/rules/PossibleTypeExtensionsRule.lua +++ b/src/validation/rules/PossibleTypeExtensionsRule.lua @@ -6,23 +6,19 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/PossibleTypeExtensionsRule.js -local root = script.Parent.Parent.Parent -local jsutils = root.jsutils -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object -local inspect = require(jsutils.inspect).inspect -local invariant = require(jsutils.invariant).invariant -local didYouMean = require(jsutils.didYouMean).didYouMean -local suggestionList = require(jsutils.suggestionList).suggestionList -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local Kind = require(language.kinds).Kind -local predicates = require(language.predicates) +local inspect = require("../../jsutils/inspect").inspect +local invariant = require("../../jsutils/invariant").invariant +local didYouMean = require("../../jsutils/didYouMean").didYouMean +local suggestionList = require("../../jsutils/suggestionList").suggestionList +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind +local predicates = require("../../language/predicates") local isTypeDefinitionNode = predicates.isTypeDefinitionNode -local definition = require(root.type.definition) +local definition = require("../../type/definition") local isScalarType = definition.isScalarType local isObjectType = definition.isObjectType local isInterfaceType = definition.isInterfaceType diff --git a/src/validation/rules/ProvidedRequiredArgumentsRule.lua b/src/validation/rules/ProvidedRequiredArgumentsRule.lua index 6bf1839..5594d4a 100644 --- a/src/validation/rules/ProvidedRequiredArgumentsRule.lua +++ b/src/validation/rules/ProvidedRequiredArgumentsRule.lua @@ -6,23 +6,19 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/ProvidedRequiredArgumentsRule.js -local root = script.Parent.Parent.Parent -local jsutils = root.jsutils -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Object = LuauPolyfill.Object -local inspect = require(jsutils.inspect).inspect -local keyMap = require(jsutils.keyMap).keyMap -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local Kind = require(language.kinds).Kind -local print_ = require(language.printer).print -local definition = require(root.type.definition) +local inspect = require("../../jsutils/inspect").inspect +local keyMap = require("../../jsutils/keyMap").keyMap +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind +local print_ = require("../../language/printer").print +local definition = require("../../type/definition") local isType = definition.isType local isRequiredArgument = definition.isRequiredArgument -local directives = require(root.type.directives) +local directives = require("../../type/directives") local specifiedDirectives = directives.specifiedDirectives local exports = {} diff --git a/src/validation/rules/ScalarLeafsRule.lua b/src/validation/rules/ScalarLeafsRule.lua index dd7db1e..f8498b2 100644 --- a/src/validation/rules/ScalarLeafsRule.lua +++ b/src/validation/rules/ScalarLeafsRule.lua @@ -6,11 +6,9 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/ScalarLeafsRule.js -local root = script.Parent.Parent.Parent -local jsutils = root.jsutils -local inspect = require(jsutils.inspect).inspect -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local definition = require(root.type.definition) +local inspect = require("../../jsutils/inspect").inspect +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local definition = require("../../type/definition") local getNamedType = definition.getNamedType local isLeafType = definition.isLeafType diff --git a/src/validation/rules/SingleFieldSubscriptionsRule.lua b/src/validation/rules/SingleFieldSubscriptionsRule.lua index 25230a1..154d448 100644 --- a/src/validation/rules/SingleFieldSubscriptionsRule.lua +++ b/src/validation/rules/SingleFieldSubscriptionsRule.lua @@ -6,12 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/SingleFieldSubscriptionsRule.js -local root = script.Parent.Parent.Parent -local PackagesWorkspace = root.Parent -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueArgumentNamesRule.lua b/src/validation/rules/UniqueArgumentNamesRule.lua index ad197cf..81c783b 100644 --- a/src/validation/rules/UniqueArgumentNamesRule.lua +++ b/src/validation/rules/UniqueArgumentNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueArgumentNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueDirectiveNamesRule.lua b/src/validation/rules/UniqueDirectiveNamesRule.lua index 9f7843a..89cc3ee 100644 --- a/src/validation/rules/UniqueDirectiveNamesRule.lua +++ b/src/validation/rules/UniqueDirectiveNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueDirectiveNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueDirectivesPerLocationRule.lua b/src/validation/rules/UniqueDirectivesPerLocationRule.lua index b5543ca..06c5ba3 100644 --- a/src/validation/rules/UniqueDirectivesPerLocationRule.lua +++ b/src/validation/rules/UniqueDirectivesPerLocationRule.lua @@ -6,14 +6,12 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueDirectivesPerLocationRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local language = root.language -local Kind = require(language.kinds).Kind -local predicates = require(language.predicates) +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind +local predicates = require("../../language/predicates") local isTypeDefinitionNode = predicates.isTypeDefinitionNode local isTypeExtensionNode = predicates.isTypeExtensionNode -local directives = require(root.type.directives) +local directives = require("../../type/directives") local specifiedDirectives = directives.specifiedDirectives local exports = {} diff --git a/src/validation/rules/UniqueEnumValueNamesRule.lua b/src/validation/rules/UniqueEnumValueNamesRule.lua index 6e586af..d241ad8 100644 --- a/src/validation/rules/UniqueEnumValueNamesRule.lua +++ b/src/validation/rules/UniqueEnumValueNamesRule.lua @@ -6,13 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/UniqueEnumValueNamesRule.js -local srcWorkspace = script.Parent.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError -local definition = require(srcWorkspace.type.definition) +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local definition = require("../../type/definition") local isEnumType = definition.isEnumType local exports = {} diff --git a/src/validation/rules/UniqueFieldDefinitionNamesRule.lua b/src/validation/rules/UniqueFieldDefinitionNamesRule.lua index cbc149b..80fc3a7 100644 --- a/src/validation/rules/UniqueFieldDefinitionNamesRule.lua +++ b/src/validation/rules/UniqueFieldDefinitionNamesRule.lua @@ -6,15 +6,13 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/UniqueFieldDefinitionNamesRule.js -local srcWorkspace = script.Parent.Parent.Parent -local rootWorkspace = srcWorkspace.Parent -local LuauPolyfill = require(rootWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Map = LuauPolyfill.Map -local isNotNillish = require(srcWorkspace.luaUtils.isNillish).isNotNillish +local isNotNillish = require("../../luaUtils/isNillish").isNotNillish -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError -local definitionModule = require(srcWorkspace.type.definition) +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local definitionModule = require("../../type/definition") local isObjectType = definitionModule.isObjectType local isInterfaceType = definitionModule.isInterfaceType local isInputObjectType = definitionModule.isInputObjectType diff --git a/src/validation/rules/UniqueFragmentNamesRule.lua b/src/validation/rules/UniqueFragmentNamesRule.lua index 58dfee6..73645f0 100644 --- a/src/validation/rules/UniqueFragmentNamesRule.lua +++ b/src/validation/rules/UniqueFragmentNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueFragmentNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueInputFieldNamesRule.lua b/src/validation/rules/UniqueInputFieldNamesRule.lua index 78d7731..de4a402 100644 --- a/src/validation/rules/UniqueInputFieldNamesRule.lua +++ b/src/validation/rules/UniqueInputFieldNamesRule.lua @@ -6,16 +6,14 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueInputFieldNamesRule.js --!strict -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local visitorImport = require(root.language.visitor) +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local visitorImport = require("../../language/visitor") type ASTVisitor = visitorImport.ASTVisitor -local validationContextImport = require(script.Parent.Parent.ValidationContext) +local validationContextImport = require("../ValidationContext") type ASTValidationContext = validationContextImport.ASTValidationContext -local language = root.language -- ROBLOX deviation: we import this so we can strongly type the function. upstream 16.x.x has a better approach -local AstModule = require(language.ast) +local AstModule = require("../../language/ast") type ObjectFieldNode = AstModule.ObjectFieldNode type NameNode = AstModule.NameNode diff --git a/src/validation/rules/UniqueOperationNamesRule.lua b/src/validation/rules/UniqueOperationNamesRule.lua index 0c75f40..37a19d8 100644 --- a/src/validation/rules/UniqueOperationNamesRule.lua +++ b/src/validation/rules/UniqueOperationNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueOperationNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueOperationTypesRule.lua b/src/validation/rules/UniqueOperationTypesRule.lua index bf7589d..fa59cff 100644 --- a/src/validation/rules/UniqueOperationTypesRule.lua +++ b/src/validation/rules/UniqueOperationTypesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/rules/UniqueOperationTypesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueTypeNamesRule.lua b/src/validation/rules/UniqueTypeNamesRule.lua index 1506a36..1f4e947 100644 --- a/src/validation/rules/UniqueTypeNamesRule.lua +++ b/src/validation/rules/UniqueTypeNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueTypeNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/UniqueVariableNamesRule.lua b/src/validation/rules/UniqueVariableNamesRule.lua index e47df15..d3a0293 100644 --- a/src/validation/rules/UniqueVariableNamesRule.lua +++ b/src/validation/rules/UniqueVariableNamesRule.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/UniqueVariableNamesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError +local GraphQLError = require("../../error/GraphQLError").GraphQLError local exports = {} diff --git a/src/validation/rules/ValuesOfCorrectTypeRule.lua b/src/validation/rules/ValuesOfCorrectTypeRule.lua index c67be2a..40b44ac 100644 --- a/src/validation/rules/ValuesOfCorrectTypeRule.lua +++ b/src/validation/rules/ValuesOfCorrectTypeRule.lua @@ -6,19 +6,15 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/ValuesOfCorrectTypeRule.js -local srcWorkspace = script.Parent.Parent.Parent -local languageWorkspace = srcWorkspace.language -local jsutilsWorkspace = srcWorkspace.jsutils +local instanceOf = require("../../jsutils/instanceOf") +local keyMap = require("../../jsutils/keyMap").keyMap +local inspect = require("../../jsutils/inspect").inspect +local didYouMean = require("../../jsutils/didYouMean").didYouMean +local suggestionList = require("../../jsutils/suggestionList").suggestionList +local GraphQLError = require("../../error/GraphQLError").GraphQLError -local instanceOf = require(jsutilsWorkspace.instanceOf) -local keyMap = require(jsutilsWorkspace.keyMap).keyMap -local inspect = require(jsutilsWorkspace.inspect).inspect -local didYouMean = require(jsutilsWorkspace.didYouMean).didYouMean -local suggestionList = require(jsutilsWorkspace.suggestionList).suggestionList -local GraphQLError = require(srcWorkspace.error.GraphQLError).GraphQLError - -local print_ = require(languageWorkspace.printer).print -local definitionModule = require(srcWorkspace.type.definition) +local print_ = require("../../language/printer").print +local definitionModule = require("../../type/definition") local isLeafType = definitionModule.isLeafType local isInputObjectType = definitionModule.isInputObjectType local isListType = definitionModule.isListType diff --git a/src/validation/rules/VariablesAreInputTypesRule.lua b/src/validation/rules/VariablesAreInputTypesRule.lua index 8dcc6c9..95108b5 100644 --- a/src/validation/rules/VariablesAreInputTypesRule.lua +++ b/src/validation/rules/VariablesAreInputTypesRule.lua @@ -6,12 +6,11 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/VariablesAreInputTypesRule.js -local root = script.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local print_ = require(root.language.printer).print -local definition = require(root.type.definition) +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local print_ = require("../../language/printer").print +local definition = require("../../type/definition") local isInputType = definition.isInputType -local typeFromAST = require(root.utilities.typeFromAST).typeFromAST +local typeFromAST = require("../../utilities/typeFromAST").typeFromAST local exports = {} diff --git a/src/validation/rules/VariablesInAllowedPositionRule.lua b/src/validation/rules/VariablesInAllowedPositionRule.lua index 8121a23..4052c18 100644 --- a/src/validation/rules/VariablesInAllowedPositionRule.lua +++ b/src/validation/rules/VariablesInAllowedPositionRule.lua @@ -6,15 +6,13 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/VariablesInAllowedPositionRule.js -local root = script.Parent.Parent.Parent -local inspect = require(root.jsutils.inspect).inspect -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local Kind = require(root.language.kinds).Kind -local definition = require(root.type.definition) +local inspect = require("../../jsutils/inspect").inspect +local GraphQLError = require("../../error/GraphQLError").GraphQLError +local Kind = require("../../language/kinds").Kind +local definition = require("../../type/definition") local isNonNullType = definition.isNonNullType -local utilities = root.utilities -local typeFromAST = require(utilities.typeFromAST).typeFromAST -local isTypeSubTypeOf = require(utilities.typeComparators).isTypeSubTypeOf +local typeFromAST = require("../../utilities/typeFromAST").typeFromAST +local isTypeSubTypeOf = require("../../utilities/typeComparators").isTypeSubTypeOf local exports = {} diff --git a/src/validation/rules/custom/NoDeprecatedCustomRule.lua b/src/validation/rules/custom/NoDeprecatedCustomRule.lua index 0f30e4e..dfa6c5d 100644 --- a/src/validation/rules/custom/NoDeprecatedCustomRule.lua +++ b/src/validation/rules/custom/NoDeprecatedCustomRule.lua @@ -6,10 +6,9 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/01bcc7d9be982226bcf56b8f983f38fd89dced1b/src/validation/rules/NoDeprecatedCustomRule.js -local root = script.Parent.Parent.Parent.Parent -local invariant = require(root.jsutils.invariant).invariant -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local definition = require(root.type.definition) +local invariant = require("../../../jsutils/invariant").invariant +local GraphQLError = require("../../../error/GraphQLError").GraphQLError +local definition = require("../../../type/definition") local getNamedType = definition.getNamedType local isInputObjectType = definition.isInputObjectType diff --git a/src/validation/rules/custom/NoSchemaIntrospectionCustomRule.lua b/src/validation/rules/custom/NoSchemaIntrospectionCustomRule.lua index b6539e9..a52c24d 100644 --- a/src/validation/rules/custom/NoSchemaIntrospectionCustomRule.lua +++ b/src/validation/rules/custom/NoSchemaIntrospectionCustomRule.lua @@ -6,11 +6,10 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/rules/NoSchemaIntrospectionCustomRule.js -local root = script.Parent.Parent.Parent.Parent -local GraphQLError = require(root.error.GraphQLError).GraphQLError -local definition = require(root.type.definition) +local GraphQLError = require("../../../error/GraphQLError").GraphQLError +local definition = require("../../../type/definition") local getNamedType = definition.getNamedType -local isIntrospectionType = require(root.type.introspection).isIntrospectionType +local isIntrospectionType = require("../../../type/introspection").isIntrospectionType local exports = {} diff --git a/src/validation/specifiedRules.lua b/src/validation/specifiedRules.lua index 1669192..75bb6cb 100644 --- a/src/validation/specifiedRules.lua +++ b/src/validation/specifiedRules.lua @@ -5,58 +5,56 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/specifiedRules.js -local rules = script.Parent.rules - -local ExecutableDefinitionsRule = require(rules.ExecutableDefinitionsRule).ExecutableDefinitionsRule -local UniqueOperationNamesRule = require(rules.UniqueOperationNamesRule).UniqueOperationNamesRule +local ExecutableDefinitionsRule = require("./rules/ExecutableDefinitionsRule").ExecutableDefinitionsRule +local UniqueOperationNamesRule = require("./rules/UniqueOperationNamesRule").UniqueOperationNamesRule local LoneAnonymousOperationRule = - require(rules.LoneAnonymousOperationRule).LoneAnonymousOperationRule + require("./rules/LoneAnonymousOperationRule").LoneAnonymousOperationRule local SingleFieldSubscriptionsRule = - require(rules.SingleFieldSubscriptionsRule).SingleFieldSubscriptionsRule -local KnownTypeNamesRule = require(rules.KnownTypeNamesRule).KnownTypeNamesRule + require("./rules/SingleFieldSubscriptionsRule").SingleFieldSubscriptionsRule +local KnownTypeNamesRule = require("./rules/KnownTypeNamesRule").KnownTypeNamesRule local FragmentsOnCompositeTypesRule = - require(rules.FragmentsOnCompositeTypesRule).FragmentsOnCompositeTypesRule + require("./rules/FragmentsOnCompositeTypesRule").FragmentsOnCompositeTypesRule local VariablesAreInputTypesRule = - require(rules.VariablesAreInputTypesRule).VariablesAreInputTypesRule -local ScalarLeafsRule = require(rules.ScalarLeafsRule).ScalarLeafsRule -local FieldsOnCorrectTypeRule = require(rules.FieldsOnCorrectTypeRule).FieldsOnCorrectTypeRule -local UniqueFragmentNamesRule = require(rules.UniqueFragmentNamesRule).UniqueFragmentNamesRule -local KnownFragmentNamesRule = require(rules.KnownFragmentNamesRule).KnownFragmentNamesRule -local NoUnusedFragmentsRule = require(rules.NoUnusedFragmentsRule).NoUnusedFragmentsRule + require("./rules/VariablesAreInputTypesRule").VariablesAreInputTypesRule +local ScalarLeafsRule = require("./rules/ScalarLeafsRule").ScalarLeafsRule +local FieldsOnCorrectTypeRule = require("./rules/FieldsOnCorrectTypeRule").FieldsOnCorrectTypeRule +local UniqueFragmentNamesRule = require("./rules/UniqueFragmentNamesRule").UniqueFragmentNamesRule +local KnownFragmentNamesRule = require("./rules/KnownFragmentNamesRule").KnownFragmentNamesRule +local NoUnusedFragmentsRule = require("./rules/NoUnusedFragmentsRule").NoUnusedFragmentsRule local PossibleFragmentSpreadsRule = - require(rules.PossibleFragmentSpreadsRule).PossibleFragmentSpreadsRule -local NoFragmentCyclesRule = require(rules.NoFragmentCyclesRule).NoFragmentCyclesRule -local UniqueVariableNamesRule = require(rules.UniqueVariableNamesRule).UniqueVariableNamesRule -local NoUndefinedVariablesRule = require(rules.NoUndefinedVariablesRule).NoUndefinedVariablesRule -local NoUnusedVariablesRule = require(rules.NoUnusedVariablesRule).NoUnusedVariablesRule -local KnownDirectivesRule = require(rules.KnownDirectivesRule).KnownDirectivesRule + require("./rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule +local NoFragmentCyclesRule = require("./rules/NoFragmentCyclesRule").NoFragmentCyclesRule +local UniqueVariableNamesRule = require("./rules/UniqueVariableNamesRule").UniqueVariableNamesRule +local NoUndefinedVariablesRule = require("./rules/NoUndefinedVariablesRule").NoUndefinedVariablesRule +local NoUnusedVariablesRule = require("./rules/NoUnusedVariablesRule").NoUnusedVariablesRule +local KnownDirectivesRule = require("./rules/KnownDirectivesRule").KnownDirectivesRule local UniqueDirectivesPerLocationRule = - require(rules.UniqueDirectivesPerLocationRule).UniqueDirectivesPerLocationRule -local KnownArgumentNamesRuleExports = require(rules.KnownArgumentNamesRule) + require("./rules/UniqueDirectivesPerLocationRule").UniqueDirectivesPerLocationRule +local KnownArgumentNamesRuleExports = require("./rules/KnownArgumentNamesRule") local KnownArgumentNamesRule = KnownArgumentNamesRuleExports.KnownArgumentNamesRule local KnownArgumentNamesOnDirectivesRule = KnownArgumentNamesRuleExports.KnownArgumentNamesOnDirectivesRule -local UniqueArgumentNamesRule = require(rules.UniqueArgumentNamesRule).UniqueArgumentNamesRule -local ValuesOfCorrectTypeRule = require(rules.ValuesOfCorrectTypeRule).ValuesOfCorrectTypeRule -local ProvidedRequiredArgumentsRuleExports = require(rules.ProvidedRequiredArgumentsRule) +local UniqueArgumentNamesRule = require("./rules/UniqueArgumentNamesRule").UniqueArgumentNamesRule +local ValuesOfCorrectTypeRule = require("./rules/ValuesOfCorrectTypeRule").ValuesOfCorrectTypeRule +local ProvidedRequiredArgumentsRuleExports = require("./rules/ProvidedRequiredArgumentsRule") local ProvidedRequiredArgumentsRule = ProvidedRequiredArgumentsRuleExports.ProvidedRequiredArgumentsRule local ProvidedRequiredArgumentsOnDirectivesRule = ProvidedRequiredArgumentsRuleExports.ProvidedRequiredArgumentsOnDirectivesRule local VariablesInAllowedPositionRule = - require(rules.VariablesInAllowedPositionRule).VariablesInAllowedPositionRule + require("./rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule local OverlappingFieldsCanBeMergedRule = - require(rules.OverlappingFieldsCanBeMergedRule).OverlappingFieldsCanBeMergedRule -local UniqueInputFieldNamesRule = require(rules.UniqueInputFieldNamesRule).UniqueInputFieldNamesRule -local LoneSchemaDefinitionRule = require(rules.LoneSchemaDefinitionRule).LoneSchemaDefinitionRule -local UniqueOperationTypesRule = require(rules.UniqueOperationTypesRule).UniqueOperationTypesRule -local UniqueTypeNamesRule = require(rules.UniqueTypeNamesRule).UniqueTypeNamesRule -local UniqueEnumValueNamesRule = require(rules.UniqueEnumValueNamesRule).UniqueEnumValueNamesRule + require("./rules/OverlappingFieldsCanBeMergedRule").OverlappingFieldsCanBeMergedRule +local UniqueInputFieldNamesRule = require("./rules/UniqueInputFieldNamesRule").UniqueInputFieldNamesRule +local LoneSchemaDefinitionRule = require("./rules/LoneSchemaDefinitionRule").LoneSchemaDefinitionRule +local UniqueOperationTypesRule = require("./rules/UniqueOperationTypesRule").UniqueOperationTypesRule +local UniqueTypeNamesRule = require("./rules/UniqueTypeNamesRule").UniqueTypeNamesRule +local UniqueEnumValueNamesRule = require("./rules/UniqueEnumValueNamesRule").UniqueEnumValueNamesRule local UniqueFieldDefinitionNamesRule = - require(rules.UniqueFieldDefinitionNamesRule).UniqueFieldDefinitionNamesRule -local UniqueDirectiveNamesRule = require(rules.UniqueDirectiveNamesRule).UniqueDirectiveNamesRule + require("./rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule +local UniqueDirectiveNamesRule = require("./rules/UniqueDirectiveNamesRule").UniqueDirectiveNamesRule local PossibleTypeExtensionsRule = - require(rules.PossibleTypeExtensionsRule).PossibleTypeExtensionsRule + require("./rules/PossibleTypeExtensionsRule").PossibleTypeExtensionsRule local exports = {} diff --git a/src/validation/validate.lua b/src/validation/validate.lua index 409eaf9..3d597b7 100644 --- a/src/validation/validate.lua +++ b/src/validation/validate.lua @@ -5,38 +5,34 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/validate.js -local validationWorkspace = script.Parent -local root = validationWorkspace.Parent -local PackagesWorkspace = root.Parent - -local LuauPolyfill = require(PackagesWorkspace.LuauPolyfill) +local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") local Array = LuauPolyfill.Array local Error = LuauPolyfill.Error type Array = LuauPolyfill.Array -local devAssert = require(root.jsutils.devAssert).devAssert -local GraphQLErrorModule = require(root.error.GraphQLError) +local devAssert = require("../jsutils/devAssert").devAssert +local GraphQLErrorModule = require("../error/GraphQLError") local GraphQLError = GraphQLErrorModule.GraphQLError type GraphQLError = GraphQLErrorModule.GraphQLError -local AstModule = require(root.language.ast) +local AstModule = require("../language/ast") type DocumentNode = AstModule.DocumentNode -local SchemaModule = require(root.type.schema) +local SchemaModule = require("../type/schema") type GraphQLSchema = SchemaModule.GraphQLSchema -local visitorExports = require(root.language.visitor) +local visitorExports = require("../language/visitor") local visit = visitorExports.visit local visitInParallel = visitorExports.visitInParallel -local assertValidSchema = require(root.type.validate).assertValidSchema -local TypeInfoExports = require(root.utilities.TypeInfo) +local assertValidSchema = require("../type/validate").assertValidSchema +local TypeInfoExports = require("../utilities/TypeInfo") local TypeInfo = TypeInfoExports.TypeInfo type TypeInfo = TypeInfoExports.TypeInfo local visitWithTypeInfo = TypeInfoExports.visitWithTypeInfo -local specifiedRulesImport = require(validationWorkspace.specifiedRules) +local specifiedRulesImport = require("./specifiedRules") local specifiedRules = specifiedRulesImport.specifiedRules local specifiedSDLRules = specifiedRulesImport.specifiedSDLRules -local ValidationContextExports = require(validationWorkspace.ValidationContext) +local ValidationContextExports = require("./ValidationContext") local SDLValidationContext = ValidationContextExports.SDLValidationContext local ValidationContext = ValidationContextExports.ValidationContext type SDLValidationRule = ValidationContextExports.SDLValidationRule diff --git a/src/version.lua b/src/version.lua index 9987470..a57761f 100644 --- a/src/version.lua +++ b/src/version.lua @@ -6,8 +6,7 @@ ]] -- upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/version.js --!strict -local rootWorkspace = script.Parent -local Object = require(rootWorkspace.Parent.LuauPolyfill).Object +local Object = require("@pkg/@jsdotlua/luau-polyfill").Object --[[ * Note: This file is autogenerated using "resources/gen-version.js" script and From 728778e63a9352d5463b42b9478cabf99bd4f9ec Mon Sep 17 00:00:00 2001 From: jeparlefrancais Date: Thu, 21 Dec 2023 18:29:29 -0500 Subject: [PATCH 2/3] Setup npm package --- .darklua-bundle-dev.json | 27 +++ .darklua-bundle.json | 27 +++ .darklua-dev.json | 29 ++++ .darklua-wally.json | 24 +++ .darklua.json | 29 ++++ .gitignore | 6 + .npmignore | 41 +++++ .yarnrc.yml | 1 + default.project.json | 2 +- foreman.toml | 10 +- model.project.json | 9 + package.json | 26 +++ scripts/build-assets.sh | 7 + scripts/build-roblox-model.sh | 36 ++++ scripts/build-single-file.sh | 12 ++ scripts/build-wally-package.sh | 31 ++++ scripts/npm-to-wally.js | 144 ++++++++++++++++ scripts/remove-tests.sh | 14 ++ selene.toml | 3 +- selene_definitions.yml | 7 + src/language/__tests__/init.roblox.spec.lua | 9 +- src/language/__tests__/printer.spec.lua | 3 +- src/luaUtils/coerceToPromise.lua | 2 +- src/type/__tests__/introspection.spec.lua | 3 +- .../__tests__/buildClientSchema.spec.lua | 3 +- .../__tests__/getIntrospectionQuery.spec.lua | 3 +- .../__tests__/getOperationRootType.spec.lua | 3 +- .../lexicographicSortSchema.spec.lua | 3 +- .../stripIgnoredCharacters-fuzz.spec.lua | 6 +- .../__tests__/stripIgnoredCharacters.spec.lua | 3 +- .../__tests__/valueFromASTUntyped.spec.lua | 3 +- .../FragmentsOnCompositeTypesRule.spec.lua | 3 +- .../__tests__/KnownDirectivesRule.spec.lua | 3 +- .../__tests__/KnownFragmentNamesRule.spec.lua | 3 +- .../__tests__/KnownTypeNamesRule.spec.lua | 3 +- .../__tests__/NoFragmentCyclesRule.spec.lua | 3 +- .../NoSchemaIntrospectionCustomRule.spec.lua | 4 +- .../__tests__/NoUnusedFragmentsRule.spec.lua | 3 +- .../__tests__/NoUnusedVariablesRule.spec.lua | 3 +- .../OverlappingFieldsCanBeMergedRule.spec.lua | 5 +- .../PossibleFragmentSpreadsRule.spec.lua | 3 +- .../SingleFieldSubscriptionsRule.spec.lua | 3 +- .../UniqueDirectivesPerLocationRule.spec.lua | 3 +- .../UniqueFieldDefinitionNamesRule.spec.lua | 3 +- .../__tests__/UniqueTypeNamesRule.spec.lua | 3 +- .../VariablesInAllowedPositionRule.spec.lua | 3 +- src/validation/specifiedRules.lua | 24 ++- src/version.lua | 6 +- yarn.lock | 157 ++++++++++++++++++ 49 files changed, 695 insertions(+), 66 deletions(-) create mode 100644 .darklua-bundle-dev.json create mode 100644 .darklua-bundle.json create mode 100644 .darklua-dev.json create mode 100644 .darklua-wally.json create mode 100644 .darklua.json create mode 100644 .npmignore create mode 100644 .yarnrc.yml create mode 100644 model.project.json create mode 100644 package.json create mode 100755 scripts/build-assets.sh create mode 100755 scripts/build-roblox-model.sh create mode 100755 scripts/build-single-file.sh create mode 100755 scripts/build-wally-package.sh create mode 100644 scripts/npm-to-wally.js create mode 100644 scripts/remove-tests.sh create mode 100644 selene_definitions.yml create mode 100644 yarn.lock diff --git a/.darklua-bundle-dev.json b/.darklua-bundle-dev.json new file mode 100644 index 0000000..fb4fe3a --- /dev/null +++ b/.darklua-bundle-dev.json @@ -0,0 +1,27 @@ +{ + "bundle": { + "require_mode": { + "name": "path", + "sources": { + "@pkg": "node_modules/.luau-aliases" + } + } + }, + "generator": "dense", + "process": [ + { + "rule": "inject_global_value", + "identifier": "__DEV__", + "value": true + }, + "remove_types", + "remove_comments", + "remove_spaces", + "compute_expression", + "remove_unused_if_branch", + "remove_unused_while", + "filter_after_early_return", + "remove_nil_declaration", + "remove_empty_do" + ] +} diff --git a/.darklua-bundle.json b/.darklua-bundle.json new file mode 100644 index 0000000..a4a6e2c --- /dev/null +++ b/.darklua-bundle.json @@ -0,0 +1,27 @@ +{ + "bundle": { + "require_mode": { + "name": "path", + "sources": { + "@pkg": "node_modules/.luau-aliases" + } + } + }, + "generator": "dense", + "process": [ + { + "rule": "inject_global_value", + "identifier": "__DEV__", + "value": false + }, + "remove_types", + "remove_comments", + "remove_spaces", + "compute_expression", + "remove_unused_if_branch", + "remove_unused_while", + "filter_after_early_return", + "remove_nil_declaration", + "remove_empty_do" + ] +} diff --git a/.darklua-dev.json b/.darklua-dev.json new file mode 100644 index 0000000..319945e --- /dev/null +++ b/.darklua-dev.json @@ -0,0 +1,29 @@ +{ + "process": [ + { + "rule": "convert_require", + "current": { + "name": "path", + "sources": { + "@pkg": "node_modules/.luau-aliases" + } + }, + "target": { + "name": "roblox", + "indexing_style": "wait_for_child", + "rojo_sourcemap": "sourcemap.json" + } + }, + { + "rule": "inject_global_value", + "identifier": "__DEV__", + "value": true + }, + "compute_expression", + "remove_unused_if_branch", + "remove_unused_while", + "filter_after_early_return", + "remove_nil_declaration", + "remove_empty_do" + ] +} diff --git a/.darklua-wally.json b/.darklua-wally.json new file mode 100644 index 0000000..b6101b9 --- /dev/null +++ b/.darklua-wally.json @@ -0,0 +1,24 @@ +{ + "process": [ + { + "rule": "convert_require", + "current": { + "name": "path", + "sources": { + "@pkg": "." + } + }, + "target": { + "name": "roblox", + "indexing_style": "wait_for_child", + "rojo_sourcemap": "./sourcemap.json" + } + }, + "compute_expression", + "remove_unused_if_branch", + "remove_unused_while", + "filter_after_early_return", + "remove_nil_declaration", + "remove_empty_do" + ] +} diff --git a/.darklua.json b/.darklua.json new file mode 100644 index 0000000..a703a19 --- /dev/null +++ b/.darklua.json @@ -0,0 +1,29 @@ +{ + "process": [ + { + "rule": "convert_require", + "current": { + "name": "path", + "sources": { + "@pkg": "node_modules/.luau-aliases" + } + }, + "target": { + "name": "roblox", + "indexing_style": "wait_for_child", + "rojo_sourcemap": "sourcemap.json" + } + }, + { + "rule": "inject_global_value", + "identifier": "__DEV__", + "value": false + }, + "compute_expression", + "remove_unused_if_branch", + "remove_unused_while", + "filter_after_early_return", + "remove_nil_declaration", + "remove_empty_do" + ] +} diff --git a/.gitignore b/.gitignore index 338d6d9..e07c515 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,9 @@ Packages/* debug.log .idea .vscode/launch.json + +**/sourcemap.json +**/node_modules +/build +/roblox +.yarn diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..21c458f --- /dev/null +++ b/.npmignore @@ -0,0 +1,41 @@ +/.* +/bin +/Packages +**/.robloxrc +rotriever.toml + +/.github/ +/.vscode/ + +/roblox +/build + +/*.json +/*.toml +/*.yml +/*.md +/*.js +/*.tgz + +/scripts +/globalTypes.d.lua +**/sourcemap.json +**/*.project.json + +/test + +**/__tests__ +**/__tests__ +**/__testUtils__ +**/__fixtures__ +**/TestMatchers +**/*.test.lua +**/*.spec.lua +**/jest.config.lua + +**/*.rbxl +**/*.rbxlx +**/*.rbxl.lock +**/*.rbxlx.lock +**/*.rbxm +**/*.rbxmx diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 0000000..3186f3f --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules diff --git a/default.project.json b/default.project.json index fc1e4c7..d151053 100644 --- a/default.project.json +++ b/default.project.json @@ -1,5 +1,5 @@ { - "name": "GraphQL", + "name": "graphql", "tree": { "$path": "src" } diff --git a/foreman.toml b/foreman.toml index c27264e..920435f 100644 --- a/foreman.toml +++ b/foreman.toml @@ -1,6 +1,6 @@ [tools] -rotrieve = { source = "roblox/rotriever", version = "0.5.4" } -selene = { source = "Roblox/Kampfkarren-selene", version = "0.19.1" } -stylua = { source = "Roblox/JohnnyMorganz-StyLua", version = "0.13.1" } -testez = { source = "roblox/testez", version = "0.3.2" } -rbx-aged-cli = { source = "roblox/rbx-aged-tool", version = "5.x.x" } +selene = { github = "Kampfkarren/selene", version = "=0.19.1" } +stylua = { github = "JohnnyMorganz/StyLua", version = "=0.13.1" } +luau-lsp = { github = "johnnymorganz/luau-lsp", version = "=1.23.0"} +darklua = { github = "seaofvoices/darklua", version = "=0.12.1" } +wally = { github = "UpliftGames/wally", version = "=0.3.2" } diff --git a/model.project.json b/model.project.json new file mode 100644 index 0000000..bce4c28 --- /dev/null +++ b/model.project.json @@ -0,0 +1,9 @@ +{ + "name": "GraphQL", + "tree": { + "$path": "src", + "node_modules": { + "$path": "node_modules" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..c9d5128 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "@jsdotlua/graphql", + "version": "15.6.1", + "repository": { + "type": "git", + "url": "https://github.com/jsdotlua/graphql-lua.git" + }, + "license": "MIT", + "main": "src/init.lua", + "scripts": { + "prepare": "npmluau", + "build-assets": "sh ./scripts/build-assets.sh", + "lint": "selene src", + "format": "stylua src", + "style-check": "stylua --check src", + "clean": "rm -rf roblox build node_modules" + }, + "dependencies": { + "@jsdotlua/luau-polyfill": "^1.2.6", + "@jsdotlua/promise": "^3.5.0", + "luau-regexp": "^0.2.1" + }, + "devDependencies": { + "npmluau": "^0.1.1" + } +} diff --git a/scripts/build-assets.sh b/scripts/build-assets.sh new file mode 100755 index 0000000..625f8b4 --- /dev/null +++ b/scripts/build-assets.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +set -e + +./scripts/build-roblox-model.sh +./scripts/build-single-file.sh +./scripts/build-wally-package.sh diff --git a/scripts/build-roblox-model.sh b/scripts/build-roblox-model.sh new file mode 100755 index 0000000..848cde6 --- /dev/null +++ b/scripts/build-roblox-model.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +set -e + +build_with_darklua_config () { + DARKLUA_CONFIG=$1 + OUTPUT=build/$2 + + rm -rf roblox + + mkdir -p roblox + + cp -r src/ roblox/ + ./scripts/remove-tests.sh roblox + + rojo sourcemap model.project.json -o sourcemap.json + + darklua process --config $DARKLUA_CONFIG node_modules roblox/node_modules + + cp $DARKLUA_CONFIG roblox/ + cp sourcemap.json roblox/ + + darklua process --config roblox/$DARKLUA_CONFIG roblox/src roblox/src + + ./scripts/remove-tests.sh roblox + + cp model.project.json roblox/ + + mkdir -p build + mkdir -p $(dirname $OUTPUT) + + rojo build roblox/model.project.json -o $OUTPUT +} + +build_with_darklua_config .darklua.json graphql.rbxm +build_with_darklua_config .darklua-dev.json debug/graphql.rbxm diff --git a/scripts/build-single-file.sh b/scripts/build-single-file.sh new file mode 100755 index 0000000..9d9b9c0 --- /dev/null +++ b/scripts/build-single-file.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +set -e + +mkdir -p build +mkdir -p build/debug + +rm -f build/graphql.lua +rm -f build/debug/graphql.lua + +darklua process --config .darklua-bundle.json src/init.lua build/graphql.lua +darklua process --config .darklua-bundle-dev.json src/init.lua build/debug/graphql.lua diff --git a/scripts/build-wally-package.sh b/scripts/build-wally-package.sh new file mode 100755 index 0000000..9996020 --- /dev/null +++ b/scripts/build-wally-package.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +set -e + +rm -rf roblox + +mkdir -p roblox + +cp -r src roblox/src + +./scripts/remove-tests.sh roblox + +wally_package=build/wally +rm -rf $wally_package + +echo Process package + +mkdir -p $wally_package +cp LICENSE $wally_package/LICENSE + +node ./scripts/npm-to-wally.js package.json $wally_package/wally.toml roblox/wally-package.project.json + +cp .darklua-wally.json roblox +cp -r node_modules/.luau-aliases/* roblox + +rojo sourcemap roblox/wally-package.project.json --output roblox/sourcemap.json + +darklua process --config roblox/.darklua-wally.json roblox/src $wally_package/src + +cp default.project.json $wally_package +wally package --project-path $wally_package --list diff --git a/scripts/npm-to-wally.js b/scripts/npm-to-wally.js new file mode 100644 index 0000000..232e742 --- /dev/null +++ b/scripts/npm-to-wally.js @@ -0,0 +1,144 @@ +#!/usr/bin/env node + +const { Command } = require("commander"); + +const fs = require("fs").promises; +const path = require("path"); +const process = require("process"); + +const readPackageConfig = async (packagePath) => { + const packageContent = await fs.readFile(packagePath).catch((err) => { + console.error(`unable to read package.json at '${packagePath}': ${err}`); + return null; + }); + + if (packageContent !== null) { + try { + const packageData = JSON.parse(packageContent); + return packageData; + } catch (error) { + console.error(`unable to parse package.json at '${packagePath}': ${err}`); + } + } + + return null; +}; + +const main = async ( + packageJsonPath, + wallyOutputPath, + rojoConfigPath, + { workspacePath } +) => { + const packageData = await readPackageConfig(packageJsonPath); + + const { name: scopedName, version, license, dependencies = [] } = packageData; + + const tomlLines = [ + "[package]", + `name = "${scopedName.substring(1)}"`, + `version = "${version}"`, + 'registry = "https://github.com/UpliftGames/wally-index"', + 'realm = "shared"', + `license = "${license}"`, + "", + "[dependencies]", + ]; + + const rojoConfig = { + name: "WallyPackage", + tree: { + $className: "Folder", + Package: { + $path: "src", + }, + }, + }; + + for (const [dependencyName, specifiedVersion] of Object.entries( + dependencies + )) { + const name = dependencyName.startsWith("@") + ? dependencyName.substring(dependencyName.indexOf("/") + 1) + : dependencyName; + + rojoConfig.tree[name] = { + $path: dependencyName + ".luau", + }; + + const wallyPackageName = name.indexOf("-") !== -1 ? `"${name}"` : name; + + if (specifiedVersion == "workspace:^") { + const dependentPackage = + workspacePath && + (await readPackageConfig( + path.join(workspacePath, name, "package.json") + )); + + if (dependentPackage) { + tomlLines.push( + `${wallyPackageName} = "jsdotlua/${name}@${dependentPackage.version}"` + ); + } else { + console.error(`unable to find version for package '${name}'`); + } + } else { + tomlLines.push( + `${wallyPackageName} = "jsdotlua/${name}@${specifiedVersion}"` + ); + } + } + + tomlLines.push(""); + + await Promise.all([ + fs.writeFile(wallyOutputPath, tomlLines.join("\n")).catch((err) => { + console.error( + `unable to write wally config at '${wallyOutputPath}': ${err}` + ); + }), + fs + .writeFile(rojoConfigPath, JSON.stringify(rojoConfig, null, 2)) + .catch((err) => { + console.error( + `unable to write rojo config at '${rojoConfigPath}': ${err}` + ); + }), + ]); +}; + +const createCLI = () => { + const program = new Command(); + + program + .name("npm-to-wally") + .description("a utility to convert npm packages to wally packages") + .argument("") + .argument("") + .argument("") + .option( + "--workspace-path ", + "the path containing all workspace members" + ) + .action( + async (packageJson, wallyToml, rojoConfig, { workspacePath = null }) => { + const cwd = process.cwd(); + main( + path.join(cwd, packageJson), + path.join(cwd, wallyToml), + path.join(cwd, rojoConfig), + { + workspacePath: workspacePath && path.join(cwd, workspacePath), + } + ); + } + ); + + return (args) => { + program.parse(args); + }; +}; + +const run = createCLI(); + +run(process.argv); diff --git a/scripts/remove-tests.sh b/scripts/remove-tests.sh new file mode 100644 index 0000000..305c98d --- /dev/null +++ b/scripts/remove-tests.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +FOLDER=$1 + +find $FOLDER -name '__tests__' -type d -exec rm -r {} + +find $FOLDER -name '__tests__' -type d -exec rm -r {} + +find $FOLDER -name '__fixtures__' -type d -exec rm -r {} + +find $FOLDER -name '__testUtils__' -type d -exec rm -r {} + +find $FOLDER -name 'TestMatchers' -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 {} + diff --git a/selene.toml b/selene.toml index 2bd3329..706c8c9 100644 --- a/selene.toml +++ b/selene.toml @@ -1,5 +1,6 @@ -std = "roblox+testez" +std = "selene_definitions+testez" # to be removed - only helpful while scaffolding in dev [rules] unused_variable = "allow" +bad_string_escape = "allow" diff --git a/selene_definitions.yml b/selene_definitions.yml new file mode 100644 index 0000000..95cabdf --- /dev/null +++ b/selene_definitions.yml @@ -0,0 +1,7 @@ +base: roblox +name: selene_defs +globals: + # override Roblox require style with string requires + require: + args: + - type: string diff --git a/src/language/__tests__/init.roblox.spec.lua b/src/language/__tests__/init.roblox.spec.lua index 2bf71ae..7099163 100644 --- a/src/language/__tests__/init.roblox.spec.lua +++ b/src/language/__tests__/init.roblox.spec.lua @@ -112,8 +112,7 @@ return function() end) it("should contain isExecutableDefinitionNode function", function() - local isExecutableDefinitionNode = - require("..").isExecutableDefinitionNode + local isExecutableDefinitionNode = require("..").isExecutableDefinitionNode expect(isExecutableDefinitionNode).to.be.a("function") end) @@ -133,8 +132,7 @@ return function() end) it("should contain isTypeSystemDefinitionNode function", function() - local isTypeSystemDefinitionNode = - require("..").isTypeSystemDefinitionNode + local isTypeSystemDefinitionNode = require("..").isTypeSystemDefinitionNode expect(isTypeSystemDefinitionNode).to.be.a("function") end) @@ -144,8 +142,7 @@ return function() end) it("should contain isTypeSystemExtensionNode function", function() - local isTypeSystemExtensionNode = - require("..").isTypeSystemExtensionNode + local isTypeSystemExtensionNode = require("..").isTypeSystemExtensionNode expect(isTypeSystemExtensionNode).to.be.a("function") end) diff --git a/src/language/__tests__/printer.spec.lua b/src/language/__tests__/printer.spec.lua index ab13470..0b72ce4 100644 --- a/src/language/__tests__/printer.spec.lua +++ b/src/language/__tests__/printer.spec.lua @@ -18,8 +18,7 @@ type FieldNode = astModule.FieldNode return function() local dedent = require("../../__testUtils__/dedent").dedent - local kitchenSinkQuery = - require("../../__testUtils__/kitchenSinkQuery").kitchenSinkQuery + local kitchenSinkQuery = require("../../__testUtils__/kitchenSinkQuery").kitchenSinkQuery local parse = require("../parser").parse local print_ = require("../printer").print diff --git a/src/luaUtils/coerceToPromise.lua b/src/luaUtils/coerceToPromise.lua index ce47a6c..6c7a1c1 100644 --- a/src/luaUtils/coerceToPromise.lua +++ b/src/luaUtils/coerceToPromise.lua @@ -2,7 +2,7 @@ local LuauPolyfill = require("@pkg/@jsdotlua/luau-polyfill") type Promise = LuauPolyfill.Promise local Promise = require("@pkg/@jsdotlua/promise") -local PromiseOrValueModule = require('../jsutils/PromiseOrValue') +local PromiseOrValueModule = require("../jsutils/PromiseOrValue") type PromiseOrValue = PromiseOrValueModule.PromiseOrValue local function coerceToPromise(value: PromiseOrValue): Promise diff --git a/src/type/__tests__/introspection.spec.lua b/src/type/__tests__/introspection.spec.lua index b1180cc..2ff0e67 100644 --- a/src/type/__tests__/introspection.spec.lua +++ b/src/type/__tests__/introspection.spec.lua @@ -9,7 +9,8 @@ return function() local invariant = require("../../jsutils/invariant").invariant local buildSchema = require("../../utilities/buildASTSchema").buildSchema - local getIntrospectionQuery = require("../../utilities/getIntrospectionQuery").getIntrospectionQuery + local getIntrospectionQuery = + require("../../utilities/getIntrospectionQuery").getIntrospectionQuery local graphql = require("../../graphql") local graphqlSync = graphql.graphqlSync diff --git a/src/utilities/__tests__/buildClientSchema.spec.lua b/src/utilities/__tests__/buildClientSchema.spec.lua index 3fd196f..9f9e4d1 100644 --- a/src/utilities/__tests__/buildClientSchema.spec.lua +++ b/src/utilities/__tests__/buildClientSchema.spec.lua @@ -34,8 +34,7 @@ return function() local printSchema = require("../printSchema").printSchema local buildSchema = require("../buildASTSchema").buildSchema local buildClientSchema = require("../buildClientSchema").buildClientSchema - local introspectionFromSchema = - require("../introspectionFromSchema").introspectionFromSchema + local introspectionFromSchema = require("../introspectionFromSchema").introspectionFromSchema --[[* -- * This function does a full cycle of going from a string with the contents of diff --git a/src/utilities/__tests__/getIntrospectionQuery.spec.lua b/src/utilities/__tests__/getIntrospectionQuery.spec.lua index c34fa82..4199073 100644 --- a/src/utilities/__tests__/getIntrospectionQuery.spec.lua +++ b/src/utilities/__tests__/getIntrospectionQuery.spec.lua @@ -6,8 +6,7 @@ ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/00d4efea7f5b44088356798afff0317880605f4d/src/utilities/__tests__/getIntrospectionQuery-test.js -local getIntrospectionQuery = - require("../../utilities/getIntrospectionQuery").getIntrospectionQuery +local getIntrospectionQuery = require("../../utilities/getIntrospectionQuery").getIntrospectionQuery -- ROBLOX Deviation: utility function for finding multiple matches local function stringFindAll(str, pattern) diff --git a/src/utilities/__tests__/getOperationRootType.spec.lua b/src/utilities/__tests__/getOperationRootType.spec.lua index 6e1c644..9a028d5 100644 --- a/src/utilities/__tests__/getOperationRootType.spec.lua +++ b/src/utilities/__tests__/getOperationRootType.spec.lua @@ -13,8 +13,7 @@ return function() local GraphQLSchema = require("../../type/schema").GraphQLSchema local GraphQLString = require("../../type/scalars").GraphQLString local GraphQLObjectType = require("../../type/definition").GraphQLObjectType - local getOperationRootType = - require("../getOperationRootType").getOperationRootType + local getOperationRootType = require("../getOperationRootType").getOperationRootType local Object = require("@pkg/@jsdotlua/luau-polyfill").Object diff --git a/src/utilities/__tests__/lexicographicSortSchema.spec.lua b/src/utilities/__tests__/lexicographicSortSchema.spec.lua index 3ca7a9e..9662e46 100644 --- a/src/utilities/__tests__/lexicographicSortSchema.spec.lua +++ b/src/utilities/__tests__/lexicographicSortSchema.spec.lua @@ -14,8 +14,7 @@ return function() local printSchema = require("../printSchema").printSchema local buildSchema = require("../buildASTSchema").buildSchema - local lexicographicSortSchema = - require("../lexicographicSortSchema").lexicographicSortSchema + local lexicographicSortSchema = require("../lexicographicSortSchema").lexicographicSortSchema local function sortSDL(sdl) local schema = buildSchema(sdl) diff --git a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua index 4d16a1c..9299633 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua +++ b/src/utilities/__tests__/stripIgnoredCharacters-fuzz.spec.lua @@ -9,16 +9,14 @@ return function() local dedent = require("../../__testUtils__/dedent").dedent local inspectStr = require("../../__testUtils__/inspectStr").inspectStr - local genFuzzStrings = - require("../../__testUtils__/genFuzzStrings").genFuzzStrings + local genFuzzStrings = require("../../__testUtils__/genFuzzStrings").genFuzzStrings local invariant = require("../../jsutils/invariant").invariant local Lexer = require("../../language/lexer").Lexer local Source = require("../../language/source").Source - local stripIgnoredCharacters = - require("../stripIgnoredCharacters").stripIgnoredCharacters + local stripIgnoredCharacters = require("../stripIgnoredCharacters").stripIgnoredCharacters local function lexValue(str: string) local lexer = Lexer.new(Source.new(str)) diff --git a/src/utilities/__tests__/stripIgnoredCharacters.spec.lua b/src/utilities/__tests__/stripIgnoredCharacters.spec.lua index 378763f..1a5ac7e 100644 --- a/src/utilities/__tests__/stripIgnoredCharacters.spec.lua +++ b/src/utilities/__tests__/stripIgnoredCharacters.spec.lua @@ -22,8 +22,7 @@ return function() local inspect = require("../../jsutils/inspect").inspect - local stripIgnoredCharacters = - require("../stripIgnoredCharacters").stripIgnoredCharacters + local stripIgnoredCharacters = require("../stripIgnoredCharacters").stripIgnoredCharacters local ignoredTokens = { "\u{FEFF}", "\t", diff --git a/src/utilities/__tests__/valueFromASTUntyped.spec.lua b/src/utilities/__tests__/valueFromASTUntyped.spec.lua index d12c2b3..759488c 100644 --- a/src/utilities/__tests__/valueFromASTUntyped.spec.lua +++ b/src/utilities/__tests__/valueFromASTUntyped.spec.lua @@ -12,8 +12,7 @@ return function() local NaN = Number.NaN local parseValue = require("../../language/parser").parseValue - local valueFromASTUntyped = - require("../valueFromASTUntyped").valueFromASTUntyped + local valueFromASTUntyped = require("../valueFromASTUntyped").valueFromASTUntyped local NULL = require("../../luaUtils/null") diff --git a/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua b/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua index db94e60..b2d03ec 100644 --- a/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua +++ b/src/validation/__tests__/FragmentsOnCompositeTypesRule.spec.lua @@ -7,7 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/FragmentsOnCompositeTypesRule-test.js return function() - local FragmentsOnCompositeTypesRule = require("../rules/FragmentsOnCompositeTypesRule").FragmentsOnCompositeTypesRule + local FragmentsOnCompositeTypesRule = + require("../rules/FragmentsOnCompositeTypesRule").FragmentsOnCompositeTypesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/KnownDirectivesRule.spec.lua b/src/validation/__tests__/KnownDirectivesRule.spec.lua index 99bc19d..289b17b 100644 --- a/src/validation/__tests__/KnownDirectivesRule.spec.lua +++ b/src/validation/__tests__/KnownDirectivesRule.spec.lua @@ -9,8 +9,7 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local KnownDirectivesRule = - require("../rules/KnownDirectivesRule").KnownDirectivesRule + local KnownDirectivesRule = require("../rules/KnownDirectivesRule").KnownDirectivesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/KnownFragmentNamesRule.spec.lua b/src/validation/__tests__/KnownFragmentNamesRule.spec.lua index 7f493e9..319b28f 100644 --- a/src/validation/__tests__/KnownFragmentNamesRule.spec.lua +++ b/src/validation/__tests__/KnownFragmentNamesRule.spec.lua @@ -7,8 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/KnownFragmentNamesRule-test.js return function() - local KnownFragmentNamesRule = - require("../rules/KnownFragmentNamesRule").KnownFragmentNamesRule + local KnownFragmentNamesRule = require("../rules/KnownFragmentNamesRule").KnownFragmentNamesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/KnownTypeNamesRule.spec.lua b/src/validation/__tests__/KnownTypeNamesRule.spec.lua index f6dbbc0..23266fa 100644 --- a/src/validation/__tests__/KnownTypeNamesRule.spec.lua +++ b/src/validation/__tests__/KnownTypeNamesRule.spec.lua @@ -9,8 +9,7 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local KnownTypeNamesRule = - require("../rules/KnownTypeNamesRule").KnownTypeNamesRule + local KnownTypeNamesRule = require("../rules/KnownTypeNamesRule").KnownTypeNamesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/NoFragmentCyclesRule.spec.lua b/src/validation/__tests__/NoFragmentCyclesRule.spec.lua index b0c6459..d298d98 100644 --- a/src/validation/__tests__/NoFragmentCyclesRule.spec.lua +++ b/src/validation/__tests__/NoFragmentCyclesRule.spec.lua @@ -7,8 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoFragmentCyclesRule-test.js return function() - local NoFragmentCyclesRule = - require("../rules/NoFragmentCyclesRule").NoFragmentCyclesRule + local NoFragmentCyclesRule = require("../rules/NoFragmentCyclesRule").NoFragmentCyclesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua b/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua index a4902d6..791d08b 100644 --- a/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua +++ b/src/validation/__tests__/NoSchemaIntrospectionCustomRule.spec.lua @@ -9,7 +9,9 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local NoSchemaIntrospectionCustomRule = require("../rules/custom/NoSchemaIntrospectionCustomRule").NoSchemaIntrospectionCustomRule + local NoSchemaIntrospectionCustomRule = require( + "../rules/custom/NoSchemaIntrospectionCustomRule" + ).NoSchemaIntrospectionCustomRule local harness = require("./harness") local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua b/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua index 1e5242d..53253b8 100644 --- a/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua +++ b/src/validation/__tests__/NoUnusedFragmentsRule.spec.lua @@ -7,8 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoUndefinedVariablesRule-test.js return function() - local NoUnusedFragmentsRule = - require("../rules/NoUnusedFragmentsRule").NoUnusedFragmentsRule + local NoUnusedFragmentsRule = require("../rules/NoUnusedFragmentsRule").NoUnusedFragmentsRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/NoUnusedVariablesRule.spec.lua b/src/validation/__tests__/NoUnusedVariablesRule.spec.lua index e38fb9e..5a0aa33 100644 --- a/src/validation/__tests__/NoUnusedVariablesRule.spec.lua +++ b/src/validation/__tests__/NoUnusedVariablesRule.spec.lua @@ -7,8 +7,7 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/NoUnusedVariablesRule-test.js return function() - local NoUnusedVariablesRule = - require("../rules/NoUnusedVariablesRule").NoUnusedVariablesRule + local NoUnusedVariablesRule = require("../rules/NoUnusedVariablesRule").NoUnusedVariablesRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua b/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua index 88ca68f..394bba9 100644 --- a/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua +++ b/src/validation/__tests__/OverlappingFieldsCanBeMergedRule.spec.lua @@ -9,7 +9,10 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local OverlappingFieldsCanBeMergedRule = require("../rules/OverlappingFieldsCanBeMergedRule").OverlappingFieldsCanBeMergedRule + local OverlappingFieldsCanBeMergedRule = + require( + "../rules/OverlappingFieldsCanBeMergedRule" + ).OverlappingFieldsCanBeMergedRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua b/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua index b4fd7c3..7339c4c 100644 --- a/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua +++ b/src/validation/__tests__/PossibleFragmentSpreadsRule.spec.lua @@ -7,7 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/PossibleFragmentSpreadsRule-test.js return function() - local PossibleFragmentSpreadsRule = require("../rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule + local PossibleFragmentSpreadsRule = + require("../rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua b/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua index a27a2af..67bce27 100644 --- a/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua +++ b/src/validation/__tests__/SingleFieldSubscriptionsRule.spec.lua @@ -7,7 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/SingleFieldSubscriptionsRule-test.js return function() - local SingleFieldSubscriptionsRule = require("../rules/SingleFieldSubscriptionsRule").SingleFieldSubscriptionsRule + local SingleFieldSubscriptionsRule = + require("../rules/SingleFieldSubscriptionsRule").SingleFieldSubscriptionsRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua b/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua index fc2a693..be94c13 100644 --- a/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua +++ b/src/validation/__tests__/UniqueDirectivesPerLocationRule.spec.lua @@ -9,7 +9,8 @@ return function() local parse = require("../../language/parser").parse local extendSchema = require("../../utilities/extendSchema").extendSchema - local UniqueDirectivesPerLocationRule = require("../rules/UniqueDirectivesPerLocationRule").UniqueDirectivesPerLocationRule + local UniqueDirectivesPerLocationRule = + require("../rules/UniqueDirectivesPerLocationRule").UniqueDirectivesPerLocationRule local harness = require("./harness") local testSchema = harness.testSchema local expectValidationErrorsWithSchema = harness.expectValidationErrorsWithSchema diff --git a/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua b/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua index fbffdb5..c203d9f 100644 --- a/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueFieldDefinitionNamesRule.spec.lua @@ -9,7 +9,8 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local UniqueFieldDefinitionNamesRule = require("../rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule + local UniqueFieldDefinitionNamesRule = + require("../rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/UniqueTypeNamesRule.spec.lua b/src/validation/__tests__/UniqueTypeNamesRule.spec.lua index 2b1b45a..a75b3ff 100644 --- a/src/validation/__tests__/UniqueTypeNamesRule.spec.lua +++ b/src/validation/__tests__/UniqueTypeNamesRule.spec.lua @@ -9,8 +9,7 @@ return function() local buildASTSchema = require("../../utilities/buildASTSchema") local buildSchema = buildASTSchema.buildSchema - local UniqueTypeNamesRule = - require("../rules/UniqueTypeNamesRule").UniqueTypeNamesRule + local UniqueTypeNamesRule = require("../rules/UniqueTypeNamesRule").UniqueTypeNamesRule local harness = require("./harness") local expectSDLValidationErrors = harness.expectSDLValidationErrors diff --git a/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua b/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua index 6007258..9b765eb 100644 --- a/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua +++ b/src/validation/__tests__/VariablesInAllowedPositionRule.spec.lua @@ -7,7 +7,8 @@ -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/bbd8429b85594d9ee8cc632436e2d0f900d703ef/src/validation/__tests__/VariablesInAllowedPositionRule-test.js return function() - local VariablesInAllowedPositionRule = require("../rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule + local VariablesInAllowedPositionRule = + require("../rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule local harness = require("./harness") local expectValidationErrors = harness.expectValidationErrors diff --git a/src/validation/specifiedRules.lua b/src/validation/specifiedRules.lua index 75bb6cb..18072dc 100644 --- a/src/validation/specifiedRules.lua +++ b/src/validation/specifiedRules.lua @@ -5,8 +5,10 @@ * LICENSE file in the root directory of this source tree. ]] -- ROBLOX upstream: https://github.com/graphql/graphql-js/blob/7b3241329e1ff49fb647b043b80568f0cf9e1a7c/src/validation/specifiedRules.js -local ExecutableDefinitionsRule = require("./rules/ExecutableDefinitionsRule").ExecutableDefinitionsRule -local UniqueOperationNamesRule = require("./rules/UniqueOperationNamesRule").UniqueOperationNamesRule +local ExecutableDefinitionsRule = + require("./rules/ExecutableDefinitionsRule").ExecutableDefinitionsRule +local UniqueOperationNamesRule = + require("./rules/UniqueOperationNamesRule").UniqueOperationNamesRule local LoneAnonymousOperationRule = require("./rules/LoneAnonymousOperationRule").LoneAnonymousOperationRule local SingleFieldSubscriptionsRule = @@ -25,7 +27,8 @@ local PossibleFragmentSpreadsRule = require("./rules/PossibleFragmentSpreadsRule").PossibleFragmentSpreadsRule local NoFragmentCyclesRule = require("./rules/NoFragmentCyclesRule").NoFragmentCyclesRule local UniqueVariableNamesRule = require("./rules/UniqueVariableNamesRule").UniqueVariableNamesRule -local NoUndefinedVariablesRule = require("./rules/NoUndefinedVariablesRule").NoUndefinedVariablesRule +local NoUndefinedVariablesRule = + require("./rules/NoUndefinedVariablesRule").NoUndefinedVariablesRule local NoUnusedVariablesRule = require("./rules/NoUnusedVariablesRule").NoUnusedVariablesRule local KnownDirectivesRule = require("./rules/KnownDirectivesRule").KnownDirectivesRule local UniqueDirectivesPerLocationRule = @@ -45,14 +48,19 @@ local VariablesInAllowedPositionRule = require("./rules/VariablesInAllowedPositionRule").VariablesInAllowedPositionRule local OverlappingFieldsCanBeMergedRule = require("./rules/OverlappingFieldsCanBeMergedRule").OverlappingFieldsCanBeMergedRule -local UniqueInputFieldNamesRule = require("./rules/UniqueInputFieldNamesRule").UniqueInputFieldNamesRule -local LoneSchemaDefinitionRule = require("./rules/LoneSchemaDefinitionRule").LoneSchemaDefinitionRule -local UniqueOperationTypesRule = require("./rules/UniqueOperationTypesRule").UniqueOperationTypesRule +local UniqueInputFieldNamesRule = + require("./rules/UniqueInputFieldNamesRule").UniqueInputFieldNamesRule +local LoneSchemaDefinitionRule = + require("./rules/LoneSchemaDefinitionRule").LoneSchemaDefinitionRule +local UniqueOperationTypesRule = + require("./rules/UniqueOperationTypesRule").UniqueOperationTypesRule local UniqueTypeNamesRule = require("./rules/UniqueTypeNamesRule").UniqueTypeNamesRule -local UniqueEnumValueNamesRule = require("./rules/UniqueEnumValueNamesRule").UniqueEnumValueNamesRule +local UniqueEnumValueNamesRule = + require("./rules/UniqueEnumValueNamesRule").UniqueEnumValueNamesRule local UniqueFieldDefinitionNamesRule = require("./rules/UniqueFieldDefinitionNamesRule").UniqueFieldDefinitionNamesRule -local UniqueDirectiveNamesRule = require("./rules/UniqueDirectiveNamesRule").UniqueDirectiveNamesRule +local UniqueDirectiveNamesRule = + require("./rules/UniqueDirectiveNamesRule").UniqueDirectiveNamesRule local PossibleTypeExtensionsRule = require("./rules/PossibleTypeExtensionsRule").PossibleTypeExtensionsRule diff --git a/src/version.lua b/src/version.lua index a57761f..ddac134 100644 --- a/src/version.lua +++ b/src/version.lua @@ -16,15 +16,15 @@ local Object = require("@pkg/@jsdotlua/luau-polyfill").Object --[[ * A string containing the version of the GraphQL.js library *]] -local version = "15.5.0" +local version = "15.6.1" --[[ * An object containing the components of the GraphQL.js version string *]] local versionInfo = Object.freeze({ major = 15, - minor = 5, - patch = 0, + minor = 6, + patch = 1, preReleaseTag = "", }) diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..d63c31c --- /dev/null +++ b/yarn.lock @@ -0,0 +1,157 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 8 + cacheKey: 10c0 + +"@jsdotlua/boolean@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/boolean@npm:1.2.6" + dependencies: + "@jsdotlua/number": "npm:^1.2.6" + checksum: 5f567e556bb7c56102327a97468571522ce939be6cdc1b51591afc3dfc1dff4b2c9ec5462e7809bd9a515b3bdfc1c3eaabb4f631892cb5f471b4fc8da188cb84 + languageName: node + linkType: hard + +"@jsdotlua/collections@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/collections@npm:1.2.6" + dependencies: + "@jsdotlua/es7-types": "npm:^1.2.6" + "@jsdotlua/instance-of": "npm:^1.2.6" + checksum: a4b3fe826358484528f10e8ca61a80d841a6515a22277a003117449da66ea1fb891c7b4103b952b01bd7d75666f26cb41c8efb852672aa8aaaaebbcd656dca79 + languageName: node + linkType: hard + +"@jsdotlua/console@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/console@npm:1.2.6" + dependencies: + "@jsdotlua/collections": "npm:^1.2.6" + checksum: eff658d9e8d23f932893facf18400a29ada54d1a24748b751aac1e4df48e92ff70b3b2ccd1ab6a4f2490dd709f826fe39427fb80f01a7574265fdd4e8af9187a + languageName: node + linkType: hard + +"@jsdotlua/es7-types@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/es7-types@npm:1.2.6" + checksum: e5710f5f6de0608aec22744845e3a24acc47e2bda6cfc0b1fe4040935039b73e8467da90c3a6c9d75b08c9f39d2b98e9d72d54f3f630012538a7d53ad828a0d6 + languageName: node + linkType: hard + +"@jsdotlua/graphql@workspace:.": + version: 0.0.0-use.local + resolution: "@jsdotlua/graphql@workspace:." + dependencies: + "@jsdotlua/luau-polyfill": "npm:^1.2.6" + "@jsdotlua/promise": "npm:^3.5.0" + luau-regexp: "npm:^0.2.1" + npmluau: "npm:^0.1.1" + languageName: unknown + linkType: soft + +"@jsdotlua/instance-of@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/instance-of@npm:1.2.6" + checksum: 0958caf214bb0556c1dcf94096410c367f413af4b02ef3adbd733e47435d8734b583217804bed5aec8308d56ccfb39032bb12fd4337e01ec5ae2db690b2ca9ce + languageName: node + linkType: hard + +"@jsdotlua/luau-polyfill@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/luau-polyfill@npm:1.2.6" + dependencies: + "@jsdotlua/boolean": "npm:^1.2.6" + "@jsdotlua/collections": "npm:^1.2.6" + "@jsdotlua/console": "npm:^1.2.6" + "@jsdotlua/es7-types": "npm:^1.2.6" + "@jsdotlua/instance-of": "npm:^1.2.6" + "@jsdotlua/math": "npm:^1.2.6" + "@jsdotlua/number": "npm:^1.2.6" + "@jsdotlua/string": "npm:^1.2.6" + "@jsdotlua/timers": "npm:^1.2.6" + symbol-luau: "npm:^1.0.0" + checksum: 63265f9fde3b895400d12802929ddab5daed79efc4e2aa90325b2eea0e2b7addcf351d35ad8bb19955956e913c212408944d73b6f3126223893d17cecd24de61 + languageName: node + linkType: hard + +"@jsdotlua/math@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/math@npm:1.2.6" + checksum: 06137df2a6352d4f5c730a7cf9e2902509d36de08415a3c70d470a05669dfeaf48e4aff2d5b6885a92b8f4d19fd0294a40f147a3f39c8558e887a09eb3ccd9e0 + languageName: node + linkType: hard + +"@jsdotlua/number@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/number@npm:1.2.6" + checksum: 74541fce86f80c52f05e5d4ca774d94f08ed21619af7b575c2bb7284e24fc2b178626c9888e286459a344d662cafab74d839ec8b95dcdab551fd14754911a292 + languageName: node + linkType: hard + +"@jsdotlua/promise@npm:^3.5.0": + version: 3.5.0 + resolution: "@jsdotlua/promise@npm:3.5.0" + checksum: 8771dac525b8d608ad319040b742cdde8f4cbbd4a075ae02dad4d510c8ab739dabf7de40ae1b15211e3890331cf3e7d9454fdcb3ec9a08471663436c0e9ec977 + languageName: node + linkType: hard + +"@jsdotlua/string@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/string@npm:1.2.6" + dependencies: + "@jsdotlua/es7-types": "npm:^1.2.6" + "@jsdotlua/number": "npm:^1.2.6" + checksum: de51c662439110642b699e4196240aa45ec4b8814f99bc606acb84dbb3f1c6889099bb722b3370f5873e06bd65c76779b5d94694309c9bdc63d324f40add2b0f + languageName: node + linkType: hard + +"@jsdotlua/timers@npm:^1.2.6": + version: 1.2.6 + resolution: "@jsdotlua/timers@npm:1.2.6" + dependencies: + "@jsdotlua/collections": "npm:^1.2.6" + checksum: f3ec2753894e4939f7dfdf0072517f1e769e4009b4bd882c9c6878526372753ac4b08b531e1a32c96b7bccb5bf10bb8e2f5730cbc70534da7eddc620fbccaaca + languageName: node + linkType: hard + +"commander@npm:^11.0.0": + version: 11.1.0 + resolution: "commander@npm:11.1.0" + checksum: 13cc6ac875e48780250f723fb81c1c1178d35c5decb1abb1b628b3177af08a8554e76b2c0f29de72d69eef7c864d12613272a71fabef8047922bc622ab75a179 + languageName: node + linkType: hard + +"luau-regexp@npm:^0.2.1": + version: 0.2.1 + resolution: "luau-regexp@npm:0.2.1" + checksum: 7badc4e6f9ab7753d77e49db3012c525fb85dff70930c806754edd86893a39c1afb1aba51aba00b2f456f72d7f02c6a8812a160646a05986bc6d1bfae6251494 + languageName: node + linkType: hard + +"npmluau@npm:^0.1.1": + version: 0.1.1 + resolution: "npmluau@npm:0.1.1" + dependencies: + commander: "npm:^11.0.0" + walkdir: "npm:^0.4.1" + bin: + npmluau: main.js + checksum: 9ae22c0dcff9e85c90b4da4e8c17bc51e9b567b4a417c9767d355ff68faca4f99a2934b581743ebc8729f6851d1ba5b64597312151747252e040517d1794fbca + languageName: node + linkType: hard + +"symbol-luau@npm:^1.0.0": + version: 1.0.1 + resolution: "symbol-luau@npm:1.0.1" + checksum: ab51a77331b2d5e4666528bada17e67b26aea355257bba9e97351016cd1836bd19f372355a14cf5bef2f4d5bc6b32fe91aeb09698d7bdc079d2c61330bedf251 + languageName: node + linkType: hard + +"walkdir@npm:^0.4.1": + version: 0.4.1 + resolution: "walkdir@npm:0.4.1" + checksum: 88e635aa9303e9196e4dc15013d2bd4afca4c8c8b4bb27722ca042bad213bb882d3b9141b3b0cca6bfb274f7889b30cf58d6374844094abec0016f335c5414dc + languageName: node + linkType: hard From cfa0dd641616618832fcc3370dcc6fd240ee8c3d Mon Sep 17 00:00:00 2001 From: jeparlefrancais Date: Thu, 21 Dec 2023 19:13:01 -0500 Subject: [PATCH 3/3] Switch union types to avoid darklua issue --- src/utilities/TypeInfo.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/utilities/TypeInfo.lua b/src/utilities/TypeInfo.lua index c9ca85f..79c7789 100644 --- a/src/utilities/TypeInfo.lua +++ b/src/utilities/TypeInfo.lua @@ -85,11 +85,11 @@ end -- */ export type TypeInfo = { _schema: GraphQLSchema, - _typeStack: Array, - _parentTypeStack: Array, - _inputTypeStack: Array, - _fieldDefStack: Array? | NULL>, - _defaultValueStack: Array, + _typeStack: Array, + _parentTypeStack: Array, + _inputTypeStack: Array, + _fieldDefStack: Array?>, + _defaultValueStack: Array, _directive: GraphQLDirective?, _argument: GraphQLArgument?, _enumValue: GraphQLEnumValue?,