twskin 0.5.3

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.
Files changed (65) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/CONTRIBUTING.md +37 -0
  3. package/LICENSE +21 -0
  4. package/README.md +104 -0
  5. package/SECURITY.md +28 -0
  6. package/dist/bin/twskin.d.ts +3 -0
  7. package/dist/bin/twskin.d.ts.map +1 -0
  8. package/dist/bin/twskin.js +4 -0
  9. package/dist/bin/twskin.js.map +1 -0
  10. package/dist/commands.d.ts +41 -0
  11. package/dist/commands.d.ts.map +1 -0
  12. package/dist/commands.js +421 -0
  13. package/dist/commands.js.map +1 -0
  14. package/dist/context.d.ts +14 -0
  15. package/dist/context.d.ts.map +1 -0
  16. package/dist/context.js +51 -0
  17. package/dist/context.js.map +1 -0
  18. package/dist/errors.d.ts +9 -0
  19. package/dist/errors.d.ts.map +1 -0
  20. package/dist/errors.js +20 -0
  21. package/dist/errors.js.map +1 -0
  22. package/dist/lock.d.ts +3 -0
  23. package/dist/lock.d.ts.map +1 -0
  24. package/dist/lock.js +52 -0
  25. package/dist/lock.js.map +1 -0
  26. package/dist/main.d.ts +9 -0
  27. package/dist/main.d.ts.map +1 -0
  28. package/dist/main.js +92 -0
  29. package/dist/main.js.map +1 -0
  30. package/dist/output.d.ts +4 -0
  31. package/dist/output.d.ts.map +1 -0
  32. package/dist/output.js +27 -0
  33. package/dist/output.js.map +1 -0
  34. package/dist/persistent-cdp.d.ts +14 -0
  35. package/dist/persistent-cdp.d.ts.map +1 -0
  36. package/dist/persistent-cdp.js +140 -0
  37. package/dist/persistent-cdp.js.map +1 -0
  38. package/dist/system.d.ts +64 -0
  39. package/dist/system.d.ts.map +1 -0
  40. package/dist/system.js +234 -0
  41. package/dist/system.js.map +1 -0
  42. package/dist/theme-download.d.ts +9 -0
  43. package/dist/theme-download.d.ts.map +1 -0
  44. package/dist/theme-download.js +250 -0
  45. package/dist/theme-download.js.map +1 -0
  46. package/dist/themes.d.ts +9 -0
  47. package/dist/themes.d.ts.map +1 -0
  48. package/dist/themes.js +185 -0
  49. package/dist/themes.js.map +1 -0
  50. package/dist/types.d.ts +58 -0
  51. package/dist/types.d.ts.map +1 -0
  52. package/dist/types.js +2 -0
  53. package/dist/types.js.map +1 -0
  54. package/docs/publishing.md +45 -0
  55. package/docs/theme-distribution.md +62 -0
  56. package/package.json +74 -0
  57. package/runtime/component-map.mjs +200 -0
  58. package/runtime/injector.mjs +705 -0
  59. package/runtime/manifest.json +47 -0
  60. package/runtime/restore.sh +33 -0
  61. package/runtime/skin.js +1133 -0
  62. package/runtime/start.sh +86 -0
  63. package/runtime/styles/base.css +687 -0
  64. package/runtime/styles/manager.css +346 -0
  65. package/runtime/token-map.mjs +432 -0
