{"version":3,"sources":["webpack://typescriptlang-org/./src/components/VersionBar.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexGetStarted1.js.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexGetStarted2.js.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexGetStarted3.js.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexGetStarted4.tsx","webpack://typescriptlang-org/./src/components/index/AdoptSteps.tsx","webpack://typescriptlang-org/./src/components/index/MigrationStories.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/showErrors.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/react.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/typeDefinitions.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/interface.tsx","webpack://typescriptlang-org/./src/components/index/EditorExamples.tsx","webpack://typescriptlang-org/./src/components/index/AboveTheFold.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexAdoptGrad1.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/IndexAdoptGrad2.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/Index2Del1TS.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/Index2Del2RM.tsx","webpack://typescriptlang-org/./src/components/index/twoslash/generated/Index2Del3JS.js.tsx","webpack://typescriptlang-org/./src/templates/pages/index.tsx","webpack://typescriptlang-org/./src/assets/index/code-light.png","webpack://typescriptlang-org/./src/assets/index/handbook.jpg","webpack://typescriptlang-org/./src/assets/index/play-light.png"],"names":["VersionBar","i","createInternational","useIntl","beta","href","releaseInfo","rc","prefix","className","withPrefix","Code","dangerouslySetInnerHTML","__html","Stepper","props","index","StepperAll","id","StepOne","StepTwo","StepThree","StepFour","ReverseRow","children","Slack","width","height","viewBox","fill","xmlns","opacity","d","stroke","x","y","rx","target","AirBnB","strokeOpacity","x1","y1","x2","y2","clipPath","Google","OSS","fillOpacity","strokeWidth","strokeLinecap","strokeLinejoin","fillRule","clipRule","gradientUnits","stopColor","offset","MigrationStories","useState","setIndex","shouldShowOSS","window","innerWidth","bgColors","loadIndex","container","document","querySelector","style","backgroundColor","isOSS","notOSSTitle","ossTitle","title","classList","add","remove","querySelectorAll","forEach","b","visibleOpacity","getElementById","textContent","0","1","2","3","onClick","e","length","preventDefault","aria-label","GitHubBar","left","EditorExamples","maxWidth","goto","role","Row","join","Col","event","name","options","appInsights","trackEvent","FluidButton","subtitle","icon","AboveTheFold","showCTALinks","setShowCTALinks","Headline","bold","chunk","justifyContent","CTAHeadlines","src","require","link","CTAHeadlineMobile","CTALinks","Content","Section","key","color","Half","Index","Link","createIntlLink","pageContext","lang","useEffect","adopt","updateOnScroll","addEventListener","passive","capture","removeEventListener","P","ikey","strong","GetStarted","to","classes","description","suppressCustomization","suppressDocRecommendations","alt","marginTop","so","textAlign","flex","js","Intl","locale","el","_x","_y","isNaN","offsetLeft","offsetTop","scrollLeft","scrollTop","offsetParent","top","getOffset","fromTop","scrollY","quarterHeight","scrollHeight","samples","getElementsByClassName","item","stepper","toggle","innerText"],"mappings":"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","file":"component---src-templates-pages-index-tsx-0198b6e1a0262a8fd662.js","sourcesContent":["import * as React from \"react\"\nimport { withPrefix } from \"gatsby\"\nimport releaseInfo from \"../lib/release-info.json\"\n\nimport { navCopy } from \"../copy/en/nav\"\nimport { createInternational } from \"../lib/createInternational\"\nimport { useIntl } from \"react-intl\"\n\n/**\n * Shows the current versions, and upcoming releases\n */\nexport const VersionBar = () => {\n const i = createInternational(useIntl())\n const beta = {i(\"nav_version_between\")}{releaseInfo.tags.betaMajMin} {i(\"nav_version_beta_prefix\")}\n const rc = {i(\"nav_version_between\")}{releaseInfo.tags.rcMajMin} {i(\"nav_version_rc_prefix\")}\n const prefix = releaseInfo.isRC ? rc : releaseInfo.isBeta ? beta : null\n\n return (\n
\n

TypeScript {releaseInfo.tags.stableMajMin} {i(\"nav_version_stable_prefix\")}{prefix}

\n
)\n}\n","// Auto-generated by the twoslash-cli from IndexGetStarted1.js.md\nimport React from \"react\"\n\nconst innerHTML = `\n
js
function compact(arr) {
if (orr.length > 10)
return arr.trim(0, 10)
return arr
}
\n
\n \n \n\n

JavaScript 文件中没有编辑器警告

此代码在运行时崩溃!

\n
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from IndexGetStarted2.js.md\nimport React from \"react\"\n\nconst innerHTML = `\n
js
// @ts-check
 
function compact(arr) {
if (orr.length > 10)
Cannot find name 'orr'.2304Cannot find name 'orr'.
return arr.trim(0, 10)
return arr
}
\n
\n \n \n\n

将其添加到 JS 文件会显示编辑器中的错误

\n
\n
\n \n \n\n

the param is arr, not orr!

\n
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from IndexGetStarted3.js.md\nimport React from \"react\"\n\nconst innerHTML = `\n
js
// @ts-check
 
/** @param {any[]} arr */
function compact(arr) {
if (arr.length > 10)
return arr.trim(0, 10)
Property 'trim' does not exist on type 'any[]'.2339Property 'trim' does not exist on type 'any[]'.
return arr
}
\n
\n \n \n\n

使用 JSDoc 提供类型信息

\n
\n
\n \n \n\n

现在 TS 发现了一个错误的. 数组有slice, 而不是trim.

\n
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from IndexGetStarted4.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
function compact(arr: string[]) {
if (arr.length > 10)
return arr.slice(0, 10)
return arr
}
\n
\n \n \n\n

TypeScript 添加了用于提供类型的自然语法

\n
\n`\n\nexport const Code = () =>
\n","import React from \"react\"\nimport {Code as Index1} from \"./twoslash/generated/IndexGetStarted1.js\"\nimport {Code as Index2} from \"./twoslash/generated/IndexGetStarted2.js\"\nimport {Code as Index3} from \"./twoslash/generated/IndexGetStarted3.js\"\nimport {Code as Index4} from \"./twoslash/generated/IndexGetStarted4\"\n\ntype StepProps = {\n i: (str: any) => string\n}\n\nconst Stepper = (props: { index: number }) => {\n return
\n
\n
\n
\n
\n
\n}\n\nexport const StepperAll = () => {\n return
\n
\n
\n
\n
\n
\n}\n\n\nexport const StepOne = (props: StepProps) => {\n return (\n
\n
\n \n

{props.i(\"index_2_migrate_1\")}

\n \n
\n
\n )\n}\n\nexport const StepTwo = (props: StepProps) => {\n return (\n
\n
\n \n

{props.i(\"index_2_migrate_2\")}

\n \n
\n
\n )\n}\n\nexport const StepThree = (props: StepProps) => {\n return (\n
\n
\n \n

{props.i(\"index_2_migrate_3\")}

\n \n
\n
\n )\n}\n\nexport const StepFour = (props: StepProps) => {\n return (\n
\n
\n \n

{props.i(\"index_2_migrate_4\")}

\n \n
\n
\n )\n}","import React, { useState } from \"react\"\n\nimport { indexCopy } from \"../../copy/en/index2\"\nimport { createInternational } from \"../../lib/createInternational\"\nimport { useIntl } from \"react-intl\"\n\nconst ReverseRow = (props: { children: any }) =>
{props.children}
\n\nconst Slack = () => (\n \n
\n
\n
\n

首先, 我们对转换代码时发现的小错误数量感到惊讶.

\n

其次, 我们低估了编辑器集成的强大功能.

\n

TypeScript 对我们的稳定性和理智性非常有利,以至于我们在开始转换后的几天内就开始将它用于所有新代码.

\n
\n
\n \n \n \n \n \n \n \n \n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n

Slack 的 Felix Rieseberg 在他们的博客中介绍了他们的桌面应用程序从 JavaScript 到 TypeScript 的过渡

\n\n 阅读\n
\n
\n
\n)\n\nconst AirBnB = () => (\n \n
\n
\n
\n

根据事后分析,38% [...] bugs 可通过 TypeScript 预防.

\n

借助 TypeScript,工程师可以更快地、更安全地行动.

\n

端到端类型安全,因为后端和前端使用的类型共享一个真实来源.

\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n\n

Airbnb的Brie Bunge在JSConf Hawaiʻi上发表了关于Airbnb如何大规模采用TypeScript的演讲

\n\n 观看\n
\n
\n\n
\n)\n\n\nconst Google = () => (\n \n
\n
\n
\n

使用TypeScript对所有Google工程师来说都是简单而愉快的.

\n

官方支持大约八到九种语言,TypeScript 就是其中之一.

\n
\n
\n \n \n \n \n \n \n \n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n\n

Rodoslav Kirov 和 Bowen Ni 在 TSConf 2018 上介绍了 TypeScript 如何成为谷歌可用的五种语言之一.

\n\n 观看\n
\n
\n\n
\n)\n\n\n\nexport const OSS = () => (\n \n \n \n)\n\nexport const MigrationStories = () => {\n const i = createInternational(useIntl())\n\n // Controls which story we should show\n const [index, setIndex] = useState(0);\n\n const hasWindow = (typeof window !== `undefined`)\n const shouldShowOSS = hasWindow && window.innerWidth > 800\n\n // slack airbnb google oss\n const bgColors = shouldShowOSS ? [\"#faf9f8\", \"#faf9f8\", \"#faf9f8\", \"#086E12\"] : [\"#faf9f8\", \"#faf9f8\", \"#faf9f8\"]\n\n const loadIndex = (index: number) => {\n setIndex(index)\n\n const container = document.querySelector(\"#index-2 .migrations\")! as HTMLAnchorElement\n container.style.backgroundColor = bgColors[index]\n\n const isOSS = shouldShowOSS && index === 3\n const notOSSTitle = i(\"index_2_migration_title\")\n const ossTitle = i(\"index_2_migration_oss\")\n const title = isOSS ? ossTitle : notOSSTitle\n\n if (isOSS) {\n container.classList.add(\"github\")\n } else {\n container.classList.remove(\"github\")\n }\n\n document.querySelectorAll(\".github-bar\").forEach((b) => {\n const visibleOpacity =\n window.innerWidth > 1000 ? 0.6 :\n window.innerWidth > 800 ? 0.3 : 0.1\n\n // @ts-ignore\n b.style.opacity = isOSS ? visibleOpacity : 0\n })\n\n const titleHeading = document.getElementById(\"migration_title\")! as HTMLHeadingElement\n titleHeading.textContent = title\n }\n\n const prev = (e) => {\n if (index - 1 === -1) loadIndex(bgColors.length - 1)\n else loadIndex(index - 1)\n\n e.preventDefault()\n return false\n }\n\n const next = (e) => {\n if (index + 1 === bgColors.length) loadIndex(0)\n else loadIndex(index + 1)\n\n e.preventDefault()\n return false\n }\n\n\n return (\n
\n
\n {{\n 0: (\n \n ),\n 1: (\n \n ),\n 2: (\n \n ),\n 3: (\n \n )\n }[index]}\n
\n\n
\n \n \n \n \n \n \n
\n
\n )\n}\n\n\nexport const GitHubBar = ({ left }) =>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {left && }\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {left && }\n \n \n \n \n \n \n \n {!left && }\n {!left && }\n \n\n\n\n","// Auto-generated by the twoslash-cli from showErrors.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
const user = {
firstName: \"Angela\",
lastName: \"Davis\",
role: \"Professor\",
}
 
console.log(user.name)
Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.2339Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.
 
\n
ts
const user = {
firstName: \"Angela\",
lastName: \"Davis\",
role: \"Professor\",
}
 
console.log(user.name)
Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.2339Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.
 
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from react.tsx.md\nimport React from \"react\"\n\nconst innerHTML = `\n
tsx
import * as React from \"react\";
 
interface UserThumbnailProps {
img: string;
alt: string;
url: string;
}
 
export const UserThumbnail = (props: UserThumbnailProps) =>
<a href={props.url}>
<img src={props.img} alt={props.alt} />
</a>
 
\n
tsx
import * as React from \"react\";
 
interface UserThumbnailProps {
img: string;
alt: string;
url: string;
}
 
export const UserThumbnail = (props: UserThumbnailProps) =>
<a href={props.url}>
<img src={props.img} alt={props.alt} />
</a>
 
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from typeDefinitions.tsx.md\nimport React from \"react\"\n\nconst innerHTML = `\n
tsx
import express from \"express\"
const app = express()
 
app.get(\"/\", function (req, res) {
res.sen
         
})
 
app.listen(3000)
 
\n
tsx
import express from \"express\"
const app = express()
 
app.get(\"/\", function (req, res) {
res.sen
         
})
 
