graphql 0.0.1-test.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/LICENSE +21 -0
  2. package/NotSupportedTSVersion.d.ts +1 -0
  3. package/README.md +158 -0
  4. package/error/GraphQLError.d.ts +142 -0
  5. package/error/GraphQLError.js +267 -0
  6. package/error/GraphQLError.mjs +253 -0
  7. package/error/index.d.ts +7 -0
  8. package/error/index.js +41 -0
  9. package/error/index.mjs +3 -0
  10. package/error/locatedError.d.ts +13 -0
  11. package/error/locatedError.js +40 -0
  12. package/error/locatedError.mjs +32 -0
  13. package/error/syntaxError.d.ts +11 -0
  14. package/error/syntaxError.js +21 -0
  15. package/error/syntaxError.mjs +11 -0
  16. package/execution/collectFields.d.ts +45 -0
  17. package/execution/collectFields.js +229 -0
  18. package/execution/collectFields.mjs +213 -0
  19. package/execution/execute.d.ts +185 -0
  20. package/execution/execute.js +1016 -0
  21. package/execution/execute.mjs +988 -0
  22. package/execution/index.d.ts +14 -0
  23. package/execution/index.js +67 -0
  24. package/execution/index.mjs +9 -0
  25. package/execution/mapAsyncIterator.d.ts +9 -0
  26. package/execution/mapAsyncIterator.js +68 -0
  27. package/execution/mapAsyncIterator.mjs +61 -0
  28. package/execution/subscribe.d.ts +68 -0
  29. package/execution/subscribe.js +261 -0
  30. package/execution/subscribe.mjs +239 -0
  31. package/execution/values.d.ts +81 -0
  32. package/execution/values.js +292 -0
  33. package/execution/values.mjs +255 -0
  34. package/graphql.d.ts +67 -0
  35. package/graphql.js +96 -0
  36. package/graphql.mjs +122 -0
  37. package/index.d.ts +411 -0
  38. package/index.js +1263 -0
  39. package/index.mjs +254 -0
  40. package/jsutils/Maybe.d.ts +2 -0
  41. package/jsutils/Maybe.js +5 -0
  42. package/jsutils/Maybe.mjs +1 -0
  43. package/jsutils/ObjMap.d.ts +16 -0
  44. package/jsutils/ObjMap.js +5 -0
  45. package/jsutils/ObjMap.mjs +1 -0
  46. package/jsutils/Path.d.ts +20 -0
  47. package/jsutils/Path.js +33 -0
  48. package/jsutils/Path.mjs +25 -0
  49. package/jsutils/PromiseOrValue.d.ts +1 -0
  50. package/jsutils/PromiseOrValue.js +5 -0
  51. package/jsutils/PromiseOrValue.mjs +1 -0
  52. package/jsutils/devAssert.d.ts +1 -0
  53. package/jsutils/devAssert.js +14 -0
  54. package/jsutils/devAssert.mjs +7 -0
  55. package/jsutils/didYouMean.d.ts +8 -0
  56. package/jsutils/didYouMean.js +38 -0
  57. package/jsutils/didYouMean.mjs +32 -0
  58. package/jsutils/groupBy.d.ts +7 -0
  59. package/jsutils/groupBy.js +26 -0
  60. package/jsutils/groupBy.mjs +19 -0
  61. package/jsutils/identityFunc.d.ts +4 -0
  62. package/jsutils/identityFunc.js +13 -0
  63. package/jsutils/identityFunc.mjs +6 -0
  64. package/jsutils/inspect.d.ts +4 -0
  65. package/jsutils/inspect.js +121 -0
  66. package/jsutils/inspect.mjs +115 -0
  67. package/jsutils/instanceOf.d.ts +16 -0
  68. package/jsutils/instanceOf.js +60 -0
  69. package/jsutils/instanceOf.mjs +52 -0
  70. package/jsutils/invariant.d.ts +4 -0
  71. package/jsutils/invariant.js +16 -0
  72. package/jsutils/invariant.mjs +9 -0
  73. package/jsutils/isAsyncIterable.d.ts +7 -0
  74. package/jsutils/isAsyncIterable.js +18 -0
  75. package/jsutils/isAsyncIterable.mjs +11 -0
  76. package/jsutils/isIterableObject.d.ts +20 -0
  77. package/jsutils/isIterableObject.js +32 -0
  78. package/jsutils/isIterableObject.mjs +25 -0
  79. package/jsutils/isObjectLike.d.ts +7 -0
  80. package/jsutils/isObjectLike.js +14 -0
  81. package/jsutils/isObjectLike.mjs +7 -0
  82. package/jsutils/isPromise.d.ts +5 -0
  83. package/jsutils/isPromise.js +17 -0
  84. package/jsutils/isPromise.mjs +10 -0
  85. package/jsutils/keyMap.d.ts +32 -0
  86. package/jsutils/keyMap.js +43 -0
  87. package/jsutils/keyMap.mjs +36 -0
  88. package/jsutils/keyValMap.d.ts +23 -0
  89. package/jsutils/keyValMap.js +33 -0
  90. package/jsutils/keyValMap.mjs +26 -0
  91. package/jsutils/mapValue.d.ts +9 -0
  92. package/jsutils/mapValue.js +20 -0
  93. package/jsutils/mapValue.mjs +13 -0
  94. package/jsutils/memoize3.d.ts +9 -0
  95. package/jsutils/memoize3.js +41 -0
  96. package/jsutils/memoize3.mjs +34 -0
  97. package/jsutils/naturalCompare.d.ts +8 -0
  98. package/jsutils/naturalCompare.js +69 -0
  99. package/jsutils/naturalCompare.mjs +61 -0
  100. package/jsutils/printPathArray.d.ts +6 -0
  101. package/jsutils/printPathArray.js +17 -0
  102. package/jsutils/printPathArray.mjs +10 -0
  103. package/jsutils/promiseForObject.d.ts +11 -0
  104. package/jsutils/promiseForObject.js +25 -0
  105. package/jsutils/promiseForObject.mjs +18 -0
  106. package/jsutils/promiseReduce.d.ts +13 -0
  107. package/jsutils/promiseReduce.js +27 -0
  108. package/jsutils/promiseReduce.mjs +20 -0
  109. package/jsutils/suggestionList.d.ts +8 -0
  110. package/jsutils/suggestionList.js +139 -0
  111. package/jsutils/suggestionList.mjs +130 -0
  112. package/jsutils/toError.d.ts +4 -0
  113. package/jsutils/toError.js +25 -0
  114. package/jsutils/toError.mjs +18 -0
  115. package/jsutils/toObjMap.d.ts +5 -0
  116. package/jsutils/toObjMap.js +24 -0
  117. package/jsutils/toObjMap.mjs +17 -0
  118. package/language/ast.d.ts +536 -0
  119. package/language/ast.js +224 -0
  120. package/language/ast.mjs +206 -0
  121. package/language/blockString.d.ts +28 -0
  122. package/language/blockString.js +195 -0
  123. package/language/blockString.mjs +178 -0
  124. package/language/characterClasses.d.ts +47 -0
  125. package/language/characterClasses.js +75 -0
  126. package/language/characterClasses.mjs +64 -0
  127. package/language/directiveLocation.d.ts +32 -0
  128. package/language/directiveLocation.js +40 -0
  129. package/language/directiveLocation.mjs +31 -0
  130. package/language/index.d.ts +97 -0
  131. package/language/index.js +215 -0
  132. package/language/index.mjs +29 -0
  133. package/language/kinds.d.ts +65 -0
  134. package/language/kinds.js +64 -0
  135. package/language/kinds.mjs +55 -0
  136. package/language/lexer.d.ts +45 -0
  137. package/language/lexer.js +1006 -0
  138. package/language/lexer.mjs +902 -0
  139. package/language/location.d.ts +16 -0
  140. package/language/location.js +38 -0
  141. package/language/location.mjs +30 -0
  142. package/language/parser.d.ts +554 -0
  143. package/language/parser.js +1567 -0
  144. package/language/parser.mjs +1524 -0
  145. package/language/predicates.d.ts +33 -0
  146. package/language/predicates.js +109 -0
  147. package/language/predicates.mjs +81 -0
  148. package/language/printLocation.d.ts +14 -0
  149. package/language/printLocation.js +74 -0
  150. package/language/printLocation.mjs +66 -0
  151. package/language/printString.d.ts +5 -0
  152. package/language/printString.js +183 -0
  153. package/language/printString.mjs +176 -0
  154. package/language/printer.d.ts +6 -0
  155. package/language/printer.js +351 -0
  156. package/language/printer.mjs +339 -0
  157. package/language/source.d.ts +25 -0
  158. package/language/source.js +65 -0
  159. package/language/source.mjs +50 -0
  160. package/language/tokenKind.d.ts +34 -0
  161. package/language/tokenKind.js +44 -0
  162. package/language/tokenKind.mjs +35 -0
  163. package/language/visitor.d.ts +194 -0
  164. package/language/visitor.js +377 -0
  165. package/language/visitor.mjs +361 -0
  166. package/package.json +40 -0
  167. package/subscription/index.d.ts +19 -0
  168. package/subscription/index.js +19 -0
  169. package/subscription/index.mjs +19 -0
  170. package/type/assertName.d.ts +10 -0
  171. package/type/assertName.js +59 -0
  172. package/type/assertName.mjs +44 -0
  173. package/type/definition.d.ts +917 -0
  174. package/type/definition.js +1329 -0
  175. package/type/definition.mjs +1167 -0
  176. package/type/directives.d.ts +86 -0
  177. package/type/directives.js +224 -0
  178. package/type/directives.mjs +190 -0
  179. package/type/index.d.ts +150 -0
  180. package/type/index.js +547 -0
  181. package/type/index.mjs +103 -0
  182. package/type/introspection.d.ts +29 -0
  183. package/type/introspection.js +617 -0
  184. package/type/introspection.mjs +550 -0
  185. package/type/scalars.d.ts +19 -0
  186. package/type/scalars.js +359 -0
  187. package/type/scalars.mjs +299 -0
  188. package/type/schema.d.ts +170 -0
  189. package/type/schema.js +402 -0
  190. package/type/schema.mjs +381 -0
  191. package/type/validate.d.ts +17 -0
  192. package/type/validate.js +672 -0
  193. package/type/validate.mjs +647 -0
  194. package/utilities/TypeInfo.d.ts +67 -0
  195. package/utilities/TypeInfo.js +418 -0
  196. package/utilities/TypeInfo.mjs +395 -0
  197. package/utilities/assertValidName.d.ts +13 -0
  198. package/utilities/assertValidName.js +51 -0
  199. package/utilities/assertValidName.mjs +40 -0
  200. package/utilities/astFromValue.d.ts +28 -0
  201. package/utilities/astFromValue.js +190 -0
  202. package/utilities/astFromValue.mjs +177 -0
  203. package/utilities/buildASTSchema.d.ts +35 -0
  204. package/utilities/buildASTSchema.js +115 -0
  205. package/utilities/buildASTSchema.mjs +97 -0
  206. package/utilities/buildClientSchema.d.ts +19 -0
  207. package/utilities/buildClientSchema.js +386 -0
  208. package/utilities/buildClientSchema.mjs +363 -0
  209. package/utilities/coerceInputValue.d.ts +16 -0
  210. package/utilities/coerceInputValue.js +191 -0
  211. package/utilities/coerceInputValue.mjs +172 -0
  212. package/utilities/concatAST.d.ts +9 -0
  213. package/utilities/concatAST.js +26 -0
  214. package/utilities/concatAST.mjs +19 -0
  215. package/utilities/extendSchema.d.ts +40 -0
  216. package/utilities/extendSchema.js +798 -0
  217. package/utilities/extendSchema.mjs +789 -0
  218. package/utilities/findBreakingChanges.d.ts +51 -0
  219. package/utilities/findBreakingChanges.js +547 -0
  220. package/utilities/findBreakingChanges.mjs +516 -0
  221. package/utilities/getIntrospectionQuery.d.ts +182 -0
  222. package/utilities/getIntrospectionQuery.js +134 -0
  223. package/utilities/getIntrospectionQuery.mjs +127 -0
  224. package/utilities/getOperationAST.d.ts +11 -0
  225. package/utilities/getOperationAST.js +43 -0
  226. package/utilities/getOperationAST.mjs +36 -0
  227. package/utilities/getOperationRootType.d.ts +15 -0
  228. package/utilities/getOperationRootType.js +59 -0
  229. package/utilities/getOperationRootType.mjs +52 -0
  230. package/utilities/index.d.ts +61 -0
  231. package/utilities/index.js +233 -0
  232. package/utilities/index.mjs +55 -0
  233. package/utilities/introspectionFromSchema.d.ts +18 -0
  234. package/utilities/introspectionFromSchema.js +42 -0
  235. package/utilities/introspectionFromSchema.mjs +30 -0
  236. package/utilities/lexicographicSortSchema.d.ts +9 -0
  237. package/utilities/lexicographicSortSchema.js +177 -0
  238. package/utilities/lexicographicSortSchema.mjs +172 -0
  239. package/utilities/printSchema.d.ts +5 -0
  240. package/utilities/printSchema.js +333 -0
  241. package/utilities/printSchema.mjs +309 -0
  242. package/utilities/separateOperations.d.ts +11 -0
  243. package/utilities/separateOperations.js +88 -0
  244. package/utilities/separateOperations.mjs +80 -0
  245. package/utilities/sortValueNode.d.ts +9 -0
  246. package/utilities/sortValueNode.js +47 -0
  247. package/utilities/sortValueNode.mjs +39 -0
  248. package/utilities/stripIgnoredCharacters.d.ts +62 -0
  249. package/utilities/stripIgnoredCharacters.js +121 -0
  250. package/utilities/stripIgnoredCharacters.mjs +104 -0
  251. package/utilities/typeComparators.d.ts +32 -0
  252. package/utilities/typeComparators.js +116 -0
  253. package/utilities/typeComparators.mjs +106 -0
  254. package/utilities/typeFromAST.d.ts +32 -0
  255. package/utilities/typeFromAST.js +27 -0
  256. package/utilities/typeFromAST.mjs +18 -0
  257. package/utilities/typedQueryDocumentNode.d.ts +22 -0
  258. package/utilities/typedQueryDocumentNode.js +5 -0
  259. package/utilities/typedQueryDocumentNode.mjs +1 -0
  260. package/utilities/valueFromAST.d.ts +29 -0
  261. package/utilities/valueFromAST.js +185 -0
  262. package/utilities/valueFromAST.mjs +172 -0
  263. package/utilities/valueFromASTUntyped.d.ts +23 -0
  264. package/utilities/valueFromASTUntyped.js +61 -0
  265. package/utilities/valueFromASTUntyped.mjs +53 -0
  266. package/validation/ValidationContext.d.ts +95 -0
  267. package/validation/ValidationContext.js +232 -0
  268. package/validation/ValidationContext.mjs +212 -0
  269. package/validation/index.d.ts +40 -0
  270. package/validation/index.js +317 -0
  271. package/validation/index.mjs +68 -0
  272. package/validation/rules/ExecutableDefinitionsRule.d.ts +13 -0
  273. package/validation/rules/ExecutableDefinitionsRule.js +44 -0
  274. package/validation/rules/ExecutableDefinitionsRule.mjs +35 -0
  275. package/validation/rules/FieldsOnCorrectTypeRule.d.ts +13 -0
  276. package/validation/rules/FieldsOnCorrectTypeRule.js +143 -0
  277. package/validation/rules/FieldsOnCorrectTypeRule.mjs +125 -0
  278. package/validation/rules/FragmentsOnCompositeTypesRule.d.ts +14 -0
  279. package/validation/rules/FragmentsOnCompositeTypesRule.js +65 -0
  280. package/validation/rules/FragmentsOnCompositeTypesRule.mjs +49 -0
  281. package/validation/rules/KnownArgumentNamesRule.d.ts +23 -0
  282. package/validation/rules/KnownArgumentNamesRule.js +116 -0
  283. package/validation/rules/KnownArgumentNamesRule.mjs +98 -0
  284. package/validation/rules/KnownDirectivesRule.d.ts +16 -0
  285. package/validation/rules/KnownDirectivesRule.js +163 -0
  286. package/validation/rules/KnownDirectivesRule.mjs +146 -0
  287. package/validation/rules/KnownFragmentNamesRule.d.ts +13 -0
  288. package/validation/rules/KnownFragmentNamesRule.js +34 -0
  289. package/validation/rules/KnownFragmentNamesRule.mjs +24 -0
  290. package/validation/rules/KnownTypeNamesRule.d.ts +16 -0
  291. package/validation/rules/KnownTypeNamesRule.js +87 -0
  292. package/validation/rules/KnownTypeNamesRule.mjs +75 -0
  293. package/validation/rules/LoneAnonymousOperationRule.d.ts +13 -0
  294. package/validation/rules/LoneAnonymousOperationRule.js +40 -0
  295. package/validation/rules/LoneAnonymousOperationRule.mjs +32 -0
  296. package/validation/rules/LoneSchemaDefinitionRule.d.ts +10 -0
  297. package/validation/rules/LoneSchemaDefinitionRule.js +63 -0
  298. package/validation/rules/LoneSchemaDefinitionRule.mjs +53 -0
  299. package/validation/rules/NoFragmentCyclesRule.d.ts +13 -0
  300. package/validation/rules/NoFragmentCyclesRule.js +83 -0
  301. package/validation/rules/NoFragmentCyclesRule.mjs +76 -0
  302. package/validation/rules/NoUndefinedVariablesRule.d.ts +13 -0
  303. package/validation/rules/NoUndefinedVariablesRule.js +50 -0
  304. package/validation/rules/NoUndefinedVariablesRule.mjs +43 -0
  305. package/validation/rules/NoUnusedFragmentsRule.d.ts +13 -0
  306. package/validation/rules/NoUnusedFragmentsRule.js +59 -0
  307. package/validation/rules/NoUnusedFragmentsRule.mjs +52 -0
  308. package/validation/rules/NoUnusedVariablesRule.d.ts +13 -0
  309. package/validation/rules/NoUnusedVariablesRule.js +55 -0
  310. package/validation/rules/NoUnusedVariablesRule.mjs +48 -0
  311. package/validation/rules/OverlappingFieldsCanBeMergedRule-old.js +805 -0
  312. package/validation/rules/OverlappingFieldsCanBeMergedRule-old.mjs +788 -0
  313. package/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +14 -0
  314. package/validation/rules/OverlappingFieldsCanBeMergedRule.js +805 -0
  315. package/validation/rules/OverlappingFieldsCanBeMergedRule.mjs +788 -0
  316. package/validation/rules/PossibleFragmentSpreadsRule.d.ts +12 -0
  317. package/validation/rules/PossibleFragmentSpreadsRule.js +91 -0
  318. package/validation/rules/PossibleFragmentSpreadsRule.mjs +69 -0
  319. package/validation/rules/PossibleTypeExtensionsRule.d.ts +10 -0
  320. package/validation/rules/PossibleTypeExtensionsRule.js +167 -0
  321. package/validation/rules/PossibleTypeExtensionsRule.mjs +147 -0
  322. package/validation/rules/ProvidedRequiredArgumentsRule.d.ts +20 -0
  323. package/validation/rules/ProvidedRequiredArgumentsRule.js +158 -0
  324. package/validation/rules/ProvidedRequiredArgumentsRule.mjs +138 -0
  325. package/validation/rules/ScalarLeafsRule.d.ts +9 -0
  326. package/validation/rules/ScalarLeafsRule.js +51 -0
  327. package/validation/rules/ScalarLeafsRule.mjs +42 -0
  328. package/validation/rules/SingleFieldSubscriptionsRule.d.ts +13 -0
  329. package/validation/rules/SingleFieldSubscriptionsRule.js +82 -0
  330. package/validation/rules/SingleFieldSubscriptionsRule.mjs +73 -0
  331. package/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +11 -0
  332. package/validation/rules/UniqueArgumentDefinitionNamesRule.js +90 -0
  333. package/validation/rules/UniqueArgumentDefinitionNamesRule.mjs +79 -0
  334. package/validation/rules/UniqueArgumentNamesRule.d.ts +13 -0
  335. package/validation/rules/UniqueArgumentNamesRule.js +53 -0
  336. package/validation/rules/UniqueArgumentNamesRule.mjs +42 -0
  337. package/validation/rules/UniqueDirectiveNamesRule.d.ts +10 -0
  338. package/validation/rules/UniqueDirectiveNamesRule.js +50 -0
  339. package/validation/rules/UniqueDirectiveNamesRule.mjs +43 -0
  340. package/validation/rules/UniqueDirectivesPerLocationRule.d.ts +16 -0
  341. package/validation/rules/UniqueDirectivesPerLocationRule.js +93 -0
  342. package/validation/rules/UniqueDirectivesPerLocationRule.mjs +83 -0
  343. package/validation/rules/UniqueEnumValueNamesRule.d.ts +10 -0
  344. package/validation/rules/UniqueEnumValueNamesRule.js +71 -0
  345. package/validation/rules/UniqueEnumValueNamesRule.mjs +60 -0
  346. package/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +10 -0
  347. package/validation/rules/UniqueFieldDefinitionNamesRule.js +83 -0
  348. package/validation/rules/UniqueFieldDefinitionNamesRule.mjs +75 -0
  349. package/validation/rules/UniqueFragmentNamesRule.d.ts +12 -0
  350. package/validation/rules/UniqueFragmentNamesRule.js +39 -0
  351. package/validation/rules/UniqueFragmentNamesRule.mjs +32 -0
  352. package/validation/rules/UniqueInputFieldNamesRule.d.ts +13 -0
  353. package/validation/rules/UniqueInputFieldNamesRule.js +52 -0
  354. package/validation/rules/UniqueInputFieldNamesRule.mjs +44 -0
  355. package/validation/rules/UniqueOperationNamesRule.d.ts +12 -0
  356. package/validation/rules/UniqueOperationNamesRule.js +41 -0
  357. package/validation/rules/UniqueOperationNamesRule.mjs +34 -0
  358. package/validation/rules/UniqueOperationTypesRule.d.ts +10 -0
  359. package/validation/rules/UniqueOperationTypesRule.js +67 -0
  360. package/validation/rules/UniqueOperationTypesRule.mjs +60 -0
  361. package/validation/rules/UniqueTypeNamesRule.d.ts +10 -0
  362. package/validation/rules/UniqueTypeNamesRule.js +53 -0
  363. package/validation/rules/UniqueTypeNamesRule.mjs +46 -0
  364. package/validation/rules/UniqueVariableNamesRule.d.ts +10 -0
  365. package/validation/rules/UniqueVariableNamesRule.js +47 -0
  366. package/validation/rules/UniqueVariableNamesRule.mjs +39 -0
  367. package/validation/rules/ValuesOfCorrectTypeRule.d.ts +13 -0
  368. package/validation/rules/ValuesOfCorrectTypeRule.js +183 -0
  369. package/validation/rules/ValuesOfCorrectTypeRule.mjs +164 -0
  370. package/validation/rules/VariablesAreInputTypesRule.d.ts +13 -0
  371. package/validation/rules/VariablesAreInputTypesRule.js +44 -0
  372. package/validation/rules/VariablesAreInputTypesRule.mjs +31 -0
  373. package/validation/rules/VariablesInAllowedPositionRule.d.ts +12 -0
  374. package/validation/rules/VariablesInAllowedPositionRule.js +114 -0
  375. package/validation/rules/VariablesInAllowedPositionRule.mjs +95 -0
  376. package/validation/rules/custom/NoDeprecatedCustomRule.d.ts +15 -0
  377. package/validation/rules/custom/NoDeprecatedCustomRule.js +121 -0
  378. package/validation/rules/custom/NoDeprecatedCustomRule.mjs +107 -0
  379. package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +15 -0
  380. package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +39 -0
  381. package/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs +30 -0
  382. package/validation/specifiedRules.d.ts +12 -0
  383. package/validation/specifiedRules.js +160 -0
  384. package/validation/specifiedRules.mjs +123 -0
  385. package/validation/validate.d.ts +61 -0
  386. package/validation/validate.js +151 -0
  387. package/validation/validate.mjs +133 -0
  388. package/version.d.ts +13 -0
  389. package/version.js +25 -0
  390. package/version.mjs +17 -0
