@fungi.computer/sprite-zdog 0.0.0-stage → 0.0.1
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/LICENSE +21 -0
- package/README.md +125 -2
- package/dist/agent-proof/moth.d.ts +50 -0
- package/dist/agent-proof/moth.js +52 -0
- package/dist/author.d.ts +217 -0
- package/dist/author.js +372 -0
- package/dist/avatar.d.ts +69 -0
- package/dist/avatar.js +40 -0
- package/dist/builtins/base-face.d.ts +290 -0
- package/dist/builtins/base-face.js +615 -0
- package/dist/builtins/base.d.ts +331 -0
- package/dist/builtins/base.js +579 -0
- package/dist/builtins/burger-input.d.ts +310 -0
- package/dist/builtins/burger-input.js +517 -0
- package/dist/builtins/burger.d.ts +305 -0
- package/dist/builtins/burger.js +4 -0
- package/dist/builtins/cat-input.d.ts +316 -0
- package/dist/builtins/cat-input.js +255 -0
- package/dist/builtins/cat.d.ts +311 -0
- package/dist/builtins/cat.js +4 -0
- package/dist/builtins/index.d.ts +4 -0
- package/dist/builtins/index.js +4 -0
- package/dist/builtins/mushroom-input.d.ts +314 -0
- package/dist/builtins/mushroom-input.js +94 -0
- package/dist/builtins/mushroom.d.ts +310 -0
- package/dist/builtins/mushroom.js +4 -0
- package/dist/burger.d.ts +9 -0
- package/dist/burger.js +15 -0
- package/dist/cat.d.ts +9 -0
- package/dist/cat.js +15 -0
- package/dist/catalog.d.ts +3 -0
- package/dist/catalog.js +63 -0
- package/dist/document.d.ts +444 -0
- package/dist/document.js +204 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +10 -0
- package/dist/internal.d.ts +41 -0
- package/dist/internal.js +21 -0
- package/dist/mushroom.character.json +1930 -0
- package/dist/mushroom.d.ts +4 -0
- package/dist/mushroom.js +9 -0
- package/dist/palette.d.ts +3 -0
- package/dist/palette.js +5 -0
- package/dist/portable.d.ts +4 -0
- package/dist/portable.js +61 -0
- package/dist/renderer.d.ts +4 -0
- package/dist/renderer.js +106 -0
- package/dist/zdog-runtime.d.ts +21 -0
- package/dist/zdog-runtime.js +622 -0
- package/package.json +112 -3
package/dist/burger.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type LocalCharacter } from "@fungi.computer/sprite";
|
|
2
|
+
/**
|
|
3
|
+
* The burger as one portable character plus its native renderer. Unlike the
|
|
4
|
+
* retained mushroom, this is computed from the builtin at import time rather
|
|
5
|
+
* than a generated JSON file: `toCharacter` is a pure scene-graph walk (no
|
|
6
|
+
* `zdog` import), so there is nothing to keep in sync by hand.
|
|
7
|
+
*/
|
|
8
|
+
declare const burgerCharacter: LocalCharacter;
|
|
9
|
+
export default burgerCharacter;
|
package/dist/burger.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { characterSchema } from "@fungi.computer/sprite";
|
|
2
|
+
import burger from "./builtins/burger.js";
|
|
3
|
+
import renderZdog from "./renderer.js";
|
|
4
|
+
import { toCharacter } from "./portable.js";
|
|
5
|
+
/**
|
|
6
|
+
* The burger as one portable character plus its native renderer. Unlike the
|
|
7
|
+
* retained mushroom, this is computed from the builtin at import time rather
|
|
8
|
+
* than a generated JSON file: `toCharacter` is a pure scene-graph walk (no
|
|
9
|
+
* `zdog` import), so there is nothing to keep in sync by hand.
|
|
10
|
+
*/
|
|
11
|
+
const burgerCharacter = {
|
|
12
|
+
document: characterSchema.parse(toCharacter(burger)),
|
|
13
|
+
render: renderZdog,
|
|
14
|
+
};
|
|
15
|
+
export default burgerCharacter;
|
package/dist/cat.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type LocalCharacter } from "@fungi.computer/sprite";
|
|
2
|
+
/**
|
|
3
|
+
* The cat as one portable character plus its native renderer. Unlike the
|
|
4
|
+
* retained mushroom, this is computed from the builtin at import time rather
|
|
5
|
+
* than a generated JSON file: `toCharacter` is a pure scene-graph walk (no
|
|
6
|
+
* `zdog` import), so there is nothing to keep in sync by hand.
|
|
7
|
+
*/
|
|
8
|
+
declare const catCharacter: LocalCharacter;
|
|
9
|
+
export default catCharacter;
|
package/dist/cat.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { characterSchema } from "@fungi.computer/sprite";
|
|
2
|
+
import cat from "./builtins/cat.js";
|
|
3
|
+
import renderZdog from "./renderer.js";
|
|
4
|
+
import { toCharacter } from "./portable.js";
|
|
5
|
+
/**
|
|
6
|
+
* The cat as one portable character plus its native renderer. Unlike the
|
|
7
|
+
* retained mushroom, this is computed from the builtin at import time rather
|
|
8
|
+
* than a generated JSON file: `toCharacter` is a pure scene-graph walk (no
|
|
9
|
+
* `zdog` import), so there is nothing to keep in sync by hand.
|
|
10
|
+
*/
|
|
11
|
+
const catCharacter = {
|
|
12
|
+
document: characterSchema.parse(toCharacter(cat)),
|
|
13
|
+
render: renderZdog,
|
|
14
|
+
};
|
|
15
|
+
export default catCharacter;
|
package/dist/catalog.js
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import {} from "@fungi.computer/sprite/avatar";
|
|
2
|
+
import { defineSprite } from "./author.js";
|
|
3
|
+
import { burgerInput } from "./builtins/burger-input.js";
|
|
4
|
+
import { catInput } from "./builtins/cat-input.js";
|
|
5
|
+
import { mushroomInput } from "./builtins/mushroom-input.js";
|
|
6
|
+
import { zdogDocumentSchema } from "./document.js";
|
|
7
|
+
import { toCharacter } from "./portable.js";
|
|
8
|
+
/**
|
|
9
|
+
* Controls that carry each character's identity colour, in priority order.
|
|
10
|
+
* The first slot is the one a rendered preview (and `deriveAgentAvatar`'s
|
|
11
|
+
* hue search) treats as "the" identity colour.
|
|
12
|
+
*/
|
|
13
|
+
const identitySlots = {
|
|
14
|
+
mushroom: ["cap", "capSpot"],
|
|
15
|
+
cat: ["body", "stripes"],
|
|
16
|
+
burger: ["topBun", "bottomBun"],
|
|
17
|
+
};
|
|
18
|
+
const inputs = { mushroom: mushroomInput, cat: catInput, burger: burgerInput };
|
|
19
|
+
/**
|
|
20
|
+
* This never imports `zdog`: `toCharacter` only walks the renderer-neutral
|
|
21
|
+
* scene graph authored by `defineSprite`, so a Hub (or anywhere else that
|
|
22
|
+
* only needs to validate an avatar) can import this catalog without pulling
|
|
23
|
+
* in a canvas renderer.
|
|
24
|
+
*/
|
|
25
|
+
function catalogEntryFor(character) {
|
|
26
|
+
const document = toCharacter(defineSprite(inputs[character]));
|
|
27
|
+
const scene = zdogDocumentSchema.parse(document.data);
|
|
28
|
+
return {
|
|
29
|
+
controls: document.controls,
|
|
30
|
+
expressions: Object.keys(scene.expressions),
|
|
31
|
+
identitySlots: identitySlots[character],
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const entries = new Map();
|
|
35
|
+
/**
|
|
36
|
+
* Building, walking and parsing a character is real work, and the Hub and
|
|
37
|
+
* State Workers import this catalog on their cold-start path only to build an
|
|
38
|
+
* avatar schema. The catalog therefore imports each character's authoring
|
|
39
|
+
* input rather than its eager `builtins/*` definition, and each entry is
|
|
40
|
+
* defined, derived on first read and memoised, so module evaluation stays
|
|
41
|
+
* cheap and only a request that validates an avatar pays for the character
|
|
42
|
+
* it names.
|
|
43
|
+
*/
|
|
44
|
+
function entry(character) {
|
|
45
|
+
let found = entries.get(character);
|
|
46
|
+
if (!found) {
|
|
47
|
+
found = catalogEntryFor(character);
|
|
48
|
+
entries.set(character, found);
|
|
49
|
+
}
|
|
50
|
+
return found;
|
|
51
|
+
}
|
|
52
|
+
/** Pure per-character facts for every v1 avatar character. No `zdog` import. */
|
|
53
|
+
export const avatarCatalog = Object.freeze({
|
|
54
|
+
get mushroom() {
|
|
55
|
+
return entry("mushroom");
|
|
56
|
+
},
|
|
57
|
+
get cat() {
|
|
58
|
+
return entry("cat");
|
|
59
|
+
},
|
|
60
|
+
get burger() {
|
|
61
|
+
return entry("burger");
|
|
62
|
+
},
|
|
63
|
+
});
|
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
import * as z from "zod";
|
|
2
|
+
export declare const zdogNodeSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3
|
+
kind: z.ZodLiteral<"group">;
|
|
4
|
+
options: z.ZodObject<{
|
|
5
|
+
name: z.ZodOptional<z.ZodString>;
|
|
6
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
7
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
8
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
9
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
10
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
11
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
12
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
13
|
+
}, z.core.$strict>>;
|
|
14
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
15
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
16
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
17
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
18
|
+
}, z.core.$strict>>;
|
|
19
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
20
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
21
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
22
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
}, z.core.$strict>>;
|
|
24
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
25
|
+
color: z.ZodOptional<z.ZodString>;
|
|
26
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
27
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
28
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
29
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
30
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
}, z.core.$strict>;
|
|
32
|
+
id: z.ZodString;
|
|
33
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
34
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
35
|
+
kind: z.ZodLiteral<"shape">;
|
|
36
|
+
options: z.ZodObject<{
|
|
37
|
+
name: z.ZodOptional<z.ZodString>;
|
|
38
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
40
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
41
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
42
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
43
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
44
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
45
|
+
}, z.core.$strict>>;
|
|
46
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
47
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
48
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
49
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
50
|
+
}, z.core.$strict>>;
|
|
51
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
52
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
53
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
55
|
+
}, z.core.$strict>>;
|
|
56
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
57
|
+
color: z.ZodOptional<z.ZodString>;
|
|
58
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
59
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
60
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
61
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
62
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
63
|
+
path: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
64
|
+
x: z.ZodNumber;
|
|
65
|
+
y: z.ZodNumber;
|
|
66
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
67
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
68
|
+
bezier: z.ZodTuple<[z.ZodObject<{
|
|
69
|
+
x: z.ZodNumber;
|
|
70
|
+
y: z.ZodNumber;
|
|
71
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
72
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
73
|
+
x: z.ZodNumber;
|
|
74
|
+
y: z.ZodNumber;
|
|
75
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
76
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
77
|
+
x: z.ZodNumber;
|
|
78
|
+
y: z.ZodNumber;
|
|
79
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
80
|
+
}, z.core.$strict>], null>;
|
|
81
|
+
}, z.core.$strict>]>>>;
|
|
82
|
+
closed: z.ZodOptional<z.ZodBoolean>;
|
|
83
|
+
}, z.core.$strict>;
|
|
84
|
+
id: z.ZodString;
|
|
85
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
86
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
87
|
+
kind: z.ZodLiteral<"ellipse">;
|
|
88
|
+
options: z.ZodObject<{
|
|
89
|
+
name: z.ZodOptional<z.ZodString>;
|
|
90
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
91
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
92
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
94
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
95
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
96
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
97
|
+
}, z.core.$strict>>;
|
|
98
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
99
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
100
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
101
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
102
|
+
}, z.core.$strict>>;
|
|
103
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
104
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
105
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
106
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
107
|
+
}, z.core.$strict>>;
|
|
108
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
109
|
+
color: z.ZodOptional<z.ZodString>;
|
|
110
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
111
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
112
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
113
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
114
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
115
|
+
width: z.ZodNumber;
|
|
116
|
+
height: z.ZodNumber;
|
|
117
|
+
}, z.core.$strict>;
|
|
118
|
+
id: z.ZodString;
|
|
119
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
120
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
121
|
+
kind: z.ZodLiteral<"hemisphere">;
|
|
122
|
+
options: z.ZodObject<{
|
|
123
|
+
name: z.ZodOptional<z.ZodString>;
|
|
124
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
125
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
126
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
127
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
128
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
129
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
130
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
131
|
+
}, z.core.$strict>>;
|
|
132
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
133
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
134
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
135
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
136
|
+
}, z.core.$strict>>;
|
|
137
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
138
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
139
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
140
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
141
|
+
}, z.core.$strict>>;
|
|
142
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
143
|
+
color: z.ZodOptional<z.ZodString>;
|
|
144
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
145
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
146
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
147
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
148
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
149
|
+
diameter: z.ZodNumber;
|
|
150
|
+
}, z.core.$strict>;
|
|
151
|
+
id: z.ZodString;
|
|
152
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
153
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
154
|
+
kind: z.ZodLiteral<"cylinder">;
|
|
155
|
+
options: z.ZodObject<{
|
|
156
|
+
name: z.ZodOptional<z.ZodString>;
|
|
157
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
158
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
159
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
160
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
161
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
162
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
163
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
164
|
+
}, z.core.$strict>>;
|
|
165
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
166
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
167
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
168
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
169
|
+
}, z.core.$strict>>;
|
|
170
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
171
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
172
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
173
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
174
|
+
}, z.core.$strict>>;
|
|
175
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
176
|
+
color: z.ZodOptional<z.ZodString>;
|
|
177
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
178
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
179
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
180
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
181
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
182
|
+
diameter: z.ZodNumber;
|
|
183
|
+
length: z.ZodNumber;
|
|
184
|
+
}, z.core.$strict>;
|
|
185
|
+
id: z.ZodString;
|
|
186
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
187
|
+
}, z.core.$strict>], "kind">;
|
|
188
|
+
/** Zdog's portable native data, not a new cross-renderer animation language. */
|
|
189
|
+
export declare const zdogDocumentSchema: z.ZodObject<{
|
|
190
|
+
root: z.ZodString;
|
|
191
|
+
nodes: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
192
|
+
kind: z.ZodLiteral<"group">;
|
|
193
|
+
options: z.ZodObject<{
|
|
194
|
+
name: z.ZodOptional<z.ZodString>;
|
|
195
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
196
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
197
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
198
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
199
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
200
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
201
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
202
|
+
}, z.core.$strict>>;
|
|
203
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
204
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
205
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
206
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
207
|
+
}, z.core.$strict>>;
|
|
208
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
209
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
210
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
211
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
212
|
+
}, z.core.$strict>>;
|
|
213
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
214
|
+
color: z.ZodOptional<z.ZodString>;
|
|
215
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
216
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
217
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
218
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
219
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
220
|
+
}, z.core.$strict>;
|
|
221
|
+
id: z.ZodString;
|
|
222
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
223
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
224
|
+
kind: z.ZodLiteral<"shape">;
|
|
225
|
+
options: z.ZodObject<{
|
|
226
|
+
name: z.ZodOptional<z.ZodString>;
|
|
227
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
228
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
229
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
230
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
231
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
232
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
233
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
234
|
+
}, z.core.$strict>>;
|
|
235
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
236
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
237
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
238
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
239
|
+
}, z.core.$strict>>;
|
|
240
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
241
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
242
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
243
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
244
|
+
}, z.core.$strict>>;
|
|
245
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
246
|
+
color: z.ZodOptional<z.ZodString>;
|
|
247
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
248
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
249
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
250
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
251
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
252
|
+
path: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
253
|
+
x: z.ZodNumber;
|
|
254
|
+
y: z.ZodNumber;
|
|
255
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
256
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
257
|
+
bezier: z.ZodTuple<[z.ZodObject<{
|
|
258
|
+
x: z.ZodNumber;
|
|
259
|
+
y: z.ZodNumber;
|
|
260
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
261
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
262
|
+
x: z.ZodNumber;
|
|
263
|
+
y: z.ZodNumber;
|
|
264
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
265
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
266
|
+
x: z.ZodNumber;
|
|
267
|
+
y: z.ZodNumber;
|
|
268
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
269
|
+
}, z.core.$strict>], null>;
|
|
270
|
+
}, z.core.$strict>]>>>;
|
|
271
|
+
closed: z.ZodOptional<z.ZodBoolean>;
|
|
272
|
+
}, z.core.$strict>;
|
|
273
|
+
id: z.ZodString;
|
|
274
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
275
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
276
|
+
kind: z.ZodLiteral<"ellipse">;
|
|
277
|
+
options: z.ZodObject<{
|
|
278
|
+
name: z.ZodOptional<z.ZodString>;
|
|
279
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
280
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
281
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
282
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
283
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
284
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
285
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
286
|
+
}, z.core.$strict>>;
|
|
287
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
288
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
289
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
290
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
291
|
+
}, z.core.$strict>>;
|
|
292
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
293
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
294
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
295
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
296
|
+
}, z.core.$strict>>;
|
|
297
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
298
|
+
color: z.ZodOptional<z.ZodString>;
|
|
299
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
300
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
301
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
302
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
303
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
304
|
+
width: z.ZodNumber;
|
|
305
|
+
height: z.ZodNumber;
|
|
306
|
+
}, z.core.$strict>;
|
|
307
|
+
id: z.ZodString;
|
|
308
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
309
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
310
|
+
kind: z.ZodLiteral<"hemisphere">;
|
|
311
|
+
options: z.ZodObject<{
|
|
312
|
+
name: z.ZodOptional<z.ZodString>;
|
|
313
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
314
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
315
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
316
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
317
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
318
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
319
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
320
|
+
}, z.core.$strict>>;
|
|
321
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
322
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
323
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
324
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
325
|
+
}, z.core.$strict>>;
|
|
326
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
327
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
328
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
329
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
330
|
+
}, z.core.$strict>>;
|
|
331
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
332
|
+
color: z.ZodOptional<z.ZodString>;
|
|
333
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
334
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
335
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
336
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
337
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
338
|
+
diameter: z.ZodNumber;
|
|
339
|
+
}, z.core.$strict>;
|
|
340
|
+
id: z.ZodString;
|
|
341
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
342
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
343
|
+
kind: z.ZodLiteral<"cylinder">;
|
|
344
|
+
options: z.ZodObject<{
|
|
345
|
+
name: z.ZodOptional<z.ZodString>;
|
|
346
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
347
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
348
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
349
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
350
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
351
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
352
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
353
|
+
}, z.core.$strict>>;
|
|
354
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
355
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
356
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
357
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
358
|
+
}, z.core.$strict>>;
|
|
359
|
+
scale: z.ZodOptional<z.ZodObject<{
|
|
360
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
361
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
362
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
363
|
+
}, z.core.$strict>>;
|
|
364
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
365
|
+
color: z.ZodOptional<z.ZodString>;
|
|
366
|
+
stroke: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<false>]>>;
|
|
367
|
+
fill: z.ZodOptional<z.ZodBoolean>;
|
|
368
|
+
backface: z.ZodOptional<z.ZodString>;
|
|
369
|
+
frontFace: z.ZodOptional<z.ZodString>;
|
|
370
|
+
updateSort: z.ZodOptional<z.ZodBoolean>;
|
|
371
|
+
diameter: z.ZodNumber;
|
|
372
|
+
length: z.ZodNumber;
|
|
373
|
+
}, z.core.$strict>;
|
|
374
|
+
id: z.ZodString;
|
|
375
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
376
|
+
}, z.core.$strict>], "kind">>;
|
|
377
|
+
palette: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
378
|
+
variants: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
379
|
+
expressions: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
380
|
+
variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
381
|
+
variantChoices: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
382
|
+
blush: z.ZodOptional<z.ZodNumber>;
|
|
383
|
+
motion: z.ZodOptional<z.ZodObject<{
|
|
384
|
+
target: z.ZodString;
|
|
385
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
386
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
387
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
388
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
389
|
+
}, z.core.$strict>>;
|
|
390
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
391
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
392
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
393
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
394
|
+
}, z.core.$strict>>;
|
|
395
|
+
durationMs: z.ZodOptional<z.ZodNumber>;
|
|
396
|
+
repeat: z.ZodOptional<z.ZodEnum<{
|
|
397
|
+
none: "none";
|
|
398
|
+
loop: "loop";
|
|
399
|
+
yoyo: "yoyo";
|
|
400
|
+
}>>;
|
|
401
|
+
}, z.core.$strict>>;
|
|
402
|
+
}, z.core.$strict>>;
|
|
403
|
+
activities: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
404
|
+
motion: z.ZodOptional<z.ZodObject<{
|
|
405
|
+
target: z.ZodString;
|
|
406
|
+
translate: z.ZodOptional<z.ZodObject<{
|
|
407
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
408
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
409
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
410
|
+
}, z.core.$strict>>;
|
|
411
|
+
rotate: z.ZodOptional<z.ZodObject<{
|
|
412
|
+
x: z.ZodOptional<z.ZodNumber>;
|
|
413
|
+
y: z.ZodOptional<z.ZodNumber>;
|
|
414
|
+
z: z.ZodOptional<z.ZodNumber>;
|
|
415
|
+
}, z.core.$strict>>;
|
|
416
|
+
durationMs: z.ZodOptional<z.ZodNumber>;
|
|
417
|
+
repeat: z.ZodOptional<z.ZodEnum<{
|
|
418
|
+
none: "none";
|
|
419
|
+
loop: "loop";
|
|
420
|
+
yoyo: "yoyo";
|
|
421
|
+
}>>;
|
|
422
|
+
}, z.core.$strict>>;
|
|
423
|
+
mouseInfluence: z.ZodOptional<z.ZodNumber>;
|
|
424
|
+
geometry: z.ZodOptional<z.ZodObject<{
|
|
425
|
+
expression: z.ZodOptional<z.ZodString>;
|
|
426
|
+
eyes: z.ZodOptional<z.ZodString>;
|
|
427
|
+
mouth: z.ZodOptional<z.ZodString>;
|
|
428
|
+
blush: z.ZodOptional<z.ZodNumber>;
|
|
429
|
+
}, z.core.$strict>>;
|
|
430
|
+
mouthCycle: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
431
|
+
durationMs: z.ZodNumber;
|
|
432
|
+
mouth: z.ZodEnum<{
|
|
433
|
+
base: "base";
|
|
434
|
+
open: "open";
|
|
435
|
+
}>;
|
|
436
|
+
}, z.core.$strict>>>;
|
|
437
|
+
}, z.core.$strict>>;
|
|
438
|
+
defaultPresentation: z.ZodObject<{
|
|
439
|
+
activity: z.ZodString;
|
|
440
|
+
expression: z.ZodString;
|
|
441
|
+
}, z.core.$strict>;
|
|
442
|
+
}, z.core.$strict>;
|
|
443
|
+
/** Validated portable native scene. */
|
|
444
|
+
export type ZdogDocument = z.infer<typeof zdogDocumentSchema>;
|