@intelex-ia/sdk 0.6.1 → 0.7.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.d.ts CHANGED
@@ -48,7 +48,31 @@ export interface ArticleResponse {
48
48
  export declare class IntelexiaApiError extends Error {
49
49
  readonly status: number;
50
50
  readonly path?: string | undefined;
51
- constructor(status: number, message: string, path?: string | undefined);
51
+ /**
52
+ * Por que a API recusou. Hoje importa um valor: `"scheduled"`, que
53
+ * distingue o artigo AGENDADO do que não existe — os dois chegam como 404,
54
+ * e sem isso o site não tem como saber a diferença.
55
+ */
56
+ readonly reason?: string | undefined;
57
+ /** Quando o artigo agendado estreia (ISO). Só vem com `reason: "scheduled"`. */
58
+ readonly estreiaEm?: string | undefined;
59
+ constructor(status: number, message: string, path?: string | undefined,
60
+ /**
61
+ * Por que a API recusou. Hoje importa um valor: `"scheduled"`, que
62
+ * distingue o artigo AGENDADO do que não existe — os dois chegam como 404,
63
+ * e sem isso o site não tem como saber a diferença.
64
+ */
65
+ reason?: string | undefined,
66
+ /** Quando o artigo agendado estreia (ISO). Só vem com `reason: "scheduled"`. */
67
+ estreiaEm?: string | undefined);
68
+ /**
69
+ * O artigo EXISTE e ainda não estreou.
70
+ *
71
+ * O site deve redirecionar para /blog (307), nunca responder 404: o endereço
72
+ * já é o definitivo e vai valer quando a data chegar. Responder 404 agora
73
+ * ensina ao buscador que aquele endereço não existe.
74
+ */
75
+ get agendado(): boolean;
52
76
  }
53
77
  /**
54
78
  * Cria uma instância do cliente. O retorno tem os métodos `getArticles` e
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,SAAS,EACT,IAAI,EACL,MAAM,YAAY,CAAC;AAEpB,+BAA+B;AAC/B,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,oCAAoC;AACpC,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,sDAAsD;AACtD,qBAAa,iBAAkB,SAAQ,KAAK;aAExB,MAAM,EAAE,MAAM;aAEd,IAAI,CAAC,EAAE,MAAM;gBAFb,MAAM,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA;CAKhC;AAID;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY;IAwC7C;;;;;;OAMG;uBACsB;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,mDAAmD;QACnD,IAAI,CAAC,EAAE,WAAW,CAAC;KACpB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAWjC;;;;;;;;;;OAUG;2BAEK,MAAM,SACL;QAAE,IAAI,CAAC,EAAE,WAAW,CAAA;KAAE,GAC5B,OAAO,CAAC,eAAe,CAAC;EAK9B;AAED,mEAAmE;AACnE,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,SAAS,EACT,IAAI,EACL,MAAM,YAAY,CAAC;AAEpB,+BAA+B;AAC/B,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,oCAAoC;AACpC,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,sDAAsD;AACtD,qBAAa,iBAAkB,SAAQ,KAAK;aAExB,MAAM,EAAE,MAAM;aAEd,IAAI,CAAC,EAAE,MAAM;IAC7B;;;;OAIG;aACa,MAAM,CAAC,EAAE,MAAM;IAC/B,gFAAgF;aAChE,SAAS,CAAC,EAAE,MAAM;gBAVlB,MAAM,EAAE,MAAM,EAC9B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA;IAC7B;;;;OAIG;IACa,MAAM,CAAC,EAAE,MAAM,YAAA;IAC/B,gFAAgF;IAChE,SAAS,CAAC,EAAE,MAAM,YAAA;IAMpC;;;;;;OAMG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;CACF;AAID;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY;IA6C7C;;;;;;OAMG;uBACsB;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,mDAAmD;QACnD,IAAI,CAAC,EAAE,WAAW,CAAC;KACpB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAWjC;;;;;;;;;;OAUG;2BAEK,MAAM,SACL;QAAE,IAAI,CAAC,EAAE,WAAW,CAAA;KAAE,GAC5B,OAAO,CAAC,eAAe,CAAC;EAK9B;AAED,mEAAmE;AACnE,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC"}
package/dist/client.js CHANGED
@@ -2,12 +2,34 @@
2
2
  export class IntelexiaApiError extends Error {
3
3
  status;
4
4
  path;
5
- constructor(status, message, path) {
5
+ reason;
6
+ estreiaEm;
7
+ constructor(status, message, path,
8
+ /**
9
+ * Por que a API recusou. Hoje importa um valor: `"scheduled"`, que
10
+ * distingue o artigo AGENDADO do que não existe — os dois chegam como 404,
11
+ * e sem isso o site não tem como saber a diferença.
12
+ */
13
+ reason,
14
+ /** Quando o artigo agendado estreia (ISO). Só vem com `reason: "scheduled"`. */
15
+ estreiaEm) {
6
16
  super(`[IntelexiaApi ${status}${path ? ` ${path}` : ""}] ${message}`);
7
17
  this.status = status;
8
18
  this.path = path;
19
+ this.reason = reason;
20
+ this.estreiaEm = estreiaEm;
9
21
  this.name = "IntelexiaApiError";
10
22
  }