app.listen(3000)
 
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from interface.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
interface User {
id: number
firstName: string
lastName: string
role: string
}
 
function updateUser(id: number, update: Partial<User>) {
const user = getUser(id)
const newUser = { ...user, ...update }
saveUser(id, newUser)
}
 
\n
ts
interface User {
id: number
firstName: string
lastName: string
role: string
}
 
function updateUser(id: number, update: Partial<User>) {
const user = getUser(id)
const newUser = { ...user, ...update }
saveUser(id, newUser)
}
 
\n`\n\nexport const Code = () =>
\n","import React, { useState } from \"react\";\n\nimport { indexCopy } from \"../../copy/en/index2\";\nimport { createInternational } from \"../../lib/createInternational\";\nimport { useIntl } from \"react-intl\";\nimport { Code as ShowErrorsExample } from \"./twoslash/generated/showErrors\";\nimport { Code as ReactExample } from \"./twoslash/generated/react\";\nimport { Code as TypeDefinitionsExample } from \"./twoslash/generated/typeDefinitions\";\nimport { Code as InterfaceExample } from \"./twoslash/generated/interface\";\n\nexport const EditorExamples = () => {\n const i = createInternational(useIntl());\n\n // Controls which story we should show\n const [index, setIndex] = useState(0);\n\n const loadIndex = (index: number) => {\n const codeContainer = document.getElementById(\"above-the-fold-headline-code\")!\n codeContainer.style.maxWidth = (window.innerWidth - 50) + \"px\";\n setIndex(index);\n }\n\n const next = (e) => {\n const exampleCount = 4\n if (index + 1 === exampleCount) loadIndex(0);\n else loadIndex(index + 1);\n\n e.preventDefault();\n return false;\n };\n\n const goto = (index: number) => (e) => {\n\n loadIndex(index);\n e.preventDefault();\n return false;\n };\n\n return (\n
\n
\n\n
\n \n
\n
\n {{\n 0: (\n \n ),\n 1: (\n \n ),\n 2: (\n \n ),\n 3: (\n \n ),\n }[index]}\n
\n
\n
\n\n
\n\n \n \n \n \n \n
\n );\n};\n","import React, { useEffect, useState } from \"react\"\n\nimport { indexCopy } from \"../../copy/en/index2\"\nimport { createInternational } from \"../../lib/createInternational\"\nimport { useIntl } from \"react-intl\"\nimport { EditorExamples } from \"./EditorExamples\"\n\nconst Row = (props: { children: any, className?: string }) =>
{props.children}
\nconst Col = (props: { children: any, className?: string }) =>
{props.children}
\nconst Col2 = (props: { children: any }) =>
{props.children}
\n\nconst event = (name: string, options?: any) => {\n // @ts-ignore\n window.appInsights &&\n // @ts-ignore\n window.appInsights.trackEvent({ name }, options)\n}\n\nconst FluidButton = (props: { href?: string, onClick?: any, title: string, subtitle?: string, icon: JSX.Element, className?: string }) => (\n \n
\n
{props.title}
\n
{props.subtitle}
\n
\n
\n {props.icon}\n
\n
\n)\n\nexport const AboveTheFold = () => {\n const [showCTALinks, setShowCTALinks] = useState(false)\n const i = createInternational(useIntl())\n\n const Headline = () => {\n const onclick = (e) => {\n setShowCTALinks(true)\n e.preventDefault()\n event(\"Home Page CTA Started\")\n return false\n }\n\n return (\n \n

{i(\"index_2_headline\", { bold: (...chunk) => {chunk} })}

\n

{i(\"index_2_summary\")}

\n\n
\n \n \n \n \n \n } />\n
\n \n \n \n \n
)\n }\n\n const CTAHeadlines = () => (\n
\n

开始使用 TypeScript

\n \n \n \n event(\"Home Page CTA Exited\", { link: \"playground\" })}\n icon={\n \n \n \n \n \n \n \n \n \n \n \n \n \n } />\n \n\n \n \n event(\"Home Page CTA Exited\", { link: \"download\" })}\n icon={\n \n \n \n \n } />\n \n \n
\n )\n\n const CTAHeadlineMobile = () => (\n
\n

Get Started
With TypeScript

\n \n \n
\n \n
\n
\n Web\n Epub\n PDF\n
\n \n
\n
\n )\n\n const CTALinks = () => {\n const Content = window.innerWidth < 600 ? CTAHeadlineMobile : CTAHeadlines\n return (\n \n )\n }\n\n return !showCTALinks ? : \n}\n","// Auto-generated by the twoslash-cli from IndexAdoptGrad1.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
interface Account {
id: number
displayName: string
version: 1
}
 
function welcome(user: Account) {
console.log(user.id)
}
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from IndexAdoptGrad2.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
type Result = \"pass\" | \"fail\"
 
function verify(result: Result) {
if (result === \"pass\") {
console.log(\"Passed\")
} else {
console.log(\"Failed\")
}
}
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from Index2Del1TS.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
type Result = \"pass\" | \"fail\"
 
function verify(result: Result) {
if (result === \"pass\") {
console.log(\"Passed\")
} else {
console.log(\"Failed\")
}
}
 
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from Index2Del2RM.ts.md\nimport React from \"react\"\n\nconst innerHTML = `\n
ts
type Result = \"pass\" | \"fail\"
 
