mirror of
https://github.com/sbuffkin/hexmaker.git
synced 2026-07-22 14:30:24 +00:00
Five separate categories the upstream obsidianmd reviewer flagged on
the 1.4.x diff, plus enforcement to catch them earlier.
- **no-static-styles-assignment** (5 sites in HexMapView.ts):
Replace every direct `transform`/`transform-origin`/`opacity` write
with CSS custom properties on the relevant container. Static rules
in styles.css now reference them via
`transform: translate(var(--duckmage-bg-tx, 0px), …) scale(...)`
with identity-default fallbacks. JS writes only the values via
`setCssProps({ "--duckmage-bg-tx": ... })`. Applies to the bg image
layer, the hex grid container, AND the viewport itself. Two small
helpers `applyBgLayerVars` / `applyGridLayerVars` centralise the
variable plumbing and replace ad-hoc transform-string assembly at
the drag / wheel / arrow-key / bake / shiftForGridGrowth call sites.
- **document → activeDocument** (4 sites in overlayPatternControls.ts):
swap for popout-window compatibility.
- **setDynamicTooltip removal** (5 sites): the API is deprecated; the
value is shown inline now.
- **Lint enforcement**: `obsidianmd/no-static-styles-assignment`
promoted from default to error, so a regression breaks the local
lint instead of waiting for the upstream reviewer. The other two
patterns aren't shipped as eslint rules upstream — documented in
CLAUDE.md under "Obsidian reviewer-bot conventions" so the next
pass-through audits them by hand.
Sandbox regression check (dev/snapshot-bg-hex-alignment.mjs) still
PASSes — the CSS-var refactor doesn't disturb the bg-image / grid
alignment math from 1.4.1.
44 lines
2.2 KiB
JSON
44 lines
2.2 KiB
JSON
{
|
|
"name": "hexmaker-plugin",
|
|
"version": "1.4.2",
|
|
"description": "A plugin to power hex crawl worldbuilding and running.",
|
|
"main": "main.js",
|
|
"scripts": {
|
|
"dev": "node esbuild.config.mjs",
|
|
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
|
"version": "node version-bump.mjs && git add manifest.json versions.json",
|
|
"test": "tsx --tsconfig ./tsconfig.test.json --import ./tests/register.mjs --test tests/frontmatter.test.ts tests/hexEditorModal.test.ts tests/randomTable.test.ts tests/sections.test.ts tests/utils.test.ts tests/workflow.test.ts tests/token.test.ts tests/randomTableExport.test.ts tests/singleNoteExport.test.ts tests/hexGeometry.test.ts tests/mapWithTableExport.test.ts tests/singleHexExport.test.ts tests/workflowExport.test.ts tests/overlayPatterns.test.ts",
|
|
"test:watch": "tsx --tsconfig ./tsconfig.test.json --import ./tests/register.mjs --test --watch tests/frontmatter.test.ts tests/hexEditorModal.test.ts tests/randomTable.test.ts tests/sections.test.ts tests/utils.test.ts tests/workflow.test.ts tests/token.test.ts tests/randomTableExport.test.ts tests/singleNoteExport.test.ts tests/hexGeometry.test.ts tests/mapWithTableExport.test.ts tests/singleHexExport.test.ts tests/workflowExport.test.ts tests/overlayPatterns.test.ts",
|
|
"test:integration": "tsx --tsconfig ./tsconfig.test.json --import ./tests/register.mjs --test tests/integration/*.integration.ts",
|
|
"test:e2e": "tsx --tsconfig ./tsconfig.test.json --import ./tests/register.mjs --test tests/integration/e2e-*.integration.ts",
|
|
"lint": "eslint . --ext .js,.ts"
|
|
},
|
|
"keywords": [
|
|
"obsidian",
|
|
"plugin"
|
|
],
|
|
"author": "Mark B",
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"@codemirror/lang-markdown": "^6.5.0",
|
|
"@codemirror/language-data": "^6.5.2",
|
|
"@codemirror/state": "6.5.0",
|
|
"@codemirror/view": "6.38.6",
|
|
"@eslint/js": "^9.30.1",
|
|
"@types/node": "^25.5.0",
|
|
"esbuild": "0.27.4",
|
|
"eslint": "^9.30.1",
|
|
"eslint-plugin-obsidianmd": "^0.1.9",
|
|
"expect": "^30.3.0",
|
|
"globals": "^17.4.0",
|
|
"jiti": "^2.6.1",
|
|
"obsidian": "latest",
|
|
"tslib": "2.8.1",
|
|
"tsx": "^4.21.0",
|
|
"typescript": "6.0.2",
|
|
"typescript-eslint": "^8.58.0"
|
|
},
|
|
"dependencies": {
|
|
"minisearch": "^7.2.0"
|
|
}
|
|
}
|