From d9ed9848c334a435daf0cefd47e3e49828cbcb34 Mon Sep 17 00:00:00 2001 From: Lucaas-Eduardo Date: Mon, 2 Mar 2020 16:59:02 -0300 Subject: [PATCH 1/5] translation of gatsby-lifecycle-apis.md --- docs/docs/gatsby-lifecycle-apis.md | 85 +++++++++++++++--------------- 1 file changed, 43 insertions(+), 42 deletions(-) diff --git a/docs/docs/gatsby-lifecycle-apis.md b/docs/docs/gatsby-lifecycle-apis.md index 26635b893..3d2bdf7e6 100644 --- a/docs/docs/gatsby-lifecycle-apis.md +++ b/docs/docs/gatsby-lifecycle-apis.md @@ -1,67 +1,68 @@ --- -title: Gatsby Lifecycle APIs +title: APIs de ciclo de vida do Gatsby --- import LayerModel from "../../www/src/components/layer-model" -Gatsby provides a rich set of lifecycle APIs to hook into its bootstrap, -build, and client runtime operations. +Gatsby fornece um conjunto rico de APIs de ciclo de vida para se conectar ao bootstrap +e operações de compilação e tempo de execução. -Gatsby's design principles include: +Os princípios de design do Gatsby incluem: -- Conventions > code, but use low-level primitives to build conventions with - code. -- Extracting logic and configuration into [plugins](/docs/plugins/) should be - trivial and encouraged. -- Plugins are easy to open source and reuse. They're just NPM packages. +- Convenções > escreva códigos, mas use primitivas de baixo nível para criar + convenções com código. +- A extração da lógica e da configuração em [plugins](/docs/plugins/) deve ser + trivial e encorajado. +- Os plugins são facéis de abrir e reutilizar. Eles são apenas pacotes do NPM. -# High level Overview +# Visão geral de alto nível -The following model gives a conceptual overview of how data is sourced and transformed in the process of building a Gatsby site: +O modelo a seguir fornece uma visão geral conceitual de como os dados são originados e transformados no processo de construção de um site de Gatsby: -## Bootstrap sequence +## Sequência do Bootstrap -During "bootstrap" Gatsby: +Durante o "bootstrap" o Gatsby: -- reads `gatsby-config.js` to load in your list of plugins -- initializes its cache (stored in `/.cache`) -- pulls in and preprocesses data ("source and transform nodes") into a GraphQL schema -- creates pages in memory - - from your `/pages` folder - - from your `gatsby-node.js` if you implement `createPages`/`createPagesStatefully` (e.g. templates) - - from any plugins that implement `createPages`/`createPagesStatefully` -- extracts, runs, and replaces graphql queries for pages and `StaticQuery`s -- writes out the pages to cache +- lê o `gatsby-config.js` para carregar a sua lista de plugins +- inicializa seu cache(armazenado em `/.cache`) +- extrai e pré-processa os dados (origina e transforma os nós) em um esquema GraphQL +- cria páginas na memória + - da sua pasta `/pages` + - do seu `gatsby-config.js` se você implementar `createPages`/`createPagesStatefully` por exemplo. + - de qualquer plugin que implemente `createPages`/`createPagesStatefully` +- extrai, executa e substitui consultas graphql para páginas e `StaticQuery`s +- grava as páginas para armazenar em cache -In development this is a running process powered by [Webpack](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L128) and [`react-hot-loader`](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L104), so changes to any files get re-run through the sequence again, with [smart cache invalidation](https://github.com/gatsbyjs/gatsby/blob/ffd8b2d691c995c760fe380769852bcdb26a2278/packages/gatsby/src/bootstrap/index.js#L141). For example, `gatsby-source-filesystem` watches files for changes, and each change triggers re-running queries. Other plugins may also perform this service. Queries are also watched, so if you modify a query, your development app is hot reloaded. +No desenvolvimento, esse é um processo de execução desenvolvido com o [Webpack](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L128) e [`react-hot-loader`](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L104), para que as alterações em qualquer arquivo sejam reexecutadas pela sequência novamente, com [smart cache invalidation](https://github.com/gatsbyjs/gatsby/blob/ffd8b2d691c995c760fe380769852bcdb26a2278/packages/gatsby/src/bootstrap/index.js#L141). Por exemplo, `gatsby-source-filesystem` observa os arquivos quanto a alterações, e cada alteração aciona consultas reexecutadas. Outros plugins também podem executar esse serviço. +Isso também vale para as consultas, portanto se você modificar uma consulta, seu aplicativo de desenvolvimento é recarregado. -The core of the bootstrap process is the "api-runner", which helps to execute APIs in sequence, with state managed in Redux. Gatsby exposes a number of lifecycle APIs which can either be implemented by you (or any of your configured plugins) in `gatsby-node.js`, `gatsby-browser.js` or `gatsby-ssr.js`. +O núcleo do processo de bootstrap é o "api-runner", que ajuda a executar APIs em sequência, com o estado gerenciado no Redux. O Gatsby expõe várias APIs do ciclo de vida que podem ser implementadas por você (ou por qualquer um de seus plugins configurados) em `gatsby-node.js`,` gatsby-browser.js` ou `gatsby-ssr.js`. -The sequence of the **main** bootstrap Node API lifecycles are: +A sequência dos ciclos de vida da API do nó bootstrap **main** é: -- [onPreBootstrap](/docs/node-apis/#onPreBootstrap) e.g. implemented by [`gatsby-plugin-typography`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) -- [sourceNodes](/docs/node-apis/#sourceNodes) e.g. implemented by [`gatsby-source-wikipedia`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) - - within this `createNode` can be called multiple times, which then triggers [onCreateNode](/docs/node-apis/#onCreateNode). -- (the first schema build happens here) -- [resolvableExtensions](/docs/node-apis/#resolvableExtensions) for filetype/language extensions e.g. [`gatsby-plugin-typescript`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) -- [createPages](/docs/node-apis/#createPages) e.g. implemented by [`page-hot-reloader`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) - - within this `createPage` can be called any number of times, which then triggers [onCreatePage](/docs/node-apis/#onCreatePage) -- [onPreExtractQueries](/docs/node-apis/#onPreExtractQueries) e.g. implemented by [`gatsby-transformer-sharp`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) and [`gatsby-source-contentful`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js) -- (schema update happens here) -- **extract queries from components** where the [queryCompiler](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/query-compiler.js#L189) replaces page GraphQL queries and `StaticQueries` -- The [queries are run](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/page-query-runner.js#L120), and [the pages are written out](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/query/redirects-writer.js) -- [onPostBootstrap](/docs/node-apis/#onPostBootstrap) is called (but it is not often used) +- [na pré-inicialização](/docs/node-apis/#onPreBootstrap) Ex.: implementado por [`gatsby-plugin-typography`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) +- [Nós de origem](/docs/node-apis/#sourceNodes) Ex.: implementado por [`gatsby-source-wikipedia`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) + - Dentro deste pode ser chamado várias vezes, o que aciona o `createNode` [onCreateNode](/docs/node-apis/#onCreateNode). +- (A primeira compilação de esquema acontece aqui) +- [Extensões resolvíveis](/docs/node-apis/#resolvableExtensions) para extensões de tipo de arquivo / idioma, Ex.: [`gatsby-plugin-typescript`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) +- [criar páginas](/docs/node-apis/#createPages) Ex.: implementado por [`page-hot-reloader`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) + - dentro deste `createPage` pode ser chamado várias vezes, o que aciona [onCreatePage](/docs/node-apis/#onCreatePage) +- [na pré-extração de consultas](/docs/node-apis/#onPreExtractQueries) Ex.: implementado por [`gatsby-transformer-sharp`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) e [`gatsby-source-contentful`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js) +- (atualização de esquema acontece aqui) +- **extrair consultas de componentes** onde o [compilador de consultas](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/query-compiler.js#L189) substitui as consultas da página GraphQL e o `StaticQueries` +- As [consultas são executadas](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/page-query-runner.js#L120), e [as páginas são gravadas](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/query/redirects-writer.js) +- [no Post Bootstrap](/docs/node-apis/#onPostBootstrap) is called (mas não é frequentemente usado) -## Build sequence +## Sequência de compilação -(to be written) +(para ser escrito) -## Client sequence +## Sequência de cliente -(to be written) +(para ser escrito) --- -Please see the links along the left under "REFERENCE" for the full API documentation. +Consulte os links à esquerda em "REFERENCE" para obter a documentação completa da API. From 509ae446a3d74afce9b5e91feffb81b4d2a957cd Mon Sep 17 00:00:00 2001 From: Lucas Eduardo <48483105+Lucaas-Eduardo@users.noreply.github.com> Date: Fri, 6 Mar 2020 08:38:13 -0300 Subject: [PATCH 2/5] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Jessé Souza --- docs/docs/gatsby-lifecycle-apis.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/docs/gatsby-lifecycle-apis.md b/docs/docs/gatsby-lifecycle-apis.md index 3d2bdf7e6..88fe6473c 100644 --- a/docs/docs/gatsby-lifecycle-apis.md +++ b/docs/docs/gatsby-lifecycle-apis.md @@ -9,15 +9,15 @@ e operações de compilação e tempo de execução. Os princípios de design do Gatsby incluem: -- Convenções > escreva códigos, mas use primitivas de baixo nível para criar +- Convenções > escrever código, mas use primitivas de baixo nível para criar convenções com código. - A extração da lógica e da configuração em [plugins](/docs/plugins/) deve ser trivial e encorajado. -- Os plugins são facéis de abrir e reutilizar. Eles são apenas pacotes do NPM. +- Os plugins são facéis de abrir e reutilizar. Eles são apenas pacotes NPM. # Visão geral de alto nível -O modelo a seguir fornece uma visão geral conceitual de como os dados são originados e transformados no processo de construção de um site de Gatsby: +O modelo a seguir fornece uma visão geral conceitual de como os dados são originados e transformados no processo de construção de um site Gatsby: @@ -26,14 +26,14 @@ O modelo a seguir fornece uma visão geral conceitual de como os dados são orig Durante o "bootstrap" o Gatsby: - lê o `gatsby-config.js` para carregar a sua lista de plugins -- inicializa seu cache(armazenado em `/.cache`) +- inicializa seu cache (armazenado em `/.cache`) - extrai e pré-processa os dados (origina e transforma os nós) em um esquema GraphQL - cria páginas na memória - da sua pasta `/pages` - do seu `gatsby-config.js` se você implementar `createPages`/`createPagesStatefully` por exemplo. - de qualquer plugin que implemente `createPages`/`createPagesStatefully` - extrai, executa e substitui consultas graphql para páginas e `StaticQuery`s -- grava as páginas para armazenar em cache +- grava as páginas para armazenar em cache No desenvolvimento, esse é um processo de execução desenvolvido com o [Webpack](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L128) e [`react-hot-loader`](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L104), para que as alterações em qualquer arquivo sejam reexecutadas pela sequência novamente, com [smart cache invalidation](https://github.com/gatsbyjs/gatsby/blob/ffd8b2d691c995c760fe380769852bcdb26a2278/packages/gatsby/src/bootstrap/index.js#L141). Por exemplo, `gatsby-source-filesystem` observa os arquivos quanto a alterações, e cada alteração aciona consultas reexecutadas. Outros plugins também podem executar esse serviço. Isso também vale para as consultas, portanto se você modificar uma consulta, seu aplicativo de desenvolvimento é recarregado. @@ -53,7 +53,7 @@ A sequência dos ciclos de vida da API do nó bootstrap **main** é: - (atualização de esquema acontece aqui) - **extrair consultas de componentes** onde o [compilador de consultas](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/query-compiler.js#L189) substitui as consultas da página GraphQL e o `StaticQueries` - As [consultas são executadas](https://github.com/gatsbyjs/gatsby/blob/6de0e4408e14e599d4ec73948eb4153dc3cde849/packages/gatsby/src/internal-plugins/query-runner/page-query-runner.js#L120), e [as páginas são gravadas](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/query/redirects-writer.js) -- [no Post Bootstrap](/docs/node-apis/#onPostBootstrap) is called (mas não é frequentemente usado) +- [onPostBootstrap](/docs/node-apis/#onPostBootstrap) é chamado (mas não é frequentemente usado) ## Sequência de compilação From 30b6e5e078862fc53a263c432f891f1a52886651 Mon Sep 17 00:00:00 2001 From: Lucas Eduardo <48483105+Lucaas-Eduardo@users.noreply.github.com> Date: Fri, 3 Apr 2020 15:07:43 -0300 Subject: [PATCH 3/5] Apply suggestions from code review Co-Authored-By: Italo --- docs/docs/gatsby-lifecycle-apis.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/docs/docs/gatsby-lifecycle-apis.md b/docs/docs/gatsby-lifecycle-apis.md index 8baa387e7..bd9ad7585 100644 --- a/docs/docs/gatsby-lifecycle-apis.md +++ b/docs/docs/gatsby-lifecycle-apis.md @@ -3,13 +3,10 @@ title: APIs de ciclo de vida do Gatsby --- -import LayerModel from "../../www/src/components/layer-model" Gatsby fornece um conjunto rico de APIs de ciclo de vida para se conectar ao bootstrap e operações de compilação e tempo de execução. -Gatsby provides a rich set of lifecycle APIs to hook into its bootstrap, -build, and client runtime operations. Os princípios de design do Gatsby incluem: @@ -23,7 +20,6 @@ Os princípios de design do Gatsby incluem: # Visão geral de alto nível -## High level Overview O modelo a seguir fornece uma visão geral conceitual de como os dados são originados e transformados no processo de construção de um site Gatsby: @@ -45,7 +41,6 @@ Durante o "bootstrap" o Gatsby: - extrai, executa e substitui consultas graphql para páginas e `StaticQuery`s - grava as páginas para armazenar em cache -During the main bootstrap sequence, Gatsby (in this order): - reads and validates `gatsby-config.js` to load in your list of plugins (it doesn't run them yet). - deletes HTML and CSS files from previous builds (public folder) @@ -92,7 +87,6 @@ A sequência dos ciclos de vida da API do nó bootstrap **main** é: ## Sequência de compilação -## Build sequence (para ser escrito) From 24ebd4f28c8da2d58bbcf8d0efafa5d5e9f54527 Mon Sep 17 00:00:00 2001 From: Lucas Eduardo Date: Thu, 16 Apr 2020 16:37:28 -0300 Subject: [PATCH 4/5] add new translation --- docs/docs/gatsby-lifecycle-apis.md | 51 ++++++++++++------------------ 1 file changed, 20 insertions(+), 31 deletions(-) diff --git a/docs/docs/gatsby-lifecycle-apis.md b/docs/docs/gatsby-lifecycle-apis.md index bd9ad7585..d62de38e9 100644 --- a/docs/docs/gatsby-lifecycle-apis.md +++ b/docs/docs/gatsby-lifecycle-apis.md @@ -31,37 +31,26 @@ O modelo a seguir fornece uma visão geral conceitual de como os dados são orig Durante o "bootstrap" o Gatsby: -- lê o `gatsby-config.js` para carregar a sua lista de plugins -- inicializa seu cache (armazenado em `/.cache`) -- extrai e pré-processa os dados (origina e transforma os nós) em um esquema GraphQL -- cria páginas na memória - - da sua pasta `/pages` - - do seu `gatsby-config.js` se você implementar `createPages`/`createPagesStatefully` por exemplo. - - de qualquer plugin que implemente `createPages`/`createPagesStatefully` -- extrai, executa e substitui consultas graphql para páginas e `StaticQuery`s -- grava as páginas para armazenar em cache - - -- reads and validates `gatsby-config.js` to load in your list of plugins (it doesn't run them yet). -- deletes HTML and CSS files from previous builds (public folder) -- initializes its cache (stored in `/.cache`) and checks if any plugins have been updated since the last run, if so it deletes the cache -- sets up `gatsby-browser` and `gatsby-ssr` for plugins that have them -- starts main bootstrap process - - runs [onPreBootstrap](/docs/node-apis/#onPreBootstrap). e.g. implemented by [`gatsby-plugin-typography`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) -- runs [sourceNodes](/docs/node-apis/#sourceNodes) e.g. implemented by [`gatsby-source-wikipedia`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) - - within this, `createNode` can be called multiple times, which then triggers [onCreateNode](/docs/node-apis/#onCreateNode) -- creates initial GraphQL schema -- runs [resolvableExtensions](/docs/node-apis/#resolvableExtensions) which lets plugins register file types or extensions e.g. [`gatsby-plugin-typescript`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) -- runs [createPages](/docs/node-apis/#createPages) from the gatsby-node.js in the root directory of the project e.g. implemented by [`page-hot-reloader`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) - - within this, `createPage` can be called any number of times, which then triggers [onCreatePage](/docs/node-apis/#onCreatePage) -- runs [createPagesStatefully](/docs/node-apis/#createPagesStatefully) -- runs source nodes again and updates the GraphQL schema to include pages this time -- runs [onPreExtractQueries](/docs/node-apis/#onPreExtractQueries) e.g. implemented by [`gatsby-transformer-sharp`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) and [`gatsby-source-contentful`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js), and extracts queries from pages and components (`StaticQuery`) -- compiles GraphQL queries and creates the Abstract Syntax Tree (AST) -- runs query validation based on schema -- executes queries and stores their respective results -- writes page redirects (if any) to `.cache/redirects.json` -- the [onPostBootstrap](/docs/node-apis/#onPostBootstrap) lifecycle is executed +- lê e valida o `gatsby-config.js` para carregar na sua lista de plugins (ainda não os executa). +- exclui arquivos HTML e CSS de compilações anteriores (pasta pública) +- inicializa seu cache (armazenado em `/ .cache`) e verifica se algum plug-in foi atualizado desde a última execução, caso contrário, ele exclui o cache +- configura `gatsby-browser` e` gatsby-ssr` para plugins que os possuem +- inicia o processo principal de inicialização + - executa [onPreBootstrap] (/docs/node-apis/#onPreBootstrap). Ex.: implementado por [`gatsby-plugin-typography`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) +- executa [sourceNodes] (/docs/node-apis/#sourceNodes) Ex.: implementado por [`gatsby-source-wikipedia`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) + - dentro disso, o `createNode` pode ser chamado várias vezes, o que aciona o [onCreateNode] (/docs/node-apis/#onCreateNode) +- cria esquema inicial do GraphQL +- executa [resolvableExtensions] (/docs/node-apis/#resolvableExtensions) que permite que plug-ins registrem tipos ou extensões de arquivo, por exemplo [`gatsby-plugin-typescript`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) +- executa [createPages] (/docs/node-apis/#createPages) a partir do gatsby-node.js no diretório raiz do projeto, Ex.: implementado por [`page-hot-reloader`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) + - com isso, `createPage` pode ser chamado várias vezes, o que aciona [onCreatePage] (/ docs / node-apis / # onCreatePage) +- executa [createPagesStatefully] (/docs/node-apis/#createPagesStatefully) +- executa nós de origem novamente e atualiza o esquema GraphQL para incluir páginas dessa vez +- executa [onPreExtractQueries] (/docs/node-apis/#onPreExtractQueries) Ex.: implementado por [`gatsby-transformer-sharp`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) e [` gatsby-source -contentful`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js) e extrai consultas de páginas e componentes (`StaticQuery`) +- compila consultas GraphQL e cria a Árvore de Sintaxe Abstrata (ASA) +- executa validação de consulta com base no esquema +- executa consultas e armazena seus respectivos resultados +- escreve redirecionamentos de página (se houver) para `.cache / redirects.json` +- o ciclo de vida [onPostBootstrap] (/docs/node-apis/#onPostBootstrap) é executado No desenvolvimento, esse é um processo de execução desenvolvido com o [Webpack](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L128) e [`react-hot-loader`](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L104), para que as alterações em qualquer arquivo sejam reexecutadas pela sequência novamente, com [smart cache invalidation](https://github.com/gatsbyjs/gatsby/blob/ffd8b2d691c995c760fe380769852bcdb26a2278/packages/gatsby/src/bootstrap/index.js#L141). Por exemplo, `gatsby-source-filesystem` observa os arquivos quanto a alterações, e cada alteração aciona consultas reexecutadas. Outros plugins também podem executar esse serviço. From 2572251268760afd380167395c87edd25fd2b45c Mon Sep 17 00:00:00 2001 From: Lucas Eduardo Date: Thu, 16 Apr 2020 16:38:26 -0300 Subject: [PATCH 5/5] add new translation --- docs/docs/gatsby-lifecycle-apis.md | 51 ++++++++++++++++++------------ 1 file changed, 31 insertions(+), 20 deletions(-) diff --git a/docs/docs/gatsby-lifecycle-apis.md b/docs/docs/gatsby-lifecycle-apis.md index d62de38e9..bd9ad7585 100644 --- a/docs/docs/gatsby-lifecycle-apis.md +++ b/docs/docs/gatsby-lifecycle-apis.md @@ -31,26 +31,37 @@ O modelo a seguir fornece uma visão geral conceitual de como os dados são orig Durante o "bootstrap" o Gatsby: -- lê e valida o `gatsby-config.js` para carregar na sua lista de plugins (ainda não os executa). -- exclui arquivos HTML e CSS de compilações anteriores (pasta pública) -- inicializa seu cache (armazenado em `/ .cache`) e verifica se algum plug-in foi atualizado desde a última execução, caso contrário, ele exclui o cache -- configura `gatsby-browser` e` gatsby-ssr` para plugins que os possuem -- inicia o processo principal de inicialização - - executa [onPreBootstrap] (/docs/node-apis/#onPreBootstrap). Ex.: implementado por [`gatsby-plugin-typography`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) -- executa [sourceNodes] (/docs/node-apis/#sourceNodes) Ex.: implementado por [`gatsby-source-wikipedia`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) - - dentro disso, o `createNode` pode ser chamado várias vezes, o que aciona o [onCreateNode] (/docs/node-apis/#onCreateNode) -- cria esquema inicial do GraphQL -- executa [resolvableExtensions] (/docs/node-apis/#resolvableExtensions) que permite que plug-ins registrem tipos ou extensões de arquivo, por exemplo [`gatsby-plugin-typescript`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) -- executa [createPages] (/docs/node-apis/#createPages) a partir do gatsby-node.js no diretório raiz do projeto, Ex.: implementado por [`page-hot-reloader`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) - - com isso, `createPage` pode ser chamado várias vezes, o que aciona [onCreatePage] (/ docs / node-apis / # onCreatePage) -- executa [createPagesStatefully] (/docs/node-apis/#createPagesStatefully) -- executa nós de origem novamente e atualiza o esquema GraphQL para incluir páginas dessa vez -- executa [onPreExtractQueries] (/docs/node-apis/#onPreExtractQueries) Ex.: implementado por [`gatsby-transformer-sharp`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) e [` gatsby-source -contentful`] (https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js) e extrai consultas de páginas e componentes (`StaticQuery`) -- compila consultas GraphQL e cria a Árvore de Sintaxe Abstrata (ASA) -- executa validação de consulta com base no esquema -- executa consultas e armazena seus respectivos resultados -- escreve redirecionamentos de página (se houver) para `.cache / redirects.json` -- o ciclo de vida [onPostBootstrap] (/docs/node-apis/#onPostBootstrap) é executado +- lê o `gatsby-config.js` para carregar a sua lista de plugins +- inicializa seu cache (armazenado em `/.cache`) +- extrai e pré-processa os dados (origina e transforma os nós) em um esquema GraphQL +- cria páginas na memória + - da sua pasta `/pages` + - do seu `gatsby-config.js` se você implementar `createPages`/`createPagesStatefully` por exemplo. + - de qualquer plugin que implemente `createPages`/`createPagesStatefully` +- extrai, executa e substitui consultas graphql para páginas e `StaticQuery`s +- grava as páginas para armazenar em cache + + +- reads and validates `gatsby-config.js` to load in your list of plugins (it doesn't run them yet). +- deletes HTML and CSS files from previous builds (public folder) +- initializes its cache (stored in `/.cache`) and checks if any plugins have been updated since the last run, if so it deletes the cache +- sets up `gatsby-browser` and `gatsby-ssr` for plugins that have them +- starts main bootstrap process + - runs [onPreBootstrap](/docs/node-apis/#onPreBootstrap). e.g. implemented by [`gatsby-plugin-typography`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typography/src/gatsby-node.js) +- runs [sourceNodes](/docs/node-apis/#sourceNodes) e.g. implemented by [`gatsby-source-wikipedia`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-wikipedia/src/gatsby-node.js) + - within this, `createNode` can be called multiple times, which then triggers [onCreateNode](/docs/node-apis/#onCreateNode) +- creates initial GraphQL schema +- runs [resolvableExtensions](/docs/node-apis/#resolvableExtensions) which lets plugins register file types or extensions e.g. [`gatsby-plugin-typescript`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-typescript/src/gatsby-node.js) +- runs [createPages](/docs/node-apis/#createPages) from the gatsby-node.js in the root directory of the project e.g. implemented by [`page-hot-reloader`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/bootstrap/page-hot-reloader.js) + - within this, `createPage` can be called any number of times, which then triggers [onCreatePage](/docs/node-apis/#onCreatePage) +- runs [createPagesStatefully](/docs/node-apis/#createPagesStatefully) +- runs source nodes again and updates the GraphQL schema to include pages this time +- runs [onPreExtractQueries](/docs/node-apis/#onPreExtractQueries) e.g. implemented by [`gatsby-transformer-sharp`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/src/gatsby-node.js) and [`gatsby-source-contentful`](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-contentful/src/gatsby-node.js), and extracts queries from pages and components (`StaticQuery`) +- compiles GraphQL queries and creates the Abstract Syntax Tree (AST) +- runs query validation based on schema +- executes queries and stores their respective results +- writes page redirects (if any) to `.cache/redirects.json` +- the [onPostBootstrap](/docs/node-apis/#onPostBootstrap) lifecycle is executed No desenvolvimento, esse é um processo de execução desenvolvido com o [Webpack](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L128) e [`react-hot-loader`](https://github.com/gatsbyjs/gatsby/blob/dd91b8dceb3b8a20820b15acae36529799217ae4/packages/gatsby/package.json#L104), para que as alterações em qualquer arquivo sejam reexecutadas pela sequência novamente, com [smart cache invalidation](https://github.com/gatsbyjs/gatsby/blob/ffd8b2d691c995c760fe380769852bcdb26a2278/packages/gatsby/src/bootstrap/index.js#L141). Por exemplo, `gatsby-source-filesystem` observa os arquivos quanto a alterações, e cada alteração aciona consultas reexecutadas. Outros plugins também podem executar esse serviço.