dsh-kinich-theme 1.0.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 +39 -0
- package/LICENSE +31 -0
- package/README.md +111 -0
- package/README.zh-CN.md +102 -0
- package/RELEASE_NOTES.md +35 -0
- package/THIRD_PARTY_ASSETS.md +47 -0
- package/cordis.patch.yml +5 -0
- package/lib/client.js +1196 -0
- package/lib/index.js +98 -0
- package/package.json +96 -0
package/lib/index.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
// src/shared/settings.js
|
|
2
|
+
var KINICH_SETTINGS_NAMESPACE = "dsh-kinich-theme";
|
|
3
|
+
var VISUAL_STYLES = Object.freeze(["jungle", "phlogiston", "sunlit"]);
|
|
4
|
+
var VISUAL_INTENSITIES = Object.freeze(["minimal", "balanced", "immersive"]);
|
|
5
|
+
var CHARACTER_POSITIONS = Object.freeze(["corner", "edge"]);
|
|
6
|
+
var DECORATION_INTENSITIES = Object.freeze(["soft", "standard"]);
|
|
7
|
+
var CHARACTER_OPACITIES = Object.freeze(["low", "medium", "high"]);
|
|
8
|
+
var AJAW_DEFAULT_POSITION = Object.freeze({ x: 96.5, y: 16 });
|
|
9
|
+
var KINICH_SETTING_DEFINITIONS = Object.freeze({
|
|
10
|
+
visualStyle: Object.freeze({ kind: "choice", default: "jungle", options: VISUAL_STYLES }),
|
|
11
|
+
visualIntensity: Object.freeze({ kind: "choice", default: "balanced", options: VISUAL_INTENSITIES }),
|
|
12
|
+
ambientMotion: Object.freeze({ kind: "boolean", default: true }),
|
|
13
|
+
animateAjaw: Object.freeze({ kind: "boolean", default: true }),
|
|
14
|
+
ajawFlipped: Object.freeze({ kind: "boolean", default: false }),
|
|
15
|
+
ajawPosition: Object.freeze({ kind: "position", default: AJAW_DEFAULT_POSITION, min: 0, max: 100 }),
|
|
16
|
+
ajawRotation: Object.freeze({ kind: "number", default: 0, min: 0, max: 360, step: 1 }),
|
|
17
|
+
characterOpacity: Object.freeze({ kind: "choice", default: "medium", options: CHARACTER_OPACITIES }),
|
|
18
|
+
characterPosition: Object.freeze({ kind: "choice", default: "corner", options: CHARACTER_POSITIONS }),
|
|
19
|
+
ornamentIntensity: Object.freeze({ kind: "choice", default: "standard", options: DECORATION_INTENSITIES }),
|
|
20
|
+
showCharacter: Object.freeze({ kind: "boolean", default: false }),
|
|
21
|
+
showOrnament: Object.freeze({ kind: "boolean", default: true }),
|
|
22
|
+
showTexture: Object.freeze({ kind: "boolean", default: true }),
|
|
23
|
+
textureIntensity: Object.freeze({ kind: "choice", default: "standard", options: DECORATION_INTENSITIES })
|
|
24
|
+
});
|
|
25
|
+
var KINICH_SETTING_KEYS = Object.freeze(Object.keys(KINICH_SETTING_DEFINITIONS));
|
|
26
|
+
function cloneDefaultValue(value) {
|
|
27
|
+
if (typeof value === "object" && value !== null) return Object.freeze({ ...value });
|
|
28
|
+
return value;
|
|
29
|
+
}
|
|
30
|
+
var DEFAULT_KINICH_SETTINGS = Object.freeze(Object.fromEntries(
|
|
31
|
+
Object.entries(KINICH_SETTING_DEFINITIONS).map(([key, definition]) => [key, cloneDefaultValue(definition.default)])
|
|
32
|
+
));
|
|
33
|
+
var KINICH_VISUAL_PRESETS = Object.freeze({
|
|
34
|
+
jungle: Object.freeze({
|
|
35
|
+
visualStyle: "jungle",
|
|
36
|
+
showCharacter: false,
|
|
37
|
+
showOrnament: true,
|
|
38
|
+
ornamentIntensity: "standard",
|
|
39
|
+
showTexture: true,
|
|
40
|
+
textureIntensity: "standard",
|
|
41
|
+
animateAjaw: true
|
|
42
|
+
}),
|
|
43
|
+
phlogiston: Object.freeze({
|
|
44
|
+
visualStyle: "phlogiston",
|
|
45
|
+
showCharacter: true,
|
|
46
|
+
characterPosition: "edge",
|
|
47
|
+
characterOpacity: "high",
|
|
48
|
+
showOrnament: true,
|
|
49
|
+
ornamentIntensity: "standard",
|
|
50
|
+
showTexture: true,
|
|
51
|
+
textureIntensity: "standard",
|
|
52
|
+
animateAjaw: true
|
|
53
|
+
}),
|
|
54
|
+
sunlit: Object.freeze({
|
|
55
|
+
visualStyle: "sunlit",
|
|
56
|
+
showCharacter: false,
|
|
57
|
+
showOrnament: true,
|
|
58
|
+
ornamentIntensity: "soft",
|
|
59
|
+
showTexture: true,
|
|
60
|
+
textureIntensity: "soft",
|
|
61
|
+
animateAjaw: true
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
// src/host/settings-schema.js
|
|
66
|
+
import z from "@deepseek-ai/schemastery";
|
|
67
|
+
function schemaFor(definition) {
|
|
68
|
+
switch (definition.kind) {
|
|
69
|
+
case "boolean":
|
|
70
|
+
return z.boolean().default(definition.default);
|
|
71
|
+
case "number":
|
|
72
|
+
return z.number().min(definition.min).max(definition.max).step(definition.step ?? 1).default(definition.default);
|
|
73
|
+
case "choice":
|
|
74
|
+
return z.union([...definition.options]).default(definition.default);
|
|
75
|
+
case "position":
|
|
76
|
+
return z.object({
|
|
77
|
+
x: z.number().min(definition.min).max(definition.max).default(definition.default.x),
|
|
78
|
+
y: z.number().min(definition.min).max(definition.max).default(definition.default.y)
|
|
79
|
+
}).default(definition.default);
|
|
80
|
+
default:
|
|
81
|
+
throw new TypeError(`Unsupported Kinich setting kind: ${definition.kind}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
var KinichThemeSettingsSchema = z.object(Object.fromEntries(
|
|
85
|
+
Object.entries(KINICH_SETTING_DEFINITIONS).map(([key, definition]) => [key, schemaFor(definition)])
|
|
86
|
+
));
|
|
87
|
+
|
|
88
|
+
// src/host/index.js
|
|
89
|
+
var name = "dsh-kinich-theme";
|
|
90
|
+
function apply(ctx) {
|
|
91
|
+
ctx.inject(["settings"], (settingsCtx) => {
|
|
92
|
+
settingsCtx.settings.register(KINICH_SETTINGS_NAMESPACE, KinichThemeSettingsSchema, { applies: "live" });
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
export {
|
|
96
|
+
apply,
|
|
97
|
+
name
|
|
98
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "dsh-kinich-theme",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Interactive Kinich & Ajaw theme for DeepSeek Harness Web with live visual modes, session feedback, themed sidebar, visual intensity, and dynamic ambient effects.",
|
|
5
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "lib/index.js",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": "./lib/index.js",
|
|
10
|
+
"./client": "./lib/client.js",
|
|
11
|
+
"./package.json": "./package.json"
|
|
12
|
+
},
|
|
13
|
+
"files": [
|
|
14
|
+
"lib",
|
|
15
|
+
"cordis.patch.yml",
|
|
16
|
+
"README.md",
|
|
17
|
+
"README.zh-CN.md",
|
|
18
|
+
"CHANGELOG.md",
|
|
19
|
+
"LICENSE",
|
|
20
|
+
"THIRD_PARTY_ASSETS.md",
|
|
21
|
+
"RELEASE_NOTES.md"
|
|
22
|
+
],
|
|
23
|
+
"dsh": {
|
|
24
|
+
"client": {
|
|
25
|
+
"inject": [
|
|
26
|
+
"@deepseek-ai/dsh-client-connection",
|
|
27
|
+
"@deepseek-ai/dsh-client-locale",
|
|
28
|
+
"@deepseek-ai/dsh-client-runtime",
|
|
29
|
+
"@deepseek-ai/dsh-client-ui-conversation",
|
|
30
|
+
"@deepseek-ai/dsh-client-ui-layout",
|
|
31
|
+
"@deepseek-ai/dsh-client-ui-settings",
|
|
32
|
+
"@deepseek-ai/dsh-client-ui-sidebar",
|
|
33
|
+
"@deepseek-ai/dsh-client-ui-theme",
|
|
34
|
+
"@deepseek-ai/dsh-api-remotes"
|
|
35
|
+
],
|
|
36
|
+
"platform": "web",
|
|
37
|
+
"immediately": true
|
|
38
|
+
},
|
|
39
|
+
"bundle": {
|
|
40
|
+
"patch": "./cordis.patch.yml"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"engines": {
|
|
44
|
+
"node": "^22.19.0 || >=24.0.0"
|
|
45
|
+
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"@deepseek-ai/dsh-settings": "0.1.5-rc.1",
|
|
48
|
+
"react": "^18.2.0"
|
|
49
|
+
},
|
|
50
|
+
"peerDependenciesMeta": {
|
|
51
|
+
"@deepseek-ai/dsh-settings": {
|
|
52
|
+
"optional": true
|
|
53
|
+
},
|
|
54
|
+
"react": {
|
|
55
|
+
"optional": true
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"scripts": {
|
|
59
|
+
"build": "node scripts/build.mjs",
|
|
60
|
+
"check": "node scripts/check.mjs",
|
|
61
|
+
"verify": "npm run build && npm run check",
|
|
62
|
+
"setup": "npm install --omit=dev"
|
|
63
|
+
},
|
|
64
|
+
"keywords": [
|
|
65
|
+
"deepseek",
|
|
66
|
+
"deepseek-harness",
|
|
67
|
+
"dsh",
|
|
68
|
+
"dsh-plugin",
|
|
69
|
+
"theme",
|
|
70
|
+
"kinich",
|
|
71
|
+
"ajaw",
|
|
72
|
+
"natlan",
|
|
73
|
+
"web"
|
|
74
|
+
],
|
|
75
|
+
"dependencies": {
|
|
76
|
+
"@deepseek-ai/schemastery": "3.18.1"
|
|
77
|
+
},
|
|
78
|
+
"devDependencies": {
|
|
79
|
+
"esbuild": "0.28.2"
|
|
80
|
+
},
|
|
81
|
+
"author": "Xian-JL (LiqWhisper)",
|
|
82
|
+
"repository": {
|
|
83
|
+
"type": "git",
|
|
84
|
+
"url": "git+https://github.com/Xian-JL/dsh-Kinich-theme.git"
|
|
85
|
+
},
|
|
86
|
+
"bugs": {
|
|
87
|
+
"url": "https://github.com/Xian-JL/dsh-Kinich-theme/issues"
|
|
88
|
+
},
|
|
89
|
+
"homepage": "https://github.com/Xian-JL/dsh-Kinich-theme#readme",
|
|
90
|
+
"publishConfig": {
|
|
91
|
+
"access": "public"
|
|
92
|
+
},
|
|
93
|
+
"allowScripts": {
|
|
94
|
+
"esbuild@0.28.2": true
|
|
95
|
+
}
|
|
96
|
+
}
|