function verify(result: Result) {
if (result === \"pass\") {
console.log(\"Passed\")
} else {
console.log(\"Failed\")
}
}
 
\n`\n\nexport const Code = () =>
\n","// Auto-generated by the twoslash-cli from Index2Del3JS.js.md\nimport React from \"react\"\n\nconst innerHTML = `\n
js
 
 
function verify(result) {
if (result === \"pass\") {
console.log(\"Passed\")
} else {
console.log(\"Failed\")
}
}
 
\n`\n\nexport const Code = () =>
\n","import React, { useEffect } from \"react\"\nimport {withPrefix} from \"gatsby\"\nimport { Layout } from \"../../components/layout\"\nimport { Intl } from \"../../components/Intl\"\nimport { VersionBar } from \"../../components/VersionBar\"\nimport * as Adopt from \"../../components/index/AdoptSteps\"\n\nimport { MigrationStories, GitHubBar, OSS } from \"../../components/index/MigrationStories\"\n\nimport { indexCopy } from \"../../copy/en/index2\"\nimport { createInternational } from \"../../lib/createInternational\"\nimport { useIntl } from \"react-intl\"\n\nimport \"../pages/css/index.scss\"\nimport \"../pages/css/documentation.scss\"\n\nimport { createIntlLink } from \"../../components/IntlLink\"\nimport { AboveTheFold } from \"../../components/index/AboveTheFold\"\n\nimport {Code as Grad1} from \"../../components/index/twoslash/generated/IndexAdoptGrad1\"\nimport {Code as Grad2} from \"../../components/index/twoslash/generated/IndexAdoptGrad2\"\n\nimport {Code as Del1} from \"../../components/index/twoslash/generated/Index2Del1TS\"\nimport {Code as Del2} from \"../../components/index/twoslash/generated/Index2Del2RM\"\nimport {Code as Del3} from \"../../components/index/twoslash/generated/Index2Del3JS.js\"\n\n\nconst Section = (props: { children: any, color: string, className?: string }) =>\n
{props.children}
\n\nconst Row = (props: { children: any, className?: string, key?: string }) =>
{props.children}
\nconst Col = (props: { children: any, className?: string }) =>
{props.children}
\nconst Col2 = (props: { children: any }) =>
{props.children}
\nconst Half = (props: { children: any, className?: string }) =>
{props.children}
\n\ntype Props = {\n pageContext: any\n}\n\nconst Index: React.FC = (props) => {\n const i = createInternational(useIntl())\n const Link = createIntlLink(props.pageContext.lang)\n\n\n useEffect(() => {\n // NOOP on tiny devices where we need to re-orient the arrows.\n if (window.innerWidth < 900) return\n\n const adopt = document.getElementById(\"adopt-gradually-content\")!\n adopt.classList.remove(\"no-js\")\n adopt.classList.add(\"fancy-scroll\") \n\n updateOnScroll(i)()\n // Handles setting the scroll \n window.addEventListener(\"scroll\", updateOnScroll(i), { passive: true, capture: true });\n \n\n return () => {\n window.removeEventListener(\"scroll\", updateOnScroll(i))\n }\n });\n\n /** Basically a

with bold set up */\n const P = (props: { ikey: keyof typeof indexCopy }) =>

{i(props.ikey, { strong: (...chunk) => {chunk} })}

\n const GetStarted = (props: { href: string, title: any, subtitle: any, classes: string }) => (\n \n
\n
{i(props.title)}
\n
{i(props.subtitle)}
\n
\n
\n \n \n \n
\n \n )\n\n\n return (\n \n\n
\n
\n \n
\n \n\n
\n

{i(\"index_2_what_is\")}

\n \n \n

{i(\"index_2_what_is_js\")}

\n

\n \n \n

{i(\"index_2_trust\")}

\n

\n \n \n

{i(\"index_2_scale\")}

\n

\n \n \n

\n\n
\n

{i(\"index_2_started_title\")}

\n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n
\n \n
\n

{i(\"index_2_adopt\")}

\n
\n

\n \n \n

\n \n \n

\n \n \n \n \n \n \n \n \n \n \n \n

\n
\n
\n
\n
\n\n
\n \n \n

{i(\"index_2_describe\")}

\n

\n

\n \n \n \n \n \n \n \n \n

\n\n\n
\n

{i(\"index_2_transform\")}

\n \n \n \n

\n \n\n \n \n

\n \n\n \n \n

\n \n \n

\n\n
\n

{i(\"index_2_migration_title\")}

\n
\n \n
\n
\n \n
\n \n
\n\n
\n

{i(\"index_2_migration_oss\")}

\n \n
\n\n
\n

{i(\"index_2_loved_by\")}

\n \n \n \"Image\n
\n

{i(\"index_2_loved_stack\", { strong: (...chunk) => {chunk}, so: (...chunk) => {chunk} })}

\n
\n \n
\n \n \n
\n \"Logo\n
\n
\n

{i(\"index_2_loved_state_js\", { strong: (...chunk) => {chunk}, js: (...chunk) => {chunk} })}

\n

{i(\"index_2_loved_state_js2\", { strong: (...chunk) => {chunk} })}

\n
\n
\n \n \n
\n\n\n
\n

{i(\"index_2_started_title\")}

\n \n \n \n \n \n \n \n \n \n \n \n
\n\n
\n\n
)\n\n}\n\nexport default (props: Props) => \n\n// Recurses up to get the y pos of a node\n// https://stackoverflow.com/questions/442404/retrieve-the-position-x-y-of-an-html-element-relative-to-the-browser-window\nfunction getOffset( el ) {\n var _x = 0;\n var _y = 0;\n while( el && !isNaN( el.offsetLeft ) && !isNaN( el.offsetTop ) ) {\n _x += el.offsetLeft - el.scrollLeft;\n _y += el.offsetTop - el.scrollTop;\n el = el.offsetParent;\n }\n return { top: _y, left: _x };\n}\n\n\nconst updateOnScroll = (i: any) => () => {\n const adopt = document.getElementById(\"adopt-gradually-content\") as HTMLDivElement\n if (!adopt) return\n\n const offset = getOffset(adopt).top\n const fromTop = window.scrollY\n const height = adopt.scrollHeight\n \n const quarterHeight = (height - 200)/4 \n \n const startPoint = 100\n const y = fromTop - offset + startPoint\n\n const samples = adopt.getElementsByClassName(\"adopt-step\") as HTMLCollectionOf\n let index: 0 | 1| 2| 3 = 0\n if (y >= 0 && y < quarterHeight) index = 1\n else if (y >= (quarterHeight) && y < (quarterHeight * 2)) index = 2\n else if (y >= (quarterHeight * 2)) index =3\n samples.item(0)!.style.opacity = index === 0 ? \"1\" : \"0\"\n samples.item(1)!.style.opacity = index === 1 ? \"1\" : \"0\"\n samples.item(2)!.style.opacity = index === 2 ? \"1\" : \"0\"\n samples.item(3)!.style.opacity = index === 3 ? \"1\" : \"0\"\n \n const stepper = document.getElementById(\"global-stepper\") as HTMLDivElement\n stepper.children.item(0)!.classList.toggle(\"active\", index === 0)\n stepper.children.item(1)!.classList.toggle(\"active\", index === 1)\n stepper.children.item(2)!.classList.toggle(\"active\", index === 2)\n stepper.children.item(3)!.classList.toggle(\"active\", index === 3)\n\n const msg = [\"index_2_migrate_1\", \"index_2_migrate_2\", \"index_2_migrate_3\", \"index_2_migrate_4\"]\n const blurb = document.getElementById(\"adopt-step-blurb\")!\n blurb.innerText = i(msg[index]) \n}\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA3IAAAKKCAMAAABPv5kTAAABYlBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////4+Pj7+/v////19fX09PT09PT////29vb19fX09PT09PT4+Pj29vb19fXz8/P////6+vrz8/P39/f09PT09PT19fXy8vL09PT////////////////////////////////////////////////////////////////////////////////////////////5+fn7+/v39/f4+Pj4+Pj4+Pj39/f////////6+vr8/Pz7+/v7+/v7+/v6+vr5+fn29vb////4+Pj////6+vr4+Pj6+vr////8/Pz////////////////////////7+/v7+/v5+fnv7+/////////////////////////ls8yXAAAAdnRSTlMAEmmDjGBhISAiGScpgl6LOeLT8f/Fb0SaNlJ+1C90PajV/3VTWazW8UuQ48jGMNY+5JFM8p9AY4+O57dw88+HTMNYq2afZIjbe3yToC06Q0lORkAyJDhLQ0g7Mio7qUjjNSUzJU46TipLODVARShOZzARkbEIhAI7tgAAEmFJREFUeAHs3QdzHMedQPE3vQELClhACTrRcrZFyJGCdMk5wAoMULpE6fJ9q8sO0CWQJ5N0onEqV3C2lcsiyGIpJ5Amd6ElMBswc15gi9wSgSoRmFkHvl+l+QIP/8Z0z3ZE9CtIGoCok0ZRiJA0GGlSLKYhitJAniIkQdROopBSJgpIyl0auCpAJ6BcFYt0SYEQIELSoAQkmZxkcpJMTjI5SSYnmZxkcpJMTjI5SSYnmZyktyqi33hlfhO0kFNOcspdvvIV+pd6iAvOF4ma1ShKQ9RAJqdcFLhgvDHaGQaiNK0ukQeZnEpAM7B0LSzRKlCM6uNx6Fx9jhzI5FQHrkq5rgaMtVldhlo0TETeZHJaGiaM1SEt06ZLJnddxCWiRZSJtNiJ2hPLhXqNNTK564oRl9r5KsrEUmucBslVY6/SJffloogNpDehbJRLxVVIaxMRcsqtK8b0qXQotSm853mUiTqMnR4tNJplZHJr4tP0ub7IykjcGp5YRNs2+kuiEvXycIuxFeTCchPPdbObQNuWjo+PA9QgQia3qZd2sBKuQ9t1fpV0YpSxKtyITG5zYZRoDG1XWlmlsbqj3WH1DPqdVnyb+3GVDhs5uWusvvzOl9DWFK5nka762OoNr0bp8OtDTXTlJte3H9dhYwu/aq5zy7NoS5aW6KnTAFbKKfrdFra0H9dnIVxD7RayIrlJUIw3WVhWrgc4fQPUdi2QDfk9tsnFp4Hri1yiU6Trl8BZMiCZnH/Dpd+Q5K4523/2S1LOyS3Qf/ZLUi5b4ZJMTjI5SSYnmZxkcpJMTjI5SSYnmZwkk5NMTjI5SSYnmZwkk5NMTlKRAfgIV7aIJ5G6bo8uI7nK9Wys0kFS5lOuU2RjHSRl/L/c+CibozSOpCyn3MkPdjZaUBZjukZOImXJ5NggquuLxKfpOs3gSG4SSDI5yeQkFQe5HyepOMj9OElhkPtxkopb2I/r2ep+XJE+URsop+kJbomiFXSlMzlOsjlOswUn6POhNjuipwGehZsrDSS3wjP2IYD02fWHUky3uFsSCr/gxM0jDfpR5TfBEvotZnIxQBFujoGY8tOwqwntyeOc+Dj5ktyXKwARQGsXrCA55fI33AK46jY4R64kk4tueZbHdw01oEbuJBeWyzuAhaeKo+NIJjcA5z52M3DiyceuuRbJ5PLX6EzuAvjZT0eRTG4AWu33/cEu4MnrkUxuIM60P3YLLJEvyTeWVzWpngVojMKzH2uQJ8kpF06c+FmZrhhIyJVkck0gGQbKC3D7MrmSXFi2/uhHnICbC88CAcnkcrZ425sn4ARwczhDHiSTG7+NQq8vzjE5vAw7VlrkQzK5M/RrtYA6kq9PpN8FTjm/x5ZTTpLJSSYnyeQkk5NkcpLJSSYnyeQkk5NkcpJnLJ/hyvZReiQCkkxOMjlJJieZnCSTk0xOMjlJJid5+oTp6FcgiqJvJeRKMrl9UdRiTZpyx9D5efIjmdx1xRg4fsvP2V1IoVmcOJNwOYboM7YI7OzUC6QhavAWksndtxJz/IPp88/DMfaVG4GpSuEgl6FAn9FFot0LFCBK06FKHcnk+u1agZGPHGXdUZgeiWPuP8TbdyPAq9H6w2nYvQDpXh5/jUI8Vod+ZX5btJBySO6+Fapn5+gzz/42y9PzvG2nAP7sKKun6Nq5AHvm5mC8RSHlIslNgv0rVOfeWteREowEtmoJmAeo7YEmF0hOudDm+IsJb3XkvpV4/9fZhsUywHcCoQmSyfVcB3/0PJf637vT5vQ8W3O+EjE+0qzDm0guLPuEKar/yUbacBVblBaARnuoOopkcv2ugw4bmk9oHmCLGqVVoNBZrXS4SDK5T1A9tHmNKVtVb5b3AIRqFSST63ko5ntsIoJH2bra3HJ9D9C5Gsnket6AL7CJ2ZRb2ZbSXCmFGMnkeibgDJspsMDW3Do0VKGrXoJoDMnk3oafMcnWnCoUwjhddwBLvA2Syd3OVgVgZQTY+U2opFwgmdwQm+mQsjW1GhSSHUPDNWARyeR6mjDMZipU2KJyWAUKEayWi0ge+Oo5ONNqs4npFiUux+zV1EusazC++CA8PFFrIpncBXFoPnCQDT01RY3LUWr0N1orz0G5huTCsk8CLTYUPkF1HkmZTrn5e+N2SNjAPSt0/NZaynjKEeBONjC9QvUQGZNM7lDCtX/FJcIIdMiaZHLMl0N0SXN/MxNTOkTWJL8K5+5xSO89nNDnL861eG6BzEkmt/daCIvc8diZhJ7pUMPisieT6xVX+PJ0YIqh5effzQufPvpHLTj+RwtkTDK5XnH/xrH7k5hm4f3w/lenWpC8+DyZk0yuVxwc4v6r/2+SNWm5fJCMSSbXXxxwCD77g9+Hn+46SuYkk+svrufLnAROIumyhC0Ut2WSwiCLkxQGWZykMMjiJIVBFicpDLI4SWGQxUkKgyxOUrC43yAyuQmLkwZ54Ovf/o7BFSeZXB7BDdFnbBHY2akXSEPU4K3KDFoLKU9FBq5An9FFot0LFCBK06FKnYxJJncjwKvR+sNp2L0A6V4ef41CPFYnW5LJnQL4s6OsnqJr5wLsmZuD8RaFFMkzlvlaAuYBanugieSUy99iGeA7gdBEMrlcna9EjI806/AmkgvL3KUFoNEeqo4imdwANEqrQKGzWukgmVz+6s3yHoBQrSKZ3ADU5pbre4DO1UgmNxCluVIKMZLJ5evWoaEKXfUSRGNIJperU4VCGKfrDmAJyeRyFYCVEWDnN6GSIplcrmo1KCQ7hoZrwCKSyeWsHFaBQgSr5SKSB77yMHs19RLrGowvPggPT9SaSCaXi1KDEhfUynNQrvmNtlxYSjI5yeQkmZxkcpLJSTI5yeQkmZxkcpJMTjI5yeQkmZxkcpJMTjI5SSYnmZxkcpJMTjK5PEj+qF54Px87iKSBJPcXyy04f2/lP5GUe3L7WjW64vjewwmSck7uhlc4/sHrmf9EHN85/h9s1xB9xhaBnZ16gTREDSSTY+8rVF98Hjh8Z5pmUEWBPqOLRLsXKECUpkOVOtIVn1wCcwlA8p19rafZthsBXo3WH07D7gVI9/L4axTisTr9KPOboIU0uORCymMJa5ICk7cd5KIHhn56+e8xTwH82VFWT9G1cwH2zM3BeIuCNzrKfbkvwBfoeQZieti3f+b82fefv3cv27IEzAPU9kATCTcJ+v2YnvB7L9MVc/e236kslgG+EwhNpCs8ufe+xBI9ddg9z7qZl7vvMX9anyJdZhvOVyLGR5p1eBPJhSX/lJAE1oRPUJ1n3f6Ymz7y3YdPLh6r0NzL1qUFoNEeqo4imRwwAjMBIPx9zAo9Bar/ehQgOVzmRrahUVoFCp3VSgfJ5Dj0DuI7Jh588Ev7XuamI6ybjvlewprkR7wc2IZ6s7wHIFSrSCZH/A6YOnu20OKmf6VnAj5GzzR8gW2pzS3X9wCdq5FMbvZfdlQAjpf+OeGiJ+hJyEBprpRCjGRycOiRa2D8+SNc0ITP0fMoPMqW3To0VKGrXoJoDMnkgEV4kz4Hy/wssCZMUU3YslOFQhin6w5gCcnkNpIyeWcACDPQYesCsDIC7PwmVFIkT59s5MjdaTrzg2lOD8e841/YulprnEKyYzXUgMUikslt6Dt3pvHUWQotkjfYjnJoF6AArA4X2Zhkcsm3JqYAouFDXL7Zq6mXWNdgfPFBeHii1kQyuU19IubUux9N2IpSgxIX1MpzUK4hmdym9t3wCo8tnkRSfsmFv2Bd5aXwCtUzfo8t5Zjc3nY4S0+hRXUuQVJeyY3+wyuBi9LycoKk3JL70SSE8UXWPZogKc/kJqkOfxlJA0pusP+7SZ6x7CRIGkxyL8DxQ0gazM075yKY3D2gm3ckb96JvHlH+q26eUfS4G/ekRQu5+ada8o8jaRtCJdz885syuQDSBrUzTvHIUZSnsn1ezeSck7uvfAoPU9BE0k537yzY4ObdyTldvPOZP/NO5Ly3Zc7dEeI73hsmtPDL1P9byTlmxzXnw5MnaV3846kvG/eOdZ3807eJKccHOJvXnnhE99+HkmDSA6+DCeRtF0BSVdGcpLJSTI5yeQkmZxkcpJMTjI5yeQkmZxkcpJMTjI5SSYnmZxkcpJMTjI5SSYnmZxkcpJMTjI5SSYnmZwkk5NMTjI5SSYnmZwkk5NMTpLJSSYnmZwkk5NMTpLJSSYnqchlmn7q1ojo52MnkZR7cmE6TAHpFB8+nJAvyYXl3+wL9MTveoBcSU65cK7F8Y+uzPM335pi8uchQVKOyc3EVF98Hvgyx2biyY9/nexJLiz3se6DMcwlrEkOl2lOIynz5PYXA2vq8FhCT5LCU6wJ996PpIyS+4t2PBPoug0+zQUrcCtdYSZetjkpq+T+u0KvuRQOcsE8RL3iqD6CpGySSw73mttIr7i5BElZJNffXArTXPAA3GRxUg6bBMnhmTi+g67iXfRwHl6+C7ItTnLK9ebcpixOyjo5kiab+gkZkzx9sncVjiVc6qHz8eTyIpmSnHJteCxhA7MNmJpGUpbJPRDgDBuaT2AcSVkml1wYcvvo6n9M4GcHkJRhcjEkdIXi/reevJxPmDyNpOySeyiFL/VOmrT394prxzMH6BqCcSRll9wbcNN/ABxoQnv/enHw7H/QtWJyUrbJTcCrdM1eE3WbWy/uuQXW3ADzSMouuQR20N9cf3HMlpk8gKTtb4XfxZoaNFk3+9DZlDZ9xUEz4txddH2bLEn+wldvzvWKk5RXcj+mh9kiwM1kTnJh+W3WPHiW279Jz/42QHv/EXqI4NtkRnLKNWG1v7jnom5z/Z+qIim75CoQHegrbuGa/uZieBVJ2SU3m8B3+4pjtr+5n0IVSdklxxD8AcD0enH0mpum6xPQRlKGya3ALw4A86W14nrNleYB9sZUDyIpw+TmEyYbAEdOLUCvuR1H6CpBB0lZJsdz8HQAOEkPs4egN+QeQVKmyZ1MmNzPBkIJVhIkZZocz0Fzo+b+PqZ6BEnZJhc+DLQvbW7Xy9AKSMo0uTATs0Fz++54LxDPBCRllVyvuOoNEbTvCVw0XQwwUrE5KcvkesXNffmaBJp3TEyzZt8H7yjGUJo7fBnNSSq+zeISZtnfhilmoh/CbeH9wPEPfHv9jpCZwwmSMknuwNm14oAjYTpAiylIW3D8ox85CmvNlZGUUXKzD1X+LWFNcmz6qU/ErEmGPnIEWGtuei5BUjbJMctF8zzyN69MwGLlKBckx5CUQXIb+jJbJilwefT/7dsxSsVAFIbRfzTrcDmShVjY+RDchvB2M1i7LV+EtFpkYmaKeE6Z/uNeMlyQHEgOkBxIDiQHSA4kB0gOJAdIDiQHB5IcIDmQHEgOkBxIDpAcSA4kB0gOJAdIDiQHSA4kB5IDJAeSAyQHkgMkB5IDyQGSA8kBkgPJAVP2mfOLGsCUA8mBxbJZ/blqAqYcSA4kB0gOTmdq7vEWoE9yj967wWIJkgM2mrx3gykHkgMkB5IDJHcGON6ZA5hyIDn4K4tlFS+MTM6FAVgsQXKA5EBy4PfJat7w5eMWoG3KAZIDV+HuxMGUA8kBkgPJgeQAyYHkAMmB5ADJgeRAcoDkQHJAx6tw4BRTDiT3EGDYYlkD9J1ygORAcoDkQHKA5EByIDlAciA5QHIgOUByIDmQHCA5kBwgOZAcSA6QHEgOkBxIDpAcSA4kB0gOJAdIDiQHSA4kB5IDJAeSAyQHkgPJAZIDyQGSA8kBkgPJgeQAyYHkAMmB5ADJgeRAcoDkQHKA5EBygORAciA5QHIgOUByIDmQHCA5kBwgOZAcIDmQHEgOkBxIDpAcSA6QHEgOJAdIDiQHSA4kB0gOJAeSAyQHkgMkB5IDyQGSA8kBkgPJAZIDyYHkAMmB5ADJgeQAyYHkQHKA5EBygORAciA5QHIgOUByIDlAciA5kBwgOZAcIDmQHCA5kBxIDpAcSA6QHEgOkBxIDiQHSA4kB0gOJAeSAyQHkgMkB5IDJAeSA8kBkgPJAZIDyQGSA8mB5ADJgeQAyYHkAMmB5EBygORAcoDkQHIgOUByIDlAciA5QHIgOZAcIDmQHCA5kBwgOZAcSA6QHEgOkBxIDiQHSA4kB0gOJAdIDiQHkgMkB5IDJAeSAyQHkgPJAZIDyQGSA8kBkgPJgeQAyYHkAMmB5EBygORAcoDkQHKA5EByIDlAciA5QHIgOUByIDmQHCA5kBwgOZAcSG7JfYCByT09BxhhScrr9ZLervnfLvnMCsrd+8tXdgJKo5R0x1sOhT+WgORAcsA3neWNXYpk1J0AAAAASUVORK5CYII=\"","export default __webpack_public_path__ + \"static/handbook-3b173af1ceca5a7dd51d335ae8fb747f.jpg\";","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAKGCAMAAACFnA8dAAABDlBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8v3yHCAAAAWnRSTlMAEmmDjGBhIBkngostMCQqISJOepGnhtNvvGQ4plmQyL0x5FdxSn3x/9U9l7HyY+XjpKXYPqxDS8u+dLJ7cJw5m4VlftL+nspJmLBY10yNNjseMi6PJilnGhGXEk/HAAAM2klEQVR4AezTtWHEQAAAwTsxs9R/qY7N9Pwz6cYbQkzSDHgvjyHET/YA0hjyrCird4C6yJKQZXX1AaDMmpBl1YeArDUIGAQMAgYBg4BBwCBgEDAIGAQwCPx9kK7/1FCNX8WPTTOcQ/VG3X+qNggGMQgYBAxyLcvafVK2fb6Ebj9mDHKrg7ywbx5cjuo6HH/l9OcttsPIsQN4Sma9mV4eW5jJDdvr9/86N7IOyiZMtgK38T8FI2TZOUe/GMUOgNnyZAyyC9lErd07mMhB7QMyAOJS2YKy3G2ahHIdAuK9/AMAGQDZ3dvvBZCD6TZADqddAJLmj8Lj/86w2VdiZaC6A8SC7h+QAZDZ4VEIx9PuAdk/OZneDchpOJu2D0gWos5nfxdAEnB9AzIAMrsIUWeHXQMyPQuXW1aQ2VU4m7UNyHUI2T2Z7oX/fy8gTqm72oVSotEURYEXthdNQNBJqWZ4esC53giNouhCfenmYLQWiT8H+hWyCw2APDkL4elRCGHPdgsI8vFsaw0yOwtXs9YBOcfL8wYgCqKOc3CUXrmXGnSRAIA35FJi+wabtzk6W/S7oaa0S2cPXibgIhIp2r2SMoEoRYAUSV5HVDByMTzl/Q4+GCnwshaFnjvKevR1UszR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\""],"sourceRoot":""}