23
+ /**
24
+ * O artigo EXISTE e ainda não estreou.
25
+ *
26
+ * O site deve redirecionar para /blog (307), nunca responder 404: o endereço
27
+ * já é o definitivo e vai valer quando a data chegar. Responder 404 agora
28
+ * ensina ao buscador que aquele endereço não existe.
29
+ */
30
+ get agendado() {
31
+ return this.reason === "scheduled";
32
+ }
11
33
  }
12
34
  const DEFAULT_API_URL = "https://api.innovarticles.intelexia.com.br";
13
35
  /**
@@ -38,15 +60,22 @@ export function createClient(config) {
38
60
  });
39
61
  if (!res.ok) {
40
62
  let msg = res.statusText || `HTTP ${res.status}`;
63
+ let reason;
64
+ let estreiaEm;
41
65
  try {
42
66
  const body = (await res.json());
43
67
  if (body?.error)
44
68
  msg = body.error;
69
+ // `reason` separa o agendado do inexistente: os dois são 404.
70
+ if (typeof body?.reason === "string")
71
+ reason = body.reason;
72
+ if (typeof body?.estreiaEm === "string")
73
+ estreiaEm = body.estreiaEm;
45
74
  }
46
75
  catch {
47
76
  // ignore parse errors — usa msg padrão
48
77
  }
49
- throw new IntelexiaApiError(res.status, msg, path);
78
+ throw new IntelexiaApiError(res.status, msg, path, reason, estreiaEm);
50
79
  }
51
80
  return (await res.json());
52
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,6 @@
5
5
  * `@intelex-ia/sdk/react`.
6
6
  */
7
7
  export { createClient, IntelexiaApiError, type ClientConfig, type ArticlesListResponse, type ArticleResponse, type IntelexiaClient, } from "./client.js";
8
- export type { Lifecycle, Mode, Article, ArticleIntelligence, ArticleListItem, CustomMetaTag, ErrorResponse, } from "./types.js";
8
+ export type { Lifecycle, Mode, Article, ArticleListItem, CustomMetaTag, ErrorResponse, } from "./types.js";
9
9
  export { mergePosts, MergeConflictError, type UnifiedPost, type MergePostsOptions, } from "./merge.js";
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,SAAS,EACT,IAAI,EACJ,OAAO,EACP,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,SAAS,EACT,IAAI,EACJ,OAAO,EACP,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,YAAY,EACZ,iBAAiB,GAKlB,MAAM,aAAa,CAAC;AAYrB,uEAAuE;AACvE,wDAAwD;AACxD,OAAO,EACL,UAAU,EACV,kBAAkB,GAGnB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,YAAY,EACZ,iBAAiB,GAKlB,MAAM,aAAa,CAAC;AAWrB,uEAAuE;AACvE,wDAAwD;AACxD,OAAO,EACL,UAAU,EACV,kBAAkB,GAGnB,MAAM,YAAY,CAAC"}
package/dist/react.d.ts CHANGED
@@ -8,14 +8,52 @@
8
8
  */
