@jahia/create-module 0.0.10 → 0.5.4
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 +1 -1
- package/README.md +3 -2
- package/index.js +82 -130
- package/package.json +26 -37
- package/template/README.md +19 -11
- package/template/{dotenv → dot/env} +1 -1
- package/template/dot/github/workflows/build.yml +18 -0
- package/template/dot/gitignore +15 -0
- package/template/dot/idea/prettier.xml +7 -0
- package/template/dot/node-version +1 -0
- package/template/dot/prettierignore +1 -0
- package/template/dot/vscode/extensions.json +3 -0
- package/template/dot/vscode/settings.json +8 -0
- package/template/dot/yarnrc.yml +1 -0
- package/template/eslint.config.js +25 -0
- package/template/package.json +45 -48
- package/template/prettier.config.js +8 -0
- package/template/settings/README.md +3 -1
- package/template/settings/content-types-icons/$MODULE_HelloCard.png +0 -0
- package/template/settings/content-types-icons/$MODULE_HelloWorld.png +0 -0
- package/template/settings/content-types-icons/$MODULE_LanguageSwitcher.png +0 -0
- package/template/settings/content-types-icons/$MODULE_component.png +0 -0
- package/template/settings/definitions.cnd +2 -7
- package/template/settings/import.xml +104 -8
- package/template/settings/locales/en.json +11 -4
- package/template/settings/locales/fr.json +11 -4
- package/template/settings/resources/$MODULE.properties +15 -0
- package/template/settings/resources/$MODULE_fr.properties +15 -0
- package/template/src/components/HelloCard/component.module.css +14 -0
- package/template/src/components/HelloCard/default.server.tsx +18 -0
- package/template/src/components/HelloCard/definition.cnd +3 -0
- package/template/src/components/HelloWorld/Celebrate.client.tsx +30 -0
- package/template/src/components/HelloWorld/component.module.css +105 -0
- package/template/src/components/HelloWorld/default.server.tsx +85 -0
- package/template/src/components/HelloWorld/definition.cnd +3 -0
- package/template/src/components/LanguageSwitcher/component.module.css +5 -0
- package/template/src/components/LanguageSwitcher/default.server.tsx +45 -0
- package/template/src/components/LanguageSwitcher/definition.cnd +1 -0
- package/template/src/pages/Layout.tsx +24 -0
- package/template/src/pages/basic.server.tsx +16 -0
- package/template/src/pages/global.css +11 -0
- package/template/src/types.d.ts +1 -0
- package/template/static/arrows/bottom.svg +1 -0
- package/template/static/arrows/left.svg +1 -0
- package/template/static/illustrations/code.svg +1 -0
- package/template/static/illustrations/coffee.svg +1 -0
- package/template/static/illustrations/interface.svg +1 -0
- package/template/static/illustrations/read.svg +1 -0
- package/template/static/illustrations/write.svg +1 -0
- package/template/tsconfig.json +19 -0
- package/template/vite.config.mjs +29 -0
- package/.eslintrc.cjs +0 -28
- package/.github/ISSUE_TEMPLATE/bug.yml +0 -45
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/epic.md +0 -26
- package/.github/ISSUE_TEMPLATE/other.md +0 -8
- package/.github/ISSUE_TEMPLATE/release.md +0 -74
- package/.github/ISSUE_TEMPLATE/spike.md +0 -19
- package/.github/ISSUE_TEMPLATE/story.md +0 -27
- package/.github/ISSUE_TEMPLATE/support.yml +0 -40
- package/.github/ISSUE_TEMPLATE/tech-day.md +0 -93
- package/.github/dependabot.yml +0 -15
- package/.github/release.yml +0 -24
- package/.github/workflows/delivery-issue-chores.yml +0 -12
- package/.github/workflows/on-code-change.yml +0 -50
- package/.github/workflows/publish-release.yml +0 -22
- package/.yarn/releases/yarn-4.6.0.cjs +0 -934
- package/.yarnrc.yml +0 -3
- package/babel.config.cjs +0 -6
- package/template/.babelrc +0 -9
- package/template/.yarn/releases/yarn-4.3.1.cjs +0 -894
- package/template/.yarnrc.yml +0 -3
- package/template/doteslintrc.cjs +0 -30
- package/template/dotgitignore +0 -21
- package/template/dotnpmignore +0 -10
- package/template/settings/content-types-icons/MODULE_NAMESPACE_simpleContent.png +0 -0
- package/template/settings/locales/de.json +0 -5
- package/template/settings/resources/MODULE_NAME.properties +0 -3
- package/template/settings/resources/MODULE_NAME_fr.properties +0 -3
- package/template/src/client/index.jsx +0 -5
- package/template/src/server/components/index.js +0 -1
- package/template/src/server/index.js +0 -6
- package/template/src/server/templates/index.js +0 -1
- package/template/src/server/templates/page/PageHome.jsx +0 -32
- package/template/src/server/templates/page/index.js +0 -1
- package/template/src/server/views/index.js +0 -1
- package/template/src/server/views/simpleContent/SimpleContentDefault.jsx +0 -19
- package/template/src/server/views/simpleContent/index.js +0 -1
- package/template/static/css/styles.css +0 -8
- package/template/webpack.config.js +0 -225
- package/tests/create-templatesSet-project.test.js +0 -124
|
@@ -1,9 +1,105 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<content
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
<content
|
|
3
|
+
xmlns:j="http://www.jahia.org/jahia/1.0"
|
|
4
|
+
xmlns:jcr="http://www.jcp.org/jcr/1.0"
|
|
5
|
+
>
|
|
6
|
+
<modules jcr:primaryType="jnt:modules">
|
|
7
|
+
<$MODULE>
|
|
8
|
+
<home
|
|
9
|
+
j:isHomePage="true"
|
|
10
|
+
j:templateName="basic"
|
|
11
|
+
jcr:primaryType="jnt:page"
|
|
12
|
+
>
|
|
13
|
+
<j:translation_en
|
|
14
|
+
jcr:language="en"
|
|
15
|
+
jcr:mixinTypes="mix:title"
|
|
16
|
+
jcr:primaryType="jnt:translation"
|
|
17
|
+
jcr:title="Home"
|
|
18
|
+
/>
|
|
19
|
+
<j:translation_fr
|
|
20
|
+
jcr:language="fr"
|
|
21
|
+
jcr:mixinTypes="mix:title"
|
|
22
|
+
jcr:primaryType="jnt:translation"
|
|
23
|
+
jcr:title="Accueil"
|
|
24
|
+
/>
|
|
25
|
+
<main
|
|
26
|
+
jcr:mixinTypes="jmix:isAreaList"
|
|
27
|
+
jcr:primaryType="jnt:contentList"
|
|
28
|
+
>
|
|
29
|
+
<hello-world jcr:primaryType="$MODULE:HelloWorld">
|
|
30
|
+
<j:translation_en
|
|
31
|
+
jcr:language="en"
|
|
32
|
+
jcr:primaryType="jnt:translation"
|
|
33
|
+
name="World"
|
|
34
|
+
/>
|
|
35
|
+
<j:translation_fr
|
|
36
|
+
jcr:language="fr"
|
|
37
|
+
jcr:primaryType="jnt:translation"
|
|
38
|
+
name="le monde"
|
|
39
|
+
/>
|
|
40
|
+
<read-the-documentation
|
|
41
|
+
jcr:primaryType="$MODULE:HelloCard"
|
|
42
|
+
illustration="read"
|
|
43
|
+
>
|
|
44
|
+
<j:translation_en
|
|
45
|
+
jcr:language="en"
|
|
46
|
+
jcr:primaryType="jnt:translation"
|
|
47
|
+
title="Read the documentation"
|
|
48
|
+
/>
|
|
49
|
+
<j:translation_fr
|
|
50
|
+
jcr:language="fr"
|
|
51
|
+
jcr:primaryType="jnt:translation"
|
|
52
|
+
title="Lire la documentation"
|
|
53
|
+
/>
|
|
54
|
+
</read-the-documentation>
|
|
55
|
+
<code-a-new-component
|
|
56
|
+
jcr:primaryType="$MODULE:HelloCard"
|
|
57
|
+
illustration="code"
|
|
58
|
+
>
|
|
59
|
+
<j:translation_en
|
|
60
|
+
jcr:language="en"
|
|
61
|
+
jcr:primaryType="jnt:translation"
|
|
62
|
+
title="Code a new component"
|
|
63
|
+
/>
|
|
64
|
+
<j:translation_fr
|
|
65
|
+
jcr:language="fr"
|
|
66
|
+
jcr:primaryType="jnt:translation"
|
|
67
|
+
title="Coder un nouveau composant"
|
|
68
|
+
/>
|
|
69
|
+
</code-a-new-component>
|
|
70
|
+
<explore-the-interface
|
|
71
|
+
jcr:primaryType="$MODULE:HelloCard"
|
|
72
|
+
illustration="interface"
|
|
73
|
+
>
|
|
74
|
+
<j:translation_en
|
|
75
|
+
jcr:language="en"
|
|
76
|
+
jcr:primaryType="jnt:translation"
|
|
77
|
+
title="Explore the interface"
|
|
78
|
+
/>
|
|
79
|
+
<j:translation_fr
|
|
80
|
+
jcr:language="fr"
|
|
81
|
+
jcr:primaryType="jnt:translation"
|
|
82
|
+
title="Explorer l'interface"
|
|
83
|
+
/>
|
|
84
|
+
</explore-the-interface>
|
|
85
|
+
<create-content
|
|
86
|
+
jcr:primaryType="$MODULE:HelloCard"
|
|
87
|
+
illustration="write"
|
|
88
|
+
>
|
|
89
|
+
<j:translation_en
|
|
90
|
+
jcr:language="en"
|
|
91
|
+
jcr:primaryType="jnt:translation"
|
|
92
|
+
title="Create content"
|
|
93
|
+
/>
|
|
94
|
+
<j:translation_fr
|
|
95
|
+
jcr:language="fr"
|
|
96
|
+
jcr:primaryType="jnt:translation"
|
|
97
|
+
title="Créer du contenu"
|
|
98
|
+
/>
|
|
99
|
+
</create-content>
|
|
100
|
+
</hello-world>
|
|
101
|
+
</main>
|
|
102
|
+
</home>
|
|
103
|
+
</$MODULE>
|
|
104
|
+
</modules>
|
|
105
|
+
</content>
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
|
|
2
|
+
"Mbvdf2LrCB5sW9PUFXO48": "Hello <mark>{{name}}</mark>!",
|
|
3
|
+
"0U2mp51dWjqWXje4x-eUV": "Double-click to edit the name",
|
|
4
|
+
"7l9zetMbU4cKpL4NxSOtL": "Welcome to Jahia! You successfully created a new JavaScript Module and a Jahia Website built with it. Here are a few things you can do now:",
|
|
5
|
+
"8S0DVCRSnmQRKF9lZnNGj": "Illustrations by <a>Katerina Limpitsouni</a>",
|
|
6
|
+
"89D3xFLMZmCAencaqw68C": "Click this button to add a new content node",
|
|
7
|
+
"hBBhbeE0-a4KS9HVFPsOz": "Hydrated client-side",
|
|
8
|
+
"AI95bg1EJsr48SR-4f_pl": "Rendered server-side",
|
|
9
|
+
"OfBsezopuIko8aJ6X3kpw": "Despite being written with React, this page is fully rendered server-side. No JavaScript is sent to the client by default! This does not mean you cannot use client-side code:",
|
|
10
|
+
"nr31fYHB-RqO06BCl4rYO": "This pattern is named <a>Islands Architecture.</a>",
|
|
11
|
+
"JI87mYV8J5pAEST4RIUcb": "This page is available in:"
|
|
12
|
+
}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
|
|
2
|
+
"Mbvdf2LrCB5sW9PUFXO48": "Bonjour <mark>{{name}}</mark> !",
|
|
3
|
+
"0U2mp51dWjqWXje4x-eUV": "Double-cliquez pour changer le nom",
|
|
4
|
+
"7l9zetMbU4cKpL4NxSOtL": "Bienvenue sur Jahia! Votre module JavaScript a été créé avec succès et avec lui un site Jahia. Voici ce que vous pouvez faire à partir de là :",
|
|
5
|
+
"8S0DVCRSnmQRKF9lZnNGj": "Illustrations par <a>Katerina Limpitsouni</a>",
|
|
6
|
+
"89D3xFLMZmCAencaqw68C": "Cliquez ce bouton pour ajouter un nouveau contenu",
|
|
7
|
+
"AI95bg1EJsr48SR-4f_pl": "Rendu par le serveur",
|
|
8
|
+
"OfBsezopuIko8aJ6X3kpw": "Bien que cette page soit codée avec React, elle est entièrement rendue par le serveur. Le JavaScript côté client n'est pas nécessaire par défaut ! Vous pouvez tout de même vous en servir quand vous le souhaitez :",
|
|
9
|
+
"hBBhbeE0-a4KS9HVFPsOz": "Hydraté côté client",
|
|
10
|
+
"nr31fYHB-RqO06BCl4rYO": "Cela s'appelle la <a>Conception en archipel (en)</a>.",
|
|
11
|
+
"JI87mYV8J5pAEST4RIUcb": "Cette page est disponible en :"
|
|
12
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
$MODULE_component=$MODULE - Components
|
|
2
|
+
|
|
3
|
+
$MODULE_HelloWorld=Hello World
|
|
4
|
+
$MODULE_HelloWorld.name=Name
|
|
5
|
+
|
|
6
|
+
$MODULE_HelloCard=Hello Card
|
|
7
|
+
$MODULE_HelloCard.title=Title
|
|
8
|
+
$MODULE_HelloCard.illustration=Illustration
|
|
9
|
+
$MODULE_HelloCard.illustration.code=A developer coding
|
|
10
|
+
$MODULE_HelloCard.illustration.coffee=Buying coffee
|
|
11
|
+
$MODULE_HelloCard.illustration.interface=Consulting an interface
|
|
12
|
+
$MODULE_HelloCard.illustration.read=Looking at a bookshelf
|
|
13
|
+
$MODULE_HelloCard.illustration.write=Writing with a typewriter
|
|
14
|
+
|
|
15
|
+
$MODULE_LanguageSwitcher=Language Switcher
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
$MODULE_component=$MODULE - Composants
|
|
2
|
+
|
|
3
|
+
$MODULE_HelloWorld=Bienvenue
|
|
4
|
+
$MODULE_HelloWorld.name=Nom
|
|
5
|
+
|
|
6
|
+
$MODULE_HelloCard=Carte de bienvenue
|
|
7
|
+
$MODULE_HelloCard.title=Titre
|
|
8
|
+
$MODULE_HelloCard.illustration=Illustration
|
|
9
|
+
$MODULE_HelloCard.illustration.code=Un développeur qui code
|
|
10
|
+
$MODULE_HelloCard.illustration.coffee=Acheter un café
|
|
11
|
+
$MODULE_HelloCard.illustration.interface=Observer une interface
|
|
12
|
+
$MODULE_HelloCard.illustration.read=Consulter une bibliothèque
|
|
13
|
+
$MODULE_HelloCard.illustration.write=Écrire avec une machine à écrire
|
|
14
|
+
|
|
15
|
+
$MODULE_LanguageSwitcher=Changeur de langue
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jahiaComponent, useUrlBuilder } from "@jahia/javascript-modules-library";
|
|
2
|
+
import classes from "./component.module.css";
|
|
3
|
+
|
|
4
|
+
jahiaComponent(
|
|
5
|
+
{
|
|
6
|
+
nodeType: "$MODULE:HelloCard",
|
|
7
|
+
componentType: "view",
|
|
8
|
+
},
|
|
9
|
+
({ illustration, title }: { illustration: string; title: string }) => {
|
|
10
|
+
const { buildStaticUrl } = useUrlBuilder();
|
|
11
|
+
return (
|
|
12
|
+
<article className={classes.card}>
|
|
13
|
+
<img src={buildStaticUrl({ assetPath: `illustrations/${illustration}.svg` })} alt="" />
|
|
14
|
+
<p>{title}</p>
|
|
15
|
+
</article>
|
|
16
|
+
);
|
|
17
|
+
},
|
|
18
|
+
);
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import clsx from "clsx";
|
|
2
|
+
import { t } from "i18next";
|
|
3
|
+
import { useEffect, useState } from "react";
|
|
4
|
+
import classes from "./component.module.css";
|
|
5
|
+
|
|
6
|
+
export default function () {
|
|
7
|
+
const [confetti, setConfetti] = useState<typeof import("canvas-confetti")>();
|
|
8
|
+
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
// This library only works client-side, import it dynamically in an effect
|
|
11
|
+
import("canvas-confetti").then(({ default: confetti }) => {
|
|
12
|
+
setConfetti(() => confetti);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
<button
|
|
18
|
+
className={clsx(classes.button, confetti && classes.hydrated)}
|
|
19
|
+
type="button"
|
|
20
|
+
onClick={() => {
|
|
21
|
+
if (!confetti) return;
|
|
22
|
+
confetti({ origin: { x: 0, y: 1 }, angle: 70, startVelocity: 60 });
|
|
23
|
+
confetti({ origin: { x: 1, y: 1 }, angle: 110, startVelocity: 60 });
|
|
24
|
+
}}
|
|
25
|
+
>
|
|
26
|
+
<span className={classes.before}>{t("AI95bg1EJsr48SR-4f_pl")}</span>
|
|
27
|
+
<span className={classes.after}>{t("hBBhbeE0-a4KS9HVFPsOz")}</span>
|
|
28
|
+
</button>
|
|
29
|
+
);
|
|
30
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/* Used by default.server.tsx */
|
|
2
|
+
.section {
|
|
3
|
+
max-inline-size: 1000px;
|
|
4
|
+
margin: 1rem auto;
|
|
5
|
+
padding-inline: 1rem;
|
|
6
|
+
overflow: hidden;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.header {
|
|
10
|
+
display: flex;
|
|
11
|
+
align-items: center;
|
|
12
|
+
margin-block: 1rem;
|
|
13
|
+
|
|
14
|
+
h2 {
|
|
15
|
+
margin: 0;
|
|
16
|
+
font-size: 2rem;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
mark {
|
|
20
|
+
background: linear-gradient(90deg in hsl, #a0ffff88, #d1a2ff88) bottom left / 100% 50% no-repeat;
|
|
21
|
+
padding: 0.1rem;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.grid {
|
|
26
|
+
display: grid;
|
|
27
|
+
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
|
|
28
|
+
gap: 1rem;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.attribution {
|
|
32
|
+
color: #666;
|
|
33
|
+
font-size: 0.8em;
|
|
34
|
+
margin-block-end: 2rem;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.hint {
|
|
38
|
+
display: inline-flex;
|
|
39
|
+
gap: 0.5rem;
|
|
40
|
+
font-size: 0.8em;
|
|
41
|
+
line-height: 1;
|
|
42
|
+
opacity: 0.5;
|
|
43
|
+
transition: opacity 150ms;
|
|
44
|
+
user-select: none;
|
|
45
|
+
|
|
46
|
+
&:hover {
|
|
47
|
+
opacity: 1;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/* Used by Celebrate.client.tsx */
|
|
52
|
+
.button {
|
|
53
|
+
background: linear-gradient(90deg in oklch, #a0ffff, #d1a2ff) #ccc;
|
|
54
|
+
transition:
|
|
55
|
+
filter 500ms,
|
|
56
|
+
transform 150ms,
|
|
57
|
+
box-shadow 150ms;
|
|
58
|
+
display: block;
|
|
59
|
+
margin-inline: auto;
|
|
60
|
+
padding: 1rem;
|
|
61
|
+
border: none;
|
|
62
|
+
filter: grayscale(100%);
|
|
63
|
+
overflow: hidden;
|
|
64
|
+
border-radius: 99px;
|
|
65
|
+
box-shadow: 0 0 0.25rem 0 #2442;
|
|
66
|
+
font-weight: bold;
|
|
67
|
+
cursor: pointer;
|
|
68
|
+
|
|
69
|
+
&:hover, &:focus {
|
|
70
|
+
transform: scale(1.1);
|
|
71
|
+
box-shadow: 0 0.25rem 1rem 0 #4884;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.before {
|
|
76
|
+
display: inline-block;
|
|
77
|
+
transition:
|
|
78
|
+
transform 300ms,
|
|
79
|
+
opacity 300ms;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.after {
|
|
83
|
+
position: absolute;
|
|
84
|
+
left: 0;
|
|
85
|
+
right: 0;
|
|
86
|
+
opacity: 0;
|
|
87
|
+
transform: translateY(150%);
|
|
88
|
+
transition:
|
|
89
|
+
transform 300ms,
|
|
90
|
+
opacity 300ms;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.hydrated {
|
|
94
|
+
filter: none;
|
|
95
|
+
|
|
96
|
+
.before {
|
|
97
|
+
opacity: 0;
|
|
98
|
+
transform: translateY(-150%);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.after {
|
|
102
|
+
opacity: 1;
|
|
103
|
+
transform: translateY(0);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AddContentButtons,
|
|
3
|
+
HydrateInBrowser,
|
|
4
|
+
Render,
|
|
5
|
+
getChildNodes,
|
|
6
|
+
jahiaComponent,
|
|
7
|
+
useUrlBuilder,
|
|
8
|
+
} from "@jahia/javascript-modules-library";
|
|
9
|
+
import { t } from "i18next";
|
|
10
|
+
import { Trans } from "react-i18next";
|
|
11
|
+
import Celebrate from "./Celebrate.client.jsx";
|
|
12
|
+
import classes from "./component.module.css";
|
|
13
|
+
|
|
14
|
+
jahiaComponent(
|
|
15
|
+
{
|
|
16
|
+
nodeType: "$MODULE:HelloWorld",
|
|
17
|
+
displayName: "Hello World Component",
|
|
18
|
+
componentType: "view",
|
|
19
|
+
},
|
|
20
|
+
({ name }: { name: string }, { renderContext, currentNode }) => {
|
|
21
|
+
const { buildStaticUrl } = useUrlBuilder();
|
|
22
|
+
return (
|
|
23
|
+
<>
|
|
24
|
+
<section className={classes.section}>
|
|
25
|
+
<header className={classes.header}>
|
|
26
|
+
<h2>
|
|
27
|
+
<Trans
|
|
28
|
+
i18nKey="Mbvdf2LrCB5sW9PUFXO48"
|
|
29
|
+
values={{ name }}
|
|
30
|
+
components={{ mark: <mark /> }}
|
|
31
|
+
/>
|
|
32
|
+
</h2>
|
|
33
|
+
{renderContext.isEditMode() && (
|
|
34
|
+
<div className={classes.hint} style={{ alignItems: "center" }}>
|
|
35
|
+
<img
|
|
36
|
+
src={buildStaticUrl({ assetPath: "arrows/left.svg" })}
|
|
37
|
+
alt="←"
|
|
38
|
+
width="80"
|
|
39
|
+
height="16"
|
|
40
|
+
/>{" "}
|
|
41
|
+
{t("0U2mp51dWjqWXje4x-eUV")}
|
|
42
|
+
</div>
|
|
43
|
+
)}
|
|
44
|
+
</header>
|
|
45
|
+
<p>{t("7l9zetMbU4cKpL4NxSOtL")}</p>
|
|
46
|
+
<div className={classes.grid}>
|
|
47
|
+
{getChildNodes(currentNode, -1, 0, (node) => node.isNodeType("jnt:content")).map(
|
|
48
|
+
(node) => (
|
|
49
|
+
// @ts-expect-error Fix the types
|
|
50
|
+
<Render key={node.getIdentifier()} node={node} />
|
|
51
|
+
),
|
|
52
|
+
)}
|
|
53
|
+
<AddContentButtons />
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
<p className={classes.attribution}>
|
|
57
|
+
<Trans
|
|
58
|
+
i18nKey="8S0DVCRSnmQRKF9lZnNGj"
|
|
59
|
+
components={{ a: <a href="https://undraw.co/" /> }}
|
|
60
|
+
/>
|
|
61
|
+
</p>
|
|
62
|
+
<p>{t("OfBsezopuIko8aJ6X3kpw")}</p>
|
|
63
|
+
<HydrateInBrowser child={Celebrate} />
|
|
64
|
+
<p>
|
|
65
|
+
<Trans
|
|
66
|
+
i18nKey="nr31fYHB-RqO06BCl4rYO"
|
|
67
|
+
components={{ a: <a href="https://jasonformat.com/islands-architecture/" /> }}
|
|
68
|
+
/>
|
|
69
|
+
</p>
|
|
70
|
+
</section>
|
|
71
|
+
{renderContext.isEditMode() && (
|
|
72
|
+
<div className={classes.hint} style={{ marginLeft: "calc(50% - 0.5rem)" }}>
|
|
73
|
+
<img
|
|
74
|
+
src={buildStaticUrl({ assetPath: "arrows/bottom.svg" })}
|
|
75
|
+
alt="↓"
|
|
76
|
+
width="70"
|
|
77
|
+
height="100"
|
|
78
|
+
/>{" "}
|
|
79
|
+
{t("89D3xFLMZmCAencaqw68C")}
|
|
80
|
+
</div>
|
|
81
|
+
)}
|
|
82
|
+
</>
|
|
83
|
+
);
|
|
84
|
+
},
|
|
85
|
+
);
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { buildUrl, jahiaComponent } from "@jahia/javascript-modules-library";
|
|
2
|
+
import { t } from "i18next";
|
|
3
|
+
import { Fragment } from "react";
|
|
4
|
+
import classes from "./component.module.css";
|
|
5
|
+
|
|
6
|
+
jahiaComponent(
|
|
7
|
+
{
|
|
8
|
+
componentType: "view",
|
|
9
|
+
nodeType: "$MODULE:LanguageSwitcher",
|
|
10
|
+
displayName: "Language Switcher",
|
|
11
|
+
// Disable cache for this component
|
|
12
|
+
properties: { "cache.timeout": "0" },
|
|
13
|
+
},
|
|
14
|
+
(_, { renderContext, mainNode, currentResource }) => {
|
|
15
|
+
const locales = renderContext.isLiveMode()
|
|
16
|
+
? renderContext.getSite().getActiveLiveLanguagesAsLocales()
|
|
17
|
+
: renderContext.getSite().getLanguagesAsLocales();
|
|
18
|
+
const currentLanguage = currentResource.getLocale().getLanguage();
|
|
19
|
+
return (
|
|
20
|
+
<p style={{ textAlign: "center" }}>
|
|
21
|
+
{t("JI87mYV8J5pAEST4RIUcb")}{" "}
|
|
22
|
+
{locales.map((locale, i) => {
|
|
23
|
+
const language = locale.getLanguage();
|
|
24
|
+
const href = buildUrl(
|
|
25
|
+
{ path: mainNode.getPath(), language },
|
|
26
|
+
renderContext,
|
|
27
|
+
currentResource,
|
|
28
|
+
);
|
|
29
|
+
return (
|
|
30
|
+
<Fragment key={language}>
|
|
31
|
+
<a
|
|
32
|
+
href={href}
|
|
33
|
+
className={classes.a}
|
|
34
|
+
aria-current={language === currentLanguage ? "page" : undefined}
|
|
35
|
+
>
|
|
36
|
+
{locale.getDisplayLanguage(locale)}
|
|
37
|
+
</a>
|
|
38
|
+
{i < locales.length - 1 && " • "}
|
|
39
|
+
</Fragment>
|
|
40
|
+
);
|
|
41
|
+
})}
|
|
42
|
+
</p>
|
|
43
|
+
);
|
|
44
|
+
},
|
|
45
|
+
);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[$MODULE:LanguageSwitcher] > $MODULE:component, jnt:content
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AddResources, useServerContext, useUrlBuilder } from "@jahia/javascript-modules-library";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
|
|
4
|
+
import "modern-normalize/modern-normalize.css";
|
|
5
|
+
import "./global.css";
|
|
6
|
+
|
|
7
|
+
/** Places `children` in an html page. */
|
|
8
|
+
export const Layout = ({ title, children }: { title: string; children: ReactNode }) => {
|
|
9
|
+
const { buildStaticUrl } = useUrlBuilder();
|
|
10
|
+
const { currentResource } = useServerContext();
|
|
11
|
+
const lang = currentResource.getLocale().getLanguage();
|
|
12
|
+
return (
|
|
13
|
+
<html lang={lang}>
|
|
14
|
+
<head>
|
|
15
|
+
<AddResources
|
|
16
|
+
type="css"
|
|
17
|
+
resources={buildStaticUrl({ assetPath: "../dist/server/style.css" })}
|
|
18
|
+
/>
|
|
19
|
+
<title>{title}</title>
|
|
20
|
+
</head>
|
|
21
|
+
<body>{children}</body>
|
|
22
|
+
</html>
|
|
23
|
+
);
|
|
24
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Area, jahiaComponent } from "@jahia/javascript-modules-library";
|
|
2
|
+
import { Layout } from "./Layout.jsx";
|
|
3
|
+
|
|
4
|
+
jahiaComponent(
|
|
5
|
+
{
|
|
6
|
+
nodeType: "jnt:page",
|
|
7
|
+
name: "basic",
|
|
8
|
+
displayName: "Basic page",
|
|
9
|
+
componentType: "template",
|
|
10
|
+
},
|
|
11
|
+
({ "jcr:title": title }) => (
|
|
12
|
+
<Layout title={title}>
|
|
13
|
+
<Area name="main" />
|
|
14
|
+
</Layout>
|
|
15
|
+
),
|
|
16
|
+
);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/// <reference types="vite/client" />
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="70" height="100" viewBox="0 3 70 105"><g fill="none" stroke="#1e1e1e" stroke-linecap="round" stroke-width="2"><path d="M57.945 10.544c-5.9 1.89-27.68-6.24-35.6 9.55-7.93 15.78-10.02 71.2-11.93 85.14m49.57-95.23c-5.95 2.17-29.94-3.95-38.27 11.63-8.33 15.58-9.43 68.03-11.71 81.87"/><path d="M3.685 79.314c3.06 7.26 3.1 13.62 6.32 24.19m-6.32-24.19c3.29 9.67 4.37 19.65 6.32 24.19m10.71-22.59c-1.32 6.81-5.67 12.75-10.71 22.59m10.71-22.59c-3.47 8.99-9.13 18.33-10.71 22.59"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="80" height="16" viewBox="0 0 96.348 22.238"><g fill="none" stroke="#1e1e1e" stroke-linecap="round" stroke-width="2"><path d="M86.345 11.23c-12.74-.17-63.15-.35-75.98-.4m74.57-.83c-12.85-.02-62.22 1.88-74.94 2.24"/><path d="M33.195 2.91c-8.65 5.11-16.55 6.67-23.2 9.33m23.2-9.33c-6.99 1.8-13.6 4.46-23.2 9.33M33.765 20c-8.89-.83-16.99-5.23-23.77-7.76M33.765 20c-7.16-3.11-13.93-5.36-23.77-7.76"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="717.67003" height="453.96431" viewBox="0 0 717.67003 453.96431" xmlns:xlink="http://www.w3.org/1999/xlink" role="img" artist="Katerina Limpitsouni" source="https://undraw.co/"><path d="M527.60118,309.43775a3.82674,3.82674,0,0,1-4.314,1.25745,5.82854,5.82854,0,0,1-.6787-.24764,28.82552,28.82552,0,0,0-.36725-7.98934,21.36236,21.36236,0,0,1-1.63966,6.57017,8.91079,8.91079,0,0,1-1.75993-2.51274,22.42528,22.42528,0,0,1-1.60307-6.0463c-1.20439-7.0881-2.39281-14.46206-.42756-21.389,2.87885-10.119,11.95723-17.39344,15.74893-27.21118l1.86811-1.677c3.19777,5.44543,3.33934,12.212,2.03576,18.38674-1.29657,6.187-3.90949,11.99371-5.97512,17.96023s-3.61313,12.31309-2.6548,18.55641C528.05421,306.56558,528.39023,308.18131,527.60118,309.43775Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><polygon points="230.469 157.098 218.295 212.779 271.469 230.098 263.65 157.098 230.469 157.098" fill="#ffb6b6"/><path d="M861.31381,690.55887h24.09571V580.09012A107.65288,107.65288,0,0,0,777.87876,472.55887H553.94028A107.65288,107.65288,0,0,0,446.40952,580.09012V690.55887h24.0957V615.09012A108.65356,108.65356,0,0,1,579.036,506.55887H752.78305A108.65356,108.65356,0,0,1,861.31381,615.09012Z" transform="translate(-255.61478 -237.96119)" fill="#e6e6e6"/><path d="M568.509,632.7673l-25.68043-7.775a88.4837,88.4837,0,0,1-2.50888-20.963,8.39912,8.39912,0,0,1,13.815-6.35513c13.77338,11.81381,33.94829,18.11782,46.96791,31.58028a52.07341,52.07341,0,0,1,13.888,42.946l5.621,18.18083a87.2586,87.2586,0,0,1-63.97667-35.28461,84.28716,84.28716,0,0,1-10.12173-18.565C557.40487,635.29616,568.509,632.7673,568.509,632.7673Z" transform="translate(-255.61478 -237.96119)" fill="#f2f2f2"/><path d="M635.438,662.5404l13.09791-3.96554q.02533-.10428.0502-.2087a8.409,8.409,0,0,0-12.48265-9.09359c-5.94563,3.532-12.54779,6.57335-17.28929,11.47613a26.55922,26.55922,0,0,0-7.08337,21.904l-2.86689,9.27285a44.50485,44.50485,0,0,0,32.6303-17.99636,42.98864,42.98864,0,0,0,5.16243-9.46881C641.10146,663.83021,635.438,662.5404,635.438,662.5404Z" transform="translate(-255.61478 -237.96119)" fill="#f2f2f2"/><path d="M741.46337,391.0911H690.45778a2.72143,2.72143,0,0,0-2.71731,2.72433v80.57381h56.44722V393.81543A2.7229,2.7229,0,0,0,741.46337,391.0911Zm-25.3312,45.78106a6.05117,6.05117,0,0,1-6.02292-6.02289v-9.29349a6.02291,6.02291,0,0,1,12.04581,0v9.29349a6.05109,6.05109,0,0,1-6.02289,6.02289Z" transform="translate(-255.61478 -237.96119)" fill="#3f3d56"/><path d="M825.92405,265.34656H607.895a7.07769,7.07769,0,0,0-7.06643,7.06638V419.53985a7.07318,7.07318,0,0,0,7.06643,7.06638h218.029a7.07318,7.07318,0,0,0,7.06643-7.06638V272.41294A7.07769,7.07769,0,0,0,825.92405,265.34656Z" transform="translate(-255.61478 -237.96119)" fill="#3f3d56"/><path d="M824.10413,270.4505H609.71662a3.78733,3.78733,0,0,0-3.7791,3.787V417.71769a3.78562,3.78562,0,0,0,3.7791,3.7791H824.10413a3.78562,3.78562,0,0,0,3.7791-3.7791V274.23747A3.78733,3.78733,0,0,0,824.10413,270.4505Z" transform="translate(-255.61478 -237.96119)" fill="#fff"/><path d="M687.56538,471.812v7.77377a1.52285,1.52285,0,0,0,1.51976,1.51972h53.75792a1.52739,1.52739,0,0,0,1.51972-1.51972V471.812Z" transform="translate(-255.61478 -237.96119)" fill="#3f3d56"/><path d="M782.34508,483.81055H654.7962a2.34634,2.34634,0,0,1-2.296-2.82966l1.97916-9.39973a2.35648,2.35648,0,0,1,2.29564-1.86291H780.36631a2.35648,2.35648,0,0,1,2.29565,1.86291l1.97915,9.39973a2.34634,2.34634,0,0,1-2.296,2.82966Z" transform="translate(-255.61478 -237.96119)" fill="#3f3d56"/><rect x="402.06594" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="409.92271" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="417.77947" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="425.63623" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="433.493" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="441.34976" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="449.20652" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="457.06329" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="464.92005" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="472.77682" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="480.63358" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="488.49034" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="496.34711" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="504.20387" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="512.06064" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="519.9174" y="233.44964" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="401.9731" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="409.82987" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="417.68663" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="425.54339" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="433.40016" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="441.25692" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="449.11369" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="456.97045" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="464.82721" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="472.68398" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="480.54074" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="488.39751" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="496.25427" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="504.11103" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="511.9678" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="519.82456" y="237.37802" width="3.92838" height="2.35703" rx="0.48819" fill="#e6e6e6"/><rect x="439.68557" y="242.09208" width="31.42706" height="2.35703" rx="0.48819" fill="#e6e6e6"/><path d="M792.13789,306.46885v75.52a19.07267,19.07267,0,0,1-19.07,19.07h-94.52a19.08094,19.08094,0,0,1-17.51-11.49,17.9844,17.9844,0,0,1-1.13-3.51,17.36726,17.36726,0,0,0,6.3,1.17h94.52a17.60458,17.60458,0,0,0,17.58-17.58v-75.52a17.36787,17.36787,0,0,0-1.17-6.3,17.98805,17.98805,0,0,1,3.51,1.13A19.08093,19.08093,0,0,1,792.13789,306.46885Z" transform="translate(-255.61478 -237.96119)" fill="#f2f2f2"/><polygon points="183.897 368.973 174.522 374.778 146.903 340.828 160.739 332.262 183.897 368.973" fill="#ffb6b6"/><path d="M447.60543,619.06017l-7.54133,3.36653-4.5245-6.519-.26914,8.65893-20.0014,8.92883a4.9238,4.9238,0,0,1-6.21365-7.05552l11.04809-18.1615-3.21326-7.198,17.248-6.49708Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><path d="M413.24955,600.40319l15.8338-15.34432c-11.7637-29.02906-12.70376-47.02215-29.01206-82.13088,38.693,7.91409,66.35622,7.433,98.35619.33742,10.83323-2.3646,38.78551-23.95594,36.48735-35.02685q-.16112-.77624-.3807-1.538c-3.43482-11.7114-1.01609-29.64574-8.45078-42.64173-13.75489-5.18582-34.65268,12.32556-51,23-7.88255,5.14713-2.11233,12.1612-8,14l-22.569,7.32613-55.3725-8.943a20.51148,20.51148,0,0,0-23.37624,17.35929q-.14055.9018-.20361,1.81341c2.54779,14.10343,5.20366,27.83673,8.063,40.87333.923,4.20807-.6352,12.27539,2.8357,12.39545s2.07272,8.46395,3.15368,12.54322C386.2692,569.54028,390.47748,581.69383,413.24955,600.40319Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><polygon points="127.329 429.745 117.562 424.647 133.015 383.711 147.43 391.235 127.329 429.745" fill="#ffb6b6"/><path d="M381.31592,637.14483l15.6612,10.78289c19.19456-27.75961,31.65753-64.854,40.93905-106.36,36.13851-15.76472,67.76063-33.80089,89.79648-57.99314a20.9147,20.9147,0,0,0-1.20931-29.095q-.5784-.5422-1.196-1.03885c-9.54471-7.60285-30.74283-3.22816-44.29181-9.58275l-24.204,33.49961,2.78211,7.80252-8.41994,4.099-7.1092,3.46086-8.13813,3.96175L409.24825,509.669a20.4837,20.4837,0,0,0-9.089,27.62925q.40434.81821.87758,1.59992l-9.908,49.36015s2.72631,8.59307-1.56348,7.789-1.95215,9.72532-1.95215,9.72532Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><path d="M377.029,690.26656l-7.32146-3.82115,2.30077-7.5944-6.95466,5.16548-19.41828-10.13462a4.9238,4.9238,0,0,1,1.67253-9.25162l21.09632-2.61639,3.64718-6.98813,15.80243,9.48616Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><path d="M590.50644,475.66465l-11.42309-27.60578-9,5,5.43524,28.0821a10.0012,10.0012,0,1,0,14.98785-5.47632Z" transform="translate(-255.61478 -237.96119)" fill="#ffb6b6"/><path d="M398.82273,257.36811l17.381,24.29955,7.633-6.90918L412.18,248.63825a10.0012,10.0012,0,1,0-13.35723,8.72986Z" transform="translate(-255.61478 -237.96119)" fill="#ffb6b6"/><path d="M477.31168,411.38205c-11.2735,17.48627,30.02795,55.58585,51.77167,46.67682,3.80743-1.56,16.90438-6.71266,7.95219-13.85633s1.03792.851,1.274-3.79932c.15787-3.109-2.24924-9.9292.26227-9.63677s3.953-6.97133-1.51673-8.82157a10.61794,10.61794,0,0,1-7-9c-.523-19.16651,5.96782-39.17735,5.96782-39.17735l26.49793,67.73493s-.19573,11.71851,3.18337,8.13746,3.13322,8.00923,3.13322,8.00923,5.02458,3.50661,2.13523,5.45816,3.11066,7.95156,3.11066,7.95156l14-1s-.21919-10.4-2.6096-12.7-1.21623-5.919-1.21623-5.919-4.92825-4.58417-2.05121-9.98259-20.951-101.96148-20.951-101.96148a25.7199,25.7199,0,0,0-18.366-19.62039l-15.12093-4.16334-2.685-10.6532H503.792l-3.70866,7-34-3s-33.64257-30.60991-32-33-3.57255-7.98576-3.57255-7.98576-4.45387-1.45771-1.94066-2.236-2.23723-2.57768-2.23723-2.57768-4.39964-1.1561-2.3246-2.67834-6.925-2.52224-6.925-2.52224l-11.67717,9.52756,2.3601,4.00191s-1.439,5.44938.439,3.46,2.23156,3.78393,2.23156,3.78393.95909,6.32194,6.64648,8.22664,10,20,10,20l48,40c-7.31055,8.39115-5.5705,17.166.90564,26.14173Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><circle cx="258.34259" cy="36.96382" r="23.0557" fill="#ffb6b6"/><path d="M534.08335,268.05887c-.59.17-9.25,1.3-13,2-3.68.69-4.32-4-7.33-3.12a.1266.1266,0,0,0-.01-.06,28.34378,28.34378,0,0,0-2.37-7.17,21.17806,21.17806,0,0,1,.17005,6.6.98419.98419,0,0,1-.02.17c-.01.1-.03.19-.04.29-3.18-1.4-5.2-.15-7.4.29-2.46.49-4.38,1.57-3,10,2.83,17.34,17.55,23.53,15,35-.5,2.27-1.76,5.11-3.34,5.82a28.34378,28.34378,0,0,0-2.37-7.17,21.17806,21.17806,0,0,1,.17005,6.6c-2.45-2.65-4.22-11.91-12.46-19.25-2.03-1.8-12.2-12.48-13.42-15a32.13615,32.13615,0,0,1,.54,6.11,29.41586,29.41586,0,0,1-.28,4.1,1.15145,1.15145,0,0,1-.03.26c-.01.16-.04.3-.06.45-.02.17-.05.33-.08.5-3.33-.48-6.28-1.06-7.67-2.42-6.76-6.58,1.49-19.4,6-31,6.45-16.61,25.18-18.82,27-19,8.02-.81,21.57.91,26,10C539.18332,258.42887,537.20334,267.15885,534.08335,268.05887Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><path d="M485.46837,271.80814l16.70111-25.98028a25.61246,25.61246,0,0,0-13.18811-3.4596,16.41918,16.41918,0,0,0-12.10913,5.71143c-3.41095,4.2392-3.99622,10.23181-2.7182,15.52069C474.59538,265.427,483,259,481,262c-1.64185,2.34882-4.3266,12.2215-5,15-1.08368,4.4718-4.06343,9.06211-1.40907,12.82053,3.13885,4.44446,8.74,6.65363,14.17651,6.878s10.7876-1.28223,15.95416-2.98871Z" transform="translate(-255.61478 -237.96119)" fill="#2f2e41"/><path d="M491.88559,270.78348a1.00011,1.00011,0,0,1-.27295-1.96191c.26221-.43262.15479-2.25342.06836-3.72461-.32519-5.52393-.86963-14.769,8.106-21.00977a.99976.99976,0,0,1,1.1416,1.6416c-8.05469,5.60108-7.57129,13.81543-7.251,19.25049.18262,3.10742.315,5.352-1.56982,5.7793A.99351.99351,0,0,1,491.88559,270.78348Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M255.61478,689.91176a1.18648,1.18648,0,0,0,1.18292,1.19H972.09481a1.19,1.19,0,0,0,0-2.38h-715.29a1.18649,1.18649,0,0,0-1.19,1.183Z" transform="translate(-255.61478 -237.96119)" fill="#ccc"/><path d="M698.14954,332.81065H683.01746a1.51321,1.51321,0,0,1,0-3.02642h15.13208a1.51321,1.51321,0,0,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M725.38727,332.81065H710.2552a1.51321,1.51321,0,1,1,0-3.02642h15.13207a1.51321,1.51321,0,1,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M739.00614,344.91631H723.87407a1.51321,1.51321,0,1,1,0-3.02642h15.13207a1.51321,1.51321,0,1,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M711.8519,344.91631H683.01746a1.51321,1.51321,0,0,1,0-3.02642H711.8519a1.51321,1.51321,0,0,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M766.32737,332.81065H737.49293a1.51321,1.51321,0,0,1,0-3.02642h28.83444a1.51321,1.51321,0,1,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M708.50929,309.88668H679.67486a1.51321,1.51321,0,1,1,0-3.02641h28.83443a1.5132,1.5132,0,1,1,0,3.02641Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M710.88008,318.72742a1.35512,1.35512,0,0,1-.83239-2.425l7.38326-5.73907a2.71359,2.71359,0,0,0,.328-3.9837l-6.19864-6.7106a1.35508,1.35508,0,1,1,1.99032-1.83946l9.20523,9.96483a1.3553,1.3553,0,0,1-.16344,1.98966l-10.88125,8.45819A1.35141,1.35141,0,0,1,710.88008,318.72742Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M678.21581,318.72742a1.35512,1.35512,0,0,0,.83239-2.425l-7.38326-5.73907a2.71358,2.71358,0,0,1-.328-3.9837l6.19864-6.7106a1.35508,1.35508,0,0,0-1.99032-1.83946l-9.20523,9.96483a1.35531,1.35531,0,0,0,.16343,1.98966l10.88126,8.45819A1.35136,1.35136,0,0,0,678.21581,318.72742Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M723.41551,370.86669H694.58108a1.51321,1.51321,0,0,1,0-3.02642h28.83443a1.51321,1.51321,0,0,1,0,3.02642Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M728.49652,378.35231a1.35512,1.35512,0,0,1-.83239-2.425l7.38326-5.73907a2.71357,2.71357,0,0,0,.328-3.98369l-6.19864-6.71061a1.35508,1.35508,0,0,1,1.99032-1.83946l9.20523,9.96483a1.35531,1.35531,0,0,1-.16343,1.98966l-10.88125,8.4582A1.35146,1.35146,0,0,1,728.49652,378.35231Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M678.21581,378.35231a1.35512,1.35512,0,0,0,.83239-2.425l-7.38326-5.73907a2.71357,2.71357,0,0,1-.328-3.98369l6.19864-6.71061a1.35508,1.35508,0,1,0-1.99032-1.83946l-9.20523,9.96483a1.35531,1.35531,0,0,0,.16343,1.98966l10.88126,8.4582A1.35142,1.35142,0,0,0,678.21581,378.35231Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/><path d="M680.78914,374.11256l6.06111-13.86516a1.51321,1.51321,0,0,1,2.773,1.21223l-6.06112,13.86515a1.51321,1.51321,0,1,1-2.773-1.21222Z" transform="translate(-255.61478 -237.96119)" fill="#06a"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="629.13137" height="503.26561" viewBox="0 0 629.13137 503.26561" xmlns:xlink="http://www.w3.org/1999/xlink" role="img" artist="Katerina Limpitsouni" source="https://undraw.co/"><path d="M857.03817,701.58837l-.03767-.35157a40.841,40.841,0,0,1,11.20372-32.45958,39.62543,39.62543,0,0,1,7.78558-6.179l.27115-.16531.08926.30456c1.064,3.63658,2.47879,7.30579,3.12714,8.93166l1.43218-11.64721.309-.13422a7.74562,7.74562,0,0,1,8.53867,1.56015,7.87831,7.87831,0,0,1,1.9373,8.61274c-.51129,1.34174-1.00406,2.73643-1.48084,4.08515-1.63772,4.63473-3.33115,9.42726-6.19437,13.35064a24.68621,24.68621,0,0,1-18.79455,9.91827Z" transform="translate(-285.43432 -198.36719)" fill="#f2f2f2"/><path d="M562.75949,697.41467a24.68621,24.68621,0,0,1-18.79455-9.91827c-2.86322-3.92338-4.55665-8.71591-6.19437-13.35064-.47678-1.34872-.96955-2.74341-1.48084-4.08515a7.8783,7.8783,0,0,1,1.93731-8.61274,7.7456,7.7456,0,0,1,8.53866-1.56015l.309.13422,1.43218,11.64721c.64834-1.62587,2.06316-5.29508,3.12713-8.93166l.08926-.30456.27116.16531a39.62565,39.62565,0,0,1,7.78557,6.179,40.841,40.841,0,0,1,11.20372,32.45958l-.03766.35157Z" transform="translate(-285.43432 -198.36719)" fill="#f2f2f2"/><path d="M469.5325,458.76692s-3.80342-30.74582-12.3723-40.11457L436.992,426.46366l15.92513,40.63554,32.22393,40.64806a8.59386,8.59386,0,1,0,11.85083-8.85206Z" transform="translate(-285.43432 -198.36719)" fill="#a0616a"/><path d="M366.73692,475.90115s13.795-27.73932,11.8191-40.281l-21.12983-4.61543-9.14372,42.6761,4.44173,51.68092a8.59386,8.59386,0,1,0,14.76793-.84236Z" transform="translate(-285.43432 -198.36719)" fill="#a0616a"/><polygon points="105.705 490.1 115.701 490.1 120.456 451.543 105.703 451.544 105.705 490.1" fill="#9e616a"/><path d="M390.78735,698.89522l30.73878-.00116v-.38874a11.965,11.965,0,0,0-11.96438-11.9642H409.561l-5.61483-4.25971-10.476,4.26036-2.68329.00009Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><polygon points="133.091 484.444 142.841 486.647 155.979 450.087 141.588 446.836 133.091 484.444" fill="#9e616a"/><path d="M415.88365,692.905l29.983,6.77454.08569-.37918a11.965,11.965,0,0,0-9.03286-14.3072l-.00073-.00016-4.53776-5.3926-11.15746,1.84636-2.61732-.59138Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><path d="M463.553,583.39651c-5.93642,18.91131-21.11988,69.10743-21.11988,69.10743s-12.92307,3.226-17,0,1-14,1-14c-2.68764-12.07034,3.36022-24.26983,3.7527-35.97156-.81541-4.911,3.507-9.12684,3.90274-13.81046-2.85734-2.1745-16.7583-36.29708-19.59307-45.8318,1.45681,29.05308-2.06237,72.61382-6.06237,100.61382-1.89337,13.25359-4.53323,9.38081-18,10-6.00451-1.78355-5-15-5-15v-11c-2.91886-12.318-2.9574-14.97866-2-21-.43874-6.3915-5.94032-72.47355-10.82217-94.83971-3.25338-17.81658,36.61841-21.73854,48.08519-25.98709,19.134-9.2184,15.90469,3.88731,25.9812,15.96036C456.39343,522.449,462.1164,559.612,463.553,583.39651Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><polygon points="139.732 191.828 130.058 178 113.058 178 98.058 192 96.797 316.387 164.677 323.997 139.732 191.828" fill="#06a"/><path d="M418.44028,379.61722l26.9346,12.32619,5.11725,79.42378s4.31905,10.20169,4.663,11.20639c.36076,1.05389,1.07971,6.25554.76844,7.12087a26.58673,26.58673,0,0,0-1.43142,8.67274c.23336,2.264,2.65139,6.30471,3.28363,8.49112.43587,1.50731-2.28363,6.50888-2.28363,6.50888v0a13.76842,13.76842,0,0,1,1.73062,11.54051l-.73062,2.45948-14-2-6.036-29.67705-.63715-3.13265-.65921-3.24108-.51516-2.53287-.458-2.25186-.38438-1.88984Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M428.37488,395.94341l17-4c8.202,9.539,14.86668,28.35052,20.12187,45.48923.374,1.21974.08064,2.9048,1.10066,3.6299,1.85351,1.31787,2.95944,2.9082,1.61886,5.46-.51217.9751.61463,2.09778.91311,3.12029.25134.861-.09014,2.29426.74153,2.54182,2.37866.708,2.49282,2.74121,1.56216,5.31934l-20,10-.57-.92052-2.2462-3.62748-9.66624-15.61038Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M394.49213,380.36719l-15.11725,13.57622s-3.53733,57.47735-5.88275,79.42378c-.09975.93333,1.20183,3.16193,1.10209,4.09525l-.58566,5.48012-.44071,4.12372c-.15845,1.48262-2.07572,16.30091-2.07572,16.30091l-2.99938,2v0a25.78253,25.78253,0,0,0,2.02188,16.97265l1.9775,4.02734,21.88275-2.42378Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M385.47816,402.45916l-6.10328-8.51575-19,12c-4.19264,11.59879-8.791,31.83589-11.3306,49.43535-.05747.3983.21142,1.07-.16922,1.19062-1.3682.43408-1.78165,1.1206-.313,2.30957a2.04122,2.04122,0,0,1-.36319,2.90625c-1.6106.76562-2.84873,1.522-.25671,2.2622,1.82287.52051-.37469,3.70938-.5091,5.45655l22,5c2.01025-.57862,2.3916-1.75586,1.32086-3.46729,1.65689-.5,2.28424-1.38867,1.12485-2.95263l.544-1.42823c1.84814-.28515,1.82241-1.05127.7908-2.07568l.74993-1.96861,3.46955-9.10756Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><circle cx="119.15749" cy="151.74328" r="22.35793" fill="#a0616a"/><path d="M381.95129,364.51681s4.92421,1.35017,7.78981,2.10186c-.14814-2.13237-1.07164-4.12858-1.54061-6.21457s-.36719-4.53936,1.18311-6.01226,4.77907-.899,5.0289,1.22032q1.96726-4.20674,3.94269-8.42881c3.75508,7.72922,11.43207,1.14255,19.80269,3.09553,4.27026,1.00593,9.62219.57379,11.87821-3.18887a13.938,13.938,0,0,1-3.15439-3.78425,12.73451,12.73451,0,0,0,4.01019.50806,8.40621,8.40621,0,0,0-3.717-6.78481c-1.20391-.78714,1.776-3.58788.72527-4.57378-2.155-2.01218-3.60121-.64578-4.87434-3.2981a9.79644,9.79644,0,0,0-8.85123-5.41152c-3.65891.08569-10.21513.05037-11.6347,3.42125-4.52428-2.9617-10.8222-2.12491-15.24453.982-3.6758,2.5724-7.85908,10.34789-8.78231,14.73729S379.62442,360.69135,381.95129,364.51681Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><path d="M483.82082,463.26193a2.7658,2.7658,0,0,0-2.75676,2.99243c4.223,10.9152,3.65112,23.55036,3.11065,37.84708a2.78183,2.78183,0,0,0,2.75679,2.53938h17.84566a2.7818,2.7818,0,0,0,2.75678-2.53938c-1.44959-13.88882-.66745-26.635,3.11068-37.84708a2.76583,2.76583,0,0,0-2.75678-2.99243Z" transform="translate(-285.43432 -198.36719)" fill="#06a"/><path d="M512.07353,468.30631l-1.33139-6.32425a2.56147,2.56147,0,0,0-2.50654-2.03379h-8.31148a.91777.91777,0,0,0-.15614-.30437l-.92355-1.15444a.929.929,0,0,0-.72541-.34864h-5.13186a.929.929,0,0,0-.72542.34864l-.92354,1.15444a.91759.91759,0,0,0-.15614.30437h-7.709a2.56147,2.56147,0,0,0-2.50654,2.03379l-1.33139,6.32425a2.56145,2.56145,0,0,0,2.5065,3.08917c8.50354,4.36224,17.62976,4.4689,27.42539,0A2.56146,2.56146,0,0,0,512.07353,468.30631Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M738.43307,471.50394c-.43616-1.666-1.98535-6.75391-3.95422-4.50635-.2923.3335-.5235-.73918-.79489-1.13318-.46946-.68159-.75378-3.593-1.25089-4.36047-1.01105-1.561-2.26609-1.09965-3.29424-2.91074-2.94008-5.179-5.6835-11.09208-6.70576-16.08926-3.12954-15.29833,1.18112-36.21819,1.18112-36.21819l-1.39492-29.79857-10.18265-.34227v-.66977a5.07138,5.07138,0,0,0-5.0713-5.07124H687.57189a5.06732,5.06732,0,0,0-5.05487,4.74865l-7.98532-.2684-13.82939,43.938s6.45371,16.585,8.73076,32.68176a61.17736,61.17736,0,0,1,.44579,13.1092,52.71013,52.71013,0,0,1-2.58375,13.02625s58.66615,12.28633,70.138.86455C737.43307,478.50394,739.2167,474.4971,738.43307,471.50394Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M813.55212,474.70716h-13.86v-223.1q-1.44-1.065-2.91-2.1c-.2-.13-.38995-.27-.58-.4a168.60186,168.60186,0,0,0-18.45-11.22,99.49229,99.49229,0,0,0-9.36-10.81994,98.00605,98.00605,0,0,0-147.93005,10.81q-6.47992,3.38993-12.62,7.32c-.38995.25-.78.5-1.16.75-.01.01-.02.01-.03.02a5.082,5.082,0,0,0-2.3,4.27v224.47h-19.7c-8.7,0-16.21,7.11005-16.17,15.81a15.67386,15.67386,0,0,0,1.13,5.79,13.98151,13.98151,0,0,0,1.03,2.09,15.99287,15.99287,0,0,0,1.77,2.46,15.7,15.7,0,0,0,11.81,5.35h229.76a15.7606,15.7606,0,0,0,15.74-15.69C829.76215,481.81721,822.25214,474.70716,813.55212,474.70716Zm-71.49,0h-80.67l-11.12-153.65h102.91Z" transform="translate(-285.43432 -198.36719)" fill="#e6e6e6"/><polygon points="469.635 219.27 504.11 188.555 514.28 193.594 472.933 236.961 469.635 219.27" fill="#ffb6b6"/><path d="M716.52455,379.53808l5.69468-3.05092s14.0304-1.19666,19.75632,15.28492l15.18555,22.93586,24.61335-21.33158,10.66579,7.384-31.02016,37.02227-12.89817,1.64794L720.62678,403.331Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M725.80652,353.17457c-3.11286,21.09637-18.60443,23.31976-29.94623,12.30667-11.86542-11.52155-29.94626,2.19315-29.94626-12.30667s6.54917-40.20181,29.94625-40.20181C720.06341,312.97276,727.9231,338.83005,725.80652,353.17457Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><circle cx="410.32583" cy="146.93885" r="20.15097" fill="#ffb6b6"/><path d="M672.47759,343.32921v0h7.9701l3.51614-9.84534.70306,9.84534h3.80938l2.05112-5.74312.41023,5.74312c5.812,5.25348,16.57282,3.33124,28.30536,0l0,0a21.33155,21.33155,0,0,0-21.33156-21.33155h-4.10226A21.33156,21.33156,0,0,0,672.47759,343.32921Z" transform="translate(-285.43432 -198.36719)" fill="#2f2e41"/><path d="M635.40392,487.805a8.195,8.195,0,0,0,5.97042-13.7851l11.21728-29.62056,2.29667-9.90045h0a9.91518,9.91518,0,0,0-14.68732,5.2815l-11.68609,35.3209a8.20109,8.20109,0,0,0,6.889,12.70371Z" transform="translate(-285.43432 -198.36719)" fill="#ffb6b6"/><path d="M771.22041,357.48831a2.76583,2.76583,0,0,0-2.75679,2.99243c3.10382,13.38764,4.41986,26.10758,3.11066,37.84708a2.78186,2.78186,0,0,0,2.75681,2.53937h17.84566a2.78178,2.78178,0,0,0,2.75678-2.53937,119.15131,119.15131,0,0,1,3.11066-37.84708,2.7658,2.7658,0,0,0-2.75676-2.99243Z" transform="translate(-285.43432 -198.36719)" fill="#06a"/><path d="M799.47312,362.53269l-1.3314-6.32425a2.56145,2.56145,0,0,0-2.50653-2.03379H787.3237a.91749.91749,0,0,0-.15614-.30437l-.92354-1.15444a.929.929,0,0,0-.72542-.34865h-5.13185a.929.929,0,0,0-.72542.34865l-.92355,1.15444a.91765.91765,0,0,0-.15613.30437h-7.709a2.56146,2.56146,0,0,0-2.50654,2.03379l-1.3314,6.32425a2.56147,2.56147,0,0,0,2.50649,3.08917c9.19275,3.83233,18.34466,4.58871,27.42541,0A2.56147,2.56147,0,0,0,799.47312,362.53269Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><path d="M690.19022,236.79887a1.85339,1.85339,0,0,0-1.84732,2.00523l2.08447,25.36145a1.86409,1.86409,0,0,0,1.84733,1.70164h11.95843a1.86409,1.86409,0,0,0,1.84733-1.70164l2.08447-25.36145a1.85339,1.85339,0,0,0-1.84732-2.00523Z" transform="translate(-285.43432 -198.36719)" fill="#fff"/><path d="M709.12245,240.17912l-.89217-4.2379a1.71644,1.71644,0,0,0-1.67964-1.36284h-5.56955a.61479.61479,0,0,0-.10463-.204l-.61887-.7736a.62248.62248,0,0,0-.4861-.23363h-3.43887a.6225.6225,0,0,0-.48611.23363l-.61887.7736a.615.615,0,0,0-.10463.204h-5.16582a1.71644,1.71644,0,0,0-1.67964,1.36284l-.89217,4.2379a1.71643,1.71643,0,0,0,1.67961,2.07006h18.37785A1.71643,1.71643,0,0,0,709.12245,240.17912Z" transform="translate(-285.43432 -198.36719)" fill="#ccc"/><path d="M698.49213,280.36719a33,33,0,1,1,33-33A33.03734,33.03734,0,0,1,698.49213,280.36719Zm0-64a31,31,0,1,0,31,31A31.03536,31.03536,0,0,0,698.49213,216.36719Z" transform="translate(-285.43432 -198.36719)" fill="#f2f2f2"/><polygon points="514.058 502 317.058 502 317.278 479.112 317.298 477.122 319.058 298 513.058 298 513.308 349.746 513.318 351.737 514.058 502" fill="#e6e6e6"/><path d="M913.375,701.32547l-626.75.30734a1.19069,1.19069,0,0,1,0-2.38137l626.75-.30734a1.19068,1.19068,0,0,1,0,2.38137Z" transform="translate(-285.43432 -198.36719)" fill="#cacaca"/><path d="M592.82082,434.26193a2.76585,2.76585,0,0,0-2.75679,2.99243c2.82507,13.31372,4.06756,26.00968,3.11071,37.84708a2.78178,2.78178,0,0,0,2.75676,2.53938h17.84566a2.7818,2.7818,0,0,0,2.75678-2.53938c-1.44165-11.94.08276-24.6886,3.11065-37.84708a2.76578,2.76578,0,0,0-2.75675-2.99243Z" transform="translate(-285.43432 -198.36719)" fill="#06a"/><path d="M621.07353,439.30631l-1.33139-6.32425a2.56147,2.56147,0,0,0-2.50654-2.03379h-8.31148a.91777.91777,0,0,0-.15614-.30437l-.92355-1.15444a.929.929,0,0,0-.72541-.34864h-5.13186a.929.929,0,0,0-.72542.34864l-.92354,1.15444a.91759.91759,0,0,0-.15614.30437h-7.709a2.56147,2.56147,0,0,0-2.50654,2.03379l-1.33139,6.32425a2.56145,2.56145,0,0,0,2.50647,3.08917,46.44973,46.44973,0,0,0,27.42542,0A2.56145,2.56145,0,0,0,621.07353,439.30631Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/><rect x="320.05781" y="381" width="91.70068" height="2" fill="#f2f2f2"/><rect x="421.05781" y="307" width="91.70068" height="2" fill="#f2f2f2"/><rect x="370.05781" y="445" width="91.70068" height="2" fill="#f2f2f2"/><polygon points="513.318 352 470.058 352 470.058 350 513.308 350 513.318 352" fill="#f2f2f2"/><polygon points="329.318 293 286.058 293 286.058 291 329.308 291 329.318 293" fill="#f2f2f2"/><polygon points="363.318 96 320.058 96 320.058 94 363.308 94 363.318 96" fill="#f2f2f2"/><polygon points="508.318 55 465.058 55 465.058 53 508.308 53 508.318 55" fill="#f2f2f2"/><polygon points="464.318 96 421.058 96 421.058 94 464.308 94 464.318 96" fill="#f2f2f2"/><polygon points="344.758 478 344.758 480 317.278 480 317.298 478 344.758 478" fill="#f2f2f2"/><circle cx="510.64682" cy="192.90694" r="8.20445" fill="#ffb6b6"/><path d="M677.96363,380.35853l-3.432-5.47438s-11.16647-2.76069-15.76367,4.63863-29.33485,86.98116-29.33485,86.98116l14,5L670.433,409.74788Z" transform="translate(-285.43432 -198.36719)" fill="#3f3d56"/></svg>
|