Buckets:
| # 3.21.0 | |
| **Features:** | |
| * added `getWellKnownSymbolPropertyOfType` to reliably get symbol named properties due to changes in typescript@4.3 | |
| * `getPropertyNameOfWellKnownSymbol` is now deprecated | |
| # 3.20.0 | |
| **Features:** | |
| * `findImports` and `findImportLikeNodes` take an additional parameter `ignoreFileName`. The default value for this paramter is `true` to remain backwards compatible. When set to `false`, it matches the behavior of TypeScript, i.e. only looks for `require` in JavaScript files. | |
| **Bugfixes:** | |
| * `getJsDoc` for `EndOfFileToken` now returns `JSDoc` comments whose contents are usable with the type checker | |
| # 3.19.1 | |
| **Bugfixes:** | |
| * `getSymbolOfClassLikeDeclaration` no longer crashes on anonymous mixin classes | |
| # 3.19.0 | |
| **Features:** | |
| * `getSymbolOfClassLikeDeclaration` to retrieve the symbol of class declarations and expressions regardless whether they have a name or not | |
| * `getBaseOfClassLikeDeclaration` to conventiently get the expression after `extends` | |
| * `getBaseClassMemberOfClassElement` to look up the declaration of a class member in the base class | |
| **Bugfixes:** | |
| * `getConstructorTypeOfClassLikeDeclaration` now really returns the constructor type (the static side of the class), previously it returned the instance type | |
| * `hasExhaustiveCaseClauses` allows additional case clauses with `null`, `undefined` and `never` | |
| # 3.18.0 | |
| **Features:** | |
| * Source maps for easier debugging | |
| * JSDoc is preserved in declaration files | |
| * Comments are presered in transpiled code | |
| * Everything you need to handle the control flow changes of TypeScript@3.7 | |
| * `callExpressionAffectsControlFlow` to determine whether a CallExpression affects control flow by returning `never` or `asserts` | |
| * `hasExhaustiveCaseClauses` to determine whether a SwitchStatement's CaseClauses handle every possible value | |
| * `endsControlFlow` and `getControlFlowEnd` take an optional `checker` parameter to recognize exhaustive SwitchStatements and control flow effects of CallExpressions | |
| * `formatPseudoBigInt` converts TypeScript's representation of a BigInt to its literal representation as you would write it in your source code | |
| * `getAstNodeAtPosition` similar to `getTokenAtPosition`, but only operates on AST Nodes | |
| * `removeOptionalChainingUndefinedMarkerType` and `isOptionalChainingUndefinedMarkerType` to handle types originating in an optional chain | |
| * `findImports` and `findImportLikeNodes`: prepare for import assertions | |
| * `getTsCheckDirective` as new name for `getCheckJsDirective` | |
| * `getCheckJsDirective` is now deprecated | |
| **Bugfixes:** | |
| * `getUsageDomain`: handles NamespaceExport and NamedTupleMember | |
| * `getPropertyName`: handles parentheses and negative numeric literals, excludes RegExp literals and private identifiers | |
| * `getSingleLateBoundPropertyNameOfPropertyName` and `getLateBoundPropertyNamesOfPropertyName`: handles private identifiers | |
| * `hasAccessModifier`: handles JSDoc access modifier | |
| * `hasSideEffects`: correctly determines side effects of (static) property initializers | |
| * `isExpressionValueUsed`: handle nullish coalescing and conditional assignment operators | |
| * `canHaveJsDoc`: aligned with upstream changes in TypeScript | |
| * `isCompilerOptionEnabled`: | |
| * `noUncheckedIndexedAccess` requires `strictNullChecks` | |
| * `checkJs` implies `allowJs` | |
| * `emitDeclarationOnly` requires `declaration` | |
| * `isInConstContext`: handle template string interpolations | |
| * excluded unnecessary files from npm package | |
| # 3.17.1 | |
| **Bugfixes:** | |
| * `isValidJsxIdentifier`, `isValidPropertyAccess`, `isValidPropertyName`: fix unicode character width handling | |
| # 3.17.0 | |
| **Features:** | |
| * `isValidJsxIdentifier` added an optional parameter to specify the target ECMAScript version | |
| **Bugfixes:** | |
| * `isValidJsxIdentifier` now handles astral plane characters | |
| # 3.16.0 | |
| **Features:** | |
| * added `getIteratorYieldResultFromIteratorResult` to extract the `yield`ed type from `IteratorResult<TYield, TReturn, TNext>` | |
| # 3.15.0 | |
| **Features:** | |
| * `isValidIdentifier`, `isValidPropertyName`, `isValidPropertyAccess`, `isValidNumericLiteral` added an optional parameter to specify the target ECMAScript version | |
| **Bugfixes:** | |
| * `isValidPropertyName`, `isValidPropertyAccess` now handle astral plane characters | |
| # 3.14.1 | |
| **Bugfixes:** | |
| * `findImports`: fixed crash on nested namespaces | |
| # 3.14.0 | |
| **Features:** | |
| * added `getInstanceTypeOfClassLikeDeclaration` and `getConstructorTypeOfClassLikeDeclaration` | |
| * added `AccessKind.Delete` to `getAccessKind`: `getAccessKind(node) & AccessKind.Modification` can now be used to restore the old behavior of `isReassignmentTarget(node)` | |
| # 3.13.0 | |
| **Features:** | |
| * `getAccessKind` determines whether an expression is read from, written to or both | |
| * optimized `getPropertyOfType` for unambiguous property names to partially work around https://github.com/microsoft/TypeScript/issues/31565 | |
| **Bugfixes:** | |
| * `isReassignmentTarget` no longer returns `true` for `DeleteExpression` as it doesn't **assign** a value to the operand | |
| # 3.12.0 | |
| **Features:** | |
| * `getLateBoundPropertyNamesOfPropertyName` returns all statically analyzable names of a property, method, ... | |
| * `getSingleLateBoundPropertyNameOfPropertyName` returns the literal name of a property, method, ... if statically analyzable | |
| **Bugfixes:** | |
| * fixed circular import | |
| # 3.11.0 | |
| **Features:** | |
| * typeguards: `isNumericOrStringLikeLiteral`, `isTupleTypeReference` | |
| * `intersectionTypeParts` as counterpart to `unionTypeParts` | |
| * `someTypePart` to execute a callback for each union or intersection constituent until the callback returns true | |
| * `getPropertyOfType` looks up a property by its escaped name | |
| * `isPropertyReadonlyInType` determines whether a property in a given type cannot be written to | |
| * `symbolHasReadonlyDeclaration` determines if a Symbol has any readonly or constant declaration | |
| * `isNumericPropertyName` determines whether a property name would match an index signature | |
| * `isBindableObjectDefinePropertyCall` returns true for statically analyzable forms of `Object.defineProperty(o, 'p', {value, writable})` | |
| * `isReadonlyAssignmentDeclaration` determines whether an `Object.defineProperty` call is known to result in a readonly property | |
| * `getLateBoundPropertyNames` returns all known property names of an expression | |
| * `getPropertyNameFromType` extracts the property name of literal types | |
| * `isWellKnownSymbolLiterally` to recognize expressions in the form of `Symbol.<name>` | |
| * `getPropertyNameOfWellKnownSymbol` returns the escaped name for a well known symbol literal | |
| * `unwrapParentheses` returns the first child expression that is not a `ParenthesizedExpression` | |
| # 3.10.0 | |
| **Features:** | |
| * `isCompilerOptionEnabled`: `incremental` is implicitly enabled by `composite` | |
| **Bugfixes:** | |
| * `collectVariableUsage`/`getUsageDomain`: no longer treat `as const` as type usage | |
| # 3.9.1 | |
| **Bugfixes:** | |
| * reverted invalid deprecation of `canHaveJsdoc` | |
| * fixed condition in `parseJsdocOfNode` | |
| # 3.9.0 | |
| **Features:** | |
| * added typeguards: `isNullLiteral` and `isBooleanLiteral` | |
| # 3.8.0 | |
| **Features:** | |
| * exposes typeguards for typescript@3.2 by default | |
| * added utilities: `isConstAssertion` and `isInConstContext` | |
| # 3.7.0 | |
| **Features:** | |
| * added `isBlockScopedDeclarationStatement` | |
| * added `isInSingleStatementContext` | |
| # 3.6.0 | |
| **Features:** | |
| * added `getCheckJsDirective` utility to parse `// @ts-check` and `// @ts-nocheck` pragmas | |
| # 3.5.2 | |
| **Bugfixes:** | |
| * Published declaration files no longer contain `const enum`. They are now declared as regular enums instead. | |
| # 3.5.1 | |
| **Bugfixes:** | |
| * `isThenableType` allows `Node` instead of `Expression` as parameter | |
| * `isBlockScopeBoundary` and `isScopeBoundary` consider `WithStatement` as scope boundary | |
| # 3.5.0 | |
| **Features:** | |
| * correctly handle BigInt literals | |
| * added typeguard `isBigIntLiteral` | |
| * `isLiteralType` recognises BigInt | |
| * `getPropertyName` adds special handling for BigInt | |
| # 3.4.0 | |
| **Features:** | |
| * added utility `commentText` to get the actual text content of a comment excluding the characters needed to start and end the comment | |
| # 3.3.1 | |
| **Bugfixes:** | |
| * `findImports`: fixed handling of ImportEqualsDeclaration | |
| # 3.3.0 | |
| **Features:** | |
| * `isCompilerOptionEnabled`: recognizes `strictBindCallApply` | |
| * `getTokenAtPosition`: optionally includes JSDoc during lookup | |
| **Bugfixes:** | |
| * `isCompilerOptionEnabled`: correctly implements logic for `allowSyntheticDefaultImports` | |
| * `findImportLikeNodes`: correctly finds imports in namespaces | |
| * `findImportLikeNodes` / `findImports`: finds import types in JSDoc of JS files | |
| # 3.2.0 | |
| **Features:** | |
| * added utility `findImportLikeNodes` that works similar to `findImports` but returns the import statement or expression instead of the module specifier and doesn't filter non-string module specifiers | |
| # 3.1.0 | |
| **Features:** | |
| * added utilities: `isKeywordKind` and `isValidJsxIdentifier` | |
| * exposes typeguards for typescript@3.0 by default | |
| # 3.0.0 | |
| :warning: **Breaking Changes:** | |
| * Dropped support for `typescript@<2.8.0` | |
| * Dropped support for Node.js 4 | |
| * Removed deprecated APIs: | |
| * `getIdentifierText`, `isJsxFramgment`, `ImportOptions` | |
| * deprected overloads of `isModifierFlagSet`, `findImports` and `getControlFlowEnd` | |
| * control flow related symbols can no longer be imported from `'tsutils/util/util'`, import directly from `'tsutils/util/control-flow'` or `'tsutils/util'` | |
| * `isFunctionScopeBoundary` and `isBlockScopeBoundary` now return a enum member of `ScopeBoundary` instead of a boolean | |
| * `isFunctionScopeBoundary` no longer returns a truthy value for `InterfaceDeclaration`, `TypeAliasDeclaration` | |
| **Features:** | |
| * added utility `isTypeScopeBoundary` returning `ScopeBoundary.Type` or `ScopeBoundary.ConditionalType` | |
| * added enum `ScopeBoundarySelector` whose members can be used to determine if a declaration belongs to a given `ScopeBoundary` by using bitwise AND | |
| **Bugfixes:** | |
| * `collectVariableUsage` now correctly handles `infer T` nested inside function signatures or mapped types | |
| * `isCompilerOptionEnabled` correctly handles `skipDefaultLibCHeck` and `suppressImplicitAnyIndexErrors` | |
| # 2.29.0 | |
| **Features:** | |
| * added utility `isCompilerOptionEnabled` | |
| # 2.28.0 | |
| Typeguards are now split into multiple submodules for each version of TypeScript (starting with 2.8.0). | |
| That means you can now import directly from `"tsutils/typeguard/2.8"` to get compatible declaraton files for TypeScript@2.8. | |
| For more information please read the relevant section in [README.md](README.md). | |
| **Features:** | |
| * added typeguards: `isTupleType`, `isOptionalTypeNode`, `isRestTypeNode`, `isSyntheticExpression` (currently available from `"tsutils/typeguard/3.0"`) | |
| * added utility `isStrictCompilerOptionEnabled` | |
| # 2.27.2 | |
| Avoid crash caused by removed function in `typescript@3.0.0`. | |
| # 2.27.1 | |
| Added support for TypeScript@3.0.0 nightly builds. | |
| # 2.27.0 | |
| **Features:** | |
| * added `getIIFE` utility | |
| # 2.26.2 | |
| **Bugfixes:** | |
| * `forEachComment` and `forEachTokenWithTrivia` no longer duplicate comments around missing nodes | |
| # 2.26.1 | |
| **Bugfixes:** | |
| * fixed crash in `hasSideEffects` with tagged template literal without substitution: ``tag`template` `` | |
| # 2.26.0 | |
| **Features:** | |
| * added typeguard `isLiteralTypeNode` | |
| * added support for type imports (`type T = import('foo')`) to `findImports` via `ImportKind.ImportType` | |
| # 2.25.1 | |
| **Bugfixes:** | |
| * `collectVariableUsage`: fixed name lookup in function signatures to match runtime behavior. Note that this is not completely fixed in TypeScript, yet. See: [Microsoft/TypeScript#22825](https://github.com/Microsoft/TypeScript/issues/22825) and [Microsoft/TypeScript#22769](https://github.com/Microsoft/TypeScript/issues/22769) | |
| # 2.25.0 | |
| **Features:** | |
| * added utilities: `isStatementInAmbientContext` and `isAmbientModuleBlock` | |
| # 2.24.0 | |
| **Features:** | |
| * added typeguards for typescript@2.8: `isConditionalTypeNode`, `isInferTypeNode`, `isConditionalType`, `isInstantiableType`, `isSubstitutionType` | |
| # 2.23.0 | |
| **Features:** | |
| * added typeguard `isForInOrOfStatement` | |
| **Bugfixes:** | |
| * correctly handle comments in generic JSX elements: `<MyComponent<string>/*comment*/></MyComponent>` | |
| * fixed a bug with false positive trailing comments at the end of JSX self closing element: `<div><br/>/*no comment*/</div>` | |
| # 2.22.2 | |
| **Bugfixes:** | |
| * `collectVariableUsage`: handle ConditionalTypes and `infer T`, which will be introduced in TypeScript@2.8.0 and are already available in nightly builds | |
| * `isLiteralType` no longer returns true for `ts.TypeFlags.BooleanLiteral` as this is not a `ts.LiteralType` | |
| # 2.22.1 | |
| **Bugfixes:** | |
| * `endsControlFlow`: | |
| * handle loops that might not even run a single iteration | |
| * handle constant boolean conditions in loops and if | |
| # 2.22.0 | |
| **Features:** | |
| * added `isFalsyType` utility | |
| # 2.21.2 | |
| **Bugfixes:** | |
| * fixed compile error with `typescript@2.8.0-dev` | |
| # 2.21.1 | |
| **Bugfixes:** | |
| * `isReassignmentTarget`: handle type assertions and non-null assertion | |
| # 2.21.0 | |
| **Bugfixes:** | |
| * `forEachDeclaredVariable` uses a more precise type for the callback parameter to make it useable again with typescript@2.7.1 | |
| **Features:** | |
| * added `isUniqueESSymbolType` typeguard | |
| # 2.20.0 | |
| **Features:** | |
| * added `isThenableType` utility | |
| * added `unionTypeParts` utility | |
| # 2.19.1 | |
| **Bugfixes:** | |
| * `forEachComment`, `getCommentAtPosition` and `isPositionInComment`: skip shebang (`#! something`) to not miss following comments at the start of the file | |
| # 2.19.0 | |
| **Features:** | |
| * added `WrappedAst` interface that models the type of a wrapped SourceFile more accurate | |
| * added `getWrappedNodeAtPosition` utiltiy that takes a `NodeWrap` and returns the most deeply nested NodeWrap that contains the given position | |
| # 2.18.0 | |
| **Features:** | |
| * `getControlFlowEnd` accepts BlockLike as argument | |
| **Bugfixes:** | |
| * `getControlFlowEnd` and `endsControlFlow`: correctly handle nested LabeledStatements | |
| * `endsControlFlow` removed erroneous special case when an IterationStatement is passed as argument whose parent is a LabeledStatement. | |
| * if you want labels of an IterationStatement (or SwitchStatement) to be handled, you need to pass the LabeledStatement as argument. | |
| * :warning: this fix may change the returned value if you relied on the buggy behavior | |
| **Deprecations:** | |
| * deprecated overload of `getControlFlowEnd` that contains the `label` parameter. This parameter is no longer used and should no longer be passed to the function. | |
| # 2.17.1 | |
| **Bugfixes:** | |
| * `getControlFlowEnd` and `endsControlFlow` (#22) | |
| * ThrowStatements inside `try` are filtered out if there is a `catch` clause | |
| * TryStatements with `catch` only end control flow if `try` AND `catch` definitely end control flow | |
| # 2.17.0 | |
| **Features:** | |
| * added `kind` property to `NodeWrap` | |
| * added `getControlFlowEnd` to public API | |
| # 2.16.0 | |
| **Features:** | |
| * added `isDecorator` and `isCallLikeExpression` typeguards | |
| # 2.15.0 | |
| **Features:** | |
| * added `convertAst` utility to produce a flattened and wrapped version of the AST | |
| # 2.14.0 | |
| **Features:** | |
| * added `isDeleteExpression` | |
| * added `getLineBreakStyle` | |
| # 2.13.1 | |
| **Bugfixes:** | |
| * fixed name of `isJsxFragment` | |
| # 2.13.0 | |
| **Features:** | |
| * added support for `JsxFragment` introduced in typescript@2.6.2 | |
| * added corresponding typeguard functions | |
| # 2.12.2 | |
| **Bugfixes:** | |
| * `endsControlFlow` | |
| * added missing logic for labeled statement, iteration statements and try-catch | |
| * added missing logic for `break` and `continue` with labels | |
| * take all jump statements into account, not only the last statement | |
| * `isValidIdentifier` and `isValidNumericLiteral` handle irregular whitespace | |
| * `findImports` searches in ambient modules inside regular `.ts` files (not only `.d.ts`) | |
| * `canHaveJsDoc` is now a typeguard | |
| # 2.12.1 | |
| **Bugfixes:** | |
| * `forEachTokenWithTrivia` | |
| * handles irregular whitespace and no longer visits some tokens twice | |
| * correctly calculates the range of JsxText | |
| # 2.12.0 | |
| **API-Changes:** | |
| * deprecated `ImportOptions` if favor of the new `ImportKind` enum | |
| # 2.11.2 | |
| **Bugfixes:** | |
| * `parseJsDocOfNode`: set correct `pos`, `end` and `parent` properties. Also affects `getJsDoc` of `EndOfFileToken` | |
| # 2.11.1 | |
| **Bugfixes:** | |
| * `collectVariableUsage`: correctly consider catch binding as block scoped declaration inside catch block | |
| # 2.11.0 | |
| **Bugfixes:** | |
| * `getJsDoc` now correctly returns JsDoc for `EndOfFileToken` | |
| **Features:** | |
| * added utility `parseJsDocOfNode` | |
| # 2.10.0 | |
| **Features:** | |
| * added utility `findImports` to find all kinds of imports in a source file | |
| # 2.9.0 | |
| **Features:** | |
| * added typeguard `isMappedTypeNode` | |
| * added utilities `canHaveJsDoc` and `getJsDoc` | |
| # 2.8.2 | |
| **Bugfixes:** | |
| * `collectVariableUsage`: handle global augmentation like other module augmentations | |
| # 2.8.1 | |
| **Bugfixes:** | |
| * Support `typescript@2.5.1` with optional catch binding | |
| * `collectVariableUsage` fixed a bug where method decorator had method's parameters in scope | |
| # 2.8.0 | |
| * Compatibility with the latest typescript nightly | |
| * Added `getIdentifierText` to unescape identifiers across typescript versions | |
| # 2.7.1 | |
| **Bugfixes:** | |
| * `isReassignmentTarget` don't return `true` for right side of assignment | |
| # 2.7.0 | |
| **Features:** | |
| * Added `isReassignmentTarget` utility | |
| # 2.6.1 | |
| **Bugfixes:** | |
| * `getDeclarationDomain` now returns `undefined` for Parameter in IndexSignature | |
| * `collectVariableUsage` ignores Parameter in IndexSignature | |
| # 2.6.0 | |
| **Bugfixes:** | |
| * `collectVariableUsage`: | |
| * don't merge imports with global declarations | |
| * treat everything in a declaration file as exported if there is no explicit `export {};` | |
| * `isExpressionValueUsed`: handle destructuring in `for...of` | |
| **Features:** | |
| * Added `getModifier` utility | |
| * Added `DeclarationDomain.Import` to distinguish imports from other declarations | |
| # 2.5.1 | |
| **Bugfixes:** | |
| * `collectVariableUsage` ignore jump labels as in `break label;` | |
| # 2.5.0 | |
| **Bugfixes:** | |
| * `isFunctionWithBody` handles constructor overload correctly. | |
| **Features:** | |
| * Implemented `isExpressionValueUsed` to check whether the result of an expression is actually used. | |
| * Implemented `getDeclarationDomain` to determine if a given declaration introduces a new symbol in the value or type domain. | |
| **`collectVariableUses` is now usable** | |
| * no longer ignores signatures and its parameters | |
| * don't merge declarations and uses across domains | |
| * no longer marks exceptions in catch clause or parameter properties as exported | |
| * fixed exports of namespaces | |
| * fixed scoping of ClassExpression name | |
| * correcly handle ambient namespaces and module augmentations | |
| * fixed how `: typeof foo` is handled for parameters and function return type | |
| * **still WIP**: `export {Foo as Bar}` inside ambient namespaces and modules | |
| # 2.4.0 | |
| **Bugfixes:** | |
| * `getLineRanges`: `contentLength` now contains the correct line length when there are multiple consecutive line break characters | |
| * `getTokenAtPosition`: don't match tokens that end at the specified position (because that's already outside of their range) | |
| * deprecated the misnamed `isModfierFlagSet`, use the new `isModifierFlagSet` instead | |
| **Features:** | |
| * Added typeguard: `isJsDoc` | |
| * Added experimental scope and usage analysis (`getUsageDomain` and `collectVariableUsage`) | |
| # 2.3.0 | |
| **Bugfixes:** | |
| * `forEachComment` no longer omits some comments when callback returns a truthy value | |
| * `isPositionInComment` fixed false positive inside JSXText | |
| **Features:** | |
| * Added utility: `getCommentAtPosition` | |
| # 2.2.0 | |
| **Bugfixes:** | |
| * Fixed bit value of `SideEffectOptions.JsxElement` to be a power of 2 | |
| **Features:** | |
| * Added utilities: `getTokenAtPosition` and `isPositionInComment` | |
| # 2.1.0 | |
| **Features:** | |
| * Added typeguard `isExpression` | |
| * Added utilities: `hasSideEffects`, `getDeclarationOfBindingElement` | |
| # 2.0.0 | |
| **Breaking Changes:** | |
| * Dropped compatibility with `typescript@<2.1.0` | |
| * Removed misnamed `isNumericliteral`, use `isNumericLiteral` instead (notice the uppercase L) | |
| * Removed `isEnumLiteralType` which will cause compile errors with typescript@2.4.0 | |
| * Refactored directory structure: all imports that referenced subdirectories (e.g. `require('tsutils/src/typeguard')` will be broken | |
| **Features:** | |
| * New directory structure allows imports of typeguards or utils independently, e.g. (`require('tsutils/typeguard')`) | |
| # 1.9.1 | |
| **Bugfixes:** | |
| * `isObjectFlagSet` now uses the correct `objectFlags` property | |
| # 1.9.0 | |
| **Bugfixes:** | |
| * `getNextToken` no longer omits `EndOfFileToken` when there is no trivia before EOF. That means the only inputs where `getNextToken` returns `undefined` are `SourceFile` and `EndOfFileToken` | |
| **Features**: | |
| * Added typeguards for types | |
| * Added utilities for flag checking: `isNodeFlagSet`, `isTypeFlagSet`, `isSymbolFlagSet`,`isObjectFlagSet`, `isModifierFlagSet` | |
| # 1.8.0 | |
| **Features:** | |
| * Support peer dependency of typescript nightlies of 2.4.0 | |
| * Added typeguards: `isJsxAttributes`, `isIntersectionTypeNode`, `isTypeOperatorNode`, `isTypePredicateNode`, `isTypeQueryNode`, `isUnionTypeNode` | |
| # 1.7.0 | |
| **Bugfixes:** | |
| * `isFunctionScopeBoundary` now handles Interfaces, TypeAliases, FunctionSignatures, etc | |
| **Features:** | |
| * Added utilities: `isThisParameter`, `isSameLine` and `isFunctionWithBody` | |
| # 1.6.0 | |
| **Features:** | |
| * Add `isValidPropertyAccess`, `isValidNumericLiteral` and `isValidPropertyName` | |
| # 1.5.0 | |
| **Features:** | |
| * Add `isValidIdentifier` | |
| # 1.4.0 | |
| **Features:** | |
| * Add `contentLength` property to the result of `getLineRanges` | |
| # 1.3.0 | |
| **Bugfixes:** | |
| * `canHaveLeadingTrivia`: | |
| * Fix property access on undefined parent reference | |
| * Fixes: [palantir/tslint#2330](https://github.com/palantir/tslint/issues/2330) | |
| * `hasOwnThisReference`: now includes accessors on object literals | |
| **Features:** | |
| * Typeguards: | |
| * isTypeParameterDeclaration | |
| * isEnitityName | |
| # 1.2.2 | |
| **Bugfixes:** | |
| * `hasOwnThisReference`: | |
| * exclude overload signatures of function declarations | |
| * add method declarations on object literals | |
| # 1.2.1 | |
| **Bugfixes:** | |
| * Fix name of `isNumericLiteral` | |
| # 1.2.0 | |
| **Features:** | |
| * Typeguards: | |
| * isEnumMember | |
| * isExpressionWithTypeArguments | |
| * isImportSpecifier | |
| * Utilities: | |
| * isJsDocKind, isTypeNodeKind | |
| * Allow typescript@next in peerDependencies | |
| # 1.1.0 | |
| **Bugfixes:** | |
| * Fix isBlockScopeBoundary: Remove WithStatement, IfStatment, DoStatement and WhileStatement because they are no scope boundary whitout a block. | |
| **Features:** | |
| * Added more typeguards: | |
| * isAssertionExpression | |
| * isEmptyStatement | |
| * isJsxAttributeLike | |
| * isJsxOpeningLikeElement | |
| * isNonNullExpression | |
| * isSyntaxList | |
| * Utilities: | |
| * getNextToken, getPreviousToken | |
| * hasOwnThisReference | |
| * getLineRanges | |
| # 1.0.0 | |
| **Features:** | |
| * Initial implementation of typeguards | |
| * Utilities: | |
| * getChildOfKind | |
| * isNodeKind, isAssignmentKind | |
| * hasModifier, isParameterProperty, hasAccessModifier | |
| * getPreviousStatement, getNextStatement | |
| * getPropertyName | |
| * forEachDestructuringIdentifier, forEachDeclaredVariable | |
| * getVariableDeclarationKind, isBlockScopedVariableDeclarationList, isBlockScopedVariableDeclaration | |
| * isScopeBoundary, isFunctionScopeBoundary, isBlockScopeBoundary | |
| * forEachToken, forEachTokenWithTrivia, forEachComment | |
| * endsControlFlow | |
Xet Storage Details
- Size:
- 23.1 kB
- Xet hash:
- 6ef2f9e191fde2c53a4e61d35578f304b4f0c68c524a69b948c7c6d7d1628504
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.