You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
this commit updates typescript for stencil to v4.8.4. it leverages the work done
in [#3748](#3748) (a043e5d) in order to facilitate the
creation of nodes in the syntax tree that contain `ModifierLike` entities.
it also leverages the work from [#3835](#3835) in order
to provide testing to a more fickle aspect of the codebase.
starting with typescript 4.8, decorators are not longer directly accessible on a
syntax tree node. this is a result of the decorators proposal reaching stage 3, and
soon to be implemented by the typescript team. in order to prepare for the
implementation, where decorators are stored has changed. more information on
this change can be found in https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/#decorators-are-placed-on-modifiers-on-typescripts-syntax-trees.
in order for decorators to be retrieved, typescript provides a series of helper
functions to retrieve both decorators and modifiers off of a node. this pr
introduces helper methods of our own that abstract over typescript's own. this
is done to reduce some of the verbosity in attempting to retrieve decorators/modifiers
off of a node. these functions return either the found decorators/modifiers on a node,
`undefined` if the node can have a decorator/modifier but does not have any, or
`undefined` if the node cannot have a decorator/modifier on it. this is an intentional
design decision, as opposed to returning an empty array in place of `undefined` for the
latter two cases. The reason for which is that there are cases in Stencil where an empty
array and undefined have specific meaning that i did not feel was worth the
additional effort in the context of this effort
with typescript 4.8, several node factory methods no longer accept an
explicit argument for decorators. instead, the parameters for decorators and
modifiers have been coalesced into a single parameter of type `ModifierLike[]`.
as a result, many calls to these factory functions with an argument of `undefined`
for decorators have been updated to reflect this change
* This method is responsible for replacing user-defined import path aliases ({@link https://www.typescriptlang.org/docs/handbook/module-resolution.html#path-mapping})
0 commit comments