diff --git a/bun.lock b/bun.lock index 225e5db..069b7aa 100644 --- a/bun.lock +++ b/bun.lock @@ -10,12 +10,12 @@ }, "packages/cli": { "name": "mirrow", - "version": "0.1.5", + "version": "0.2.0", "bin": { "mirrow": "./dist/index.js", }, "dependencies": { - "@mirrowjs/core": "^0.1.9", + "@mirrowjs/core": "^0.2.0", "chokidar": "^4.0.3", "commander": "^14.0.1", }, @@ -25,7 +25,7 @@ }, "packages/core": { "name": "@mirrowjs/core", - "version": "0.1.9", + "version": "0.2.0", "devDependencies": { "@types/node": "^24.7.2", }, @@ -109,5 +109,7 @@ "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], "undici-types": ["undici-types@7.14.0", "", {}, "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA=="], + + "mirrow/@mirrowjs/core": ["@mirrowjs/core@0.2.0", "", {}, "sha512-yPFhO5iD1ihyOByNCMWqy/h0vLdbddVzelgz3lYQP+V/FVxjbKPpX9jfTTQwc05bYiNMUfmMMp3jESIAcdRUHw=="], } } diff --git a/packages/cli/package.json b/packages/cli/package.json index 0d4e20a..1ae96ab 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "mirrow", - "version": "0.2.0", + "version": "0.2.2", "description": "Mirrow CLI interface for generating SVGs", "main": "./dist/index.js", "types": "./dist/index.d.ts", @@ -11,10 +11,11 @@ "build": "bun build src/index.ts --outdir dist --target node" }, "files": [ - "dist" + "dist", + "README.md" ], "dependencies": { - "@mirrowjs/core": "^0.1.9", + "@mirrowjs/core": "^0.2.0", "chokidar": "^4.0.3", "commander": "^14.0.1" }, diff --git a/packages/cli/src/cli.ts b/packages/cli/src/cli.ts index 6189a44..571f80c 100644 --- a/packages/cli/src/cli.ts +++ b/packages/cli/src/cli.ts @@ -10,9 +10,10 @@ import { fileURLToPath } from 'url'; import type { CliOptions } from "./runner.js"; const __dirname = dirname(fileURLToPath(import.meta.url)); - const cliPkg = JSON.parse(readFileSync(join(__dirname, '../package.json'), 'utf-8')); -const corePkg = JSON.parse(readFileSync(join(__dirname, '../../core/package.json'), 'utf-8')); + +import corePackage from "@mirrowjs/core/package.json" with { type: "json" }; +const corePkg = corePackage; function parseDepth(raw: string): number | typeof Infinity { if (raw === "unbound") { diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index 292b40b..efad474 100644 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -2,7 +2,7 @@ import process from "node:process"; -import { runCli, } from "./cli.js"; +import { runCli } from "./cli.js"; runCli(process.argv).catch((error: unknown) => { if (error instanceof Error) { diff --git a/packages/cli/src/runner.ts b/packages/cli/src/runner.ts index 133f21f..0d95509 100644 --- a/packages/cli/src/runner.ts +++ b/packages/cli/src/runner.ts @@ -2,7 +2,6 @@ import { promises as fs } from "node:fs"; import os from "node:os"; import path from "node:path"; -import type * as Chokidar from "chokidar"; import * as chokidar from "chokidar"; import { compile } from "@mirrowjs/core"; diff --git a/packages/core/package.json b/packages/core/package.json index 3047189..7b85d70 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@mirrowjs/core", - "version": "0.2.0", + "version": "0.2.1", "description": "Core compiler and parser for the Mirrow DSL", "main": "./dist/index.js", "types": "./dist/index.d.ts", diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 2168e1d..9d742e9 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -32,49 +32,3 @@ process.on("uncaughtException", (err) => { console.error(err.message); process.exit(1); }); - -function runExample(): void { - const code = ` -svg { - // Internal coordinate space: viewBox x y w h - box: (0, 0, 200, 200) - - // Rendered size on the page - size: (200px, 200px) - - // How to map box to size - preserve: (xMidYMid, meet) - - circle { - id: "pulse" - at: (100, 100) - r: 40 - fill: "hotpink" - - animate { - prop: "r" - from: 40px - to: 60px - dur: 2s - repeat: indefinite - } - } - - @hover, @active { - #pulse { - cy: 150px - r: 60px - } - } -} - - `; - console.log(compile(code)); -} - -if (process.argv[1]) { - const entryUrl = pathToFileURL(process.argv[1]).href; - if (import.meta.url === entryUrl) { - runExample(); - } -}