themebooth 0.2.1 → 0.3.0
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/CHANGELOG.md +57 -0
- package/README.md +1 -0
- package/dist/bin/themebooth.js +27 -0
- package/dist/bin/themebooth.js.map +1 -1
- package/dist/cli/validate.d.ts +7 -0
- package/dist/cli/validate.d.ts.map +1 -0
- package/dist/cli/validate.js +689 -0
- package/dist/cli/validate.js.map +1 -0
- package/dist/core/colors.d.ts +11 -0
- package/dist/core/colors.d.ts.map +1 -0
- package/dist/core/colors.js +214 -0
- package/dist/core/colors.js.map +1 -0
- package/dist/core/schemas.d.ts.map +1 -1
- package/dist/core/schemas.js +3 -3
- package/dist/core/schemas.js.map +1 -1
- package/dist/preview/renderer.d.ts.map +1 -1
- package/dist/preview/renderer.js +578 -117
- package/dist/preview/renderer.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
Format based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
6
|
+
Versions follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.3.0] - 2026-05-09
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Comprehensive validation CLI command with detailed error reporting
|
|
12
|
+
- Color utility module for advanced color manipulation and validation
|
|
13
|
+
- Theme overlay system for composing multiple theme layers
|
|
14
|
+
- Schema definitions extracted into dedicated module
|
|
15
|
+
- New editor exporters: Atom, Brackets, Sublime Text, and Vim
|
|
16
|
+
- Exporter utilities for shared functionality across editor formats
|
|
17
|
+
- Extensive test plan and CLI help documentation
|
|
18
|
+
- Troubleshooting guide with common issues and solutions
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
- Refactored preview renderer with expanded browser UI (>2200 lines)
|
|
22
|
+
- Enhanced exporter interfaces for VS Code and Zed with improved format handling
|
|
23
|
+
- Updated manifest template with computed field support
|
|
24
|
+
- Improved preset templates (dark, light, high-contrast) with better color definitions
|
|
25
|
+
- Refined variables.ts with cleaner type definitions
|
|
26
|
+
- Enhanced validation utilities with extended error context
|
|
27
|
+
|
|
28
|
+
### Fixed
|
|
29
|
+
- Computed field initialization in manifest generation
|
|
30
|
+
- ColorOrVariableRegex import source consistency
|
|
31
|
+
|
|
32
|
+
## [0.2.1] - 2026-05-09
|
|
33
|
+
|
|
34
|
+
### Added
|
|
35
|
+
- Phase 3: Theme inheritance, computed colors, and preset wizard
|
|
36
|
+
- ASCII mascot and colorized output for CLI init command
|
|
37
|
+
- Complete testing and documentation workflows
|
|
38
|
+
- Comprehensive error handling and validation system
|
|
39
|
+
|
|
40
|
+
## [0.2.0] - 2026-05-09
|
|
41
|
+
|
|
42
|
+
### Added
|
|
43
|
+
- Core schema validation with Zod
|
|
44
|
+
- Preview command with browser live-reload
|
|
45
|
+
- Package and publish commands
|
|
46
|
+
- VS Code and Zed exporter implementations
|
|
47
|
+
- Dark, light, and high-contrast preset templates
|
|
48
|
+
- Browser-based validation error visualization
|
|
49
|
+
|
|
50
|
+
## [0.1.0] - 2026-05-08
|
|
51
|
+
|
|
52
|
+
### Added
|
|
53
|
+
- Initial release
|
|
54
|
+
- Basic CLI with init command
|
|
55
|
+
- Theme manifest schema
|
|
56
|
+
- Variable substitution system
|
|
57
|
+
- IntelliJ and Sublime basis implementation
|
package/README.md
CHANGED
|
@@ -168,6 +168,7 @@ Changes to `manifest.json` reload automatically.
|
|
|
168
168
|
| `themebooth init [name]` | Create new theme project |
|
|
169
169
|
| `themebooth init [name] --preset [dark\|light\|high-contrast]` | Create with starter preset |
|
|
170
170
|
| `themebooth preview` | Live preview with hot-reload |
|
|
171
|
+
| `themebooth validate` | Validate manifest.json |
|
|
171
172
|
| `themebooth preset add` | Interactive wizard to create theme variants |
|
|
172
173
|
| `themebooth package` | Package for all platforms |
|
|
173
174
|
| `themebooth publish <platform>` | Publish to marketplace |
|
package/dist/bin/themebooth.js
CHANGED
|
@@ -9,6 +9,7 @@ const preview_1 = require("../cli/preview");
|
|
|
9
9
|
const package_1 = require("../cli/package");
|
|
10
10
|
const publish_1 = require("../cli/publish");
|
|
11
11
|
const preset_1 = require("../cli/preset");
|
|
12
|
+
const validate_1 = require("../cli/validate");
|
|
12
13
|
const packageJson = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, "../../package.json"), "utf-8"));
|
|
13
14
|
const program = new commander_1.Command();
|
|
14
15
|
program
|
|
@@ -57,6 +58,32 @@ Examples:
|
|
|
57
58
|
process.exit(1);
|
|
58
59
|
}
|
|
59
60
|
});
|
|
61
|
+
program
|
|
62
|
+
.command("validate [path]")
|
|
63
|
+
.description("Validate manifest.json for errors and compatibility")
|
|
64
|
+
.option("--fix", "Auto-convert colors to hex format")
|
|
65
|
+
.option("--ci", "Machine-readable JSON output for CI/CD")
|
|
66
|
+
.addHelpText("after", `
|
|
67
|
+
Comprehensive validation: schema, variables, colors, tokens, presets, extends.
|
|
68
|
+
Catches errors at edit time before packaging.
|
|
69
|
+
|
|
70
|
+
Examples:
|
|
71
|
+
$ themebooth validate
|
|
72
|
+
$ themebooth validate ./custom.json
|
|
73
|
+
$ themebooth validate --fix
|
|
74
|
+
$ themebooth validate --ci | jq .valid
|
|
75
|
+
`)
|
|
76
|
+
.action(async (path, options) => {
|
|
77
|
+
try {
|
|
78
|
+
await (0, validate_1.validateCommand)(path, {
|
|
79
|
+
fix: options.fix || false,
|
|
80
|
+
ci: options.ci || false,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
process.exit(1);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
60
87
|
program
|
|
61
88
|
.command("package")
|
|
62
89
|
.description("Package theme for all platforms (VS Code, Notepad++, Zed)")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themebooth.js","sourceRoot":"","sources":["../../src/bin/themebooth.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,sCAA0C;AAC1C,4CAAgD;AAChD,4CAAgD;AAChD,4CAAgD;AAChD,0CAAiD;
|
|
1
|
+
{"version":3,"file":"themebooth.js","sourceRoot":"","sources":["../../src/bin/themebooth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"AAWA,UAAU,eAAe;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAoCD,wBAAsB,eAAe,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0JzG"}
|