diff --git a/eotdl/eotdl/datasets/ingest.py b/eotdl/eotdl/datasets/ingest.py
index 1c5ef122..c5932ac0 100755
--- a/eotdl/eotdl/datasets/ingest.py
+++ b/eotdl/eotdl/datasets/ingest.py
@@ -3,10 +3,6 @@
from tqdm import tqdm
import json
import frontmatter
-import markdown
-from markdown.extensions.tables import TableExtension
-from markdown.extensions.fenced_code import FencedCodeExtension
-
from ..auth import with_auth
from .metadata import Metadata
@@ -75,8 +71,6 @@ def ingest_folder(
raise Exception("Error loading metadata")
# retrieve dataset (create if doesn't exist)
dataset = retrieve_dataset(metadata, user)
- if content:
- content = markdown.markdown(content, extensions=[TableExtension(),FencedCodeExtension()])
update_metadata = True
if "description" in dataset:
diff --git a/eotdl/eotdl/datasets/metadata.py b/eotdl/eotdl/datasets/metadata.py
index 7e7dba06..07f2954e 100755
--- a/eotdl/eotdl/datasets/metadata.py
+++ b/eotdl/eotdl/datasets/metadata.py
@@ -1,6 +1,5 @@
from pydantic import BaseModel, validator
from typing import List, Optional
-import markdownify
from pathlib import Path
@@ -39,7 +38,7 @@ def generate_metadata(download_path, dataset):
for author in dataset["authors"]:
f.write(f" - {author}\n")
f.write("---\n")
- f.write(markdownify.markdownify(dataset["description"], heading_style="ATX"))
+ f.write(dataset["description"])
# remove metadata.yml if exists
if Path(download_path + "/metadata.yml").exists():
Path(download_path + "/metadata.yml").unlink()
diff --git a/eotdl/eotdl/models/ingest.py b/eotdl/eotdl/models/ingest.py
index 883ad0b1..1be6aea8 100755
--- a/eotdl/eotdl/models/ingest.py
+++ b/eotdl/eotdl/models/ingest.py
@@ -1,7 +1,6 @@
from pathlib import Path
import yaml
import frontmatter
-import markdown
from tqdm import tqdm
import json
@@ -67,8 +66,7 @@ def ingest_folder(
raise Exception(f"Error loading metadata: {e}")
# retrieve model (create if doesn't exist)
model = retrieve_model(metadata, user)
- if content:
- content = markdown.markdown(content)
+
update_metadata = True
if "description" in model:
# do not do this if the model is new, only if it already exists
diff --git a/eotdl/eotdl/models/metadata.py b/eotdl/eotdl/models/metadata.py
index 312a8888..0ee8a21f 100755
--- a/eotdl/eotdl/models/metadata.py
+++ b/eotdl/eotdl/models/metadata.py
@@ -1,6 +1,5 @@
from pydantic import BaseModel, validator
from typing import List, Optional
-import markdownify
from pathlib import Path
@@ -37,7 +36,7 @@ def generate_metadata(download_path, model):
for author in model["authors"]:
f.write(f" - {author}\n")
f.write("---\n")
- f.write(markdownify.markdownify(model["description"], heading_style="ATX"))
+ f.write(model["description"])
# remove metadata.yml if exists
if Path(download_path + "/metadata.yml").exists():
Path(download_path + "/metadata.yml").unlink()
diff --git a/ui/src/routes/datasets/IngestForm.svelte b/ui/src/routes/datasets/IngestForm.svelte
index a2692a24..b920d44d 100755
--- a/ui/src/routes/datasets/IngestForm.svelte
+++ b/ui/src/routes/datasets/IngestForm.svelte
@@ -16,12 +16,15 @@
export let license;
export let content;
export let quality = 0;
+ let value = content
+ console.log(value)
let files;
let loading = false;
let error = null;
$: selected_tags = current_tags;
const ingest = async () => {
+ console.log(value)
error = null;
if (source && !validate_source(source)) return;
loading = true;
@@ -32,7 +35,7 @@
await submit(
files,
name,
- content,
+ value,
authors?.split(","),
source,
license,
@@ -43,7 +46,7 @@
await submit(
//files,
name,
- content,
+ value,
authors?.split(","),
source,
license,
@@ -156,7 +159,7 @@
{/if}
Description
-
+
{#if forCreate}
Files
diff --git a/ui/src/routes/datasets/TextEditor.svelte b/ui/src/routes/datasets/TextEditor.svelte
index b081ea55..50b3bbbd 100755
--- a/ui/src/routes/datasets/TextEditor.svelte
+++ b/ui/src/routes/datasets/TextEditor.svelte
@@ -3,8 +3,6 @@
import "carta-md/default.css"; /* Default theme */
import "$styles/carta-md.css";
import DOMPurify from "isomorphic-dompurify";
- import TurndownService from "turndown";
- import { tables } from "turndown-plugin-gfm";
import { browser } from "$app/environment";
let x;
@@ -31,16 +29,12 @@
sanitizer: DOMPurify.sanitize,
});
- export let content;
- var turndownService = new TurndownService({
- codeBlockStyle: "fenced",
- preformattedCode: true,
- });
- turndownService.use(tables);
+ export let value;
+
+ let html = null;
- let value = turndownService.turndown(content);
const renderHtml = async () => {
- content = await carta.render(value);
+ html = await carta.render(value);
};
diff --git a/ui/src/routes/datasets/[name]/+page.svelte b/ui/src/routes/datasets/[name]/+page.svelte
index 20025ca3..6c46403d 100755
--- a/ui/src/routes/datasets/[name]/+page.svelte
+++ b/ui/src/routes/datasets/[name]/+page.svelte
@@ -11,15 +11,27 @@
import { fade } from "svelte/transition";
import retrieveDatasetFiles from "$lib/datasets/retrieveDatasetFiles";
import Map from "$components/Map.svelte";
+ import { Carta } from "carta-md";
+ import DOMPurify from "isomorphic-dompurify";
+
+ const carta = new Carta({
+ extensions: [],
+ sanitizer: DOMPurify.sanitize,
+ });
export let data;
let dataset = null;
let version = null;
let message = null;
+ let description = null;
const load = async () => {
dataset = await retrieveDataset(data.name);
+ description = await carta.render(dataset.description)
+ if (!description){
+ description = dataset.description;
+ }
};
$: if (browser) load();
@@ -106,8 +118,8 @@
>
- {#if dataset.description}
- {@html dataset.description}
+ {#if description}
+ {@html description}
{:else}
No description.
{/if}
diff --git a/ui/src/routes/models/[name]/+page.svelte b/ui/src/routes/models/[name]/+page.svelte
index 9ceaa42d..0871b760 100755
--- a/ui/src/routes/models/[name]/+page.svelte
+++ b/ui/src/routes/models/[name]/+page.svelte
@@ -10,15 +10,27 @@
import { fade } from "svelte/transition";
import retrieveModelFiles from "$lib/models/retrieveModelFiles";
import Update from "$components/Update.svelte";
+ import { Carta } from "carta-md";
+ import DOMPurify from "isomorphic-dompurify";
+
+ const carta = new Carta({
+ extensions: [],
+ sanitizer: DOMPurify.sanitize,
+ });
export let data;
let model = null;
let version = null;
let message = null;
+ let description = null;
const load = async () => {
model = await retrieveModel(data.name);
+ description = await carta.render(model.description)
+ if (!description){
+ description = model.description;
+ }
};
$: if (browser) load();
@@ -94,8 +106,8 @@
- {#if model.description}
- {@html model.description}
+ {#if description}
+ {@html description}
{:else}
No description.
{/if}