diff --git a/packages/typescript/schemas/jsconfig.schema.json b/packages/typescript/schemas/jsconfig.schema.json index aecbb3d9259b3..a3727d802eb2a 100644 --- a/packages/typescript/schemas/jsconfig.schema.json +++ b/packages/typescript/schemas/jsconfig.schema.json @@ -757,12 +757,12 @@ "esnext.regexp", "esnext.string", "esnext.float16", - "esnext.promise", "esnext.array", "esnext.collection", "esnext.error", "esnext.iterator", "esnext.typedarrays", + "esnext.promise", "esnext.date", "esnext.decorators", "esnext.disposable", @@ -893,7 +893,7 @@ ] }, { - "pattern": "^([Ee][Ss]5|[Ee][Ss]6|[Ee][Ss]2015|[Ee][Ss]7|[Ee][Ss]2016|[Ee][Ss]2017|[Ee][Ss]2018|[Ee][Ss]2019|[Ee][Ss]2020|[Ee][Ss]2021|[Ee][Ss]2022|[Ee][Ss]2023|[Ee][Ss]2024|[Ee][Ss]2025|[Ee][Ss]2026|[Ee][Ss][Nn][Ee][Xx][Tt]|[Dd][Oo][Mm]|[Dd][Oo][Mm]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Dd][Oo][Mm]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Mm][Pp][Oo][Rr][Tt][Ss][Cc][Rr][Ii][Pp][Tt][Ss]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ss][Cc][Rr][Ii][Pp][Tt][Hh][Oo][Ss][Tt]|[Ee][Ss]2015\\.[Cc][Oo][Rr][Ee]|[Ee][Ss]2015\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2015\\.[Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2015\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Xx][Yy]|[Ee][Ss]2015\\.[Rr][Ee][Ff][Ll][Ee][Cc][Tt]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2016\\.[Aa][Rr][Rr][Aa][Yy]\\.[Ii][Nn][Cc][Ll][Uu][Dd][Ee]|[Ee][Ss]2016\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2017\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2017\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2017\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2017\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2017\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2018\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2018\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2018\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2019\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2019\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2019\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2019\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2019\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss]2020\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2020\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2020\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2020\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2020\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2020\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Nn][Uu][Mm][Bb][Ee][Rr]|[Ee][Ss]2021\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2021\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2021\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss]2021\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2022\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2022\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2022\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2022\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2023\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2023\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2023\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2024\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2024\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2024\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2024\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2024\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2024\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2024\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2025\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2025\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss]2025\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2025\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2025\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2025\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2026\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2026\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2026\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2026\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2026\\.[Jj][Ss][Oo][Nn]|[Ee][Ss]2026\\.[Mm][Aa][Tt][Hh]|[Ee][Ss]2026\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Aa][Tt][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ii][Ss][Pp][Oo][Ss][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Nn][Tt][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Ee][Mm][Pp][Oo][Rr][Aa][Ll]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]\\.[Ll][Ee][Gg][Aa][Cc][Yy]|[Ee][Ss]2022\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy])$" + "pattern": "^([Ee][Ss]5|[Ee][Ss]6|[Ee][Ss]2015|[Ee][Ss]7|[Ee][Ss]2016|[Ee][Ss]2017|[Ee][Ss]2018|[Ee][Ss]2019|[Ee][Ss]2020|[Ee][Ss]2021|[Ee][Ss]2022|[Ee][Ss]2023|[Ee][Ss]2024|[Ee][Ss]2025|[Ee][Ss]2026|[Ee][Ss][Nn][Ee][Xx][Tt]|[Dd][Oo][Mm]|[Dd][Oo][Mm]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Dd][Oo][Mm]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Mm][Pp][Oo][Rr][Tt][Ss][Cc][Rr][Ii][Pp][Tt][Ss]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ss][Cc][Rr][Ii][Pp][Tt][Hh][Oo][Ss][Tt]|[Ee][Ss]2015\\.[Cc][Oo][Rr][Ee]|[Ee][Ss]2015\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2015\\.[Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2015\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Xx][Yy]|[Ee][Ss]2015\\.[Rr][Ee][Ff][Ll][Ee][Cc][Tt]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2016\\.[Aa][Rr][Rr][Aa][Yy]\\.[Ii][Nn][Cc][Ll][Uu][Dd][Ee]|[Ee][Ss]2016\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2017\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2017\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2017\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2017\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2017\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2018\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2018\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2018\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2019\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2019\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2019\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2019\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2019\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss]2020\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2020\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2020\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2020\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2020\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2020\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Nn][Uu][Mm][Bb][Ee][Rr]|[Ee][Ss]2021\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2021\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2021\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss]2021\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2022\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2022\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2022\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2022\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2023\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2023\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2023\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2024\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2024\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2024\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2024\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2024\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2024\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2024\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2025\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2025\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss]2025\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2025\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2025\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2025\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2026\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2026\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2026\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2026\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2026\\.[Jj][Ss][Oo][Nn]|[Ee][Ss]2026\\.[Mm][Aa][Tt][Hh]|[Ee][Ss]2026\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Aa][Tt][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ii][Ss][Pp][Oo][Ss][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Nn][Tt][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Ee][Mm][Pp][Oo][Rr][Aa][Ll]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]\\.[Ll][Ee][Gg][Aa][Cc][Yy]|[Ee][Ss]2022\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy])$" } ] } diff --git a/packages/typescript/schemas/tsconfig.schema.json b/packages/typescript/schemas/tsconfig.schema.json index eec063cb65999..775f7ef86ef6a 100644 --- a/packages/typescript/schemas/tsconfig.schema.json +++ b/packages/typescript/schemas/tsconfig.schema.json @@ -756,12 +756,12 @@ "esnext.regexp", "esnext.string", "esnext.float16", - "esnext.promise", "esnext.array", "esnext.collection", "esnext.error", "esnext.iterator", "esnext.typedarrays", + "esnext.promise", "esnext.date", "esnext.decorators", "esnext.disposable", @@ -892,7 +892,7 @@ ] }, { - "pattern": "^([Ee][Ss]5|[Ee][Ss]6|[Ee][Ss]2015|[Ee][Ss]7|[Ee][Ss]2016|[Ee][Ss]2017|[Ee][Ss]2018|[Ee][Ss]2019|[Ee][Ss]2020|[Ee][Ss]2021|[Ee][Ss]2022|[Ee][Ss]2023|[Ee][Ss]2024|[Ee][Ss]2025|[Ee][Ss]2026|[Ee][Ss][Nn][Ee][Xx][Tt]|[Dd][Oo][Mm]|[Dd][Oo][Mm]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Dd][Oo][Mm]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Mm][Pp][Oo][Rr][Tt][Ss][Cc][Rr][Ii][Pp][Tt][Ss]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ss][Cc][Rr][Ii][Pp][Tt][Hh][Oo][Ss][Tt]|[Ee][Ss]2015\\.[Cc][Oo][Rr][Ee]|[Ee][Ss]2015\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2015\\.[Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2015\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Xx][Yy]|[Ee][Ss]2015\\.[Rr][Ee][Ff][Ll][Ee][Cc][Tt]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2016\\.[Aa][Rr][Rr][Aa][Yy]\\.[Ii][Nn][Cc][Ll][Uu][Dd][Ee]|[Ee][Ss]2016\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2017\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2017\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2017\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2017\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2017\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2018\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2018\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2018\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2019\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2019\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2019\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2019\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2019\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss]2020\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2020\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2020\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2020\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2020\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2020\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Nn][Uu][Mm][Bb][Ee][Rr]|[Ee][Ss]2021\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2021\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2021\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss]2021\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2022\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2022\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2022\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2022\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2023\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2023\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2023\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2024\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2024\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2024\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2024\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2024\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2024\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2024\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2025\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2025\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss]2025\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2025\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2025\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2025\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2026\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2026\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2026\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2026\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2026\\.[Jj][Ss][Oo][Nn]|[Ee][Ss]2026\\.[Mm][Aa][Tt][Hh]|[Ee][Ss]2026\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Aa][Tt][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ii][Ss][Pp][Oo][Ss][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Nn][Tt][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Ee][Mm][Pp][Oo][Rr][Aa][Ll]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]\\.[Ll][Ee][Gg][Aa][Cc][Yy]|[Ee][Ss]2022\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy])$" + "pattern": "^([Ee][Ss]5|[Ee][Ss]6|[Ee][Ss]2015|[Ee][Ss]7|[Ee][Ss]2016|[Ee][Ss]2017|[Ee][Ss]2018|[Ee][Ss]2019|[Ee][Ss]2020|[Ee][Ss]2021|[Ee][Ss]2022|[Ee][Ss]2023|[Ee][Ss]2024|[Ee][Ss]2025|[Ee][Ss]2026|[Ee][Ss][Nn][Ee][Xx][Tt]|[Dd][Oo][Mm]|[Dd][Oo][Mm]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Dd][Oo][Mm]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Mm][Pp][Oo][Rr][Tt][Ss][Cc][Rr][Ii][Pp][Tt][Ss]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ww][Ee][Bb][Ww][Oo][Rr][Kk][Ee][Rr]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ss][Cc][Rr][Ii][Pp][Tt][Hh][Oo][Ss][Tt]|[Ee][Ss]2015\\.[Cc][Oo][Rr][Ee]|[Ee][Ss]2015\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2015\\.[Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2015\\.[Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2015\\.[Pp][Rr][Oo][Xx][Yy]|[Ee][Ss]2015\\.[Rr][Ee][Ff][Ll][Ee][Cc][Tt]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2015\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2016\\.[Aa][Rr][Rr][Aa][Yy]\\.[Ii][Nn][Cc][Ll][Uu][Dd][Ee]|[Ee][Ss]2016\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2017\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2017\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2017\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2017\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2017\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2017\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Gg][Ee][Nn][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2018\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss]2018\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2018\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2018\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2019\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2019\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2019\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2019\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss]2019\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss]2020\\.[Dd][Aa][Tt][Ee]|[Ee][Ss]2020\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2020\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2020\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2020\\.[Ss][Yy][Mm][Bb][Oo][Ll]\\.[Ww][Ee][Ll][Ll][Kk][Nn][Oo][Ww][Nn]|[Ee][Ss]2020\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2020\\.[Nn][Uu][Mm][Bb][Ee][Rr]|[Ee][Ss]2021\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2021\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2021\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss]2021\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2022\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2022\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2022\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2022\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2022\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2023\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2023\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2023\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2024\\.[Aa][Rr][Rr][Aa][Yy][Bb][Uu][Ff][Ff][Ee][Rr]|[Ee][Ss]2024\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2024\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss]2024\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2024\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2024\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss]2024\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss]2025\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2025\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss]2025\\.[Ii][Nn][Tt][Ll]|[Ee][Ss]2025\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2025\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss]2025\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss]2026\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss]2026\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss]2026\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss]2026\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss]2026\\.[Jj][Ss][Oo][Nn]|[Ee][Ss]2026\\.[Mm][Aa][Tt][Hh]|[Ee][Ss]2026\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Ss][Yy][Nn][Cc][Ii][Tt][Ee][Rr][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Yy][Mm][Bb][Oo][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Bb][Ii][Gg][Ii][Nn][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ww][Ee][Aa][Kk][Rr][Ee][Ff]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Oo][Bb][Jj][Ee][Cc][Tt]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Rr][Ee][Gg][Ee][Xx][Pp]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Tt][Rr][Ii][Nn][Gg]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ff][Ll][Oo][Aa][Tt]16|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Aa][Rr][Rr][Aa][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Cc][Oo][Ll][Ll][Ee][Cc][Tt][Ii][Oo][Nn]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ee][Rr][Rr][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Tt][Ee][Rr][Aa][Tt][Oo][Rr]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Yy][Pp][Ee][Dd][Aa][Rr][Rr][Aa][Yy][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Pp][Rr][Oo][Mm][Ii][Ss][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Aa][Tt][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Dd][Ii][Ss][Pp][Oo][Ss][Aa][Bb][Ll][Ee]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ii][Nn][Tt][Ll]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy]|[Ee][Ss][Nn][Ee][Xx][Tt]\\.[Tt][Ee][Mm][Pp][Oo][Rr][Aa][Ll]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]|[Dd][Ee][Cc][Oo][Rr][Aa][Tt][Oo][Rr][Ss]\\.[Ll][Ee][Gg][Aa][Cc][Yy]|[Ee][Ss]2022\\.[Ss][Hh][Aa][Rr][Ee][Dd][Mm][Ee][Mm][Oo][Rr][Yy])$" } ] } diff --git a/tools/scripts/tsc/options.ts b/tools/scripts/tsc/options.ts index ef27e7c47abbb..945dc3eb3cd25 100644 --- a/tools/scripts/tsc/options.ts +++ b/tools/scripts/tsc/options.ts @@ -2026,12 +2026,12 @@ export const options: OptionsModel = { { name: "esnext.regexp", value: "lib.es2024.regexp.d.ts" }, { name: "esnext.string", value: "lib.es2024.string.d.ts" }, { name: "esnext.float16", value: "lib.es2025.float16.d.ts" }, - { name: "esnext.promise", value: "lib.es2025.promise.d.ts" }, { name: "esnext.array", value: "lib.es2026.array.d.ts" }, { name: "esnext.collection", value: "lib.es2026.collection.d.ts" }, { name: "esnext.error", value: "lib.es2026.error.d.ts" }, { name: "esnext.iterator", value: "lib.es2026.iterator.d.ts" }, { name: "esnext.typedarrays", value: "lib.es2026.typedarrays.d.ts" }, + { name: "esnext.promise", value: "lib.esnext.promise.d.ts" }, { name: "esnext.date", value: "lib.esnext.date.d.ts" }, { name: "esnext.decorators", value: "lib.esnext.decorators.d.ts" }, { name: "esnext.disposable", value: "lib.esnext.disposable.d.ts" }, diff --git a/tsc/internal/bundled/embed_generated.go b/tsc/internal/bundled/embed_generated.go index e55a97325120b..1b8714695980e 100644 --- a/tsc/internal/bundled/embed_generated.go +++ b/tsc/internal/bundled/embed_generated.go @@ -219,6 +219,8 @@ var ( libs_lib_esnext_full_d_ts string //go:embed libs/lib.esnext.intl.d.ts libs_lib_esnext_intl_d_ts string + //go:embed libs/lib.esnext.promise.d.ts + libs_lib_esnext_promise_d_ts string //go:embed libs/lib.esnext.sharedmemory.d.ts libs_lib_esnext_sharedmemory_d_ts string //go:embed libs/lib.esnext.temporal.d.ts @@ -342,6 +344,7 @@ var embeddedContents = map[string]string{ "libs/lib.esnext.disposable.d.ts": libs_lib_esnext_disposable_d_ts, "libs/lib.esnext.full.d.ts": libs_lib_esnext_full_d_ts, "libs/lib.esnext.intl.d.ts": libs_lib_esnext_intl_d_ts, + "libs/lib.esnext.promise.d.ts": libs_lib_esnext_promise_d_ts, "libs/lib.esnext.sharedmemory.d.ts": libs_lib_esnext_sharedmemory_d_ts, "libs/lib.esnext.temporal.d.ts": libs_lib_esnext_temporal_d_ts, "libs/lib.scripthost.d.ts": libs_lib_scripthost_d_ts, diff --git a/tsc/internal/bundled/libs/lib.esnext.d.ts b/tsc/internal/bundled/libs/lib.esnext.d.ts index 07582b0de9614..f63bdbbf195b3 100644 --- a/tsc/internal/bundled/libs/lib.esnext.d.ts +++ b/tsc/internal/bundled/libs/lib.esnext.d.ts @@ -21,3 +21,4 @@ and limitations under the License. /// /// /// +/// diff --git a/tsc/internal/bundled/libs/lib.esnext.promise.d.ts b/tsc/internal/bundled/libs/lib.esnext.promise.d.ts new file mode 100644 index 0000000000000..68331d04aa679 --- /dev/null +++ b/tsc/internal/bundled/libs/lib.esnext.promise.d.ts @@ -0,0 +1,35 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABILITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// +/// + +interface PromiseConstructor { + /** + * Creates a Promise that is resolved with an object of results when all of the provided Promises resolve, + * or rejected when any Promise is rejected. + * @param promises An object of Promises. + * @returns A new Promise. + */ + allKeyed(promises: T): Promise<{ -readonly [P in keyof T]: Awaited; }>; + + /** + * Creates a Promise that is resolved with an object of results when all of the provided Promises resolve or reject. + * @param promises An object of Promises. + * @returns A new Promise. + */ + allSettledKeyed(promises: T): Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }>; +} diff --git a/tsc/internal/bundled/libs_generated.go b/tsc/internal/bundled/libs_generated.go index c0c0dece8ffeb..2d6bc7bdefe30 100644 --- a/tsc/internal/bundled/libs_generated.go +++ b/tsc/internal/bundled/libs_generated.go @@ -111,6 +111,7 @@ var LibNames = []string{ "lib.esnext.disposable.d.ts", "lib.esnext.full.d.ts", "lib.esnext.intl.d.ts", + "lib.esnext.promise.d.ts", "lib.esnext.sharedmemory.d.ts", "lib.esnext.temporal.d.ts", "lib.scripthost.d.ts", diff --git a/tsc/internal/compiler/program_test.go b/tsc/internal/compiler/program_test.go index 185d83e20570d..b910c8081299f 100644 --- a/tsc/internal/compiler/program_test.go +++ b/tsc/internal/compiler/program_test.go @@ -328,6 +328,7 @@ var esnextLibs = []string{ "lib.es2026.json.d.ts", "lib.es2026.math.d.ts", "lib.es2026.typedarrays.d.ts", + "lib.esnext.promise.d.ts", "lib.esnext.date.d.ts", "lib.esnext.decorators.d.ts", "lib.esnext.disposable.d.ts", diff --git a/tsc/internal/tsoptions/declarations_generated.go b/tsc/internal/tsoptions/declarations_generated.go index 603acdde5514d..49e185fdb8b30 100644 --- a/tsc/internal/tsoptions/declarations_generated.go +++ b/tsc/internal/tsoptions/declarations_generated.go @@ -1252,12 +1252,12 @@ var LibMap = collections.NewOrderedMapFromList([]collections.MapEntry[string, an {Key: "esnext.regexp", Value: "lib.es2024.regexp.d.ts"}, {Key: "esnext.string", Value: "lib.es2024.string.d.ts"}, {Key: "esnext.float16", Value: "lib.es2025.float16.d.ts"}, - {Key: "esnext.promise", Value: "lib.es2025.promise.d.ts"}, {Key: "esnext.array", Value: "lib.es2026.array.d.ts"}, {Key: "esnext.collection", Value: "lib.es2026.collection.d.ts"}, {Key: "esnext.error", Value: "lib.es2026.error.d.ts"}, {Key: "esnext.iterator", Value: "lib.es2026.iterator.d.ts"}, {Key: "esnext.typedarrays", Value: "lib.es2026.typedarrays.d.ts"}, + {Key: "esnext.promise", Value: "lib.esnext.promise.d.ts"}, {Key: "esnext.date", Value: "lib.esnext.date.d.ts"}, {Key: "esnext.decorators", Value: "lib.esnext.decorators.d.ts"}, {Key: "esnext.disposable", Value: "lib.esnext.disposable.d.ts"}, diff --git a/tsc/testdata/baselines/reference/compiler/libReplacement(libreplacement=true).trace.json b/tsc/testdata/baselines/reference/compiler/libReplacement(libreplacement=true).trace.json index 6b7f31567419a..a929c4dc208b9 100644 --- a/tsc/testdata/baselines/reference/compiler/libReplacement(libreplacement=true).trace.json +++ b/tsc/testdata/baselines/reference/compiler/libReplacement(libreplacement=true).trace.json @@ -1155,6 +1155,19 @@ Searching all ancestor node_modules directories for fallback extensions: JavaScr Directory '/.src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name '@typescript/lib-esnext/intl' was not resolved. ======== +======== Resolving module '@typescript/lib-esnext/promise' from '/.src/__lib_node_modules_lookup_lib.esnext.promise.d.ts__.ts'. ======== +Module resolution kind is not specified, using 'Bundler'. +Resolving in CJS mode with conditions 'require', 'types'. +File '/.src/package.json' does not exist according to earlier cached lookups. +File '/package.json' does not exist according to earlier cached lookups. +Loading module '@typescript/lib-esnext/promise' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration, JSON. +Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration. +Directory '/.src/node_modules' does not exist, skipping all lookups in it. +Directory '/node_modules' does not exist, skipping all lookups in it. +Searching all ancestor node_modules directories for fallback extensions: JavaScript, JSON. +Directory '/.src/node_modules' does not exist, skipping all lookups in it. +Directory '/node_modules' does not exist, skipping all lookups in it. +======== Module name '@typescript/lib-esnext/promise' was not resolved. ======== ======== Resolving module '@typescript/lib-esnext/sharedmemory' from '/.src/__lib_node_modules_lookup_lib.esnext.sharedmemory.d.ts__.ts'. ======== Module resolution kind is not specified, using 'Bundler'. Resolving in CJS mode with conditions 'require', 'types'. diff --git a/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.errors.txt b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.errors.txt new file mode 100644 index 0000000000000..7a7693197bcb7 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.errors.txt @@ -0,0 +1,72 @@ +promiseAllKeyed.ts(50,18): error TS2345: Argument of type 'number' is not assignable to parameter of type 'object'. +promiseAllKeyed.ts(52,25): error TS2345: Argument of type 'string' is not assignable to parameter of type 'object'. +promiseAllKeyed.ts(54,18): error TS2345: Argument of type 'null' is not assignable to parameter of type 'object'. +promiseAllKeyed.ts(56,25): error TS2345: Argument of type 'undefined' is not assignable to parameter of type 'object'. + + +==== promiseAllKeyed.ts (4 errors) ==== + declare const key: unique symbol; + + const values = { + a: 1 as number, + b: Promise.resolve("value"), + c: { then(resolve: (value: boolean) => void) { resolve(true); } }, + [key]: Promise.resolve(42), + } as const; + + async function testAllKeyed() { + const result = await Promise.allKeyed(values); + const a: number = result.a; + const b: string = result.b; + const c: boolean = result.c; + const d: number = result[key]; + + result.a = 2; + } + + async function testAllSettledKeyed() { + const result = await Promise.allSettledKeyed(values); + + if (result.b.status === "fulfilled") { + const value: string = result.b.value; + } + else { + const reason: any = result.b.reason; + } + + if (result[key].status === "fulfilled") { + const value: number = result[key].value; + } + } + + interface Input { + a: Promise; + b: string; + } + + declare const input: Input; + + const allResult: Promise<{ a: number; b: string; }> = Promise.allKeyed(input); + const allSettledResult: Promise<{ + a: PromiseSettledResult; + b: PromiseSettledResult; + }> = Promise.allSettledKeyed(input); + + Promise.try(() => 1); + + Promise.allKeyed(0); + ~ +!!! error TS2345: Argument of type 'number' is not assignable to parameter of type 'object'. + + Promise.allSettledKeyed("value"); + ~~~~~~~ +!!! error TS2345: Argument of type 'string' is not assignable to parameter of type 'object'. + + Promise.allKeyed(null); + ~~~~ +!!! error TS2345: Argument of type 'null' is not assignable to parameter of type 'object'. + + Promise.allSettledKeyed(undefined); + ~~~~~~~~~ +!!! error TS2345: Argument of type 'undefined' is not assignable to parameter of type 'object'. + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.js b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.js new file mode 100644 index 0000000000000..9b846f4dcb150 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.js @@ -0,0 +1,96 @@ +//// [tests/cases/compiler/promiseAllKeyed.ts] //// + +//// [promiseAllKeyed.ts] +declare const key: unique symbol; + +const values = { + a: 1 as number, + b: Promise.resolve("value"), + c: { then(resolve: (value: boolean) => void) { resolve(true); } }, + [key]: Promise.resolve(42), +} as const; + +async function testAllKeyed() { + const result = await Promise.allKeyed(values); + const a: number = result.a; + const b: string = result.b; + const c: boolean = result.c; + const d: number = result[key]; + + result.a = 2; +} + +async function testAllSettledKeyed() { + const result = await Promise.allSettledKeyed(values); + + if (result.b.status === "fulfilled") { + const value: string = result.b.value; + } + else { + const reason: any = result.b.reason; + } + + if (result[key].status === "fulfilled") { + const value: number = result[key].value; + } +} + +interface Input { + a: Promise; + b: string; +} + +declare const input: Input; + +const allResult: Promise<{ a: number; b: string; }> = Promise.allKeyed(input); +const allSettledResult: Promise<{ + a: PromiseSettledResult; + b: PromiseSettledResult; +}> = Promise.allSettledKeyed(input); + +Promise.try(() => 1); + +Promise.allKeyed(0); + +Promise.allSettledKeyed("value"); + +Promise.allKeyed(null); + +Promise.allSettledKeyed(undefined); + + +//// [promiseAllKeyed.js] +"use strict"; +const values = { + a: 1, + b: Promise.resolve("value"), + c: { then(resolve) { resolve(true); } }, + [key]: Promise.resolve(42), +}; +async function testAllKeyed() { + const result = await Promise.allKeyed(values); + const a = result.a; + const b = result.b; + const c = result.c; + const d = result[key]; + result.a = 2; +} +async function testAllSettledKeyed() { + const result = await Promise.allSettledKeyed(values); + if (result.b.status === "fulfilled") { + const value = result.b.value; + } + else { + const reason = result.b.reason; + } + if (result[key].status === "fulfilled") { + const value = result[key].value; + } +} +const allResult = Promise.allKeyed(input); +const allSettledResult = Promise.allSettledKeyed(input); +Promise.try(() => 1); +Promise.allKeyed(0); +Promise.allSettledKeyed("value"); +Promise.allKeyed(null); +Promise.allSettledKeyed(undefined); diff --git a/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.symbols b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.symbols new file mode 100644 index 0000000000000..990d252cdf7a8 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.symbols @@ -0,0 +1,193 @@ +//// [tests/cases/compiler/promiseAllKeyed.ts] //// + +=== promiseAllKeyed.ts === +declare const key: unique symbol; +>key : Symbol(key, Decl(promiseAllKeyed.ts, 0, 13)) + +const values = { +>values : Symbol(values, Decl(promiseAllKeyed.ts, 2, 5)) + + a: 1 as number, +>a : Symbol(a, Decl(promiseAllKeyed.ts, 2, 16)) + + b: Promise.resolve("value"), +>b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>Promise.resolve : Symbol(PromiseConstructor.resolve, Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>resolve : Symbol(PromiseConstructor.resolve, Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --)) + + c: { then(resolve: (value: boolean) => void) { resolve(true); } }, +>c : Symbol(c, Decl(promiseAllKeyed.ts, 4, 32)) +>then : Symbol(then, Decl(promiseAllKeyed.ts, 5, 8)) +>resolve : Symbol(resolve, Decl(promiseAllKeyed.ts, 5, 14)) +>value : Symbol(value, Decl(promiseAllKeyed.ts, 5, 24)) +>resolve : Symbol(resolve, Decl(promiseAllKeyed.ts, 5, 14)) + + [key]: Promise.resolve(42), +>[key] : Symbol([key], Decl(promiseAllKeyed.ts, 5, 70)) +>key : Symbol(key, Decl(promiseAllKeyed.ts, 0, 13)) +>Promise.resolve : Symbol(PromiseConstructor.resolve, Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>resolve : Symbol(PromiseConstructor.resolve, Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --)) + +} as const; +>const : Symbol(const) + +async function testAllKeyed() { +>testAllKeyed : Symbol(testAllKeyed, Decl(promiseAllKeyed.ts, 7, 11)) + + const result = await Promise.allKeyed(values); +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>Promise.allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>values : Symbol(values, Decl(promiseAllKeyed.ts, 2, 5)) + + const a: number = result.a; +>a : Symbol(a, Decl(promiseAllKeyed.ts, 11, 9)) +>result.a : Symbol(a, Decl(promiseAllKeyed.ts, 2, 16)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>a : Symbol(a, Decl(promiseAllKeyed.ts, 2, 16)) + + const b: string = result.b; +>b : Symbol(b, Decl(promiseAllKeyed.ts, 12, 9)) +>result.b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) + + const c: boolean = result.c; +>c : Symbol(c, Decl(promiseAllKeyed.ts, 13, 9)) +>result.c : Symbol(c, Decl(promiseAllKeyed.ts, 4, 32)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>c : Symbol(c, Decl(promiseAllKeyed.ts, 4, 32)) + + const d: number = result[key]; +>d : Symbol(d, Decl(promiseAllKeyed.ts, 14, 9)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>key : Symbol(key, Decl(promiseAllKeyed.ts, 0, 13)) + + result.a = 2; +>result.a : Symbol(a, Decl(promiseAllKeyed.ts, 2, 16)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 10, 9)) +>a : Symbol(a, Decl(promiseAllKeyed.ts, 2, 16)) +} + +async function testAllSettledKeyed() { +>testAllSettledKeyed : Symbol(testAllSettledKeyed, Decl(promiseAllKeyed.ts, 17, 1)) + + const result = await Promise.allSettledKeyed(values); +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>Promise.allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>values : Symbol(values, Decl(promiseAllKeyed.ts, 2, 5)) + + if (result.b.status === "fulfilled") { +>result.b.status : Symbol(status, Decl(lib.es2020.promise.d.ts, --, --), Decl(lib.es2020.promise.d.ts, --, --)) +>result.b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>status : Symbol(status, Decl(lib.es2020.promise.d.ts, --, --), Decl(lib.es2020.promise.d.ts, --, --)) + + const value: string = result.b.value; +>value : Symbol(value, Decl(promiseAllKeyed.ts, 23, 13)) +>result.b.value : Symbol(PromiseFulfilledResult.value, Decl(lib.es2020.promise.d.ts, --, --)) +>result.b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>value : Symbol(PromiseFulfilledResult.value, Decl(lib.es2020.promise.d.ts, --, --)) + } + else { + const reason: any = result.b.reason; +>reason : Symbol(reason, Decl(promiseAllKeyed.ts, 26, 13)) +>result.b.reason : Symbol(PromiseRejectedResult.reason, Decl(lib.es2020.promise.d.ts, --, --)) +>result.b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>b : Symbol(b, Decl(promiseAllKeyed.ts, 3, 19)) +>reason : Symbol(PromiseRejectedResult.reason, Decl(lib.es2020.promise.d.ts, --, --)) + } + + if (result[key].status === "fulfilled") { +>result[key].status : Symbol(status, Decl(lib.es2020.promise.d.ts, --, --), Decl(lib.es2020.promise.d.ts, --, --)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>key : Symbol(key, Decl(promiseAllKeyed.ts, 0, 13)) +>status : Symbol(status, Decl(lib.es2020.promise.d.ts, --, --), Decl(lib.es2020.promise.d.ts, --, --)) + + const value: number = result[key].value; +>value : Symbol(value, Decl(promiseAllKeyed.ts, 30, 13)) +>result[key].value : Symbol(PromiseFulfilledResult.value, Decl(lib.es2020.promise.d.ts, --, --)) +>result : Symbol(result, Decl(promiseAllKeyed.ts, 20, 9)) +>key : Symbol(key, Decl(promiseAllKeyed.ts, 0, 13)) +>value : Symbol(PromiseFulfilledResult.value, Decl(lib.es2020.promise.d.ts, --, --)) + } +} + +interface Input { +>Input : Symbol(Input, Decl(promiseAllKeyed.ts, 32, 1)) + + a: Promise; +>a : Symbol(Input.a, Decl(promiseAllKeyed.ts, 34, 17)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + + b: string; +>b : Symbol(Input.b, Decl(promiseAllKeyed.ts, 35, 23)) +} + +declare const input: Input; +>input : Symbol(input, Decl(promiseAllKeyed.ts, 39, 13)) +>Input : Symbol(Input, Decl(promiseAllKeyed.ts, 32, 1)) + +const allResult: Promise<{ a: number; b: string; }> = Promise.allKeyed(input); +>allResult : Symbol(allResult, Decl(promiseAllKeyed.ts, 41, 5)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>a : Symbol(a, Decl(promiseAllKeyed.ts, 41, 26)) +>b : Symbol(b, Decl(promiseAllKeyed.ts, 41, 37)) +>Promise.allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>input : Symbol(input, Decl(promiseAllKeyed.ts, 39, 13)) + +const allSettledResult: Promise<{ +>allSettledResult : Symbol(allSettledResult, Decl(promiseAllKeyed.ts, 42, 5)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + + a: PromiseSettledResult; +>a : Symbol(a, Decl(promiseAllKeyed.ts, 42, 33)) +>PromiseSettledResult : Symbol(PromiseSettledResult, Decl(lib.es2020.promise.d.ts, --, --)) + + b: PromiseSettledResult; +>b : Symbol(b, Decl(promiseAllKeyed.ts, 43, 36)) +>PromiseSettledResult : Symbol(PromiseSettledResult, Decl(lib.es2020.promise.d.ts, --, --)) + +}> = Promise.allSettledKeyed(input); +>Promise.allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>input : Symbol(input, Decl(promiseAllKeyed.ts, 39, 13)) + +Promise.try(() => 1); +>Promise.try : Symbol(PromiseConstructor.try, Decl(lib.es2025.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>try : Symbol(PromiseConstructor.try, Decl(lib.es2025.promise.d.ts, --, --)) + +Promise.allKeyed(0); +>Promise.allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) + +Promise.allSettledKeyed("value"); +>Promise.allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) + +Promise.allKeyed(null); +>Promise.allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allKeyed : Symbol(PromiseConstructor.allKeyed, Decl(lib.esnext.promise.d.ts, --, --)) + +Promise.allSettledKeyed(undefined); +>Promise.allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>allSettledKeyed : Symbol(PromiseConstructor.allSettledKeyed, Decl(lib.esnext.promise.d.ts, --, --)) +>undefined : Symbol(undefined) + diff --git a/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.types b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.types new file mode 100644 index 0000000000000..2a0f1da2bc37e --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/promiseAllKeyed.types @@ -0,0 +1,219 @@ +//// [tests/cases/compiler/promiseAllKeyed.ts] //// + +=== promiseAllKeyed.ts === +declare const key: unique symbol; +>key : unique symbol + +const values = { +>values : { readonly a: number; readonly b: Promise; readonly c: { readonly then: (resolve: (value: boolean) => void) => void; }; readonly [key]: Promise; } +>{ a: 1 as number, b: Promise.resolve("value"), c: { then(resolve: (value: boolean) => void) { resolve(true); } }, [key]: Promise.resolve(42),} as const : { readonly a: number; readonly b: Promise; readonly c: { readonly then: (resolve: (value: boolean) => void) => void; }; readonly [key]: Promise; } +>{ a: 1 as number, b: Promise.resolve("value"), c: { then(resolve: (value: boolean) => void) { resolve(true); } }, [key]: Promise.resolve(42),} : { readonly a: number; readonly b: Promise; readonly c: { readonly then: (resolve: (value: boolean) => void) => void; }; readonly [key]: Promise; } + + a: 1 as number, +>a : number +>1 as number : number +>1 : 1 + + b: Promise.resolve("value"), +>b : Promise +>Promise.resolve("value") : Promise +>Promise.resolve : { (): Promise; (value: T): Promise>; (value: T | PromiseLike): Promise>; } +>Promise : PromiseConstructor +>resolve : { (): Promise; (value: T): Promise>; (value: T | PromiseLike): Promise>; } +>"value" : "value" + + c: { then(resolve: (value: boolean) => void) { resolve(true); } }, +>c : { readonly then: (resolve: (value: boolean) => void) => void; } +>{ then(resolve: (value: boolean) => void) { resolve(true); } } : { readonly then: (resolve: (value: boolean) => void) => void; } +>then : (resolve: (value: boolean) => void) => void +>resolve : (value: boolean) => void +>value : boolean +>resolve(true) : void +>resolve : (value: boolean) => void +>true : true + + [key]: Promise.resolve(42), +>[key] : Promise +>key : unique symbol +>Promise.resolve(42) : Promise +>Promise.resolve : { (): Promise; (value: T): Promise>; (value: T | PromiseLike): Promise>; } +>Promise : PromiseConstructor +>resolve : { (): Promise; (value: T): Promise>; (value: T | PromiseLike): Promise>; } +>42 : 42 + +} as const; + +async function testAllKeyed() { +>testAllKeyed : () => Promise + + const result = await Promise.allKeyed(values); +>result : { a: number; b: string; c: boolean; [key]: number; } +>await Promise.allKeyed(values) : { a: number; b: string; c: boolean; [key]: number; } +>Promise.allKeyed(values) : Promise<{ a: number; b: string; c: boolean; [key]: number; }> +>Promise.allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>Promise : PromiseConstructor +>allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>values : { readonly a: number; readonly b: Promise; readonly c: { readonly then: (resolve: (value: boolean) => void) => void; }; readonly [key]: Promise; } + + const a: number = result.a; +>a : number +>result.a : number +>result : { a: number; b: string; c: boolean; [key]: number; } +>a : number + + const b: string = result.b; +>b : string +>result.b : string +>result : { a: number; b: string; c: boolean; [key]: number; } +>b : string + + const c: boolean = result.c; +>c : boolean +>result.c : boolean +>result : { a: number; b: string; c: boolean; [key]: number; } +>c : boolean + + const d: number = result[key]; +>d : number +>result[key] : number +>result : { a: number; b: string; c: boolean; [key]: number; } +>key : unique symbol + + result.a = 2; +>result.a = 2 : 2 +>result.a : number +>result : { a: number; b: string; c: boolean; [key]: number; } +>a : number +>2 : 2 +} + +async function testAllSettledKeyed() { +>testAllSettledKeyed : () => Promise + + const result = await Promise.allSettledKeyed(values); +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>await Promise.allSettledKeyed(values) : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>Promise.allSettledKeyed(values) : Promise<{ a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; }> +>Promise.allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>Promise : PromiseConstructor +>allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>values : { readonly a: number; readonly b: Promise; readonly c: { readonly then: (resolve: (value: boolean) => void) => void; }; readonly [key]: Promise; } + + if (result.b.status === "fulfilled") { +>result.b.status === "fulfilled" : boolean +>result.b.status : "fulfilled" | "rejected" +>result.b : PromiseSettledResult +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>b : PromiseSettledResult +>status : "fulfilled" | "rejected" +>"fulfilled" : "fulfilled" + + const value: string = result.b.value; +>value : string +>result.b.value : string +>result.b : PromiseFulfilledResult +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>b : PromiseFulfilledResult +>value : string + } + else { + const reason: any = result.b.reason; +>reason : any +>result.b.reason : any +>result.b : PromiseRejectedResult +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>b : PromiseRejectedResult +>reason : any + } + + if (result[key].status === "fulfilled") { +>result[key].status === "fulfilled" : boolean +>result[key].status : "fulfilled" | "rejected" +>result[key] : PromiseSettledResult +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>key : unique symbol +>status : "fulfilled" | "rejected" +>"fulfilled" : "fulfilled" + + const value: number = result[key].value; +>value : number +>result[key].value : number +>result[key] : PromiseFulfilledResult +>result : { a: PromiseSettledResult; b: PromiseSettledResult; c: PromiseSettledResult; [key]: PromiseSettledResult; } +>key : unique symbol +>value : number + } +} + +interface Input { + a: Promise; +>a : Promise + + b: string; +>b : string +} + +declare const input: Input; +>input : Input + +const allResult: Promise<{ a: number; b: string; }> = Promise.allKeyed(input); +>allResult : Promise<{ a: number; b: string; }> +>a : number +>b : string +>Promise.allKeyed(input) : Promise<{ a: number; b: string; }> +>Promise.allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>Promise : PromiseConstructor +>allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>input : Input + +const allSettledResult: Promise<{ +>allSettledResult : Promise<{ a: PromiseSettledResult; b: PromiseSettledResult; }> + + a: PromiseSettledResult; +>a : PromiseSettledResult + + b: PromiseSettledResult; +>b : PromiseSettledResult + +}> = Promise.allSettledKeyed(input); +>Promise.allSettledKeyed(input) : Promise<{ a: PromiseSettledResult; b: PromiseSettledResult; }> +>Promise.allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>Promise : PromiseConstructor +>allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>input : Input + +Promise.try(() => 1); +>Promise.try(() => 1) : Promise +>Promise.try : (callbackFn: (...args: U) => T | PromiseLike, ...args: U) => Promise> +>Promise : PromiseConstructor +>try : (callbackFn: (...args: U) => T | PromiseLike, ...args: U) => Promise> +>() => 1 : () => number +>1 : 1 + +Promise.allKeyed(0); +>Promise.allKeyed(0) : Promise +>Promise.allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>Promise : PromiseConstructor +>allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>0 : 0 + +Promise.allSettledKeyed("value"); +>Promise.allSettledKeyed("value") : Promise +>Promise.allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>Promise : PromiseConstructor +>allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>"value" : "value" + +Promise.allKeyed(null); +>Promise.allKeyed(null) : Promise +>Promise.allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> +>Promise : PromiseConstructor +>allKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: Awaited; }> + +Promise.allSettledKeyed(undefined); +>Promise.allSettledKeyed(undefined) : Promise +>Promise.allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>Promise : PromiseConstructor +>allSettledKeyed : (promises: T) => Promise<{ -readonly [P in keyof T]: PromiseSettledResult>; }> +>undefined : undefined + diff --git a/tsc/testdata/baselines/reference/tsc/commandLine/Initialized-TSConfig-with-incorrect-compiler-option-value.js b/tsc/testdata/baselines/reference/tsc/commandLine/Initialized-TSConfig-with-incorrect-compiler-option-value.js index f5a1e10f07f27..6edd644d80394 100644 --- a/tsc/testdata/baselines/reference/tsc/commandLine/Initialized-TSConfig-with-incorrect-compiler-option-value.js +++ b/tsc/testdata/baselines/reference/tsc/commandLine/Initialized-TSConfig-with-incorrect-compiler-option-value.js @@ -5,5 +5,5 @@ Input:: tsgo --init --lib nonExistLib,es5,es2015.promise ExitStatus:: DiagnosticsPresent_OutputsSkipped Output:: -error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.promise', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. +error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.promise', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. diff --git a/tsc/testdata/baselines/reference/tsc/commandLine/help-all.js b/tsc/testdata/baselines/reference/tsc/commandLine/help-all.js index 69a962e5131f3..57d00bbbe873d 100644 --- a/tsc/testdata/baselines/reference/tsc/commandLine/help-all.js +++ b/tsc/testdata/baselines/reference/tsc/commandLine/help-all.js @@ -545,7 +545,7 @@ default: react --lib Specify a set of bundled library declaration files that describe the target runtime environment. -one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy default: undefined --libReplacement diff --git a/tsc/testdata/baselines/reference/tsc/commandLine/help.js b/tsc/testdata/baselines/reference/tsc/commandLine/help.js index 8cd90c2355f72..8e02b55bed9c8 100644 --- a/tsc/testdata/baselines/reference/tsc/commandLine/help.js +++ b/tsc/testdata/baselines/reference/tsc/commandLine/help.js @@ -104,7 +104,7 @@ default: undefined --lib Specify a set of bundled library declaration files that describe the target runtime environment. -one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy default: undefined --allowJs diff --git a/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-cannot-provide-terminal-width.js b/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-cannot-provide-terminal-width.js index e0faa27cb2ce5..0eac1e69a6afa 100644 --- a/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-cannot-provide-terminal-width.js +++ b/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-cannot-provide-terminal-width.js @@ -105,7 +105,7 @@ default: undefined --lib Specify a set of bundled library declaration files that describe the target runtime environment. -one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy default: undefined --allowJs diff --git a/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js b/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js index 05adf8a8cc0c2..f9a6e636dd4c2 100644 --- a/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js +++ b/tsc/testdata/baselines/reference/tsc/commandLine/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js @@ -138,11 +138,11 @@ tsc: The TypeScript Compiler - Version FakeTSVersion 022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection , es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory , es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, e - s2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026 - .collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es20 - 26.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, es - next.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.lega - cy + s2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esn + ext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026 + .math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, e + snext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.leg + acy default: undefined diff --git a/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent-with---ignoreConfig.js b/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent-with---ignoreConfig.js index 45c2bef3510c3..fea2e5d8c5251 100644 --- a/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent-with---ignoreConfig.js +++ b/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent-with---ignoreConfig.js @@ -111,7 +111,7 @@ default: undefined --lib Specify a set of bundled library declaration files that describe the target runtime environment. -one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy default: undefined --allowJs diff --git a/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent.js b/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent.js index 10596132ea29a..300243731f98b 100644 --- a/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent.js +++ b/tsc/testdata/baselines/reference/tsc/ignoreConfig/without-any-options-when-config-file-absent.js @@ -111,7 +111,7 @@ default: undefined --lib Specify a set of bundled library declaration files that describe the target runtime environment. -one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy default: undefined --allowJs diff --git a/tsc/testdata/baselines/reference/tsc/showConfig/Show-TSConfig-with-incorrect-compiler-option-value.js b/tsc/testdata/baselines/reference/tsc/showConfig/Show-TSConfig-with-incorrect-compiler-option-value.js index a4260eca0f6b1..d25f163698ac2 100644 --- a/tsc/testdata/baselines/reference/tsc/showConfig/Show-TSConfig-with-incorrect-compiler-option-value.js +++ b/tsc/testdata/baselines/reference/tsc/showConfig/Show-TSConfig-with-incorrect-compiler-option-value.js @@ -5,5 +5,5 @@ Input:: tsgo --showConfig --lib nonExistLib,es5,es2015.promise ExitStatus:: DiagnosticsPresent_OutputsSkipped Output:: -error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.promise', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. +error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.promise', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. diff --git a/tsc/testdata/baselines/reference/tscWatch/commandLineWatch/watch-handles-tsconfig-deleted.js b/tsc/testdata/baselines/reference/tscWatch/commandLineWatch/watch-handles-tsconfig-deleted.js index d51422aea481a..06b1d84ceeb08 100644 --- a/tsc/testdata/baselines/reference/tscWatch/commandLineWatch/watch-handles-tsconfig-deleted.js +++ b/tsc/testdata/baselines/reference/tscWatch/commandLineWatch/watch-handles-tsconfig-deleted.js @@ -171,7 +171,7 @@ Diff:: incremental reports config read error while clean build without tsconfig - ---lib -Specify a set of bundled library declaration files that describe the target runtime environment. --one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise/esnext.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy +-one or more: es5, es6/es2015, es7/es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, es2024, es2025, es2026, esnext, dom, dom.iterable, dom.asynciterable, webworker, webworker.importscripts, webworker.iterable, webworker.asynciterable, scripthost, es2015.core, es2015.collection, es2015.generator, es2015.iterable, es2015.promise, es2015.proxy, es2015.reflect, es2015.symbol, es2015.symbol.wellknown, es2016.array.include, es2016.intl, es2017.arraybuffer, es2017.date, es2017.object, es2017.sharedmemory, es2017.string, es2017.intl, es2017.typedarrays, es2018.asyncgenerator, es2018.asynciterable/esnext.asynciterable, es2018.intl, es2018.promise, es2018.regexp, es2019.array, es2019.object, es2019.string, es2019.symbol/esnext.symbol, es2019.intl, es2020.bigint/esnext.bigint, es2020.date, es2020.promise, es2020.sharedmemory, es2020.string, es2020.symbol.wellknown, es2020.intl, es2020.number, es2021.promise, es2021.string, es2021.weakref/esnext.weakref, es2021.intl, es2022.array, es2022.error, es2022.intl, es2022.object, es2022.string, es2022.regexp, es2023.array, es2023.collection, es2023.intl, es2024.arraybuffer, es2024.collection, es2024.object/esnext.object, es2024.promise, es2024.regexp/esnext.regexp, es2024.sharedmemory, es2024.string/esnext.string, es2025.collection, es2025.float16/esnext.float16, es2025.intl, es2025.iterator, es2025.promise, es2025.regexp, es2026.array/esnext.array, es2026.collection/esnext.collection, es2026.error/esnext.error, es2026.iterator/esnext.iterator, es2026.json, es2026.math, es2026.typedarrays/esnext.typedarrays, esnext.promise, esnext.date, esnext.decorators, esnext.disposable, esnext.intl, esnext.sharedmemory, esnext.temporal, decorators, decorators.legacy -default: undefined - ---allowJs diff --git a/tsc/testdata/baselines/reference/tsoptions/commandLineParsing/parseCommandLine/Parse invalid option of library flags.js b/tsc/testdata/baselines/reference/tsoptions/commandLineParsing/parseCommandLine/Parse invalid option of library flags.js index fd3fef9887891..134b9070067c0 100644 --- a/tsc/testdata/baselines/reference/tsoptions/commandLineParsing/parseCommandLine/Parse invalid option of library flags.js +++ b/tsc/testdata/baselines/reference/tsoptions/commandLineParsing/parseCommandLine/Parse invalid option of library flags.js @@ -8,4 +8,4 @@ FileNames:: 0.ts Errors:: -error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.promise', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. +error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'es2025', 'es2026', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'es2025.collection', 'es2025.float16', 'es2025.intl', 'es2025.iterator', 'es2025.promise', 'es2025.regexp', 'es2026.array', 'es2026.collection', 'es2026.error', 'es2026.iterator', 'es2026.json', 'es2026.math', 'es2026.typedarrays', 'esnext.asynciterable', 'esnext.symbol', 'esnext.bigint', 'esnext.weakref', 'esnext.object', 'esnext.regexp', 'esnext.string', 'esnext.float16', 'esnext.array', 'esnext.collection', 'esnext.error', 'esnext.iterator', 'esnext.typedarrays', 'esnext.promise', 'esnext.date', 'esnext.decorators', 'esnext.disposable', 'esnext.intl', 'esnext.sharedmemory', 'esnext.temporal', 'decorators', 'decorators.legacy'. diff --git a/tsc/testdata/tests/cases/compiler/promiseAllKeyed.ts b/tsc/testdata/tests/cases/compiler/promiseAllKeyed.ts new file mode 100644 index 0000000000000..21f5e461faa68 --- /dev/null +++ b/tsc/testdata/tests/cases/compiler/promiseAllKeyed.ts @@ -0,0 +1,60 @@ +// @target: esnext +// @lib: es2015, esnext.promise +// @strict: true + +declare const key: unique symbol; + +const values = { + a: 1 as number, + b: Promise.resolve("value"), + c: { then(resolve: (value: boolean) => void) { resolve(true); } }, + [key]: Promise.resolve(42), +} as const; + +async function testAllKeyed() { + const result = await Promise.allKeyed(values); + const a: number = result.a; + const b: string = result.b; + const c: boolean = result.c; + const d: number = result[key]; + + result.a = 2; +} + +async function testAllSettledKeyed() { + const result = await Promise.allSettledKeyed(values); + + if (result.b.status === "fulfilled") { + const value: string = result.b.value; + } + else { + const reason: any = result.b.reason; + } + + if (result[key].status === "fulfilled") { + const value: number = result[key].value; + } +} + +interface Input { + a: Promise; + b: string; +} + +declare const input: Input; + +const allResult: Promise<{ a: number; b: string; }> = Promise.allKeyed(input); +const allSettledResult: Promise<{ + a: PromiseSettledResult; + b: PromiseSettledResult; +}> = Promise.allSettledKeyed(input); + +Promise.try(() => 1); + +Promise.allKeyed(0); + +Promise.allSettledKeyed("value"); + +Promise.allKeyed(null); + +Promise.allSettledKeyed(undefined);