@im-nobsidian/core 0.1.10 → 0.1.11
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/index.js +13 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2849,6 +2849,7 @@ ${COLUMN_LIST_END}`;
|
|
|
2849
2849
|
let processed = this.extractToggleBlocks(markdown);
|
|
2850
2850
|
processed = this.extractColumnBlocks(processed);
|
|
2851
2851
|
processed = this.replaceDividers(processed);
|
|
2852
|
+
processed = processed.replace(/<unknown[^>]*\/>/g, "");
|
|
2852
2853
|
return processed;
|
|
2853
2854
|
}
|
|
2854
2855
|
replaceDividers(markdown) {
|
|
@@ -3971,6 +3972,7 @@ var NOTION_PAGE_MENTION_RE = /<mention-page id="([^"]+)">([\s\S]*?)<\/mention-pa
|
|
|
3971
3972
|
var NOTION_USER_MENTION_RE = /<mention-user id="[^"]*">([^<]*)<\/mention-user>/g;
|
|
3972
3973
|
var NOTION_DATE_MENTION_RE = /<mention-date start="([^"]*)"(?: end="([^"]*)")?[^>]*\/>/g;
|
|
3973
3974
|
var NOTION_UNKNOWN_RE = /<unknown id="([^"]*)"([^>]*)\/>/g;
|
|
3975
|
+
var NOTION_UNKNOWN_URL_RE = /<unknown url="([^"]*)"([^>]*)\/>/g;
|
|
3974
3976
|
var NOTION_AUDIO_RE = /[\t ]*<audio src="([^"]*)">([\s\S]*?)<\/audio>/g;
|
|
3975
3977
|
var NOTION_VIDEO_RE = /[\t ]*<video src="([^"]*)">([\s\S]*?)<\/video>/g;
|
|
3976
3978
|
var NOTION_PDF_RE = /[\t ]*<pdf src="([^"]*)">([\s\S]*?)<\/pdf>/g;
|
|
@@ -4082,12 +4084,18 @@ function convertDateMentions(content) {
|
|
|
4082
4084
|
});
|
|
4083
4085
|
}
|
|
4084
4086
|
function preserveUnknownBlocks(content) {
|
|
4085
|
-
|
|
4087
|
+
let result = content.replace(NOTION_UNKNOWN_RE, (_match, id, attrs) => {
|
|
4086
4088
|
const typeMatch = /type="([^"]*)"/.exec(attrs);
|
|
4087
4089
|
const altMatch = /alt="([^"]*)"/.exec(attrs);
|
|
4088
4090
|
const blockType = altMatch?.[1] ?? typeMatch?.[1] ?? "unknown";
|
|
4089
4091
|
return `%%im-nobsidian:unknown:id=${id}&type=${blockType}%%`;
|
|
4090
4092
|
});
|
|
4093
|
+
result = result.replace(NOTION_UNKNOWN_URL_RE, (_match, url, attrs) => {
|
|
4094
|
+
const altMatch = /alt="([^"]*)"/.exec(attrs);
|
|
4095
|
+
const blockType = altMatch?.[1] ?? "bookmark";
|
|
4096
|
+
return `%%im-nobsidian:unknown:id=${encodeURIComponent(url)}&type=${blockType}%%`;
|
|
4097
|
+
});
|
|
4098
|
+
return result;
|
|
4091
4099
|
}
|
|
4092
4100
|
function convertSyncedBlockRef(content) {
|
|
4093
4101
|
let result = content.replace(
|
|
@@ -4365,6 +4373,10 @@ function restoreTabBlocks(content) {
|
|
|
4365
4373
|
var OBSIDIAN_UNKNOWN_RE = /%%im-nobsidian:unknown:id=([^&]+)&type=([^%]+)%%/g;
|
|
4366
4374
|
function restoreUnknownBlocks(content) {
|
|
4367
4375
|
return content.replace(OBSIDIAN_UNKNOWN_RE, (_match, id, type) => {
|
|
4376
|
+
const decoded = decodeURIComponent(id);
|
|
4377
|
+
if (decoded.startsWith("http")) {
|
|
4378
|
+
return `<unknown url="${decoded}" alt="${type}"/>`;
|
|
4379
|
+
}
|
|
4368
4380
|
return `<unknown id="${id}" type="${type}"/>`;
|
|
4369
4381
|
});
|
|
4370
4382
|
}
|