Skip to content

Commit f435113

Browse files
authored
chore: v2.5.3 release (#83)
* fix: handle loadProject error gracefully with alert/toast to prevent app lockout * deps: mix-match the least evil monaco dependencies versions.. * fix: monaco tooltips placement, z-index, and color issues * fix: adapt to react-tooltip padding changes after dep update * fix: monaco cursor drop-pasting text malformed * feat: add custom kaplay version dropdown * feat: generate and add kaplay changelog to version select * fix: refresh stale or missing TS decorations on model change * feat: tweak responsive sizes * feat: add code color-picker with kaplay color formats switching support * chore: don't generate examples each time unless new found or force --regenerate
1 parent 039b2c8 commit f435113

32 files changed

Lines changed: 2109 additions & 194 deletions

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ pnpm-debug.log*
2727
public/kaboom.js
2828
public/kaboom.js.map
2929
lib.d.ts
30+
vite.config.ts.timestamp-*
3031

3132
# Neutralino.JS
3233
bin/
@@ -35,4 +36,5 @@ neutralinojs.log
3536
# Generated Files
3637
src/data/exampleList.json
3738
src/data/kaplayVersions.json
38-
src/data/publicAssets.json
39+
src/data/publicAssets.json
40+
src/data/kaplayChangelog.html

CHANGELOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,30 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [2.5.3] - 2026-06-06
9+
10+
### Added
11+
12+
- Added a new Project KAPLAY Version dropdown with a toggleable changelog browser - @imaginarny
13+
- The code editor now has a new color picker that supports switching between `#hex`, `rgb()`, and `[r, g, b]` color formats - @imaginarny
14+
- The code editor now keeps the starting lines of nested/scoped code sticky at the top while scrolling - @imaginarny
15+
16+
### Changed
17+
18+
- Now its possible to change the KAPLAY Version in the Project Preferences as well - @imaginarny
19+
- Refined small design details in responsive layout including editor font size - @imaginarny
20+
21+
### Fixed
22+
23+
- Prevented app lockout when trying to load nonexistent project on page load, showing a modal with more details instead - @imaginarny
24+
- Fixed various issues introduced after the code editor dependencies got updated - @imaginarny
25+
- Quick command palette aligned partially off-screen
26+
- Initial key input being ignored after selecting code backwards
27+
- Stale or missing TS code line decorations when changing projects/files
28+
- Intrusively placed tooltips in the Find widgets overlapping buttons
29+
- Malformed text ending when pasting via drag and drop
30+
- Colors and active states of inputs and widgets
31+
832
## [2.5.2] - 2026-02-23
933

1034
### Added

kaplay

package.json

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
11
{
22
"name": "kaplayground",
33
"type": "module",
4-
"version": "2.5.2",
4+
"version": "2.5.3",
55
"bin": "scripts/cli.js",
66
"scripts": {
77
"dev": "vite dev",
88
"start": "vite dev",
9-
"build": "vite build",
9+
"build": "vite build -- --regenerate",
1010
"preview": "vite preview",
1111
"generate:examples": "node --experimental-strip-types scripts/examples.ts",
1212
"generate:lib": "node --experimental-strip-types scripts/types.ts",
1313
"generate:versions": "node --experimental-strip-types scripts/versions.ts",
14+
"generate:changelog": "node --experimental-strip-types scripts/changelog.ts",
15+
"generate:all": "npm run generate:lib && npm run generate:versions && npm run generate:changelog && npm run generate:examples",
1416
"db:client-migration": "node --experimental-strip-types scripts/idbMigration.ts",
1517
"fmt": "dprint fmt",
1618
"check": "tsc --noEmit --p tsconfig.app.json",
17-
"dev:bin": "node scripts/cli.js --examples=fakeExamples",
18-
"prepare": "cd kaplay && pnpm i && cd .. && npm run generate:lib && npm run generate:examples && npm run generate:versions",
19+
"prepare": "cd kaplay && pnpm i && cd .. && npm run generate:lib",
1920
"sandbox:build": "cd sandbox && vite build",
2021
"sandbox:deploy": "cd sandbox && wrangler pages deploy --branch=main",
2122
"neu": "neu"
@@ -26,7 +27,8 @@
2627
"@fontsource/dm-mono": "^5.2.5",
2728
"@formkit/drag-and-drop": "^0.0.38",
2829
"@kaplayjs/crew": "^2.1.0",
29-
"@monaco-editor/react": "^4.6.0",
30+
"@monaco-editor/loader": "1.5.0",
31+
"@monaco-editor/react": "4.7.0",
3032
"@radix-ui/react-context-menu": "^2.2.2",
3133
"@radix-ui/react-dropdown-menu": "^2.1.14",
3234
"@radix-ui/react-tabs": "^1.1.1",
@@ -40,7 +42,7 @@
4042
"idb": "^8.0.3",
4143
"magic-string": "^0.30.11",
4244
"mime-types": "^3.0.1",
43-
"monaco-editor": "0.48.0",
45+
"monaco-editor": "0.52.2",
4446
"pako": "^2.1.0",
4547
"query-registry": "^3.0.1",
4648
"react": "^18.3.1",
@@ -50,19 +52,21 @@
5052
"react-router-dom": "^7.5.2",
5153
"react-sparkle": "^2.0.0",
5254
"react-toastify": "^10.0.5",
53-
"react-tooltip": "^5.28.0",
55+
"react-tooltip": "^5.30.1",
5456
"tailwind-merge": "^2.5.3",
5557
"tailwindcss": "^3.4.13",
5658
"theme-change": "^2.5.0",
5759
"tweenkie": "^1.0.1",
5860
"typescript": "^5.6.3",
61+
"use-debounce": "^10.1.1",
5962
"uuid": "^13.0.0",
6063
"zustand": "^4.5.5"
6164
},
6265
"devDependencies": {
6366
"@kaplayjs/dprint-config": "^1.1.0",
6467
"@neutralinojs/neu": "^11.3.0",
6568
"@tailwindcss/container-queries": "^0.1.1",
69+
"@tailwindcss/typography": "^0.5.19",
6670
"@types/canvas-confetti": "^1.9.0",
6771
"@types/node": "^22.7.5",
6872
"@types/pako": "^2.0.3",
@@ -74,6 +78,8 @@
7478
"dprint": "^0.49.1",
7579
"kaplay": "3001.0.0",
7680
"postcss": "^8.4.47",
81+
"remark": "^15.0.1",
82+
"remark-html": "^16.0.1",
7783
"vite": "^5.4.8",
7884
"vite-plugin-custom-env": "^1.0.3",
7985
"vite-plugin-static-copy": "^2.3.1",

0 commit comments

Comments
 (0)