9
9
  import type { ReactElement } from "react";
10
10
  import type { CustomMetaTag } from "./types.js";
11
- /** Subset mínimo de Article necessário pro `<ArticleJsonLd>`. */
12
- interface ArticleSchemaInput {
11
+ /**
12
+ * A camada de inteligência (SEO) do artigo, que no modo `full` da Content API
13
+ * vem ANINHADA em `article.intelligence`.
14
+ *
15
+ * 🚨 ESTE FOI O DEFEITO MAIS CARO DO SDK, e ele era silencioso. Até 27/10/2026
16
+ * o `ArticleJsonLd` e o `articleToMetadata` leiam esses campos da RAIZ do
17
+ * artigo, onde eles nunca chegam. Consequência medida:
18
+ *
19
+ * - a página no ar saía com ZERO blocos `application/ld+json` (medido em
20
+ * siteia.pdr.ia.br em 26/10/2026: `grep -c 'application/ld+json'` = 0),
21
+ * porque o componente caía no `return null`;
22
+ * - e saía SEM meta description e SEM nenhuma meta tag custom, porque o
23
+ * `articleToMetadata` lia seis campos que vinham `undefined`.
24
+ *
25
+ * Nada avisava: ausência de schema e de description não quebra build, não dá
26
+ * erro no console e não aparece na tela. O nosso PRÓPRIO cliente da Content
27
+ * API, no `apps/mcp/src/content-api.ts`, sempre leu o caminho aninhado e
28
+ * montou o script certo, então a forma da resposta nunca foi dúvida.
29
+ *
30
+ * A queda para a raiz fica para o payload antigo, de site que ainda não
31
+ * migrou, e não custa nada.
32
+ */
33
+ export interface InteligenciaDoArtigo {
34
+ metaTitle?: string | null;
35
+ metaDescription?: string | null;
36
+ keyword?: string | null;
37
+ keywordSynonyms?: string[] | null;
38
+ additionalKeywords?: string[] | null;
39
+ /** JSON-LD do artigo: objeto com `@graph`, ou array. */
13
40
  schemaJson?: unknown | null;
14
- /** Onde a Content API realmente entrega o schema. Ver `ArticleIntelligence`. */
15
- intelligence?: {
16
- schemaJson?: unknown | null;
17
- } | null;
41
+ customMetaTags?: CustomMetaTag[] | null;
42
+ seoScore?: number | null;
18
43
  }
44
+ /** Artigo com a inteligência aninhada, na raiz, ou em nenhum dos dois. */
45
+ export type ComInteligencia<T = unknown> = T & InteligenciaDoArtigo & {
46
+ intelligence?: InteligenciaDoArtigo | null;
47
+ };
48
+ /**
49
+ * A camada de inteligência, venha aninhada (o que a Content API manda em
50
+ * `full`) ou na raiz (payload antigo). UMA regra, usada pelos três
51
+ * consumidores do SDK, porque três leituras diferentes foi o que deixou o
52
+ * `autoriaDoArtigo` certo e os outros dois quebrados por meses.
53
+ */
54
+ export declare function inteligenciaDoArtigo(article: ComInteligencia): InteligenciaDoArtigo;
55
+ /** Subset mínimo de Article necessário pro `<ArticleJsonLd>`. */
56
+ type ArticleSchemaInput = ComInteligencia;
19
57
  /**
20
58
  * Renderiza um `<script type="application/ld+json">` com o schema JSON-LD do
21
59
  * artigo. Pode ser colocado em qualquer lugar do `<body>` — o Google lê tanto
@@ -27,13 +65,13 @@ interface ArticleSchemaInput {
27
65
  *
28
66
  * @example
29
67
  * // app/blog/[slug]/page.tsx
30
- * import { ArticleJsonLd } from "@intelex-ia/sdk/react";
68
+ * import { ArticleJsonLd, ArticleBody } from "@intelex-ia/sdk/react";
31
69
  * export default async function Page({ params }) {
32
70
  * const { article } = await client.getArticleBySlug(params.slug);
33
71
  * return (
34
72
  * <>
35
73
  * <ArticleJsonLd article={article} />
36
- * <article dangerouslySetInnerHTML={{ __html: article.contentHtml ?? "" }} />
74
+ * <ArticleBody article={article} />
37
75
  * </>
38
76
  * );
39
77
  * }
@@ -41,21 +79,11 @@ interface ArticleSchemaInput {
41
79
  export declare function ArticleJsonLd({ article, }: {
42
80
  article: ArticleSchemaInput;
43
81
  }): ReactElement | null;
44
- /** A camada de SEO, venha ela aninhada (o normal) ou na raiz (compatibilidade). */
45
- interface CamadaDeSeo {
46
- metaTitle?: string | null;
47
- metaDescription?: string | null;
48
- keyword?: string | null;
49
- keywordSynonyms?: string[] | null;
50
- customMetaTags?: CustomMetaTag[] | null;
51
- }
52
82
  /** Subset mínimo de Article necessário pro `articleToMetadata`. */
53
- interface ArticleMetadataInput extends CamadaDeSeo {
83
+ type ArticleMetadataInput = ComInteligencia<{
54
84
  title?: string | null;
55
85
  featuredImageUrl?: string | null;
56
- /** Onde a Content API realmente entrega o SEO. Ver `ArticleIntelligence`. */
57
- intelligence?: CamadaDeSeo | null;
58
- }
86
+ }>;
59
87
  /**
60
88
  * Resultado do `articleToMetadata`. Compatível com o tipo `Metadata` do
61
89
  * Next.js App Router (mas não importa de "next" — mantém o SDK
@@ -96,7 +124,7 @@ export interface ArticleMetadata {
96
124
  * painel) entram em `other` como `name=value` ou `property=value`.
97
125
  */
98
126
  export declare function articleToMetadata(article: ArticleMetadataInput): ArticleMetadata;
99
- export type { Article, ArticleIntelligence, CustomMetaTag } from "./types.js";
127
+ export type { Article, CustomMetaTag } from "./types.js";
100
128
  /**
101
129
  * Selo de transparência. Fecha a linha do revisor na ASSINATURA, no fim do
102
130
  * artigo — nunca na barra do topo.
@@ -173,4 +201,199 @@ export declare function AuthorSignature({ article, empresa, className, bioEquipe
173
201
  export declare function corpoDoArtigo(article: {
174
202
  contentHtml?: string | null;
175
203
  }): string;
204
+ /** Classe do contêiner que rola, posta por `envolverTabelas`. */
205
+ export declare const CLASSE_TABELA_ROLANTE = "tabela-rolante";
206
+ /**
207
+ * Embrulha cada `<table>` num contêiner que rola de lado.
208
+ *
209
+ * Por que existe, com os números: o navegador IGNORA `overflow-x` em caixa de
210
+ * tabela, então uma tabela com `display:table` e muitas colunas estoura a
211
+ * coluna de leitura e faz a PÁGINA INTEIRA rolar de lado. Medido a 375px, com
212
+ * uma tabela de 8 colunas: `scrollWidth` 494 contra `clientWidth` 375.
213
+ *
214
+ * A saída anterior era `display:block` na própria tabela, que prende a rolagem
215
+ * ali dentro. Funciona para a tabela larga e cobra da estreita: com
216
+ * `display:block` a tabela deixa de gerar caixa de tabela, o navegador cria
217
+ * uma ANÔNIMA dimensionada pelo conteúdo, e a tabela de duas colunas sai
218
+ * encolhida e encostada na esquerda (`<th>` a 55px dentro de um bloco de
219
+ * 800px) em vez de ocupar a coluna.
220
+ *
221
+ * Com o contêiner, as duas ficam certas: a rolagem é dele, e a tabela volta a
222
+ * `display:table` com `width:100%`.
223
+ *
224
+ * Idempotente: tabela já embrulhada passa intacta. Só embrulha quando a folha
225
+ * vai junto (`comFolha`), porque é ela que traz a regra do contêiner. Com
226
+ * `comFolha={false}` o site veste por conta, e um div novo no meio do corpo
227
+ * quebraria seletor de filho direto (`.artigo > table`) que ele já tenha.
228
+ */
229
+ export declare function envolverTabelas(html: string): string;
230
+ /**
231
+ * A folha que devolve ao corpo do artigo o que o preflight do Tailwind tira.
232
+ *
233
+ * ── POR QUE O SDK PASSA A TRAZER CSS, SENDO QUE ELE NÃO TRAZIA ───────────
234
+ *
235
+ * A regra "o SDK não traz CSS, as classes são ganchos para o site vestir" está
236
+ * certa para a BARRA e para a ASSINATURA: elas são cromo, e cada site tem o
237
+ * seu. Para o CORPO ela não serve, e o preço disso já foi medido.
238
+ *
239
+ * O `contentHtml` chega como HTML semântico PELADO: `<h2>`, `<ul>`, `<table>`,
240
+ * sem classe. No WordPress funciona, porque o tema veste por tag. Num site
241
+ * Tailwind não: o `@tailwind base` já zerou `list-style`, zerou tamanho e peso
242
+ * dos seis títulos e deixou a tabela sem borda. Injetar isso numa div sem
243
+ * folha não dá "sem estilo", dá PIOR que sem estilo: título do tamanho do
244
+ * texto, lista sem marcador, tabela invisível.
245
+ *
246
+ * Foi o que quebrou o blog da Parceria por semanas, com o wrapper
247
+ * `prose prose-slate article-content`: o `prose` sem o `@tailwindcss/typography`
248
+ * instalado e o `article-content` sem uma regra sequer. E a varredura de
249
+ * 21/10/2026 achou o mesmo buraco na vitrine de onde os sites são clonados.
250
+ *
251
+ * Enquanto vestir o corpo depender de alguém lembrar, alguém vai esquecer.
252
+ *
253
+ * ── A ESPECIFICIDADE É O CONTRATO, E ELA NÃO É UNIFORME ─────────────────
254
+ *
255
+ * A folha tem dois tetos, e a diferença entre eles é a diferença entre
256
+ * funcionar e fingir que funciona.
257
+ *
258
+ * O preflight do Tailwind zera as coisas com SELETOR DE TIPO: `h1..h6
259
+ * {font-size:inherit;font-weight:inherit}`, `ol,ul,menu{list-style:none;
260
+ * margin:0;padding:0}`, `blockquote,…,p,pre{margin:0}`, `a{color:inherit;
261
+ * text-decoration:inherit}`, `hr{height:0;border-top-width:1px}`. Tudo isso
262
+ * vale 0,0,1, e está igual no 3.4 e no 4.x (conferido nos dois preflights em
263
+ * disco). Regra 0,0,0 PERDE de 0,0,1 em qualquer ordem: vir depois no
264
+ * documento só desempata quando a especificidade é a MESMA. Uma folha inteira
265
+ * dentro de `:where()` não devolve nenhum desses cinco: devolve só a borda da
266
+ * tabela, que o preflight tira pelo `*`.
267
+ *
268
+ * Então: onde a regra DISPUTA com o preflight, o elemento sai do `:where()` e
269
+ * entra num `:is()`, que carrega a especificidade do argumento mais específico
270
+ * e deixa a regra em 0,0,1. Empata com o reset, ganha pela ordem, e continua
271
+ * perdendo de qualquer regra do site escrita por classe (0,1,1). Onde o
272
+ * preflight não encosta, caso da tabela, do código, da imagem e dos nossos
273
+ * blocos, fica 0,0,0 e qualquer coisa do site ganha.
274
+ *
275
+ * O teto é 0,0,1, e é teste, não comentário: `corpo-do-artigo.test.ts` calcula
276
+ * a especificidade de cada seletor e reprova id, classe solta e atributo.
277
+ *
278
+ * ── O `<style>` FICA NO CORPO DE PROPÓSITO ──────────────────────────────
279
+ *
280
+ * Nada de `precedence` para o React 19 içar ao `<head>`: o empate em 0,0,1 com
281
+ * o preflight é decidido pela ORDEM, e ficar no corpo é o que garante vir
282
+ * depois da folha do site. Içado, a posição passa a depender de onde o React
283
+ * insere, e o conserto viraria sorteio.
284
+ *
285
+ * ── O QUE A FOLHA AINDA ATROPELA, DITO SEM RODEIO ───────────────────────
286
+ *
287
+ * Em Tailwind v4 o site emite tudo dentro de `@layer`, e camada é decidida
288
+ * ANTES de especificidade: estilo de autor fora de camada ganha de estilo em
289
+ * camada, por específico que seja. Esta folha é fora de camada. Logo, em site
290
+ * v4 cujo corpo é vestido pelo `@tailwindcss/typography` (o `prose` de
291
+ * verdade, instalado) ou por utilitário no wrapper, ela ganha de quem fez
292
+ * certo. A saída é `comFolha={false}`, e é o único caso conhecido.
293
+ *
294
+ * Emitir dentro de `@layer base` consertaria o v4 e QUEBRARIA o v3, onde não
295
+ * há camada nenhuma e regra em camada perde de toda regra fora dela, o
296
+ * preflight incluído. Entre as duas, a folha serve o caso que está quebrado.
297
+ *
298
+ * Nenhuma cor nossa e nenhuma fonte nossa, e nenhum tamanho de corpo: nada
299
+ * disso o preflight tira, e tamanho de texto é escolha da marca. O que não
300
+ * herda sai em variável para o site discordar sem tocar aqui.
301
+ *
302
+ * RECONCILIADA com a folha que está no ar nos 20 sites (medida em 23/10/2026
303
+ * no CSS compilado), que era melhor em três coisas e agora estão aqui:
304
+ *
305
+ * - LÊ o token da marca do site: `--primary`, `--accent` e `--border`, cada
306
+ * um com queda para o que a folha fazia antes (`inherit`, `currentColor`).
307
+ * Site que declara o token como trio de HSL (o jeito do shadcn) cai na
308
+ * queda e fica igual a antes, nunca pior: medido nos três casos;
309
+ * - fonte de título pela variável `--ia-fonte-titulo`, que por padrão herda;
310
+ * - FAQ em acordeão: marcador do navegador escondido, triângulo próprio e
311
+ * giro no estado aberto.
312
+ *
313
+ * 🚨 Variável NUNCA dentro de atalho. `border:1px solid var(--ia-cor-borda)`
314
+ * num site de token em trio de HSL derruba o atalho INTEIRO, e a borda da
315
+ * tabela foi a 0px, pior do que sem token. Em longhand só a cor cai, e cai em
316
+ * `currentColor`. Medido em 26/10/2026, e tem teste.
317
+ *
318
+ * Três coisas da folha do ar ficaram FORA, de propósito:
319
+ *
320
+ * - `.ia-pagina`, a casca da página: o `<ArticleBody>` nunca a renderiza,
321
+ * então seria CSS morto embarcado em todo site. Quem quiser leva por
322
+ * `folhaParaSite()`, na folha do próprio site;
323
+ * - `font-size` no wrapper: o preflight não tira tamanho de div, e tamanho
324
+ * de corpo é escolha da marca (tem teste);
325
+ * - zerar margem do primeiro e do último filho: `:first-child` vale 0,1,0
326
+ * por especificação, e não cabe no teto de 0,0,1 desta folha. A do ar
327
+ * pode, porque é CSS do próprio site e vive em 0,1,1.
328
+ */
329
+ /** O gancho que a folha veste e que o `<ArticleBody>` põe na div. Um literal só. */
330
+ export declare const CLASSE_DO_CORPO = "ia-artigo";
331
+ export declare const CSS_CORPO_DO_ARTIGO: string;
332
+ /**
333
+ * A mesma folha, reescrita para o CSS do PRÓPRIO site, numa classe dele.
334
+ *
335
+ * Para que serve: o site cliente pinado numa versão antiga do SDK não tem o
336
+ * `<ArticleBody>`, e esperar a publicação deixaria o artigo no ar quebrado. Com
337
+ * isto, a folha vai para o CSS do site agora, gerada da MESMA fonte, em vez de
338
+ * alguém reescrever as trinta e cinco regras à mão em cada repositório.
339
+ *
340
+ * O seletor sai por CLASSE, 0,1,1, então ganha do reset de tipo em qualquer
341
+ * versão do Tailwind, com ou sem camada. E quando o site migrar para o
342
+ * `<ArticleBody>`, nada conflita: 0,1,1 continua ganhando do 0,0,1 do SDK.
343
+ *
344
+ * @example
345
+ * folhaParaSite([".article-prose"])
346
+ * folhaParaSite([".blog-content", ".article-content"]) // duas classes
347
+ */
348
+ export declare function folhaParaSite(classes: readonly string[]): string;
349
+ export interface ArticleBodyProps {
350
+ article: {
351
+ contentHtml?: string | null;
352
+ };
353
+ /**
354
+ * Classes EXTRAS na div. O gancho `ia-artigo` fica sempre, lado a lado com
355
+ * o que você passar: a folha veste o corpo e as classes do site continuam
356
+ * ganhando dela por especificidade. Para dispensar a folha, `comFolha={false}`.
357
+ */
358
+ className?: string;
359
+ /**
360
+ * `false` quando o site JÁ veste o corpo e prefere a folha dele. Obrigatório
361
+ * em site Tailwind v4 cujo corpo é vestido pelo `@tailwindcss/typography`
362
+ * instalado ou por utilitário no wrapper: ali a folha daqui ganha, porque
363
+ * está fora de camada.
364
+ */
365
+ comFolha?: boolean;
366
+ }
367
+ /**
368
+ * O corpo do artigo, vestido.
369
+ *
370
+ * Existe para que vestir o corpo deixe de depender de alguém lembrar. Antes
371
+ * dele o caminho era: o instalador escrevia a folha e AVISAVA, e quem adaptava
372
+ * o blog tinha de importar e pôr a classe. Quem pulasse não via defeito nenhum
373
+ * até o cliente ver a parede de texto.
374
+ *
375
+ * Faz duas coisas que ninguém precisa repetir:
376
+ *
377
+ * 1. tira a assinatura que já vem dentro do `contentHtml` (`corpoDoArtigo`),
378
+ * para ela não sair duas vezes quando a página usa `<AuthorSignature>`;
379
+ * 2. injeta a folha estrutural, escopada no gancho que ele mesmo põe;
380
+ * 3. embrulha cada tabela num contêiner que rola (`envolverTabelas`), porque
381
+ * navegador ignora `overflow-x` em caixa de tabela e sem isso a tabela
382
+ * larga faz a PÁGINA rolar de lado no celular.
383
+ *
384
+ * O gancho e a folha são um par, e o par é fechado AQUI: a div sempre carrega
385
+ * `ia-artigo`, e o que o site passar em `className` entra ao lado. Era o furo
386
+ * da primeira versão, onde `className` SUBSTITUÍA o gancho: o site que
387
+ * passasse o wrapper dele (`prose prose-slate article-content`, que é o valor
388
+ * literal do blog que quebrou) recebia a folha na página e nenhuma regra
389
+ * casando, ou seja o defeito de origem com 3 KB de CSS por cima para fingir
390
+ * que estava resolvido.
391
+ *
392
+ * @example
393
+ * <h1>{article.title}</h1>
394
+ * <AuthorBar article={article} empresa="Acme" />
395
+ * <ArticleBody article={article} />
396
+ * <AuthorSignature article={article} empresa="Acme" />
397
+ */
398
+ export declare function ArticleBody({ article, className, comFolha, }: ArticleBodyProps): ReactElement;
176
399
  //# sourceMappingURL=react.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}