рд╡рд░реНрддрдорд╛рди рдореЗрдВ @ts-ignore рдХреЗрд╡рд▓ рдЗрд╕рдХреЗ рдареАрдХ рдиреАрдЪреЗ рдХреА рд░реЗрдЦрд╛ рд╕реЗ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдореНрдпреВрдЯ рдХрд░рддрд╛ рд╣реИ
рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛
рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ: рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдПрдХ рдЯреБрдХрдбрд╝реЗ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдирд╛ рдХрд┐ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдХреНрдпрд╛ рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛, рдлрд┐рд░ рднреА рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рд╕реЗ рдкрд░рд╣реЗрдЬ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЯрд┐рдкреНрдкрдгреА рдХреЛрдб рд╣реИ рдЬреЛ рдХрдИ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЗрд╕ рд▓реЛрд▓ рдХреА рдЬрд░реВрд░рдд рд╣реИ
рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдПрдХ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рд╣реИ рдЬреЛ рд╡реНрд╣рд╛рдЗрдЯрд╕реНрдкреЗрд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ "рдиреЛ-рдЯреНрд░реЗрд▓рд┐рдВрдЧ-рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк" рдирд┐рдпрдо рдЪрд╛рд▓реВ рд╣реИ, рд▓реЗрдХрд┐рди рдмреНрд▓реЙрдХ рд╕реНрддрд░ рдкрд░ рдЗрд╕реЗ рдкреНрд░рдмрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо рдИрдПрд╕ 6 рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд┐рдЫрд▓реА рд╡реНрд╣рд╛рдЗрдЯрд╕реНрдкреЗрд╕ рдФрд░ рдХреИрд░рд┐рдЬ рд░рд┐рдЯрд░реНрди рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред .
рдЧрдгрд┐рдд рдореЗрдВ рдХрд╕реНрдЯрдо рдмрдВрдбрд▓рд┐рдВрдЧ _ a.k.a partial import
_ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕реЗ рдПрдХ
// tslint:disable:no-var-requires
import core from 'mathjs/core'
// @ts-ignore
import mathUnit from 'mathjs/lib/type/unit'
// @ts-ignore
import mathExpression from 'mathjs/lib/expression/function'
// @ts-ignore
import mathArithmatic from 'mathjs/lib/function/arithmetic'
const math = core.create()
// math.import(require('mathjs/lib/type/unit'))
// math.import(require('mathjs/lib/expression/function')) // compile, eval
// math.import(require('mathjs/lib/function/arithmetic')) // basic arithmetic like divide, exponent, etc
math.import(mathUnit)
math.import(mathExpression) // compile, eval
math.import(mathArithmatic) // basic arithmetic like divide, exponent, etc
export const unit = math.unit
export const createUnit = math.createUnit
export const compile = math.compile
рдореИрдВ рдкреВрд░реА рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдХреБрдЫ ES6 JS рдХреЛрдб рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ ES5 рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдордп рдмреИрдмреЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рдХрд░ .ts рдХрд░рдирд╛ рдФрд░ TS рдХреЗ рд╕рд╛рде рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред
@ptallett рдЖрдк allowJs рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ allowJs
.js
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕рдВрдХрд▓рди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╣рдо .js
рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдБ рддрдм рддрдХ рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд░рддреЗ рдЬрдм рддрдХ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ // @ts-check
рдЯрд┐рдкреНрдкрдгреА рди рд╣реЛ, рдпрд╛ рдЖрдк checkJs
рдЪрд╛рд▓реВ рди рдХрд░реЗрдВред
рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛, рдореИрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмреИрдард╛ рд╣реВрдВ, рдЗрд╕рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ .ts рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХреМрди рд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╣рд╛рдВ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ src рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдирджрд╛рд░ рд╣реИред .
рдореЗрд░реА рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЕрдм рд▓рд╛рд▓ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдХреБрдЫ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рджреЗрддрд╛ рд╣реВрдВ, рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рд▓реЗрддрд╛ рд╣реИ, рдФрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рднреА рдЬрд╛рдВрдЪрддрд╛ рд╣реВрдВред
рд╣рд░ рдЬрдЧрд╣ рд▓рд╛рд▓ рд░реЗрдЦрд╛рдУрдВ рдХрд╛ рдЧреБрдЪреНрдЫрд╛ рди рд╣реЛ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред :)
рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рд╣реИ, рдпрд╛ рдХрд┐рд╕реА рдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдорд┐рд▓рд╛ рд╣реИ?
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде lodash
рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ lodash/fp
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рджрд░реНрджрдирд╛рдХ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ lodash
рдФрд░ @types/lodash
рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рднреА рдЖрдк рдмрд╣реБрдд рд╣реА рдЧреБрдкреНрдд рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ @ts-ignore-block
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЬрд╣рд╛рдВ _рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ_ :-)
рдореИрдВ рдХрдИ рд╡реИрд╢реНрд╡рд┐рдХ рджрд╛рдпрд░реЗ рд╡рд╛рд▓реЗ рдЪрд░ рдХреЗ рд╕рд╛рде рд╡рд┐рд░рд╛рд╕рдд рдХреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдкрд░ @ ts-ignore рд▓рд┐рдЦрдирд╛ рдХрдард┐рди рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?
рд╕рд╛рде рд╣реА рдЗрд╕ рдЕрдиреБрд░реЛрдз рдкрд░ рдЕрдкрдбреЗрдЯ рдорд╛рдВрдЧ рд░рд╣реЗ рд╣реИрдВред рдзрдиреНрдпрд╡рд╛рдж!
рдореИрдВ рдЬреЛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рднреА рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрдЧрд╛ (рдЕрд░реНрдерд╛рддреН рдЯрд╛рдЗрдк-рдЪреЗрдХрд┐рдВрдЧ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рд╡реАрдпреВ рдЯреЗрдореНрдкрд▓реЗрдЯ рд░реЗрдВрдбрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реАрдХреНрд╖рдг рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред)
рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рд╛рде, #19139 рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХреЛрдб рдХреЗ рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдЖрд╡реЗрджрди рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдХреЗрд╡рд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред
рдЫреЗрдж рдлрд╝рд╛рдЗрд▓ рдХреЛ рджрдмрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдпрд╛ рдРрд╕реЗ рдореЗрдВ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдо рдХреЛрдб рдЬреИрд╕реЗ рд╕рдВрдкрд╛рджрдХреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рдХреА рднреА рдЬрд░реВрд░рдд рд╣реИред рдореИрдВ graphql-code-generator
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдЧреНрд░рд╛рдлрд╝рдХреНрдпреВрдПрд▓ рд╕реНрдХреАрдорд╛ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрдкреВрд░реНрдг рдЯреАрдПрд╕ рдлрд╝рд╛рдЗрд▓ рд╕реНрд╡рдд: рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдПрдХ рдмрд╛рд╣рд░реА рдЖрдпрд╛рдд рдЯреНрд░рд┐рдЧрд░рд┐рдВрдЧ noUnusedLocals рд╣реИред
// @ts-ignore-start
// @ts-ignore-end
рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: https://github.com/Microsoft/TypeScript/issues/19139
// @ts-ignore-start Property_0_does_not_exist_on_type_1
// @ts-ignore-end (possible include the error type again so you can turn be more specific of where you want to ignore some errors
@marianturchyn рдпрд╣ tslint рдирд╣реАрдВ рд╣реИред
рдХрднреА-рдХрднреА рдЬрдм рдореИрдВ рд╕рд╛рдорд╛рди рдХреЛ рдЗрдзрд░-рдЙрдзрд░ рдХрд░ рд░рд╣рд╛ рд╣реЛрддрд╛ рд╣реВрдВ рдФрд░ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдкреВрд░реА рдлрд╛рдЗрд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рдпрд╛рдиреА рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛), рдмрд┐рдирд╛ рд╕реАрдПрд▓рдЖрдИ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╡рд╛рдбрд╝ рдХрд┐рдПред
рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рдзреНрд╡рдЬ рд╕рдмрд╕реЗ рддреЗрдЬрд╝/рдЖрд╕рд╛рди рд╣реИ:
// @ts-ignore-file
@ lonix1 рдЖрдк рдХреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
// @ts-ignore-start
// @ts-ignore-end
рдЖрдкрдХреЛ // @ts-ignore-end
рднрд╛рдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдХрдИ рд▓рд┐рдВрдЯ рдЯреВрд▓ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
@mgol рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдкрдЯрд░реА рд╕реЗ рдирд╣реАрдВ рдЙрддрд╛рд░рдирд╛ рдЪрд╛рд╣рддрд╛ ... рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╕реБрдЭрд╛рд╡ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА - рдзрдиреНрдпрд╡рд╛рдж! - рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦрд╛, рдФрд░ рдПрдХ рдХреЛ рд╕рдмрд╕реЗ рдКрдкрд░ рдФрд░ рджреВрд╕рд░реЗ рдХреЛ рдиреАрдЪреЗ рдХреА рдУрд░ рднреА рдЖрдЬрд╝рдорд╛рдпрд╛ред
рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рдЗрд╕реЗ рдХрд╛рдо рдкрд░ рд▓рд╛ рд╕рдХрддрд╛ рд╣реИ?
@ lonix1 рдореЗрд░рд╛ рдорддрд▓рдм рдерд╛ рдХрд┐ @Blanen рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд╣рдореЗрдВ // @ts-ignore-start
+ // @ts-ignore-end
рдФрд░ // @ts-ignore-file
рджреЛрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, // @ts-ignore-start
рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ // @ts-ignore-end
рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИред
@DanielRosenwasser рдпрд╣ рддрднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрдм ts рдлрд╛рдЗрд▓реЗрдВ рдмрд┐рд▓реНрдб рдХреЗ рджреМрд░рд╛рди рдХрд┐рд╕реА рдЕрдиреНрдп рдлреЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдЯреЛрд░ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рдЬрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреАрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрдЕрдк рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рднреА 'рд╕рдВрдХрд▓рд┐рдд' рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреИрд╕реЗ рдИрдПрд╕ 5 рдореЗрдВ рдмрджрд▓рдирд╛? рд╡рд┐рд░рд╛рд╕рдд рдХреЛрдб рдкрд░рд┐рд╡рд╣рди рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛрдЧрд╛ред
рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдЙрджрд╛рд╣рд░рдг:
рдЯрд╛рдЗрдкрдУрдЖрд░рдПрдо рд╣рдореЗрдВ рдбреАрдмреА рдЗрдХрд╛рдИ рд╡рд░реНрдЧ рдмрдирд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЙрд▓рдо рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╢реВрдиреНрдп рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдХрдИ рдХреЙрд▓рдо (рдЗрд╕рд▓рд┐рдП) рдЕрд╢рдХреНрдд рдирд╣реАрдВ рд╣реИрдВ ... рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд░реНрдЧ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЛ рдЫреЛрдбрд╝рдХрд░ , рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ рдЧреБрдг рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд┐рдирд╛ рд╢рд░реНрдд рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХреЛ рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ:
@Entity('investigation')
export class InvestigationEntity {
@PrimaryGeneratedColumn('uuid')
// @ts-ignore TS2564
public investigationId: string;
@Column({ type: 'uuid' })
// @ts-ignore TS2564
public userId: string;
@Column({ type: 'jsonb' })
// @ts-ignore TS2564
public metadata: IEncryptedJSONContainer;
}
рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ (рдЗрд╕рд▓рд┐рдП) рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдореВрд▓реНрдп рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдкрдУрдЖрд░рдПрдо рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдХрд╛рд░рдг, рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрдХрд░реНрддрд╛ рдХреА рдХрдореА рд╣реЛред рдкреВрд░реА рдХрдХреНрд╖рд╛ (рдЗрд╕рд▓рд┐рдП/рдпрд╛ рдлрд╝рд╛рдЗрд▓) рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рд╢реЗрд╖, рдУрдЖрд░рдПрдо-рд╡реНрдпреБрддреНрдкрдиреНрди/рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореБрджреНрджреЗ рдХреЛ рджрдмрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдмреЗрд╣рдж рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ред
@haggholm ts-ignore
рд╕реЗ рдЕрдзрд┐рдХ public metadata!: IEncryptedJSONContainer
рдкрд╕рдВрдж рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг?
@RyanCavanaugh рдЕрдЬреНрдЮрд╛рдирддрд╛! рдореИрдВрдиреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдЙрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛ рдерд╛ред рдорд╛рдлрд╝ рдХрд░рдирд╛; рдХреГрдкрдпрд╛ рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░ рджреАрдЬрд┐рдпреЗред
рдореИрдВ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдБрдЧрд╛
// @ ts-рдЕрдирджреЗрдЦрд╛-рд╢реБрд░реВ
--strick рдирд▓ рдЪреЗрдХ, рдПрдХ рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП
рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдирд┐рдЬреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдПрдХрдЬреБрдЯ рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд 6 рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВред рднрдпрдВрдХрд░ред рдореЗрд░реА рдЖрдБрдЦреЛрдВ рдХреЛ рд▓рд╣реВрд▓реБрд╣рд╛рди рдХрд░ рджреЗрддрд╛ рд╣реИред рдмреНрд▓реЙрдХ рдХреА рдЕрдирджреЗрдЦреА рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рд╕рдорд╛рдзрд╛рди рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред
it('TestNode_ReconnectionsWorkload', async function () {
for (let i = 0; i < 1; i++) {
nodes.push(await Node.NewNode(serverUrl, {
handlers: {
active: async function (n: Node) {
try {
// @ts-ignore
if (n.view.Empty()) {
// @ts-ignore
if (n.conns.Empty() && !n.server) {
// @ts-ignore
await n.login(n.address);
}
return;
}
const data = new flats.Message({
// @ts-ignore
id: n.id,
type: flats.MessageType.Data,
data: 'hello world',
});
const dataBytes = data.toBytes();
const dataBase64 = base64.encode(dataBytes);
// @ts-ignore
const dataSigBytes = await n.sign(dataBytes);
const dataSigBase64 = base64.encode(dataSigBytes);
// @ts-ignore
for (const conn of n.conns.Iter()) {
conn.Send(`${dataBase64}.${dataSigBase64}`);
}
} catch (error) {
console.log(error);
}
},
},
}));
}
for (const node of nodes) {
await node.Wait();
}
});
рдЦреИрд░, рдореИрдВ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЬреЛрдбрд╝рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЗрд╕реЗ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИред
@ ts-ignore рдмрд╣реБ-рдкрдВрдХреНрддрд┐ рдФрд░ рдПрдХрд▓-рдкрдВрдХреНрддрд┐ рдЖрдпрд╛рдд рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ!
рдЕрднреА рднреА рдмрд╣реБрдд рд╕рд╛рд░реЗ npm рдореЙрдбреНрдпреВрд▓ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ, рдпрд╛ рдмрд┐рдирд╛ NoImplicitAny рдХреЗ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ,
рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк "рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреЛрдИ" рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ рддреЛ рдЙрдиреНрд╣реЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
import { a, b } from 'MyNonTypedModule' // <-- Implicit any error
рддреЛ рдореИрдВ @ ts-рдЕрдирджреЗрдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:
//@ts-ignore
import { a, b } from 'MyNonTypedModule'
рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдСрдЯреЛ рдЖрдпрд╛рдд рдФрд░ рдкреНрд░реАрдЯреАрдпрд░ рдЬреИрд╕реЗ рдлреЙрд░реНрдореЗрдЯрд░реНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ:
(рд╕реБрдВрджрд░ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рд░реВрдкрд┐рдд)
//@ts-ignore
import {
a,
b
} from 'MyNonTypedModule' // <-- Still (again) getting the Implicit any error
рдореИрдВ рдЗрд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:
import {
a,
b
//@ts-ignore
} from 'MyNonTypedModule'
рдпрд╛
//@ts-ignore-start
import {
a,
b
} from 'MyNonTypedModule'
//@ts-ignore-end
рд▓реЗрдХрд┐рди рдлрд┐рд░ рдпрд╣ рд╕рд┐рдВрдЧрд▓ рд▓рд╛рдЗрди рдЖрдпрд╛рдд рдкрд░ рдРрд╕рд╛ рджрд┐рдЦрдиреЗ рд▓рдЧрддрд╛ рд╣реИ:
//@ts-ignore-start
import { a } from 'MyNonTypedModule'
//@ts-ignore-end
import { b } from 'SomeTypedModule'
//@ts-ignore-start
import { c } from 'SomeOtherNonTypedModule'
//@ts-ignore-end
рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрдирд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдЖрдпрд╛рдд рдХрд┐рдП рдЧрдП рдХрд┐рддрдиреЗ рддрддреНрд╡реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдСрдЯреЛ рдЖрдпрд╛рдд рдФрд░ рд╕реНрд╡рд░реВрдкрдг рд╕рд┐рдВрдЧрд▓-рд▓рд╛рдЗрди рдФрд░ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЖрдпрд╛рдд рдХреЗ рдмреАрдЪ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред
рдЕрдЧрд░ рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЖрдпрд╛рдд рдХреЛрдб рдмрджрд▓рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдСрдЯреЛ рдЖрдпрд╛рдд рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рд╣рд░рд╛ рджреЗрддрд╛ рд╣реИред
рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рд░ рдПрдХ рдЗрдореНрдкреЛрд░реНрдЯ рдкрд░ ts-ignore-start рдФрд░ ts-ignore-end рди рд▓рд┐рдЦреЗрдВ,
рддреЛ: //@ ts- рдЖрдпрд╛рдд рдХреЗ рд▓рд┐рдП рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ (рдХреЗрд╡рд▓ рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдирд╣реАрдВ) рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ ts-ignore рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред (рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ рдЬреИрд╕реЗ: @ ts-ignore-block / @ ts-ignore-import )
рдореБрдЭреЗ рдкреВрд░реА рдлрд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджрдмрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:
// @ts-ignore-all TS1206
/*
... rest of the file
*/
рдЙрдкрд░реЛрдХреНрдд рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдордЭреМрддреЗ рдореЗрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП // @ts-ignore-start
рдФрд░ // @ts-ignore-end
рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ред
рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди // @ts-ignore
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЖрдкрдХреЛ рд╢реАрд░реНрд╖ рдкрд░ рдХреЗрд╡рд▓ // @ts-ignore-start
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЙрдкрд░реЛрдХреНрдд рд╕реБрдЭрд╛рд╡реЛрдВ рдореЗрдВ рд╕реЗ рдХрдИ рдХреЗ рд▓рд┐рдП рд╕рдХрд╛рд░рд╛рддреНрдордХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВред рдореИрдВрдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛:
@ts-ignore
рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ
@ts-ignore TSxxx [TSxxx ...]
рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐ (рддреНрд░реБрдЯрд┐рдпреЛрдВ) рдХреЛ рджрдмрд╛рдПрдВ
@ts-ignore-start
рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдХ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ
@ts-ignore-start TSxxx [TSxxx ...]
рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐ (рддреНрд░реБрдЯрд┐рдпреЛрдВ) рдХреЛ рджрдмрд╛рдПрдВ
@ts-ignore-end
рдЕрдВрдд рдмреНрд▓реЙрдХ
@ts-ignore-all
рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд░реЛрдХреЗрдВ
@ts-ignore-all TSxxx [TSxxx ...]
рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐ (рддреНрд░реБрдЯрд┐рдпреЛрдВ) рдХреЛ рджрдмрд╛рдПрдВ
"рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ" рдореЗрдВ tsconfig рдпрд╛ TSxxx рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рдореВрд╣реЛрдВ рдХреЗ рд╕рдорд╛рди рдирд╛рдорд┐рдд рд╕рдореВрд╣ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдЖрдпрд╛рддрд┐рдд рдореЙрдбреНрдпреВрд▓ рдХреЛ рдиреЗрд╕реНрдЯрд┐рдВрдЧ рдмреНрд▓реЙрдХреЛрдВ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХреЗ рдореВрд▓реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдБ; рдореЗрд░реА рд╡рд░реАрдпрддрд╛ рдЖрдпрд╛рддрд┐рдд рдореЙрдбреНрдпреВрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рднреАрддрд░ ts-рдЕрдирджреЗрдЦрд╛ рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдЧреАред рд▓реЗрдХрд┐рди рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ libs рдЖрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп рдЗрд╕рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдпрд╣рд╛рдВ рдмрд╛рдбрд╝ рдкрд░ рд╣реВрдВред
.tsignore
рдлрд╝рд╛рдЗрд▓ рдЪрд╛рд╣рддрд╛ рдерд╛рдЬреИрд╕реЗ
.npmignore
рдФрд░.gitignore
рдЗрдЧреНрдиреЛрд░ рдмреНрд▓реЙрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдХрдардкреБрддрд▓реА рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рдлрдВрд╕ рдЧрдпрд╛ред рдХрдардкреБрддрд▓реА рдореЗрдВ рдЖрдкрдиреЗ "рдореВрд▓реНрдпрд╛рдВрдХрди" рд╡рд┐рдзрд┐ рдХреА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреГрд╖реНрда рдкрд░ рдордирдорд╛рдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмреНрд▓реЙрдХ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЗрд╕ рдордирдорд╛рдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмреНрд▓реЙрдХ рдореЗрдВ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдкреГрд╖реНрда рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд╕рдВрджрд░реНрдн рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред
// @ts-ignore-start // @ts-ignore-end
рд╡рд┐рд░рд╛рд╕рдд рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдмреЗрд╣рдж рдЖрд╕рд╛рди рд╣реЛрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдХрдо рджрд░реНрджрдирд╛рдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
// @ts-ignore-start
// @ts-ignore-end
рдореИрдВрдиреЗ рдпрд╣ рд╕реБрдЭрд╛рд╡ рдкрд╣рд▓реЗ рджрд┐рдпрд╛ рдерд╛ рдФрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдпрд╛ рддреЛ рдЗрд╕реЗ рд╕реНрдЯрд╛рд░реНрдЯ-рд╕реНрдЯреЙрдк рдмрдирд╛рдПрдВ рдпрд╛ рд╕реНрдЯрд╛рд░реНрдЯ-рдПрдВрдб
start
рдФрд░ end
(рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ) рд╡рд┐рд▓реЛрдо рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЕрдЧрд░ рдпрд╣ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЖ рдЧрдпрд╛ рддреЛ рдпрд╣ рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдкрд░реЗрд╢рд╛рди рдХрд░реЗрдЧрд╛ред
рдпрд╣ рдореЗрд░реЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рд╣реИ
// @ts-ignore-begin
// @ts-ignore-end
рдЕрддреНрдпрдзрд┐рдХ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ред
рдпрд╣ рдЕрднреА рднреА рд╕рдВрднрд╡ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ? :-(
рдореБрдЭреЗ рдмреНрд▓реЙрдХ рдЗрдЧреНрдиреЛрд░ рднреА рдЪрд╛рд╣рд┐рдП
+1
+1
рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди?
ЁЯЩПЁЯП╗
/* @ts-disable */
!function(){
// no ts here!
}()
/* @ts-enable */
рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдЬреИрд╕реЗ рд╣реА рдЖрдк рдЯреАрдПрд╕ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрд╡реИрдЧрд░ рдХреЗ рд╕рд╛рде) рдЬрд╣рд╛рдВ рдЕрдкреНрд░рдпреБрдХреНрдд рд╕рдВрд╕реНрдХрд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
+1
//@ts-ignore-file
рдХреЗ рдмрд┐рдирд╛ TS . рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ
рддреЛ, рдпрд╣ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХреА рд╕реВрдЪрдирд╛ рдХреЗ рд╕рдЪ рдирд╣реАрдВ рд╣реИ
@RyanCavanaugh рд╕рдореБрджрд╛рдп рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдзрдиреНрдпрд╡рд╛рдж!
рдореИрдВ рдЕрднреА рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рднреА рдирд╣реАрдВ рдЦреЗрд▓ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░реЛрдиреЗ рдФрд░ рдореЗрд░реЗ рд░реЗрдВрдбрд░ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд┐рдП рдмрд┐рдирд╛ рднреА рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИред
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╣рдо рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЖрдпрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдиреЛрдб рдкреНрд░рдХрд╛рд░ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╣рдо рд░реБрдЪрд┐ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рдПрдХрд▓ рдЖрдпрд╛рдд рдХреЗ рд▓рд┐рдП // @ ts-ignore рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдмрдЬрд╛рдп skipLibCheck
рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА lib.
рд╢реБрд░реВ рдореЗрдВ рдореБрдЭреЗ//@ ts-ignore-file рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рдЖрдпрд╛, рд▓реЗрдХрд┐рди//@ ts-ignore рд╢рд╛рдпрдж рдирд┐рд░рдВрддрд░рддрд╛ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
рддреЛ.... рдореИрдВрдиреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ //@ts-nocheck
рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде #33383 рдЦреЛрд▓рд╛ред рдЕрдм, рд╣рдо _рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ_ рдХрдВрдкрд╛рдЗрд▓рд░ рдЯреАрдо рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ, рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╣рдо рд╕реНрд╡рдпрдВ (рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдареАрдХ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡реНрд╣рд╛рдЯ !!?!?) - рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ //@ts-ignore
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдмрди рдЧрдИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реА рдмрд╛рдВрд╣ рдореБрдбрд╝ рдЧрдИ рдереА рдереЛрдбрд╝рд╛ рд╕рд╛, рддреЛ рд╣рдо... рд╕рдВрдХреЛрдЪ рдХрд░ рд░рд╣реЗ рд╣реИрдВ... рдФрд░ рджрдорди рддрдВрддреНрд░ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡реНрдпрд╛рдкрдХ рджрдорди рддрдВрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рд╡рд╣рд╛рдВ рдЬрд╛ рд╕рдХреЗрдВ рдФрд░
@weswigham , рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдкрд░ рдЕрд╕реНрдерд╛рдпреА рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреА рддрд░рд╣, рдпрд╣ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрд╣реАрдВ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рд╕рд╣рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдЕрднреНрдпрд╛рд╕ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░рди рдЯрд╛рдЗрдо рдмрдЧ рдХрд╛ рдХрд╛рд░рдг рдмрдирдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред рд╢рд╛рдпрдж рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХреЗрд╡рд▓ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдирд┐рд░реНрдорд╛рдг рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрдиреЗ рдХреЗ рд▓рд┐рдПред
рдЪреВрдВрдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрднреА рднреА "рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛" рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдмрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рдФрд░ рднреА рдХреБрдЫ рд╣реИ:
рдирдП рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рджрд┐рд╢рд╛рдУрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрд░рддреЗ рд╕рдордп, рдореИрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдирдпрд╛ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЯрд╛рдЗрдк рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ рдореИрдВ рдкреНрд░рдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред
рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА @ts-ignore-
рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝рдирд╛ рдХрд╛рдлреА рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред
рдореИрдВ рджреВрд╕рд░рд╛ @ kumar303 рдХреА рдЬрд░реВрд░рдд рд╣реИ: рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдЙрд╕ рджрд┐рдП рдЧрдП рдмреНрд▓реЙрдХ/рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЪреЗрдХ рдмрдВрдж рдХрд░рдирд╛ рдлрд╛рдпрджреЗрдордВрдж рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рдорд╛рдорд▓реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рджрд╛рд╡реЗ рд╣реЛрдВрдЧреЗред
@weswigham рдЖрдк рдЗрд╕реЗ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдк рдЗрд╕реЗ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдХреЛрдИ рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ - рдпрд╣ 3.7 рдмреАрдЯрд╛ рдореЗрдВ рд╣реИред
рдкреБрди: https://github.com/microsoft/TypeScript/pull/33383 : @weswigham рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж! рдпрд╣рд╛рдВ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдЪреЗрдХрд┐рдВрдЧ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдПрдХ рд▓рд┐рдВрдЯ рдирд┐рдпрдо рдХреЛ рд╢рд┐рдк рдХрд░реЗрдВ рдЬреЛ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдХреЛрдИ @ts-nocheck
рдХреЛ рд╣рдЯрд╛рдирд╛ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИ
рдЧреИрдЯреНрд╕рдмреА рдкрд░ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдПрдХ рд╕реНрдерд┐рд░ рдЧреНрд░рд╛рдлрдХреНрдпреВрдПрд▓ рдХреНрд╡реЗрд░реА .jsx
рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди .tsx
рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдирд╣реАрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡ рдПрдХ рдЕрдзрд┐рдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдХрд╛рд░реНрдп-рдЖрд╕рдкрд╛рд╕ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред (рдпрд╣рд╛рдВ рдЬрд╛рд░реА рдХрд░реЗрдВ https://github.com/AdamLeBlanc/gatsby-plugin-ts-loader/issues/5)
рдЕрд░реЗ!
рдХреНрдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?
// @ ts-рдЕрдирджреЗрдЦрд╛-рд╢реБрд░реВ
// @ рдЯреАрдПрд╕-рдЕрдирджреЗрдЦрд╛-рдЕрдВрдд
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмреЗрд╣рдж рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрдЧрд╛ред рдореБрдЭреЗ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреАред
рд╣рдордиреЗ 3.7 рдореЗрдВ рд╕рдВрдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджрдмрд╛рдиреЗ рдХреЗ рд▓рд┐рдП //@ts-nocheck
рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓рд╛рдЗрди-рд╕реНрддрд░ рдФрд░ рдлрд╝рд╛рдЗрд▓-рд╕реНрддрд░реАрдп рджрдорди рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкрд░реЗрд╢рд╛рдиреА рдХреЗ _most_ рдЬрд░реВрд░рддреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЪреЗрдХ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХреЗ рднреАрддрд░ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдмрдбрд╝рд╛ рдмреНрд▓реЙрдХ рд╣реИ рдЬрд┐рд╕реЗ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рд╢рд╛рдпрдж рдкреВрд░реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрдВ рдпрд╛, рдпрд╣ рдЕрд░реБрдЪрд┐рдХрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЦрдВрдб рдХреЛ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ рдпрд╛ рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдкрд░, рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореБрджреНрджреЗ рд╕реЗ рджрдмрд╛рдПрдВ? рдПрдХ ts-ignore
рдХреЛ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрдмрдХрд┐ ts-nocheck
рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдПрдХ рд╢реНрд░реЗрдгреА-рдЖрдзрд╛рд░рд┐рдд рджрдорди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЗрдХрд╛рдИ рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдореИрдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдмрджрддрд░ рд▓рдЧрддрд╛ рд╣реИ (рдЪреВрдВрдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕реА рдПрдХ рдореБрджреНрджреЗ рдпрд╛ рдореВрд▓ рдХрд╛рд░рдг рд╕реЗ рдореИрдк рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рджрдмрд╛ рд░рд╣реЗ рд╣реИрдВ)ред рдХрдо рд╕реЗ рдХрдо рддреНрд░реБрдЯрд┐-рдХреЛрдб рд╡рд┐рд╢рд┐рд╖реНрдЯ рджрдорди рдХреЗ рдмрд┐рдирд╛, рдореИрдВ рд╢реНрд░реЗрдгреА-рдЖрдзрд╛рд░рд┐рдд рджрдорди рдХреЗ рд╕рд╛рде рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рд╣рдЬ рдирд╣реАрдВ рд╣реВрдВред
рдореИрдВ, рдХрдо рд╕реЗ рдХрдо, рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рдПрдХрд▓ рджрдорди ( //@ts-nocheck File is a legacy untyped UMD module concatenated into the build - declarations are pulled from node_modules, so errors here are hopefully meaningless
) рдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдмреБрд░реА рдЪреАрдЬ (tm) рдкрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рджрдорди ( //@ts-ignore The TS compiler doesn't support the assignment on the next line because we never declare it, but we provide this for legacy compat
) рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдореИрдВ, рдореЗрд░реЗ рдЬреАрд╡рди рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдореНрдореЛрд╣рдХ, рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдЖ рд╕рдХрддрд╛, рдЬрд╣рд╛рдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ _ranges_ рдХреЛрдб рдХреЛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП (рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдкреНрд░рд╡рд╛рд╕-рд░рдгрдиреАрддрд┐-рд╕рдорд░реНрдерд┐рдд рддрд░реНрдХ рдерд╛), "рд▓рдЧрд╛рддрд╛рд░ рдХрдИ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛" рджрдорди рдореЗрд░реА рдЖрдБрдЦреЛрдВ рд╕реЗ рдЦреВрди рдмрд╣рд╛рддрд╛ рд╣реИ", рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ _zero_ рд╕рд╣рд╛рдиреБрднреВрддрд┐ рд╣реИ, рдореВрд▓ рд░реВрдк рд╕реЗ, рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рджрдорди рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдореБрджреНрджрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрд╕реАрд▓рд┐рдП any
, рдХрд╛рд╕реНрдЯрд┐рдВрдЧ, рдФрд░ рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдореЙрдбреНрдпреВрд▓ рдШреЛрд╖рдгрд╛рдПрдВ рдореМрдЬреВрдж рд╣реИрдВ)ред рдпрджрд┐ рдпрд╣ рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рднрдпрд╛рдирдХ рд╣реИ рдФрд░ рд╣рдо рд╡реИрд╕реЗ рднреА рдЯреВрдЯ рдЬрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рджрдорди рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ (рджрдорди рдкрд╛рд░реНрд╕ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ)ред
//@ts-nocheck
рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:
const $element = document.createElement('iframe')
$element.loading = 'lazy' // Property 'loading' does not exist on type 'HTMLIFrameElement'.
// @ts-nocheck
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЙрдкрдпреЛрдЧрдХреЗрд╕ рд╣реИред
рд╣рдордиреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдУрдЖрд░рдПрдо рдмрдирд╛рдпрд╛ рдпрд╛ рдЙрд╕рдХрд╛ рдорд╛рд▓рд┐рдХ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рдбреАрдбреАрдПрд▓ рдореЗрдВ рдмрдпрд╛рди рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреЛрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдПрдХ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕реЗ рд╕реНрдХреЛрдкреНрдб рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
.entities
.include('parent')
.where(m => m.id === this.id, { id: this.entityId })
.toList()
рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐: Property 'id' does not exist on type 'xxx'
рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ @ts-ignore-start
рдореЗрдВ рд▓рдкреЗрдЯрддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдЗрд╕ рддрд░рд╣ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛:
// @ts-ignore-start
.where(m => m.id === this.id, { id: this.entityId })
// @ts-ignore-end
рд▓реЗрдХрд┐рди рдЬрдм рд╕реНрд╡рд░реВрдкрд┐рдд рдЖрддрд╛ рд╣реИ рдФрд░ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдЬреЛрдбрд╝рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ:
// @ts-ignore-start
.where(m => m.id === this.id || m.id === this.id2, {
id: this.entityId,
id2: this.entity2Id
})
// @ts-ignore-end
рдпрд╣ рдЕрдм рдФрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред
рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐:
рдпрд╣ рдареАрдХ рдЙрд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдЯрд╛рдЗрдк-рд▓реЗрд╡рд▓ рдПрд░рд░ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХреНрд╕реЗрд╕ (рдПрд╕) рдкрд░ рдХреЗрд╡рд▓ as any
рдХрд╛рд╕реНрдЯ (рдпрд╛, jsdoc, /** <strong i="8">@type</strong> {any} */(expr)
) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рджрдмрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
//@ts-nocheck
рдореЗрд░реЗ ts рдХреЛрдгреАрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди //@ts-ignore
рдХрд░рддрд╛ рд╣реИред Microsoft рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдорд╕реНрдпрд╛ 2017 рдореЗрдВ рд╢реБрд░реВ рд╣реБрдИ рдереА! рдмрд╣реБрдд рдЦреВрдм...
3 рд╕рд╛рд▓ рдЕрдм рдФрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВред рдЗрд╕рдореЗрдВ рдХреЛрдИ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдЫрд▓рд╛рдВрдЧ рдирд╣реАрдВ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ
// @ts-ignore-start // @ts-ignore-end
рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: #19139
// @ts-ignore-start Property_0_does_not_exist_on_type_1 // @ts-ignore-end (possible include the error type again so you can turn be more specific of where you want to ignore some errors
@marianturchyn рдпрд╣ tslint рдирд╣реАрдВ рд╣реИред
рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рд╣реИ?
// @ts-nocheck
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ :(
рдпрд╣рд╛рдВ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ ...
рдореИрдВ рдПрдХ рдЗрди-рд╣рд╛рдЙрд╕ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб рд╣реВрдВ рдЬреЛ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╡рд╛рд╣ рдФрд░ рд╕рд╢рд░реНрдд рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдореИрдВ рдХреЛрдб рдЬрдирд░реЗрд╢рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдореИрдВ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдХреЛ рджрд┐рдП рдЧрдП рдЗрдирдкреБрдЯ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ (рдЬреЛ рдХрд┐ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рддрдХ рд╣реИ)
рдирддреАрдЬрддрди, рдЙрддреНрдкрдиреНрди рдХреЛрдб рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рдХреЛрдб рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдПрдХ рдорд╛рдорд▓реЗ рдореЗрдВ TS2367 рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдиреЗрд╕реНрдЯреЗрдб рдХреЛрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдПрдирдо рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рдореВрд▓реНрдп рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рдЙрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдЙрд╕ рдЪрд░ рдХрд╛ рдПрдХ рдФрд░ рдПрдирдо рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рдФрд░ рдЪреЗрдХ рд╣реЛрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
if (foo === MyEnum.ONE) {
const bar = (foo === MyEnum.TWO ? "two" : "one");
}
рд╣рд╕реНрддрд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЗ рд╕рд╛рде, рдЗрд╕ рдкреИрдЯрд░реНрди рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдФрд░ рдЯрд╛рд▓рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рд╕рд╛рде, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ (рдбреЗрд╡рд▓рдкрд░реНрд╕, рдЖрдк рдкреНрд░рдХрд╛рд░ рдЬрд╛рдирддреЗ рд╣реИрдВ!)
рдореИрдВ рдЯрд╛рдЗрдкрдЪреЗрдХрд┐рдВрдЧ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рд▓реЗрдХрд┐рди рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг рдХреЛрдб-рдЬрдирд░реЗрдЯреЗрдб рдХреЛрдб рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рддрдВрддреНрд░ рдирд╣реАрдВ рд╣реИред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдореИрдВ рд╕рднреА рдХреЛрдб-рдЬрдирд░реЗрдЯреЗрдб рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЛ рджрдмрд╛ рджреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХреЛ рдмрдирд╛рдП рд░рдЦреВрдВрдЧрд╛ред
рд╡реИрд╕реЗ рднреА, рдореЗрд░реЗ рдкрд╛рд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рдореБрдЭреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдо рд╕рд╛рджрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рдЕрдзрд┐рдХ рдореВрд▓реНрдп рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ
рдХреНрдпрд╛ рдЖрдк рдЧрдВрднреАрд░ рд╣реИрдВ? рдпрд╣ рдЕрднреА рднреА рдПрдХ рдЦреБрд▓рд╛ рдореБрджреНрджрд╛ рд╣реИ рдФрд░ TS4 рдореЗрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдореИрдВ
@ivnnv рдЖрдк TS 3.9 рдореЗрдВ // @ts-expect-error
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ
@ndraiman @ts-expect-error
рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдХреЛрдИ "рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛" рдЪрд╛рд╣рддрд╛ рд╣реИ рддреЛ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдХреЛ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЖрдкрдХреЛ рдФрд░ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП? рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдореБрджрд╛рдп рдХреЛ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ?
рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╕ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрдирд╛рдиреЗ рдкрд░ any
рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдЖрдкрдХреЛ рд╕реМрдВрджрд░реНрдпрд╢рд╛рд╕реНрддреНрд░ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдиреБрднреВрддрд┐ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ (рдЬрд┐рд╕рдХрд╛ рдореВрдб рдФрд░ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдкрд░ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ рдЖрдо рдЕрдкреЗрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХреНрдпрд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ рдФрд░ рдХреНрдпрд╛ рдирд╣реАрдВ, рдЗрд╕ рдкрд░ рд▓реЛрдЧреЛрдВ рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВред
рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдмрд╣реБрдд рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ рдФрд░ рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЛрдб рдЬреИрд╕реЗ рд╕рд╛рдВрд╕рд╛рд░рд┐рдХ рд╕рд╛рдорд╛рди рдХрд░рддреЗ рд╕рдордп рдкреНрд░рд╡рд╛рд╣-рд╕реНрдерд┐рддрд┐ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдореБрдЭреЗ рдпрд╣ рдХрд╖реНрдЯрдкреНрд░рдж рдФрд░ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдб рдХрд╛ рдПрдХ рдЕрдирджреЗрдЦрд╛ рдмреНрд▓реЙрдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕реЗ any
рдХрд╛рд╕реНрдЯ рдХреЗ рд╕рд╛рде рд▓рд┐рдЯрд╛рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рдЕрдХреНрд╕рд░ рдкрдардиреАрдпрддрд╛ рдкрд░ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓рддрд╛ рд╣реИ (рдЬрдм рддрдХ рдХрд┐ рдЙрдЪрд┐рдд рдкреНрд░рдХрд╛рд░ рди рд╣реЛрдВ)ред рд▓рдЧрд╛рддрд╛рд░ рдПрдХ рдирдИ рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦрдиреЗ рдпрд╛ рд╡реНрдпрд╛рдХреБрд▓рддрд╛ рдореЗрдВ рд▓рд┐рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг _ рдЕрдиреНрдпрд╛рдп рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рдХреЛ рдХреЛрдб_ рдХреЗ рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХрд╛ рд▓рд╛рдн рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ, рдпрд╣ рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдареАрдХ рдирд╣реАрдВ рд╣реИред
рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ JS рд╕реЗ TS рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬрдмрдХрд┐ рджреВрд╕рд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд┐рд╕реА рддреАрд╕рд░реЗ рдкрдХреНрд╖ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЕрдкрдирд╛рдП рдЧрдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдирд┐рдпрдо рдпрд╛ рддреЛ рдкреБрд░рд╛рдиреЗ e,g, es2015 рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рд╕реНрдкрд╖реНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдХрдо рдХреЛрдб рдЖрджрд┐ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдкрджрд╛рд╡рдирдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рддреЗ рд╕рдордп, рдХреБрдЫ рдХреЛрдб рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдмреЗрд╣рдж рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдлрд┐рд░ рднреА, рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЪрд▓рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмреБрд▓рд┐рдпрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдзрд╛ рд╡рд┐рдЪрд╛рд░ рдФрд░ рдордирдорд╛рдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдпрд╛ рддреЛ рдЕрдзрд┐рдХ рд╕рдВрджрд░реНрдн рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдпрд╛ рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕реЛрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдареАрдХ рдХрд░рддреЗ рд╕рдордп рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХреЛрдб рдХреЗ рдмреНрд▓реЙрдХ рдХреЛ рдЪреЗрдХ рдХрд░рдирд╛ рдмрдВрдж рдХрд░рдирд╛ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реЛрдЧрд╛ред рдПрдХ рдХреЛрдб-рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдЙрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рддреЗрдЬрд╝реА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╡реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдмрд╛рдж рдореЗрдВ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рд╕рд╣реЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд╣реЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред
// @ts-check
рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЬреЛрдбрд╝реЗрдВред// @ts-ignore-enable
... // @ts-ignore-disable
рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдп рдФрд░ рдкрд░реЗрд╢рд╛рдиреА рдХреЛрдб-рдмреНрд▓реЙрдХрдЕрдкрдиреЗ рд▓рд┐рдП рддрдп рдХрд░реЗрдВ рдХрд┐ рд╕рдмрд╕реЗ рдЙрдЪрд┐рдд рдХреНрдпрд╛ рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬрдм рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ JS рдХреЛ рдЕрдзрд┐рдХ ESLint рдирд┐рдпрдореЛрдВ рдХреЗ рд╕рд╛рде рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд╛рдорд╛рдиреЛрдВ рдХреЛ рджреЛрдмрд╛рд░рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдкреАрдПрд╕ рдореБрдЭреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╕рдордп рдЕрднреА рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВрдиреЗ 20 рдорд┐рдирдЯ + рдПрдХ рдЕрдиреБрднрд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ (рдФрд░ рдХрдИ рдЕрдиреНрдп) 2017 рд╕реЗ рдорд╛рдВрдЧ рд░рд╣рд╛ рд╣реВрдВ, рдмрд╕ рдЬрд▓реНрдж рд╣реА 3 рд╕рд╛рд▓ рдкреБрд░рд╛рдиреЗ рдЦреБрд▓реЗ рдореБрджреНрджреЗ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
@weswigham @RyanCavanaugh
рдЕрдиреБрд╕реНрдорд╛рд░рдХ: +1:
рдЗрд╕рдХреЗ рдмрджрд▓реЗ рдЬреНрдпреЗрд╖реНрда рдкреБрддреНрд░ рджреЗрдВрдЧреЗ
@augusterodin рдЖрдкрдХрд╛ рдмрд▓рд┐рджрд╛рди рдмреБрд░рд╛рдЗрдпреЛрдВ рдХрд╛ рдзреНрдпрд╛рди рдЦреАрдВрдЪрддрд╛ рд╣реИ.....
рдареАрдХ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреАрдЖрд░ рджреЗрддрд╛ рд╣реВрдВ :)
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдЯреАрдПрд╕ рдЯреАрдо рдХреА рд░рд╛рдп рд╕реЗ рджреГрдврд╝рддрд╛ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ - рдпрд╣ рдХрд╛рд░реНрдп рдмреБрд░рд╛ рд╣реИ, рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ @ts-ignore
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ @ts-ignore-enable
(рдпрд╛ @ts-ignore-start
) , рдЬреЛ рднреА рд╣реЛ)ред
рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА, рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдХрд╣рд╛рд╡рдд рдХрд╣рддреА рд╣реИ drinking posion to satisfie thirst
, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд┐рд░реНрдл рдЬрд░реВрд░рдд рд╣реИред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╡реНрдпрд╛рдЦреНрдпрд╛ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝реЗрдВред
рдпрд╣ рдкреАрдЖрд░ рджреЛ рдирд┐рд░реНрджреЗрд╢ ts-ignore-enable
рдФрд░ ts-ignore-disable
рдЬреЛрдбрд╝рддрд╛ рд╣реИред
... <-- this is normal
// @ts-ignore-enable
XXX <-- this is ignored
... <-- this is ignored
// @ts-ignore-enable
XXX <-- this is ignored
// @ts-ignore-enable <-- you could remove this line.
YYY <-- this is ignored
// @ts-ignore-disable
ZZZ <-- this is normal
// @ts-ignore-disable <-- you could remove this line.
// @ts-ignore-disable
рдЕрдХреЗрд▓реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреБрдЫ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
@ts-expect-error
рдЙрдкреЗрдХреНрд╖рд┐рдд рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛
// @ts-ignore-enable
XXX <-- this is ignored
// @ts-expect-error <-- No error message. whatever next line has error or not.
YYY <-- this is ignored
// @ts-ignore-enable A
XXX <-- this is ignored
// @ts-ignore-enable B <-- you could remove this line.
YYY <-- this is ignored
// @ts-ignore-disable B
ZZZ <-- this is normal
// @ts-ignore-disable A <-- you could remove this line.
рдПрдХ рдЖрджрд░реНрд╢ рджреБрдирд┐рдпрд╛ рдореЗрдВ, рд╣рдореЗрдВ рдЯрд╛рдЗрдк рд╕реЗрдлреНрдЯреА рдХреЛ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬрд╝ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реЛрдЧреА, рд╣реИ рдирд╛? :рдкрд╕реАрдирд╛_рдореБрд╕реНрдХреБрд░рд╛рдирд╛:
рд╢рд╛рдирджрд╛рд░ рдХрд╛рдо рдХреА рдирдХрд▓ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдФрд░ рд╢реБрд░реБрдЖрдд, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдХрднреА-рдХрднреА SO рдЙрддреНрддрд░ рдЬреЛ рдЯрд╛рдЗрдк рдпрд╛ рдЯрд╛рдЗрдк рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЕрдзрд┐рдХрддрд░ рдЗрд╕реЗ рдореЗрд░реЗ рдЯрд╛рдЗрдк-рд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдореЗрд░реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдмрд╕ рдмрд╣реБрдд рд╕рдЦреНрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕рдХреЗ рдХрд╛рд░рдг рдЕрдХреНрд╕рд░ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХреБрдЫ рддрд░реНрдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХреЛрдб рдХреЗ рдЙрд╕ рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рдХреЛрдб рдХреЗ рдПрдХ рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рд╣реИ, рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдЕрднреА рднреА рдПрдХ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ @ts-ignore
рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдореИрдВ I'll just ignore this because it's easier
рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡реЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рджреЗрдЦрд╛, рдХреЛрдИ рднреА рдЬреЛ рдмреНрд▓реЙрдХ рд╕реНрдХреЛрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рд╡рд╣ drink poison to satisfy their thirst
рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрддрд╛ рд╣реИ, рд╡рд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА @ts-ignore
рдХреЗ рд╕рд╛рде рдЬрд╣рд░ рдХреА рдмреВрдВрджреЗрдВ рдкреА рд░рд╣рд╛ рд╣реИред
рдЕрдм рдЬрдм рдЖрдк @ts-nocheck
.ts
рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ @ts-check
рдХреЛ .ts
рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рднреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рддрд╛рдХрд┐ рд╣рдо рдЯрд╛рдЗрдк рдЪреЗрдХрд░ рдХреЛ рдмрдВрдж/рдЪрд╛рд▓реВ рдХрд░ рд╕рдХреЗрдВ:
import fs from 'fs'
fs.readFileSync(32423) // type checking
// @ts-nocheck
fs.foobarbaz() // type checking is off
fs.__randomThing()
// @ts-check
fs.readFileSync(123) // now type checking again
рдпрд╣ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдХреЛрдб рдмреНрд▓реЙрдХ" рдХреНрдпрд╛ рд╣реИред рдЖрдк рдХрд┐рд╕реА рднреА рд▓рд╛рдЗрди рд╕реЗ - рдЯрд╛рдЗрдк рдЪреЗрдХрд┐рдВрдЧ рд╢реБрд░реВ рдФрд░ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрджреНрдпрддрди рдХрд░реЗрдВ рдореБрдЭрд╕реЗ рдЧрд▓рддреА рд╣реБрдИ рдереА, рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП https://github.com/microsoft/TypeScript/pull/40267#issuecomment -713840095 рджреЗрдЦреЗрдВред
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ styled-components
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдРрдк рдХреЛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп, рдореБрдЭреЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдЬрд╣рд╛рдВ @ts-ignore
рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ (рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ) рдХреЗ рдКрдкрд░ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИредрдЗрд╕реЗ рдЗрдЧреНрдиреЛрд░-рдмреНрд▓реЙрдХ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред
TS рддреНрд░реБрдЯрд┐ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдЬрд┐рд╕реЗ рдореИрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рдерд╛:
import styled from "styled-components";
import { Button } from "...";
// @ts-ignore here does not work
const StyledNavBar = styled.div`
${Button} {
margin: auto 0;
}
`;
рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдиреЛрдЯ рдХреЗ рд░реВрдк рдореЗрдВ: рдореИрдВ рдЕрдкрдиреЗ TS рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЛрдИ рднреА рдХрд╛рд╕реНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдореИрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ред рдлрд┐рд░ рдХреНрдпрд╛ рд╕рд┐рдлрд╛рд░рд┐рд╢ рд╣реИ?
@weswigham рд╕реМрдВрджрд░реНрдпрд╢рд╛рд╕реНрддреНрд░ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкреНрд░рд╡рд╛рд╣-рд╕реНрдерд┐рддрд┐ рдФрд░ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдкрд░ рдЖрдкрдХреЗ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЖрдБрдЦреЛрдВ рд╕реЗ рдЦреВрди рдмрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рд╣рд╛рдиреБрднреВрддрд┐ рдирд╣реАрдВ рд╣реИ; рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрддреНрдкрд╛рджрдХрддрд╛, рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЛрдб рдФрд░ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдзрд╛рд░рдгрд╛ рд╣реИ? рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдФрд░ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рд╣реЛрдиреЗ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЕрднреА рднреА рдХреЛрдИ рд▓рд╛рдн рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ? рдореИрдВрдиреЗ рдХреБрдЫ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рднреА рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдХрд┐рд╕реА рдХреЛ рдмреНрд▓реЙрдХ рд╕реНрдХреЛрдк рдХреА рдЕрдирджреЗрдЦреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ ESLint рдФрд░ рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рддреБрд▓рдирд╛ рдХреИрд╕реЗ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдо рд╡рд╣рд╛рдВ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ?
рдпрд╣ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд░реВрдк рд╕реЗ рд╕рд┐рджреНрдз рд╣реИ рдХрд┐ рдХрдо рд░реБрдХрд╛рд╡рдЯреЗрдВ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рддреА рд╣реИрдВ рдФрд░ рджрдХреНрд╖рддрд╛ рдмрдврд╝рд╛рддреА рд╣реИрдВ; рдХреЛрдб рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рддреЗ рд╕рдордп рдмреНрд▓реЙрдХ рд╕реНрдХреЛрдк рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рд╕реЗ рдХрдо рд░реБрдХрд╛рд╡рдЯреЗрдВ рдЖрддреА рд╣реИрдВред рдХреНрдпрд╛ TS рдЯреАрдо рдХреЛ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЕрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдорд╛рд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рджрдорди рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред" рд░рд╣рдиреЗ рдФрд░ рд╕рд╛рдВрд╕ рд▓реЗрдиреЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд░рд╛рдп рд╣реИ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ, рд▓реЛрдЧреЛрдВ рдХреЛ рдЦрд░рд╛рдм рд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЛ рдЕрдиреНрдп рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЕрдиреНрдп рд▓рд╛рдЗрдирд┐рдВрдЧ рдирд┐рдпрдореЛрдВ рдХреЗ рд╕рд╛рде; рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рд▓рд╛рдЗрди рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрд╕ рдХреЛрдб рдХреЗ рдмреНрд▓реЙрдХ рдХреЛ рдирд╣реАрдВ рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ рдЕрднреА-рдЕрднреА рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рд╣реИред
рдореЗрд░реЗ рд▓рд┐рдП, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░рддреЗ рд╣реБрдП рдпреВрдЯреЛрдкрд┐рдпрд╛ рдХреА рдУрд░ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред @sandersn рдЖрдкрдиреЗ рдореЗрд░реЗ рдХрд┐рд╕реА рднреА рдмрд┐рдВрджреБ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдорд╛рдорд▓реЗ рдореЗрдВ рдирдИ рдЪрд░реНрдЪрд╛рдУрдВ рдкрд░ рдкреБрд░рд╛рдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛ред рдЖрдк рдпрд╣ рднреА рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рддрдХ рдЯреАрдо рдЕрдиреНрдпрдерд╛ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд▓реЗрддреА, рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ: рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░реЗрдВ?
рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рд╣рдо рдЖрдкрдХреЛ рд╡рд╣ рдЕрдВрддрд┐рдо рд░реВрдк рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ "рд╢рд╛рдпрдж рдмрд╛рдж рдореЗрдВ" рдПрдХ рдРрд╕рд╛ рдЙрддреНрддрд░ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдЬреАрдирд╛ рд╕реАрдЦрдирд╛ рд╣реЛрдЧрд╛ред рдХрд┐рд╕реА рднреА рджреА рдЧрдИ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХрд▓ рдЙрддреНрдкрд╛рдж рдореЗрдВ рдирд╣реАрдВ рд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╣рдорд╛рд░реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рднреАрддрд░ рдЖрдиреЗ рд╡рд╛рд▓реА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рд╣рдЬрд╛рд░реЛрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЦреБрд▓реЗ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ рдЬреЛ рдЙрддреНрдкрд╛рдж рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рд╣рдорд╛рд░реА рдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдХрд┐ рдПрд░реНрдЧреЛрдиреЛрдорд┐рдХ рд╣реИ, рдЙрдкрдпреЛрдЧреА, рд╕реНрдерд┐рд░ рдФрд░ рдЖрдЧреЗ рдХреА рд╕реЛрдЪред
рд╣рдо рдореМрдЬреВрджрд╛ рдлреАрдбрдмреИрдХ, рдореМрдЬреВрджрд╛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреА рд╕реНрдерд┐рддрд┐, рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреА рдкреНрд░рдзрд╛рдирддрд╛, рдЯреВрд▓рд┐рдВрдЧ рдФрд░ рд╕реМ рдЕрдиреНрдп рдХрд╛рд░рдХреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪреАрдЬреЛрдВ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддреЗ рд╣реИрдВред рдЬреЛ рдЪреАрдЬреЗрдВ рдЕрднреА рдЙрдЪреНрдЪ-рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реИрдВ, рд╡реЗ рдмрд╛рдж рдореЗрдВ рдЙрдЪреНрдЪ-рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдмрди рд╕рдХрддреА рд╣реИрдВред рдпрд╣ "рд╢рд╛рдпрдж рдмрд╛рдж рдореЗрдВ" рдХреА рдкреНрд░рдХреГрддрд┐ рд╣реИ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдЯреАрдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╕реБрдЭрд╛рд╡ рд╣реИред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдирд┐рд░реНрдгрдп рдлреАрдбрдмреИрдХ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рдФрд░ рдпрд╣ рд╕рдордЭрдирд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╕реБрд╡рд┐рдзрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдЖрдЧреЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╕реИрдХрдбрд╝реЛрдВ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдпрд╣рд╛рдБ рд╕реНрд╡рд░ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рд╢рддреНрд░реБрддрд╛рдкреВрд░реНрдг рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдмреЛрд▓ рд░рд╣рд╛ рд╣реИ, рдПрдХ рдЕрд▓реНрдЯреАрдореЗрдЯрдо рдХреА рдУрд░ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдПрдХ рд░рдЪрдирд╛рддреНрдордХ рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рд╛рдВ рдореВрд▓реНрдп рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдЗрд╕рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИред
рдореБрдЭреЗ рдЕрд▓реНрдЯреАрдореЗрдЯрдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдореБрдЭреЗ рдкреАрдЖрд░ рдХреЗ рдкреНрд░рддрд┐ рдЧрддрд┐рд╡рд┐рдзрд┐ рджреЗрдЦрдХрд░ рдХрд╛рдлреА рдЧреБрд╕реНрд╕рд╛ рдЖрдпрд╛, рд▓реЗрдХрд┐рди рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдирд╣реАрдВред рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рдХрд┐рд╕реА рднреА рд░рдЪрдирд╛рддреНрдордХ рддрд░реАрдХреЗ рд╕реЗ рдпреЛрдЧрджрд╛рди рдирд╣реАрдВ рджреЗрддреА рд╣реИред
рдореИрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдореИрдВрдиреЗ рдХреБрдЫ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рджрд╛рди рдХреА рдФрд░ рдкреВрдЫрд╛ рдХрд┐ рд╕рдВрдХрд▓реНрдк рдХреЗ рдХрд░реАрдм рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреНрдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдорд┐рд▓реАред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХрд┐ рдореЗрд░реА рдЕрд╕рдВрд░рдЪрд┐рдд рдЯрд┐рдкреНрдкрдгреА рд╡рд╣ рдереА рдЬреЛ рдореБрдЭреЗ рдЯреАрдо рд╕реЗ _some_ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред
рдРрд╕рд╛ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ 700 рд╕реЗ рдЕрдзрд┐рдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдореБрджреНрджреЗ рдХреА рдУрд░ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдЧрддрд┐ рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, рдЬреЛ рдХрд┐ рдХрдИ рд╕рд╛рд▓ рдкреБрд░рд╛рдиреА рд╣реИред рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рддреЗрдЬреА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯреАрдо рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЦреЛрдЬ рдореЗрдВ рд░реВрдЪрд┐ рдирд╣реАрдВ рд▓реЗ рд░рд╣реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рджрд╕реНрдпреЛрдВ рдХреА рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд╛рдп рд╣реИред рдореИрдВ рдЗрди рд╕рдм рдмрд╛рддреЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВ рдпрд╣рд╛рдБ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдБред рдореИрдВ рдХреБрдЫ рдмрд╛рддрдЪреАрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдореИрдВ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреА рдкреНрд░рдХреГрддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреА рдЧрдИ рд╣реИред рд╕рдХреНрд░рд┐рдп рдкреАрдЖрд░ рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдП рдЧрдП рдлреАрдЪрд░-рд╕реЗрдЯ рдореЗрдВ рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рд╡реНрдпрд╡рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдереЛрдбрд╝реЗ рд╕рдордп рдореЗрдВ рд╡реНрд╣реАрдкреНрдб рд╣реЛ рдЧрдпрд╛ред рд╕рдм рдХреБрдЫ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рд▓реЛрдЧ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдПрдХ рдмреНрд▓реЙрдХ рдЕрдирджреЗрдЦрд╛ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрддреЗ рд░рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдореИрдВрдиреЗ рдпрд╣ рдкреВрдЫрдиреЗ рдореЗрдВ рдЪрд┐рд▓реНрд▓рд╛рдпрд╛ рдХрд┐ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдореБрджрд╛рдп рдХреЛ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред рдореИрдВ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдХрдИ рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рдЕрд╕рд╣рдордд рд╣реВрдВ рдФрд░ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рддрд░реНрдХ рджрд┐рдпрд╛ рд╣реИ, рдПрдХ рдкреАрдЖрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рджреА рдЧрдИ рдереА рдЬрд┐рд╕рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ 'рдЬрдм рддрдХ рд╣рдо рдЕрдкрдирд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдмрджрд▓рддреЗ' рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред
рдпрд╣реАрдВ рд╕реЗ рдореЗрд░реА рд╣рддрд╛рд╢рд╛ рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИред рдЖрдк рдПрдХ рддреИрдпрд╛рд░ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЕрд╡рд╣реЗрд▓рдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЯреАрдо рдХреЗ рдХрд┐рд╕реА рд╕рджрд╕реНрдп рдХреЗ рдирд┐рд░реНрдгрдп рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореЗрд░реЗ рдЕрдкрдиреЗ рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рддрдХ рдЯреАрдо рдХрд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ _рдЕрдкрдиреА рд╕рд╣рдорддрд┐ рдкрд░_ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд▓реЗрддрд╛, рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рджреЗрдЦреЗрдВрдЧреЗред рдпрд╣ рд╕рдореБрджрд╛рдп рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдорд╛рдВрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд╣реИ рдирд╛? рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЕрд▓реНрдЯреАрдореЗрдЯрдо рджрд┐рдпрд╛ред
рдореИрдВрдиреЗ @weswigham рдХреЗ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХрдИ рддрд░реНрдХ рджрд┐рдП рд╣реИрдВ, рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рд╣реИрдВ, рдФрд░ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдЕрднреА рднреА рдХрд┐рд╕реА рддрд░рд╣ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдорджрджрдЧрд╛рд░ рд▓рдЧрддреА рдереА, рд╡рд╣ рдереА рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░реЗрд╢рд╛рди рдФрд░ рдЕрд╕рдВрд░рдЪрд┐рддред
рд╣рдо рдпрд╣рд╛рдВ рд╕реЗ рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ? рдЯреАрдо рдХреНрдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд╕рдВрдж рдХрд░реЗрдЧреА? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "рд╣рдо рд╡рд░реНрддрдорд╛рди рдлреАрдбрдмреИрдХ, рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреА рд╕реНрдерд┐рддрд┐, рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреА рдкреНрд░рдмрд▓рддрд╛, рдЯреВрд▓рд┐рдВрдЧ рдФрд░ рд╕реМ рдЕрдиреНрдп рдХрд╛рд░рдХреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪреАрдЬреЛрдВ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддреЗ рд╣реИрдВред" рдЪреВрдВрдХрд┐ рдХрдИ рд▓реЛрдЧреЛрдВ рдиреЗ рдЯреАрдо рдХреА рдУрд░ рд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред
рдореИрдВ рдпрд╣ рджреЛрд╣рд░рд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рд╣рдо рдЗрд╕ рд╡рд┐рд╖рдп рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреА рд░рд╛рдп рдХреЛ рджреВрд░ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдПрдХ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред рд╕рд╛рде рд╣реА, рд╕реБрд╡рд┐рдзрд╛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рдФрд░ рддрд░реНрдХ рджрд┐рдП рдЧрдП рд╣реИрдВред рдЕрдм рдЬрд░реВрд░рдд рдЗрд╕ рдмрд╛рдд рдХреА рд╣реИ рдХрд┐ рдЯреАрдо рдирд┐рд░реНрдгрдп/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░реЗ (рдЬрд░реВрд░реА рдирд╣реАрдВ рдХрд┐ рдХреБрдЫ рднреА рд▓рд╛рдЧреВ рдХрд░реЗ) рдФрд░ рдЙрд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд░реЗред рдпрджрд┐ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реИ, рдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП _any_ рд╕реБрд╡рд┐рдзрд╛ рдпрд╛ рдореБрджреНрджреЗ рдкрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдореЗрдВ рдХреЛрдИ рдХреИрд╕реЗ рдорджрдж рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рдПрдХред
рдорд▓реНрдЯреАрд▓рд╛рдЗрди ( @ts-ignore-start+@ts-ignore-end
) рдпрд╛ рдЗрдирд▓рд╛рдЗрди (рдЬреИрд╕реЗ /* @ts-ignore */
) @ts-ignore
рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗрд╕ред
рд╡рд╛рддрд╛рд╡рд░рдг:
"noUnusedParameters": true
require-jsdoc
рдирд┐рдпрдоредtype Data = Record<string, unknown>;
type PrepareSettings = Record<string, unknown>;
/**
* This is base class that will be inherited.
*/
class SuperClass {
/**
* Prepare data for further usage.
*
* <strong i="16">@param</strong> data
* Data that should be prepared.
* <strong i="17">@param</strong> settings
* Operation settings.
*/
prepareData(data: Data, settings: PrepareSettings): Data | undefined {
return data;
}
// Some additional methods...
}
рд╡рд░реНрдгрд┐рдд рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ: 'settings' is declared but its value is never read.(6133)
ред
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЕрдВрдд рдХреЗ рдмрд╛рдж @ts-ignore
рдЬреЛрдбрд╝рдХрд░ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рджрдмрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ:
*/ // @ts-ignore
prepareData(data: Data, settings: PrepareSettings): Data | undefined {
рд▓реЗрдХрд┐рди рдЙрд╕рдХреЗ рдмрд╛рдж ESLint Missing JSDoc comment
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдЧрд╛ред
рддреЛ рд╕рдорд╛рдзрд╛рди рд╣реИ:
*/ // @ts-ignore
prepareData(data: Data, settings: PrepareSettings): Data | undefined { // eslint-disable-line require-jsdoc
рдЬреЛ рдЕрдЬреАрдм рдФрд░ рдмрджрд╕реВрд░рдд рд╣реИред
@RyanCavanaugh @weswigham @sandersn
рдПрдХ рдорд╛рд╕рд┐рдХ рдЕрдиреБрд╕реНрдорд╛рд░рдХ рдХрд┐ рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╕рдореБрджрд╛рдп рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдмрд╣реБрдд рд╕рдорд░реНрдерди рд╣реИ рдФрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЬреЛ рдЧрд╛рдпрдм рд╣реИ рд╡рд╣ рдЯреАрдо рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░реАрдкреЛрдВрдбрд░рд┐рдВрдЧ рд╣реИ, рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдирд╛ рдХреЛрдИ рдЖрд╕рд╛рди рдЙрдкрд▓рдмреНрдзрд┐ рдирд╣реАрдВ рд╣реИред рдЪреАрдЬреЗрдВ рд╕рдордп рд▓реЗрддреА рд╣реИрдВред рдЪреВрдВрдХрд┐ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рд╕реБрдЭрд╛рд╡ рдХреЛ рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рдФрд░ рд╕реАрдзреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рд░рд┐рдорд╛рдЗрдВрдбрд░ рджреВрдВрдЧрд╛ред рдореИрдВ рддрдм рддрдХ рд╣рд╛рд░ рдирд╣реАрдВ рдорд╛рди рд░рд╣рд╛ рд╣реВрдВ рдЬрдм рддрдХ рдХрд┐ рдХреЛрдИ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рд╕реЗ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ (рдЬреНрдпрд╛рджрд╛рддрд░ рдЬрдм рдПрдХ !@# рд╣реЛрдиреЗ рдкрд░)ред
рдЗрди рд╡рд░реНрд╖реЛрдВ рдХреЗ рдмреАрдд рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╣реИрд░рд╛рди рдерд╛ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреИрд╕реЗ рдирд╣реАрдВ рд╣реИ, рдореИрдВрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЗрд╕ рдкрд░ рдереЛрдбрд╝рд╛ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ ... рдЬрдм @ts-ignore
рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдЧреБрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдкрд╣рд▓реЗ рд╣реА рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реИ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рд╕рд╛рде, рдФрд░ рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдмрд┐рддрд╛рдПрдВред рд╣рдо рд╕рднреА рдХрднреА-рдХрднреА рдмрд╣реБрдд рдЖрд▓рд╕реА рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдЧрддрд┐ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдб рдХреЗ рдмрдбрд╝реЗ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рдХрдИ @ts-ignore
рдХреЛ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХреБрдЫ рдЙрдЪрд┐рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЕрдХреНрд╕рд░ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдЕрд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдпрд╣ рд╕рдВрддреБрд▓рди рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ @ts-ignore-enable рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реЛрдВрдЧреЗ, рдЬреЛ рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рд╕рднреА рдЫреЛрдЯреЗ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреА рд╕рдордЧреНрд░ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рд╣реИрдВ, - рдпрд╣ рдкрдХреНрд╖рдкрд╛рддрдкреВрд░реНрдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЪреБрдк рд░рд╣рддреЗ рд╣реБрдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд┐рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдареАрдХ рдорд╣рд╕реВрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдпрд╣рд╛рдВ рдирд╣реАрдВ рд╣реИрдВред
@JerryGreen рдореЗрд░реА рдкреБрд░рд╛рдиреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдареАрдХ рдпрд╣реА рдмрд╛рдд рдХрд╣реА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕реЗ рдЗрдЧреНрдиреЛрд░ рдлреАрдЪрд░ рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВред _none_ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реБрдП рд╣рд░ рд╕рдордп рдереЛрдбрд╝рд╛ рд╕рд╛ рдЬрд╣рд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред
рдпрд╛ рддреЛ @ts-ignore
рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рджреЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реНрдХ рд╣реИрдВ, рдФрд░ рдЦрд░рд╛рдм рдХреЛрдб рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ @ts-ignore
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ, рдЬреЛ рдХрд┐ рдПрдХ рдмреНрд▓реЙрдХ рдХреА рдЕрдирджреЗрдЦреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рдорд╛рди рд╣реА рдЦрд░рд╛рдм рд╣реИ, рд╡реЗ рдареАрдХ рдЙрд╕реА рдЪреАрдЬ рд╣реИрдВ - рдмреНрд▓реЙрдХ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдХрдо рджреГрд╖реНрдЯрд┐ рд╕реЗ рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдгред
рд╕рдореБрджрд╛рдп рдХреЛ рдЕрднреА рднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
@JerryGreen рдореЗрд░реА рдкреБрд░рд╛рдиреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдареАрдХ рдпрд╣реА рдмрд╛рдд рдХрд╣реА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕реЗ рдЗрдЧреНрдиреЛрд░ рдлреАрдЪрд░ рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВред _none_ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реБрдП рд╣рд░ рд╕рдордп рдереЛрдбрд╝рд╛ рд╕рд╛ рдЬрд╣рд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред
рдпрд╛ рддреЛ
@ts-ignore
рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рджреЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реНрдХ рд╣реИрдВ, рдФрд░ рдЦрд░рд╛рдм рдХреЛрдб рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ@ts-ignore
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ, рдЬреЛ рдХрд┐ рдПрдХ рдмреНрд▓реЙрдХ рдХреА рдЕрдирджреЗрдЦреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рдорд╛рди рд╣реА рдЦрд░рд╛рдм рд╣реИ, рд╡реЗ рдареАрдХ рдЙрд╕реА рдЪреАрдЬ рд╣реИрдВ - рдмреНрд▓реЙрдХ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдХрдо рджреГрд╖реНрдЯрд┐ рд╕реЗ рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдгредрд╕рдореБрджрд╛рдп рдХреЛ рдЕрднреА рднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рдЕрднреА рднреА @ TS рдЙрдкреЗрдХреНрд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реАрдбреАрдПрди рдЖрдпрд╛рдд рдиреЛрдб_ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред TS рдлрд╝рд╛рдЗрд▓ рдореЙрдбреНрдпреВрд▓ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ
@ рдПрд▓-рд╣рдХреНрдиреБ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╡реИрд╕реЗ рднреА ESLint рдХреЗ рд╕рд╛рде рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВред
рдЬрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдЙрдкреЗрдХреНрд╖рд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдореБрдЭреЗ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдареАрдХ рд╣реИред
рдореИрдВ рдЕрднреА рднреА рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рдХрд┐ рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдЙрд╕реА рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдХреБрдЫ рдУрдкрди рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдирд╛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреА рдкреНрд░рдЧрддрд┐ рдмреНрд▓реЙрдХ рдЕрдирджреЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдФрд░ рдЕрдзрд┐рдХ рдЖрд░рд╛рдорджрд╛рдпрдХ рд╣реЛрддреАред рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рджрд░рд╡рд╛рдЬреЗ рдХреЗ рдЕрдВрджрд░ рдкреИрд░ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛; рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдпреЛрдЧрджрд╛рди рджреЗрдВрдЧреЗ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдмреНрд▓реЙрдХ рдФрд░ рд╣рд░-рдкрдВрдХреНрддрд┐ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕реМрдВрджрд░реНрдпрд╢рд╛рд╕реНрддреНрд░ рдХрд┐рддрдирд╛ рднрд┐рдиреНрди рд╣реИред
рдЗрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЗрд╕рдХреЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
@ рдПрд▓-рд╣рдХреНрдиреБ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╡реИрд╕реЗ рднреА ESLint рдХреЗ рд╕рд╛рде рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВред
рдЬрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдЙрдкреЗрдХреНрд╖рд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдореБрдЭреЗ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдареАрдХ рд╣реИред
рдореИрдВ рдЕрднреА рднреА рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рдХрд┐ рдмреНрд▓реЙрдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдЙрд╕реА рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдХреБрдЫ рдУрдкрди рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдирд╛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреА рдкреНрд░рдЧрддрд┐ рдмреНрд▓реЙрдХ рдЕрдирджреЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдФрд░ рдЕрдзрд┐рдХ рдЖрд░рд╛рдорджрд╛рдпрдХ рд╣реЛрддреАред рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рджрд░рд╡рд╛рдЬреЗ рдХреЗ рдЕрдВрджрд░ рдкреИрд░ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛; рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдпреЛрдЧрджрд╛рди рджреЗрдВрдЧреЗ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдмреНрд▓реЙрдХ рдФрд░ рд╣рд░-рдкрдВрдХреНрддрд┐ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕реМрдВрджрд░реНрдпрд╢рд╛рд╕реНрддреНрд░ рдХрд┐рддрдирд╛ рднрд┐рдиреНрди рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣реЛ рдЧрдпрд╛
#40267
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: https://github.com/Microsoft/TypeScript/issues/19139
@marianturchyn рдпрд╣ tslint рдирд╣реАрдВ рд╣реИред