mirror of
https://github.com/joeytoday/obsidian-mp-publisher.git
synced 2026-07-22 06:53:08 +00:00
P1.1: unify counter parsing through resolveContent -> tokenizeContent,
remove duplicate manual counter parsing in renderPseudoForElement
P1.2: add tokenizeContent for mixed string+counter content
(e.g. "第" counter(h2) "章")
P2.1: add unique nanoid to tempStyle data-mp-temp attribute to prevent
concurrent pollution during batch publishing
P2.2: skip CSS-wide keywords (none/inherit/initial/unset) in counter-reset/increment
Info.2: use regex match(/::(before|after)\\s*$/) instead of .includes()
Info.3: preserve CSS comments in removePseudoRulesFromCSS
Info.4: use .remove() instead of parentNode.removeChild() for tempStyle
Tests: add vitest + 45 unit tests for all pure functions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
37 lines
932 B
JSON
37 lines
932 B
JSON
{
|
|
"name": "mp-publisher",
|
|
"version": "2.5.3",
|
|
"description": "公众号发布插件,支持自定义样式预览和一键发布到微信公众号",
|
|
"main": "main.js",
|
|
"scripts": {
|
|
"dev": "node esbuild.config.mjs",
|
|
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest"
|
|
},
|
|
"keywords": [
|
|
"obsidian",
|
|
"plugin",
|
|
"wechat",
|
|
"publisher"
|
|
],
|
|
"author": "",
|
|
"license": "CC BY-NC-SA 4.0",
|
|
"devDependencies": {
|
|
"@types/node": "^16.11.6",
|
|
"@typescript-eslint/eslint-plugin": "5.29.0",
|
|
"@typescript-eslint/parser": "5.29.0",
|
|
"builtin-modules": "3.3.0",
|
|
"esbuild": "0.28.1",
|
|
"jsdom": "^29.1.1",
|
|
"obsidian": "latest",
|
|
"tslib": "2.4.0",
|
|
"typescript": "4.7.4",
|
|
"vitest": "^1.6.1"
|
|
},
|
|
"dependencies": {
|
|
"highlight.js": "^11.11.1",
|
|
"juice": "^11.1.0",
|
|
"nanoid": "^5.1.5"
|
|
}
|
|
}
|