Improve error handling for polymorphic field data with missing type value
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- typescript
- Área
- data
Línea de trabajo
Comience en packages/@contentlayer/core/src/generation/generate-dotpkg.ts, especialmente en idToFileName y el flujo circundante de makeDataExportFile. Reproduzca el ejemplo de TypeScript de lista anidada polimórfica, rastree cómo el valor de tipo faltante llega a la generación y verifique que el caso produzca un error controlado útil en lugar del TypeError undefined.replace informado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I encountered an error with following code trying to add polymorphic nested objects to a list.
export const Link = defineNestedType(() => ({
name: "Link",
description: "Link to an external resource",
fields: {
text: {
type: "string",
required: true,
},
url: {
type: "string",
required: true,
},
},
}));
export const LinkList = defineNestedType(() => ({
name: "LinkList",
description: "List of links to external resources",
fields: {
text: {
type: "string",
required: true,
},
links: {
type: "list",
required: true,
of: Link,
},
},
}));
export const NavbarLinks = defineDocumentType(() => ({
name: "NavbarLinks",
filePathPattern: "core/navbarLinks.json",
isSingleton: true,
fields: {
links: {
type: "list",
of: [Link, LinkList],
required: true,
},
},
}));
This produces following stack trace
TypeError: Cannot read properties of undefined (reading 'replace')
at idToFileName (file://.../node_modules/@contentlayer/core/src/generation/generate-dotpkg.ts:389:89)
at makeDataExportFile (file://.../node_modules/@contentlayer/core/src/generation/generate-dotpkg.ts:291:53)
at file://.../node_modules/@contentlayer/core/src/generation/generate-dotpkg.ts:153:18
at Array.map (<anonymous>)
at next (file://.../node_modules/@contentlayer/core/src/generation/generate-dotpkg.ts:152:44)
at Generator.next (<anonymous>)
at ApplyFrame.apply (file://.../node_modules/@effect-ts/system/_src/Effect/gen.ts:148:36)
at FiberContext.nextInstr (file://.../node_modules/@effect-ts/system/_src/Fiber/context.ts:357:28)
at FiberContext.evaluateNow (file://.../node_modules/@effect-ts/system/_src/Fiber/context.ts:940:36)
at file://.../node_modules/@effect-ts/system/_src/Fiber/context.ts:576:33
Fiber: #17 (started at: 2022-09-04T21:49:21.161Z) was supposed to continue to:
a future continuation at packages/@contentlayer/core/src/generation/generate-dotpkg.ts:216:13
Fiber: #17 (started at: 2022-09-04T21:49:21.161Z) Execution trace:
packages/@contentlayer/core/src/generation/generate-dotpkg.ts:144:22
packages/@contentlayer/core/src/generation/generate-dotpkg.ts:143:60
packages/@contentlayer/core/src/generation/generate-dotpkg.ts:125:10
packages/@contentlayer/core/src/generation/generate-dotpkg.ts:82:13
packages/@contentlayer/core/src/generation/generate-dotpkg.ts:78:16
- Lenguaje dominante
- TypeScript
- Estrellas
- 3.5k
- Forks
- 192
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de contentlayerdev/contentlayer
-
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
contentlayerdev/contentlayer#506 · 84 comentarios · 47 reacciones ·
-
Poor/broken monorepo DX: can't specify .contentlayer/ output path, no docs for custom config path Abiertohelp wanted meta: never-stale needs-research
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
contentlayerdev/contentlayer#464 · 4 comentarios · 9 reacciones ·
-
State of the project Abiertometa: never-stale
Dificultad 5/5 Más de una semana Aptitud para principiantes 10/100
contentlayerdev/contentlayer#429 · 49 comentarios · 83 reacciones ·
-
meta: never-stale topic: markdown/mdx
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
contentlayerdev/contentlayer#421 · 4 reacciones ·
-
meta: never-stale needs-research topic: schema
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
contentlayerdev/contentlayer#420 ·
Todos los issues de contentlayerdev/contentlayer
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
mksglu/context-mode#1200 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
anthropics/claude-code#96687 ·
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 95/100
AOSSIE-Org/DebateAI#582 · 2 comentarios ·