@@ -0,0 +1,47 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "packageVersion": "0.5.3",
4
+ "themesBundled": false,
5
+ "files": [
6
+ {
7
+ "path": "component-map.mjs",
8
+ "size": 9166,
9
+ "sha256": "519c502c4caece24d0e96f9a237c02d1b28cafbed2b4fcaa56fea075557f3a17"
10
+ },
11
+ {
12
+ "path": "injector.mjs",
13
+ "size": 25662,
14
+ "sha256": "10671777cd09c02d49ca6fb0278f0dac5de70f793ad9edd11fcabf7b9ab254dd"
15
+ },
16
+ {
17
+ "path": "restore.sh",
18
+ "size": 1396,
19
+ "sha256": "b63652a29de688b1fe713e97c5382b5e3a2ebcb96a2bed25ec284ac9360e251f"
20
+ },
21
+ {
22
+ "path": "skin.js",
23
+ "size": 51083,
24
+ "sha256": "1c7440b976f20d1d881e3dfdfd47ecc36a7ab2b3ae19897608d40fca7740399f"
25
+ },
26
+ {
27
+ "path": "start.sh",
28
+ "size": 3576,
29
+ "sha256": "7d157d03fd03faaccd8c7921367c772c3b351ac2ddc74fa3c103986c6e162796"
30
+ },
31
+ {
32
+ "path": "styles/base.css",
33
+ "size": 32439,
34
+ "sha256": "cfd57424d2b31732a44e0dd59410ab039d9842017112e6bd688a37db4831262a"
35
+ },
36
+ {
37
+ "path": "styles/manager.css",
38
+ "size": 15460,
39
+ "sha256": "827be58fe3933a3dafe5edc5bf9184f45e0094af3c9a766a560c54b442a49d1d"
40
+ },
41
+ {
42
+ "path": "token-map.mjs",
43
+ "size": 24063,
44
+ "sha256": "7f892e3b013851699762b73cf86444c78c8ad2e16a06e68147e161d00493908f"
45
+ }
46
+ ]
47
+ }
@@ -0,0 +1,33 @@
1
+ #!/bin/bash
2
+ # TRAE Work Skin — 一键还原
3
+ # 停掉注入守护进程,不带调试参数正常重启 App(注入的 CSS 随页面生命周期消失)
4
+ set -euo pipefail
5
+
6
+ SRC="${BASH_SOURCE[0]}"
7
+ while [ -L "$SRC" ]; do SRC="$(/usr/bin/readlink "$SRC")"; done
8
+ DIR="$(cd "$(dirname "$SRC")" && pwd -P)"
9
+ APP_BUNDLE="${APP_BUNDLE:-/Applications/TRAE SOLO CN.app}"
10
+ APP_BUNDLE_ID="${APP_BUNDLE_ID:-cn.trae.solo.app}"
11
+ TWSKIN_DATA_ROOT="${TWSKIN_DATA_DIR:-${HOME}/.trae-work-skin}"
12
+ RUN_DIR="${TWSKIN_STATE_DIR:-$TWSKIN_DATA_ROOT/run}"
13
+
14
+ if [ -f "$RUN_DIR/injector.pid" ]; then
15
+ pid="$(/bin/cat "$RUN_DIR/injector.pid")"
16
+ if [ -n "$pid" ] && /bin/kill -0 "$pid" 2>/dev/null; then
17
+ /bin/kill "$pid" 2>/dev/null || true
18
+ printf 'Injector %s stopped.\n' "$pid"
19
+ fi
20
+ /bin/rm -f "$RUN_DIR/injector.pid" "$RUN_DIR/port"
21
+ fi
22
+
23
+ EXE_NAME="$(/usr/bin/plutil -extract CFBundleExecutable raw -o - "$APP_BUNDLE/Contents/Info.plist")"
24
+ EXE_PATH="$APP_BUNDLE/Contents/MacOS/$EXE_NAME"
25
+ if /usr/bin/pgrep -f "$EXE_PATH" >/dev/null 2>&1; then
26
+ /usr/bin/osascript -e "tell application id \"$APP_BUNDLE_ID\" to quit" >/dev/null 2>&1 || true
27
+ deadline=$((SECONDS + 20))
28
+ while /usr/bin/pgrep -f "$EXE_PATH" >/dev/null 2>&1 && [ "$SECONDS" -lt "$deadline" ]; do
29
+ /bin/sleep 0.5
30
+ done
31
+ fi
32
+ /usr/bin/open -na "$APP_BUNDLE"
33
+ printf 'Restored official appearance; %s relaunched without debug flags.\n' "$APP_BUNDLE"