@@ -0,0 +1,139 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true,
5
+ });
6
+ exports.suggestionList = suggestionList;
7
+
8
+ var _naturalCompare = require('./naturalCompare.js');
9
+
10
+ /**
11
+ * Given an invalid input string and a list of valid options, returns a filtered
12
+ * list of valid options sorted based on their similarity with the input.
13
+ */
14
+ function suggestionList(input, options) {
15
+ const optionsByDistance = Object.create(null);
16
+ const lexicalDistance = new LexicalDistance(input);
17
+ const threshold = Math.floor(input.length * 0.4) + 1;
18
+
19
+ for (const option of options) {
20
+ const distance = lexicalDistance.measure(option, threshold);
21
+
22
+ if (distance !== undefined) {
23
+ optionsByDistance[option] = distance;
24
+ }
25
+ }
26
+
27
+ return Object.keys(optionsByDistance).sort((a, b) => {
28
+ const distanceDiff = optionsByDistance[a] - optionsByDistance[b];
29
+ return distanceDiff !== 0
30
+ ? distanceDiff
31
+ : (0, _naturalCompare.naturalCompare)(a, b);
32
+ });
33
+ }
34
+ /**
35
+ * Computes the lexical distance between strings A and B.
36
+ *
37
+ * The "distance" between two strings is given by counting the minimum number
38
+ * of edits needed to transform string A into string B. An edit can be an
39
+ * insertion, deletion, or substitution of a single character, or a swap of two
40
+ * adjacent characters.
41
+ *
42
+ * Includes a custom alteration from Damerau-Levenshtein to treat case changes
43
+ * as a single edit which helps identify mis-cased values with an edit distance
44
+ * of 1.
45
+ *
46
+ * This distance can be useful for detecting typos in input or sorting
47
+ */
48
+
49
+ class LexicalDistance {
50
+ constructor(input) {
51
+ this._input = input;
52
+ this._inputLowerCase = input.toLowerCase();
53
+ this._inputArray = stringToArray(this._inputLowerCase);
54
+ this._rows = [
55
+ new Array(input.length + 1).fill(0),
56
+ new Array(input.length + 1).fill(0),
57
+ new Array(input.length + 1).fill(0),
58
+ ];
59
+ }
60
+
61
+ measure(option, threshold) {
62
+ if (this._input === option) {
63
+ return 0;
64
+ }
65
+
66
+ const optionLowerCase = option.toLowerCase(); // Any case change counts as a single edit
67
+
68
+ if (this._inputLowerCase === optionLowerCase) {
69
+ return 1;
70
+ }
71
+
72
+ let a = stringToArray(optionLowerCase);
73
+ let b = this._inputArray;
74
+
75
+ if (a.length < b.length) {
76
+ const tmp = a;
77
+ a = b;
78
+ b = tmp;
79
+ }
80
+
81
+ const aLength = a.length;
82
+ const bLength = b.length;
83
+
84
+ if (aLength - bLength > threshold) {
85
+ return undefined;
86
+ }
87
+
88
+ const rows = this._rows;
89
+
90
+ for (let j = 0; j <= bLength; j++) {
91
+ rows[0][j] = j;
92
+ }
93
+
94
+ for (let i = 1; i <= aLength; i++) {
95
+ const upRow = rows[(i - 1) % 3];
96
+ const currentRow = rows[i % 3];
97
+ let smallestCell = (currentRow[0] = i);
98
+
99
+ for (let j = 1; j <= bLength; j++) {
100
+ const cost = a[i - 1] === b[j - 1] ? 0 : 1;
101
+ let currentCell = Math.min(
102
+ upRow[j] + 1, // delete
103
+ currentRow[j - 1] + 1, // insert
104
+ upRow[j - 1] + cost, // substitute
105
+ );
106
+
107
+ if (i > 1 && j > 1 && a[i - 1] === b[j - 2] && a[i - 2] === b[j - 1]) {
108
+ // transposition
109
+ const doubleDiagonalCell = rows[(i - 2) % 3][j - 2];
110
+ currentCell = Math.min(currentCell, doubleDiagonalCell + 1);
111
+ }
112
+
113
+ if (currentCell < smallestCell) {
114
+ smallestCell = currentCell;
115
+ }
116
+
117
+ currentRow[j] = currentCell;
118
+ } // Early exit, since distance can't go smaller than smallest element of the previous row.
119
+
120
+ if (smallestCell > threshold) {
121
+ return undefined;
122
+ }
123
+ }
124
+
125
+ const distance = rows[aLength % 3][bLength];
126
+ return distance <= threshold ? distance : undefined;
127
+ }
128
+ }
129
+
130
+ function stringToArray(str) {
131
+ const strLength = str.length;
132
+ const array = new Array(strLength);
133
+
134
+ for (let i = 0; i < strLength; ++i) {
135
+ array[i] = str.charCodeAt(i);
136
+ }
137
+
138
+ return array;
139
+ }
@@ -0,0 +1,130 @@
1
+ import { naturalCompare } from './naturalCompare.mjs';
2
+ /**
3
+ * Given an invalid input string and a list of valid options, returns a filtered
4
+ * list of valid options sorted based on their similarity with the input.
5
+ */
6
+
7
+ export function suggestionList(input, options) {
8
+ const optionsByDistance = Object.create(null);
9
+ const lexicalDistance = new LexicalDistance(input);
10
+ const threshold = Math.floor(input.length * 0.4) + 1;
11
+
12
+ for (const option of options) {
13
+ const distance = lexicalDistance.measure(option, threshold);
14
+
15
+ if (distance !== undefined) {
16
+ optionsByDistance[option] = distance;
17
+ }
18
+ }
19
+
20
+ return Object.keys(optionsByDistance).sort((a, b) => {
21
+ const distanceDiff = optionsByDistance[a] - optionsByDistance[b];
22
+ return distanceDiff !== 0 ? distanceDiff : naturalCompare(a, b);
23
+ });
24
+ }
25
+ /**
26
+ * Computes the lexical distance between strings A and B.
27
+ *
28
+ * The "distance" between two strings is given by counting the minimum number
29
+ * of edits needed to transform string A into string B. An edit can be an
30
+ * insertion, deletion, or substitution of a single character, or a swap of two
31
+ * adjacent characters.
32
+ *
33
+ * Includes a custom alteration from Damerau-Levenshtein to treat case changes
34
+ * as a single edit which helps identify mis-cased values with an edit distance
35
+ * of 1.
36
+ *
37
+ * This distance can be useful for detecting typos in input or sorting
38
+ */
39
+
40
+ class LexicalDistance {
41
+ constructor(input) {
42
+ this._input = input;
43
+ this._inputLowerCase = input.toLowerCase();
44
+ this._inputArray = stringToArray(this._inputLowerCase);
45
+ this._rows = [
46
+ new Array(input.length + 1).fill(0),
47
+ new Array(input.length + 1).fill(0),
48
+ new Array(input.length + 1).fill(0),
49
+ ];
50
+ }
51
+
52
+ measure(option, threshold) {
53
+ if (this._input === option) {
54
+ return 0;
55
+ }
56
+
57
+ const optionLowerCase = option.toLowerCase(); // Any case change counts as a single edit
58
+
59
+ if (this._inputLowerCase === optionLowerCase) {
60
+ return 1;
61
+ }
62
+
63
+ let a = stringToArray(optionLowerCase);
64
+ let b = this._inputArray;
65
+
66
+ if (a.length < b.length) {
67
+ const tmp = a;
68
+ a = b;
69
+ b = tmp;
70
+ }
71
+
72
+ const aLength = a.length;
73
+ const bLength = b.length;
74
+
75
+ if (aLength - bLength > threshold) {
76
+ return undefined;
77
+ }
78
+
79
+ const rows = this._rows;
80
+
81
+ for (let j = 0; j <= bLength; j++) {
82
+ rows[0][j] = j;
83
+ }
84
+
85
+ for (let i = 1; i <= aLength; i++) {
86
+ const upRow = rows[(i - 1) % 3];
87
+ const currentRow = rows[i % 3];
88
+ let smallestCell = (currentRow[0] = i);
89
+
90
+ for (let j = 1; j <= bLength; j++) {
91
+ const cost = a[i - 1] === b[j - 1] ? 0 : 1;
92
+ let currentCell = Math.min(
93
+ upRow[j] + 1, // delete
94
+ currentRow[j - 1] + 1, // insert
95
+ upRow[j - 1] + cost, // substitute
96
+ );
97
+
98
+ if (i > 1 && j > 1 && a[i - 1] === b[j - 2] && a[i - 2] === b[j - 1]) {
99
+ // transposition
100
+ const doubleDiagonalCell = rows[(i - 2) % 3][j - 2];
101
+ currentCell = Math.min(currentCell, doubleDiagonalCell + 1);
102
+ }
103
+
104
+ if (currentCell < smallestCell) {
105
+ smallestCell = currentCell;
106
+ }
107
+
108
+ currentRow[j] = currentCell;
109
+ } // Early exit, since distance can't go smaller than smallest element of the previous row.
110
+
111
+ if (smallestCell > threshold) {
112
+ return undefined;
113
+ }
114
+ }
115
+
116
+ const distance = rows[aLength % 3][bLength];
117
+ return distance <= threshold ? distance : undefined;
118
+ }
119
+ }
120
+
121
+ function stringToArray(str) {
122
+ const strLength = str.length;
123
+ const array = new Array(strLength);
124
+
125
+ for (let i = 0; i < strLength; ++i) {
126
+ array[i] = str.charCodeAt(i);
127
+ }
128
+
129
+ return array;
130
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Sometimes a non-error is thrown, wrap it as an Error instance to ensure a consistent Error interface.
3
+ */
4
+ export declare function toError(thrownValue: unknown): Error;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true,
5
+ });
6
+ exports.toError = toError;
7
+
8
+ var _inspect = require('./inspect.js');
9
+
10
+ /**
11
+ * Sometimes a non-error is thrown, wrap it as an Error instance to ensure a consistent Error interface.
12
+ */
13
+ function toError(thrownValue) {
14
+ return thrownValue instanceof Error
15
+ ? thrownValue
16
+ : new NonErrorThrown(thrownValue);
17
+ }
18
+
19
+ class NonErrorThrown extends Error {
20
+ constructor(thrownValue) {
21
+ super('Unexpected error value: ' + (0, _inspect.inspect)(thrownValue));
22
+ this.name = 'NonErrorThrown';
23
+ this.thrownValue = thrownValue;
24
+ }
25
+ }
@@ -0,0 +1,18 @@
1
+ import { inspect } from './inspect.mjs';
2
+ /**
3
+ * Sometimes a non-error is thrown, wrap it as an Error instance to ensure a consistent Error interface.
4
+ */
5
+
6
+ export function toError(thrownValue) {
7
+ return thrownValue instanceof Error
8
+ ? thrownValue
9
+ : new NonErrorThrown(thrownValue);
10
+ }
11
+
12
+ class NonErrorThrown extends Error {
13
+ constructor(thrownValue) {
14
+ super('Unexpected error value: ' + inspect(thrownValue));
15
+ this.name = 'NonErrorThrown';
16
+ this.thrownValue = thrownValue;
17
+ }
18
+ }
@@ -0,0 +1,5 @@
1
+ import type { Maybe } from './Maybe';
2
+ import type { ReadOnlyObjMap, ReadOnlyObjMapLike } from './ObjMap';
3
+ export declare function toObjMap<T>(
4
+ obj: Maybe<ReadOnlyObjMapLike<T>>,
5
+ ): ReadOnlyObjMap<T>;
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true,
5
+ });
6
+ exports.toObjMap = toObjMap;
7
+
8
+ function toObjMap(obj) {
9
+ if (obj == null) {
10
+ return Object.create(null);
11
+ }
12
+
13
+ if (Object.getPrototypeOf(obj) === null) {
14
+ return obj;
15
+ }
16
+
17
+ const map = Object.create(null);
18
+
19
+ for (const [key, value] of Object.entries(obj)) {
20
+ map[key] = value;
21
+ }
22
+
23
+ return map;
24
+ }
@@ -0,0 +1,17 @@
1
+ export function toObjMap(obj) {
2
+ if (obj == null) {
3
+ return Object.create(null);
4
+ }
5
+
6
+ if (Object.getPrototypeOf(obj) === null) {
7
+ return obj;
8
+ }
9
+
10
+ const map = Object.create(null);
11
+
12
+ for (const [key, value] of Object.entries(obj)) {
13
+ map[key] = value;
14
+ }
15
+
16
+ return map;
17
+ }