get multiple pet poses, gender/emotion data
This commit is contained in:
parent
295a7ec8ba
commit
7dc01a6feb
5 changed files with 574 additions and 7 deletions
|
@ -12,15 +12,47 @@ const typeDefs = gql`
|
||||||
SIZE_150
|
SIZE_150
|
||||||
}
|
}
|
||||||
|
|
||||||
|
"""
|
||||||
|
A pet's gender presentation: masculine or feminine.
|
||||||
|
|
||||||
|
Neopets calls these "male" and "female", and I think that's silly and not wise
|
||||||
|
to propagate further, especially in the context of a strictly visual app like
|
||||||
|
Dress to Impress! This description isn't altogether correct either, but idk
|
||||||
|
what's better :/
|
||||||
|
"""
|
||||||
|
enum GenderPresentation {
|
||||||
|
MASCULINE
|
||||||
|
FEMININE
|
||||||
|
}
|
||||||
|
|
||||||
|
"""
|
||||||
|
A pet's emotion: happy, sad, or sick.
|
||||||
|
|
||||||
|
Note that we don't ever show the angry emotion on Dress to Impress, because
|
||||||
|
we don't have the data: it's impossible for a pet's passive emotion on the
|
||||||
|
pet lookup to be angry!
|
||||||
|
"""
|
||||||
|
enum Emotion {
|
||||||
|
HAPPY
|
||||||
|
SAD
|
||||||
|
SICK
|
||||||
|
}
|
||||||
|
|
||||||
type Item {
|
type Item {
|
||||||
id: ID!
|
id: ID!
|
||||||
name: String!
|
name: String!
|
||||||
description: String!
|
description: String!
|
||||||
thumbnailUrl: String!
|
thumbnailUrl: String!
|
||||||
appearanceOn(speciesId: ID!, colorId: ID!): Appearance
|
appearanceOn(speciesId: ID!, colorId: ID!): ItemAppearance
|
||||||
}
|
}
|
||||||
|
|
||||||
type Appearance {
|
type PetAppearance {
|
||||||
|
genderPresentation: GenderPresentation
|
||||||
|
emotion: Emotion
|
||||||
|
layers: [AppearanceLayer!]!
|
||||||
|
}
|
||||||
|
|
||||||
|
type ItemAppearance {
|
||||||
layers: [AppearanceLayer!]!
|
layers: [AppearanceLayer!]!
|
||||||
restrictedZones: [Zone!]!
|
restrictedZones: [Zone!]!
|
||||||
}
|
}
|
||||||
|
@ -77,7 +109,8 @@ const typeDefs = gql`
|
||||||
offset: Int
|
offset: Int
|
||||||
limit: Int
|
limit: Int
|
||||||
): ItemSearchResult!
|
): ItemSearchResult!
|
||||||
petAppearance(speciesId: ID!, colorId: ID!): Appearance
|
petAppearance(speciesId: ID!, colorId: ID!): PetAppearance
|
||||||
|
petAppearances(speciesId: ID!, colorId: ID!): [PetAppearance!]!
|
||||||
|
|
||||||
petOnNeopetsDotCom(petName: String!): Outfit
|
petOnNeopetsDotCom(petName: String!): Outfit
|
||||||
}
|
}
|
||||||
|
@ -125,6 +158,40 @@ const resolvers = {
|
||||||
return { layers: swfAssets, restrictedZones };
|
return { layers: swfAssets, restrictedZones };
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
PetAppearance: {
|
||||||
|
genderPresentation: ({ petState }) => {
|
||||||
|
if (petState.female === 1) {
|
||||||
|
return "FEMININE";
|
||||||
|
} else if (petState.female === 0) {
|
||||||
|
return "MASCULINE";
|
||||||
|
} else if (petState.female === null) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
throw new Error(
|
||||||
|
`unrecognized gender value ${JSON.stringify(petState.female)}`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
emotion: ({ petState }) => {
|
||||||
|
if (petState.moodId === "1") {
|
||||||
|
return "HAPPY";
|
||||||
|
} else if (petState.moodId === "2") {
|
||||||
|
return "SAD";
|
||||||
|
} else if (petState.moodId === "4") {
|
||||||
|
return "SICK";
|
||||||
|
} else if (petState.moodId === null) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
throw new Error(
|
||||||
|
`unrecognized moodId ${JSON.stringify(petState.moodId)}`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
layers: async ({ petState }, _, { petSwfAssetLoader }) => {
|
||||||
|
const swfAssets = await petSwfAssetLoader.load(petState.id);
|
||||||
|
return swfAssets;
|
||||||
|
},
|
||||||
|
},
|
||||||
AppearanceLayer: {
|
AppearanceLayer: {
|
||||||
zone: async (layer, _, { zoneLoader }) => {
|
zone: async (layer, _, { zoneLoader }) => {
|
||||||
const zone = await zoneLoader.load(layer.zoneId);
|
const zone = await zoneLoader.load(layer.zoneId);
|
||||||
|
@ -220,9 +287,19 @@ const resolvers = {
|
||||||
colorId,
|
colorId,
|
||||||
});
|
});
|
||||||
const petStates = await petStateLoader.load(petType.id);
|
const petStates = await petStateLoader.load(petType.id);
|
||||||
const petState = petStates[0]; // TODO
|
return { petState: petStates[0] };
|
||||||
const swfAssets = await petSwfAssetLoader.load(petState.id);
|
},
|
||||||
return { layers: swfAssets, restrictedZones: [] };
|
petAppearances: async (
|
||||||
|
_,
|
||||||
|
{ speciesId, colorId },
|
||||||
|
{ petTypeLoader, petStateLoader, petSwfAssetLoader }
|
||||||
|
) => {
|
||||||
|
const petType = await petTypeLoader.load({
|
||||||
|
speciesId,
|
||||||
|
colorId,
|
||||||
|
});
|
||||||
|
const petStates = await petStateLoader.load(petType.id);
|
||||||
|
return petStates.map((petState) => ({ petState }));
|
||||||
},
|
},
|
||||||
petOnNeopetsDotCom: async (_, { petName }) => {
|
petOnNeopetsDotCom: async (_, { petName }) => {
|
||||||
const petData = await neopets.loadPetData(petName);
|
const petData = await neopets.loadPetData(petName);
|
||||||
|
|
|
@ -280,7 +280,7 @@ function normalizeRow(row) {
|
||||||
const normalizedRow = {};
|
const normalizedRow = {};
|
||||||
for (let [key, value] of Object.entries(row)) {
|
for (let [key, value] of Object.entries(row)) {
|
||||||
key = key.replace(/_([a-z])/gi, (m) => m[1].toUpperCase());
|
key = key.replace(/_([a-z])/gi, (m) => m[1].toUpperCase());
|
||||||
if (key === "id" || key.endsWith("Id")) {
|
if ((key === "id" || key.endsWith("Id")) && typeof value === "number") {
|
||||||
value = String(value);
|
value = String(value);
|
||||||
}
|
}
|
||||||
normalizedRow[key] = value;
|
normalizedRow[key] = value;
|
||||||
|
|
|
@ -61,4 +61,73 @@ describe("PetAppearance", () => {
|
||||||
]
|
]
|
||||||
`);
|
`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("loads multiple for species and color", async () => {
|
||||||
|
const res = await query({
|
||||||
|
query: gql`
|
||||||
|
query {
|
||||||
|
petAppearances(speciesId: "54", colorId: "75") {
|
||||||
|
genderPresentation
|
||||||
|
emotion
|
||||||
|
layers {
|
||||||
|
id
|
||||||
|
imageUrl(size: SIZE_600)
|
||||||
|
zone {
|
||||||
|
depth
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(res).toHaveNoErrors();
|
||||||
|
expect(res.data).toMatchSnapshot();
|
||||||
|
expect(getDbCalls()).toMatchInlineSnapshot(`
|
||||||
|
Array [
|
||||||
|
Array [
|
||||||
|
"SELECT * FROM pet_types WHERE (species_id = ? AND color_id = ?)",
|
||||||
|
Array [
|
||||||
|
"54",
|
||||||
|
"75",
|
||||||
|
],
|
||||||
|
],
|
||||||
|
Array [
|
||||||
|
"SELECT * FROM pet_states WHERE pet_type_id IN (?)
|
||||||
|
ORDER BY glitched ASC, (mood_id = 1) DESC",
|
||||||
|
Array [
|
||||||
|
"2",
|
||||||
|
],
|
||||||
|
],
|
||||||
|
Array [
|
||||||
|
"SELECT sa.*, rel.parent_id FROM swf_assets sa
|
||||||
|
INNER JOIN parents_swf_assets rel ON
|
||||||
|
rel.parent_type = \\"PetState\\" AND
|
||||||
|
rel.swf_asset_id = sa.id
|
||||||
|
WHERE rel.parent_id IN (?,?,?,?,?,?,?,?)",
|
||||||
|
Array [
|
||||||
|
"17723",
|
||||||
|
"17742",
|
||||||
|
"10014",
|
||||||
|
"11089",
|
||||||
|
"5991",
|
||||||
|
"436",
|
||||||
|
"2",
|
||||||
|
"4751",
|
||||||
|
],
|
||||||
|
],
|
||||||
|
Array [
|
||||||
|
"SELECT * FROM zones WHERE id IN (?,?,?,?,?,?)",
|
||||||
|
Array [
|
||||||
|
"15",
|
||||||
|
"5",
|
||||||
|
"37",
|
||||||
|
"30",
|
||||||
|
"33",
|
||||||
|
"34",
|
||||||
|
],
|
||||||
|
],
|
||||||
|
]
|
||||||
|
`);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -50,3 +50,408 @@ Object {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
exports[`PetAppearance loads multiple for species and color 1`] = `
|
||||||
|
Object {
|
||||||
|
"petAppearances": Array [
|
||||||
|
Object {
|
||||||
|
"emotion": "HAPPY",
|
||||||
|
"genderPresentation": "FEMININE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19784",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28892/600x600.png?v2-1313418652000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "178150",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/036/36887/600x600.png?v2-1354240708000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": "HAPPY",
|
||||||
|
"genderPresentation": "MASCULINE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19549",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28548/600x600.png?v2-1345719457000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "178150",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/036/36887/600x600.png?v2-1354240708000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": "SICK",
|
||||||
|
"genderPresentation": "FEMININE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14791",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21059/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14795",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21066/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": "SICK",
|
||||||
|
"genderPresentation": "MASCULINE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14791",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21059/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14794",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21064/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": "SAD",
|
||||||
|
"genderPresentation": "FEMININE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14790",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21057/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14793",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21061/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": "SAD",
|
||||||
|
"genderPresentation": "MASCULINE",
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14790",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21057/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "14792",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/021/21060/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": null,
|
||||||
|
"genderPresentation": null,
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19549",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28548/600x600.png?v2-1345719457000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19550",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28549/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "163528",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28549/600x600.png?v2-1326455337000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"emotion": null,
|
||||||
|
"genderPresentation": null,
|
||||||
|
"layers": Array [
|
||||||
|
Object {
|
||||||
|
"id": "5995",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7941/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 18,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "5996",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7942/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "6000",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/007/7946/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 40,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "16467",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/024/24008/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 34,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19550",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28549/600x600.png?v2-0",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "19784",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28892/600x600.png?v2-1313418652000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 37,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"id": "163528",
|
||||||
|
"imageUrl": "https://impress-asset-images.s3.amazonaws.com/biology/000/000/028/28549/600x600.png?v2-1326455337000",
|
||||||
|
"zone": Object {
|
||||||
|
"depth": 38,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
|
@ -5035,6 +5035,14 @@ Object {
|
||||||
"id": "9",
|
"id": "9",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
Object {
|
||||||
|
"color": Object {
|
||||||
|
"id": "105",
|
||||||
|
},
|
||||||
|
"species": Object {
|
||||||
|
"id": "9",
|
||||||
|
},
|
||||||
|
},
|
||||||
Object {
|
Object {
|
||||||
"color": Object {
|
"color": Object {
|
||||||
"id": "108",
|
"id": "108",
|
||||||
|
@ -13923,6 +13931,14 @@ Object {
|
||||||
"id": "27",
|
"id": "27",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
Object {
|
||||||
|
"color": Object {
|
||||||
|
"id": "17",
|
||||||
|
},
|
||||||
|
"species": Object {
|
||||||
|
"id": "27",
|
||||||
|
},
|
||||||
|
},
|
||||||
Object {
|
Object {
|
||||||
"color": Object {
|
"color": Object {
|
||||||
"id": "18",
|
"id": "18",
|
||||||
|
|
Loading…
Reference in a new issue