Delegate node walking to others
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Refactorización
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- tooling
Línea de trabajo
Comienza revisando la interfaz actual de walker y cómo el AST parser genera la salida; después, compara los enfoques de browser Document y JSDOM descritos en el issue. Se considerará terminado cuando el parser construya directamente un DOM, se elimine el alcance relacionado con walker y los consumidores puedan sanitizar, consultar, añadir o renderizar el document resultante mediante las DOM APIs existentes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
To reduce the scope of this package (easier to maintain), how about this:
- Remove the
walkerinterface. Instead, the AST parser builds into a real DOM directly.- On the browser, this would be an instance of
Document(that's what e.g. DOM Parser would output). - In node, something like JSDOM can be used.
- So either of those two would be a dependency for this library.
- On the browser, this would be an instance of
- That way, any sanitization or other DOM modification could either use an existing library, such as DOMPurify or write their own code using e.g.
myDocument.querySelectorAll. - Rendering to an HTML string be as simple as
myDocument.innerHTML, and others will likely just append that doc into the DOM directly, without ever producing an HTML string (perf win).
This change would radically lower the scope of this package (building on the shoulder of giants; existing web APIs basically), and would still preserve everything that's unique about this library, which is markdown parsing.
- Lenguaje dominante
- JavaScript
- Estrellas
- 1.6k
- Forks
- 234
- Merge medio
- 1 d 27 min
- PR fusionados (30 d)
- 1
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 commonmark/commonmark.js
-
White space handling looks inconsistent between HTML block element vs HTML inline elementPosiblemente ocupada @mamicicekel la tomó hace 11 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
commonmark/commonmark.js#303 · 2 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
commonmark/commonmark.js#287 · 1 reacción ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 20/100
commonmark/commonmark.js#275 ·
-
Inconsistent escape of image altAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
commonmark/commonmark.js#264 · 1 reacción ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
commonmark/commonmark.js#257 ·
Todos los issues de commonmark/commonmark.js
Issues similares
-
external-plugin external-plugin-canvas needs-review:MEDIUM ready-for-review
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
github/awesome-copilot#5153 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 92/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
sallowayma-git/IELTS-practice#248 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
SecureBananaLabs/bug-bounty#13365 ·
Los mantenedores suelen responder en 4 días