From 6a6f64cbf9733f1fceca948f6e24b6d3135a8b49 Mon Sep 17 00:00:00 2001 From: Nick Kosarev Date: Tue, 20 Aug 2024 17:43:12 +0200 Subject: [PATCH] chore: index page rework (#204) --- apps/website/eslint.config.mjs | 6 + apps/website/nuxt.config.ts | 6 + apps/website/src/app.vue | 38 +- apps/website/src/assets/css/styles.css | 177 +++- apps/website/src/components/MainHeader.vue | 77 ++ apps/website/src/components/MainLogo.vue | 86 ++ apps/website/src/components/MenuDesktop.vue | 98 +++ apps/website/src/components/MenuHamburger.vue | 64 ++ .../website/src/components/MenuSmartphone.vue | 88 ++ apps/website/src/components/NxWelcome.vue | 810 ------------------ apps/website/src/pages/index.vue | 111 ++- apps/website/src/public/favicon.ico | Bin 6420 -> 0 bytes apps/website/src/public/favicon.png | Bin 0 -> 472 bytes apps/website/src/public/robots.txt | 4 + .../src/public/trophies/default/16.png | Bin 0 -> 277 bytes .../src/public/trophies/default/32.png | Bin 0 -> 323 bytes .../src/public/trophies/default/64.png | Bin 0 -> 454 bytes apps/website/src/public/units/banana/128.png | Bin 0 -> 871 bytes .../src/public/units/banana/idle.aseprite | Bin 0 -> 2175 bytes apps/website/src/public/units/banana/idle.gif | Bin 0 -> 9812 bytes .../website/src/public/units/banana/idle.json | 53 ++ apps/website/src/public/units/banana/idle.png | Bin 0 -> 841 bytes .../src/public/units/banana/moving.aseprite | Bin 0 -> 3787 bytes .../src/public/units/banana/moving.json | 77 ++ .../src/public/units/banana/moving.png | Bin 0 -> 1416 bytes apps/website/src/public/units/burger/128.png | Bin 0 -> 926 bytes .../src/public/units/burger/idle.aseprite | Bin 0 -> 1933 bytes apps/website/src/public/units/burger/idle.gif | Bin 0 -> 8778 bytes .../website/src/public/units/burger/idle.json | 45 + apps/website/src/public/units/burger/idle.png | Bin 0 -> 879 bytes .../src/public/units/burger/moving.aseprite | Bin 0 -> 5198 bytes .../src/public/units/burger/moving.json | 77 ++ .../src/public/units/burger/moving.png | Bin 0 -> 1764 bytes apps/website/src/public/units/catchy/128.png | Bin 0 -> 903 bytes .../src/public/units/catchy/idle.aseprite | Bin 0 -> 2242 bytes apps/website/src/public/units/catchy/idle.gif | Bin 0 -> 10415 bytes .../website/src/public/units/catchy/idle.json | 53 ++ apps/website/src/public/units/catchy/idle.png | Bin 0 -> 808 bytes .../src/public/units/catchy/moving.aseprite | Bin 0 -> 4916 bytes .../src/public/units/catchy/moving.json | 77 ++ .../src/public/units/catchy/moving.png | Bin 0 -> 1791 bytes apps/website/src/public/units/claw/128.png | Bin 0 -> 993 bytes .../src/public/units/claw/idle.aseprite | Bin 0 -> 2016 bytes apps/website/src/public/units/claw/idle.gif | Bin 0 -> 10970 bytes apps/website/src/public/units/claw/idle.json | 45 + apps/website/src/public/units/claw/idle.png | Bin 0 -> 868 bytes .../src/public/units/claw/moving.aseprite | Bin 0 -> 4664 bytes .../website/src/public/units/claw/moving.json | 77 ++ apps/website/src/public/units/claw/moving.png | Bin 0 -> 2120 bytes .../src/public/units/gentleman/128.png | Bin 0 -> 1021 bytes .../src/public/units/gentleman/idle.aseprite | Bin 0 -> 2081 bytes .../src/public/units/gentleman/idle.gif | Bin 0 -> 9878 bytes .../src/public/units/gentleman/idle.json | 45 + .../src/public/units/gentleman/idle.png | Bin 0 -> 987 bytes .../public/units/gentleman/moving.aseprite | Bin 0 -> 5438 bytes .../src/public/units/gentleman/moving.json | 77 ++ .../src/public/units/gentleman/moving.png | Bin 0 -> 1943 bytes .../src/public/units/marshmallow/128.png | Bin 0 -> 772 bytes .../public/units/marshmallow/idle.aseprite | Bin 0 -> 2207 bytes .../src/public/units/marshmallow/idle.gif | Bin 0 -> 7310 bytes .../src/public/units/marshmallow/idle.json | 45 + .../src/public/units/marshmallow/idle.png | Bin 0 -> 631 bytes .../public/units/marshmallow/moving.aseprite | Bin 0 -> 3607 bytes .../src/public/units/marshmallow/moving.json | 77 ++ .../src/public/units/marshmallow/moving.png | Bin 0 -> 1403 bytes apps/website/src/public/units/pup/128.png | Bin 0 -> 854 bytes .../src/public/units/pup/idle.aseprite | Bin 0 -> 1841 bytes apps/website/src/public/units/pup/idle.gif | Bin 0 -> 8859 bytes apps/website/src/public/units/pup/idle.json | 45 + apps/website/src/public/units/pup/idle.png | Bin 0 -> 759 bytes .../src/public/units/pup/moving.aseprite | Bin 0 -> 5006 bytes apps/website/src/public/units/pup/moving.json | 77 ++ apps/website/src/public/units/pup/moving.png | Bin 0 -> 1774 bytes apps/website/src/public/units/shape/128.png | Bin 0 -> 816 bytes .../src/public/units/shape/idle.aseprite | Bin 0 -> 1978 bytes apps/website/src/public/units/shape/idle.gif | Bin 0 -> 7853 bytes apps/website/src/public/units/shape/idle.json | 45 + apps/website/src/public/units/shape/idle.png | Bin 0 -> 817 bytes .../src/public/units/shape/moving.aseprite | Bin 0 -> 4781 bytes .../src/public/units/shape/moving.json | 77 ++ .../website/src/public/units/shape/moving.png | Bin 0 -> 1666 bytes apps/website/src/public/units/sharky/128.png | Bin 0 -> 927 bytes .../src/public/units/sharky/idle.aseprite | Bin 0 -> 2589 bytes apps/website/src/public/units/sharky/idle.gif | Bin 0 -> 10078 bytes .../website/src/public/units/sharky/idle.json | 45 + apps/website/src/public/units/sharky/idle.png | Bin 0 -> 736 bytes .../src/public/units/sharky/moving.aseprite | Bin 0 -> 5420 bytes .../src/public/units/sharky/moving.json | 77 ++ .../src/public/units/sharky/moving.png | Bin 0 -> 1845 bytes apps/website/src/public/units/twitchy/128.png | Bin 0 -> 900 bytes .../src/public/units/twitchy/idle.aseprite | Bin 0 -> 1780 bytes .../website/src/public/units/twitchy/idle.gif | Bin 0 -> 8677 bytes .../src/public/units/twitchy/idle.json | 45 + .../website/src/public/units/twitchy/idle.png | Bin 0 -> 828 bytes .../src/public/units/twitchy/moving.aseprite | Bin 0 -> 5131 bytes .../src/public/units/twitchy/moving.json | 77 ++ .../src/public/units/twitchy/moving.png | Bin 0 -> 1661 bytes apps/website/src/public/units/woody/128.png | Bin 0 -> 1124 bytes .../src/public/units/woody/idle.aseprite | Bin 0 -> 2091 bytes apps/website/src/public/units/woody/idle.gif | Bin 0 -> 11977 bytes apps/website/src/public/units/woody/idle.json | 45 + apps/website/src/public/units/woody/idle.png | Bin 0 -> 1041 bytes .../src/public/units/woody/moving.aseprite | Bin 0 -> 4852 bytes .../src/public/units/woody/moving.json | 77 ++ .../website/src/public/units/woody/moving.png | Bin 0 -> 2179 bytes apps/website/src/public/units/wooly/128.png | Bin 0 -> 845 bytes .../src/public/units/wooly/idle.aseprite | Bin 0 -> 2010 bytes apps/website/src/public/units/wooly/idle.gif | Bin 0 -> 9007 bytes apps/website/src/public/units/wooly/idle.json | 45 + apps/website/src/public/units/wooly/idle.png | Bin 0 -> 817 bytes .../src/public/units/wooly/moving.aseprite | Bin 0 -> 5595 bytes .../src/public/units/wooly/moving.json | 77 ++ .../website/src/public/units/wooly/moving.png | Bin 0 -> 1885 bytes apps/website/src/server/tsconfig.json | 2 +- apps/website/src/stores/website.ts | 6 + apps/website/src/utils/locale.ts | 18 + package.json | 9 +- yarn.lock | 543 +++++++++++- 118 files changed, 2743 insertions(+), 880 deletions(-) create mode 100644 apps/website/eslint.config.mjs create mode 100644 apps/website/src/components/MainHeader.vue create mode 100644 apps/website/src/components/MainLogo.vue create mode 100644 apps/website/src/components/MenuDesktop.vue create mode 100644 apps/website/src/components/MenuHamburger.vue create mode 100644 apps/website/src/components/MenuSmartphone.vue delete mode 100644 apps/website/src/components/NxWelcome.vue delete mode 100644 apps/website/src/public/favicon.ico create mode 100644 apps/website/src/public/favicon.png create mode 100644 apps/website/src/public/robots.txt create mode 100644 apps/website/src/public/trophies/default/16.png create mode 100644 apps/website/src/public/trophies/default/32.png create mode 100644 apps/website/src/public/trophies/default/64.png create mode 100644 apps/website/src/public/units/banana/128.png create mode 100644 apps/website/src/public/units/banana/idle.aseprite create mode 100644 apps/website/src/public/units/banana/idle.gif create mode 100644 apps/website/src/public/units/banana/idle.json create mode 100644 apps/website/src/public/units/banana/idle.png create mode 100644 apps/website/src/public/units/banana/moving.aseprite create mode 100644 apps/website/src/public/units/banana/moving.json create mode 100644 apps/website/src/public/units/banana/moving.png create mode 100644 apps/website/src/public/units/burger/128.png create mode 100644 apps/website/src/public/units/burger/idle.aseprite create mode 100644 apps/website/src/public/units/burger/idle.gif create mode 100644 apps/website/src/public/units/burger/idle.json create mode 100644 apps/website/src/public/units/burger/idle.png create mode 100644 apps/website/src/public/units/burger/moving.aseprite create mode 100644 apps/website/src/public/units/burger/moving.json create mode 100644 apps/website/src/public/units/burger/moving.png create mode 100644 apps/website/src/public/units/catchy/128.png create mode 100644 apps/website/src/public/units/catchy/idle.aseprite create mode 100644 apps/website/src/public/units/catchy/idle.gif create mode 100644 apps/website/src/public/units/catchy/idle.json create mode 100644 apps/website/src/public/units/catchy/idle.png create mode 100644 apps/website/src/public/units/catchy/moving.aseprite create mode 100644 apps/website/src/public/units/catchy/moving.json create mode 100644 apps/website/src/public/units/catchy/moving.png create mode 100644 apps/website/src/public/units/claw/128.png create mode 100644 apps/website/src/public/units/claw/idle.aseprite create mode 100644 apps/website/src/public/units/claw/idle.gif create mode 100644 apps/website/src/public/units/claw/idle.json create mode 100644 apps/website/src/public/units/claw/idle.png create mode 100644 apps/website/src/public/units/claw/moving.aseprite create mode 100644 apps/website/src/public/units/claw/moving.json create mode 100644 apps/website/src/public/units/claw/moving.png create mode 100644 apps/website/src/public/units/gentleman/128.png create mode 100644 apps/website/src/public/units/gentleman/idle.aseprite create mode 100644 apps/website/src/public/units/gentleman/idle.gif create mode 100644 apps/website/src/public/units/gentleman/idle.json create mode 100644 apps/website/src/public/units/gentleman/idle.png create mode 100644 apps/website/src/public/units/gentleman/moving.aseprite create mode 100644 apps/website/src/public/units/gentleman/moving.json create mode 100644 apps/website/src/public/units/gentleman/moving.png create mode 100644 apps/website/src/public/units/marshmallow/128.png create mode 100644 apps/website/src/public/units/marshmallow/idle.aseprite create mode 100644 apps/website/src/public/units/marshmallow/idle.gif create mode 100644 apps/website/src/public/units/marshmallow/idle.json create mode 100644 apps/website/src/public/units/marshmallow/idle.png create mode 100644 apps/website/src/public/units/marshmallow/moving.aseprite create mode 100644 apps/website/src/public/units/marshmallow/moving.json create mode 100644 apps/website/src/public/units/marshmallow/moving.png create mode 100644 apps/website/src/public/units/pup/128.png create mode 100644 apps/website/src/public/units/pup/idle.aseprite create mode 100644 apps/website/src/public/units/pup/idle.gif create mode 100644 apps/website/src/public/units/pup/idle.json create mode 100644 apps/website/src/public/units/pup/idle.png create mode 100644 apps/website/src/public/units/pup/moving.aseprite create mode 100644 apps/website/src/public/units/pup/moving.json create mode 100644 apps/website/src/public/units/pup/moving.png create mode 100644 apps/website/src/public/units/shape/128.png create mode 100644 apps/website/src/public/units/shape/idle.aseprite create mode 100644 apps/website/src/public/units/shape/idle.gif create mode 100644 apps/website/src/public/units/shape/idle.json create mode 100644 apps/website/src/public/units/shape/idle.png create mode 100644 apps/website/src/public/units/shape/moving.aseprite create mode 100644 apps/website/src/public/units/shape/moving.json create mode 100644 apps/website/src/public/units/shape/moving.png create mode 100644 apps/website/src/public/units/sharky/128.png create mode 100644 apps/website/src/public/units/sharky/idle.aseprite create mode 100644 apps/website/src/public/units/sharky/idle.gif create mode 100644 apps/website/src/public/units/sharky/idle.json create mode 100644 apps/website/src/public/units/sharky/idle.png create mode 100644 apps/website/src/public/units/sharky/moving.aseprite create mode 100644 apps/website/src/public/units/sharky/moving.json create mode 100644 apps/website/src/public/units/sharky/moving.png create mode 100644 apps/website/src/public/units/twitchy/128.png create mode 100644 apps/website/src/public/units/twitchy/idle.aseprite create mode 100644 apps/website/src/public/units/twitchy/idle.gif create mode 100644 apps/website/src/public/units/twitchy/idle.json create mode 100644 apps/website/src/public/units/twitchy/idle.png create mode 100644 apps/website/src/public/units/twitchy/moving.aseprite create mode 100644 apps/website/src/public/units/twitchy/moving.json create mode 100644 apps/website/src/public/units/twitchy/moving.png create mode 100644 apps/website/src/public/units/woody/128.png create mode 100644 apps/website/src/public/units/woody/idle.aseprite create mode 100644 apps/website/src/public/units/woody/idle.gif create mode 100644 apps/website/src/public/units/woody/idle.json create mode 100644 apps/website/src/public/units/woody/idle.png create mode 100644 apps/website/src/public/units/woody/moving.aseprite create mode 100644 apps/website/src/public/units/woody/moving.json create mode 100644 apps/website/src/public/units/woody/moving.png create mode 100644 apps/website/src/public/units/wooly/128.png create mode 100644 apps/website/src/public/units/wooly/idle.aseprite create mode 100644 apps/website/src/public/units/wooly/idle.gif create mode 100644 apps/website/src/public/units/wooly/idle.json create mode 100644 apps/website/src/public/units/wooly/idle.png create mode 100644 apps/website/src/public/units/wooly/moving.aseprite create mode 100644 apps/website/src/public/units/wooly/moving.json create mode 100644 apps/website/src/public/units/wooly/moving.png create mode 100644 apps/website/src/stores/website.ts create mode 100644 apps/website/src/utils/locale.ts diff --git a/apps/website/eslint.config.mjs b/apps/website/eslint.config.mjs new file mode 100644 index 00000000..934c3a1d --- /dev/null +++ b/apps/website/eslint.config.mjs @@ -0,0 +1,6 @@ +// @ts-check +import withNuxt from './.nuxt/eslint.config.mjs' + +export default withNuxt( + // Your custom configs here +) diff --git a/apps/website/nuxt.config.ts b/apps/website/nuxt.config.ts index d1c4c658..7237bed1 100644 --- a/apps/website/nuxt.config.ts +++ b/apps/website/nuxt.config.ts @@ -29,5 +29,11 @@ export default defineNuxtConfig({ plugins: [nxViteTsPaths()], }, + modules: [ + '@nuxt/eslint', + '@vueuse/nuxt', + '@pinia/nuxt', + ], + compatibilityDate: '2024-08-18', }); \ No newline at end of file diff --git a/apps/website/src/app.vue b/apps/website/src/app.vue index bb587ca3..4f4477c3 100644 --- a/apps/website/src/app.vue +++ b/apps/website/src/app.vue @@ -1,44 +1,8 @@ - - diff --git a/apps/website/src/assets/css/styles.css b/apps/website/src/assets/css/styles.css index 22b4e6a6..07271ca1 100644 --- a/apps/website/src/assets/css/styles.css +++ b/apps/website/src/assets/css/styles.css @@ -1,22 +1,66 @@ +@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&display=swap'); + +@import '@radix-ui/colors/blue.css'; +@import '@radix-ui/colors/bronze.css'; +@import '@radix-ui/colors/brown.css'; +@import '@radix-ui/colors/crimson.css'; +@import '@radix-ui/colors/gold.css'; +@import '@radix-ui/colors/gray.css'; +@import '@radix-ui/colors/green.css'; +@import '@radix-ui/colors/orange.css'; +@import '@radix-ui/colors/pink.css'; +@import '@radix-ui/colors/purple.css'; +@import '@radix-ui/colors/ruby.css'; +@import '@radix-ui/colors/slate.css'; +@import '@radix-ui/colors/teal.css'; +@import '@radix-ui/colors/violet.css'; + +:root { + --color-twitch: #8E4EC6; + --color-background: #FFF7ED; + --color-background-2: #F6EEE7; + --color-border: var(--brown-7); + --color-border-2: #E1DCCF; + --color-bg-accent-1: var(--violet-9); + --color-bg-accent-2: #6F5F58; + --color-common: var(--gray-9); + --color-uncommon: #33B074; + --color-rare: #0090FF; + --color-epic: #7D66D9; + --color-legendary: #F76B15; + --color-bg-loader: #7D66D9; +} + html { -webkit-text-size-adjust: 100%; - font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, - 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, - 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; + font-size: 16px; line-height: 1.5; tab-size: 4; scroll-behavior: smooth; } body { + min-height: 100dvh; font-family: inherit; line-height: inherit; margin: 0; } +html, body { + font-family: "Noto Serif", "Times New Roman", "Georgia", serif; + font-optical-sizing: auto; + font-weight: 500; + font-style: normal; + font-variation-settings: "wdth" 100; +} + h1, h2, p, pre { margin: 0; + font-weight: 400; +} +h3 { + font-weight: 600; } *, ::before, @@ -39,3 +83,130 @@ pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; } + +p { + font-size: 1rem; + line-height: 1.5; +} + +a { + color: var(--green-9); + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +h1 { + font-size: 2rem; + text-align: center; +} + +h2 { + font-size: 1.2rem; +} + +pre { + font-size: 16px; + background-color: rgba(255, 255, 255, 0.45); + border-radius: 3px; + box-shadow: 2px 2px 6px rgb(255 255 255 / 25%); + padding: 0.5em; + overflow-x: auto; +} + +input, +button { + font-size: inherit; + font-family: inherit; +} + +button, +input[type="submit"], +input[type="reset"] { + background: none; + color: inherit; + border: none; + padding: 0; + font: inherit; + cursor: pointer; + outline: inherit; +} + +button:focus:not(:focus-visible) { + outline: none; +} + +@media (min-width: 720px) { + html { + font-size: 18px; + } + + h1 { + font-size: 2.4rem; + } + + h2 { + font-size: 1.5rem; + } +} + +.bg-paper { + background-image: url($lib/assets/website/background-paper-2.webp); + background-repeat: no-repeat; + background-position: bottom; + background-size: cover; +} + +.dropdown-menu { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 0.25em; + width: max-content; + max-width: 320px; + position: absolute; + bottom: -0.25em; + transform: translateY(100%); + padding: 0.5em; + background-color: var(--bronze-4); + z-index: 5; +} + +.dropdown-menu a { + color: inherit; + text-decoration: none; +} + +.dropdown-menu button { + text-align: left; +} + +.dropdown-menu button:hover, +.dropdown-menu a:hover { + color: var(--green-9); +} + +html, body { + background-color: var(--orange-2); + color: var(--bronze-12); +} + +section { + text-align: center; + padding: 2em 1em; + margin: 0 auto; + max-width: 42em; +} + +.hero { + max-width: 64em; + text-align: center; + margin: 0 auto; + padding: 4em 0; + + h1 { + margin-bottom: 0.25em; + } +} diff --git a/apps/website/src/components/MainHeader.vue b/apps/website/src/components/MainHeader.vue new file mode 100644 index 00000000..585dba1a --- /dev/null +++ b/apps/website/src/components/MainHeader.vue @@ -0,0 +1,77 @@ + + + + + \ No newline at end of file diff --git a/apps/website/src/components/MainLogo.vue b/apps/website/src/components/MainLogo.vue new file mode 100644 index 00000000..ab462d74 --- /dev/null +++ b/apps/website/src/components/MainLogo.vue @@ -0,0 +1,86 @@ + + + + + \ No newline at end of file diff --git a/apps/website/src/components/MenuDesktop.vue b/apps/website/src/components/MenuDesktop.vue new file mode 100644 index 00000000..798c4b5b --- /dev/null +++ b/apps/website/src/components/MenuDesktop.vue @@ -0,0 +1,98 @@ + + + + + \ No newline at end of file diff --git a/apps/website/src/components/MenuHamburger.vue b/apps/website/src/components/MenuHamburger.vue new file mode 100644 index 00000000..0cec16b4 --- /dev/null +++ b/apps/website/src/components/MenuHamburger.vue @@ -0,0 +1,64 @@ + + + + + \ No newline at end of file diff --git a/apps/website/src/components/MenuSmartphone.vue b/apps/website/src/components/MenuSmartphone.vue new file mode 100644 index 00000000..30aca3b4 --- /dev/null +++ b/apps/website/src/components/MenuSmartphone.vue @@ -0,0 +1,88 @@ + + + + + \ No newline at end of file diff --git a/apps/website/src/components/NxWelcome.vue b/apps/website/src/components/NxWelcome.vue deleted file mode 100644 index 4228f5be..00000000 --- a/apps/website/src/components/NxWelcome.vue +++ /dev/null @@ -1,810 +0,0 @@ - - - - - diff --git a/apps/website/src/pages/index.vue b/apps/website/src/pages/index.vue index 51e451f4..bf234a75 100644 --- a/apps/website/src/pages/index.vue +++ b/apps/website/src/pages/index.vue @@ -1,3 +1,112 @@ + + + + \ No newline at end of file diff --git a/apps/website/src/public/favicon.ico b/apps/website/src/public/favicon.ico deleted file mode 100644 index 3146711ab09ae38bcff0ad44eaf7a292468f56ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6420 zcmeHKT~5O=3^p(Dz{4gXAs&#HM;>OH5FvPtOM}Qk}1g?O+d~T91O`T5r zL0V~T*Rel;anr02UGSfCB$9qVKjuWYMD)NHJE`GIMm7hJ-CX<2JI?alf#Y_7S1h08 zpuG~${;U;hHMyB%Y=70Q$n%q75*WLp6!ZKH%88 z)BBM`Ze!&##6kVQal7JK^K)@ME@MB9X9qfN*@h-LR5 z;5^AIwH<*DdU&Du0G26Q&1B-(Uflt7MAeUWdn*uLDv_2k*IK)>*68f|^?^V9IlS&? z)ZU}Q5_G?j VcO1kvu1dmP!jsUzU7KhY*U@%2Em*oZW}&xi@g2BJ&Rw!#ib+F zptUtq_lVMpweLBN*S#wUe?ITsS+$$Hr~i&Sl)}a8#G%-7r0XJgZ0e@g=f3s1tW9_N!nuGkgE7NsKI4md-w)b4vVv57PG#G&J$jLy{Yy)Ghy8Jz z@7xmqn*092?pt*&`{w7@EB|7-z_5kEWasS%mu=rX-fpZ46-Y}@4%Yd?zBuH+@QeG5 zX@z#usgeuRPu&TbnBHRN%zT0A!i|3kDq^pmPI@u%@x$)VF$vbyzK)eOwZf%PckD@T zHPz`mtwv`1eOu5cw7XV5n)>F|0Cjy!q;T{TpCZF?hQAxvXPx#&q+izlfeyyAP_}AhHM9%tYAx^0232y@L~;?VGUlafyBfDEWrvq(SaBC zuo)N;Wsm!Bz`P%r`3OWBEA8Svu5MWcU&|P3`|^ng5Nf++6>_Y!Bgk$?1_tUzLA_tz zte}Hw*fATMHJFXXH0*v|JkXtF8Sj z9;)-ikb2nJ7AKbLh*2~7YkMt+3= literal 0 HcmV?d00001 diff --git a/apps/website/src/public/trophies/default/64.png b/apps/website/src/public/trophies/default/64.png new file mode 100644 index 0000000000000000000000000000000000000000..7f6742601f18131833ee297c0f3436c4f4bad6f0 GIT binary patch literal 454 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%z8$4YcLn`LH zoqaI(kb{6LuT#l^PA-i`CMCtCYQa^>3_@LT4!0*-VrlBuOH3%bNvm5D2B6I_cYGFd|Y|k?`-gt zm%XOSwJZ?fXM0Y)JpOm}>IFf3>t~<*nzmic-={wR7sm$1Eex}6S}7D&{{Hj%^W(l) z_L$?xzZ|pJ8)B*p(c8_`4?dBuOhW$&u?nRZM$47v?zW!vP=b0*!l zUG)1yZJ?!Gb(@_u4_N!0^?{$6_GY_e_PJl-34~g`N^*DN1=B?(Z5q#Na{II|xi^5U z3%SnV`tqLB+Pl${A*Q;0W2rX2t=+S~e!cih^)T*tWdzj?rmpZ~X+Dngv^`?=KN^Uua})y-c76PPm?P3&E2!sPh-y{`fzhQZU- K&t;ucLK6Tqe!_A9 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/banana/128.png b/apps/website/src/public/units/banana/128.png new file mode 100644 index 0000000000000000000000000000000000000000..c07ed97cb363ba5f413d184fa96251fb896a9bf4 GIT binary patch literal 871 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 hM;Gxe7IUrfUQwnC%l!{4AR@NeIOouB{! literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/banana/idle.json b/apps/website/src/public/units/banana/idle.json new file mode 100644 index 00000000..ee7ec36a --- /dev/null +++ b/apps/website/src/public/units/banana/idle.json @@ -0,0 +1,53 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 160, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4] + } +} diff --git a/apps/website/src/public/units/banana/idle.png b/apps/website/src/public/units/banana/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..a59a8b33a837a884cb9fbc0c1fd99a75f0ea7e5b GIT binary patch literal 841 zcmV-P1GfB$P)001Be1^@s6m49>f00001b5ch_0Itp) z=>Px&14%?dRCt{2oWE|=G{Pp)=qcw2zWesxKwgJ3P0bdFL zBJq0xbK>@2m#^J`oQgt`eEj?v0PyA0Rpae10QL@G z?FQrwAPPlta&(P{{R;pW_;E8Zfo%<6*5JYb)@r~u1fc5m+7Q5cXZYOyQ}XXo6m%Pa z8QpFC17plK@zZ3|e`aOZiDxfHE7?ApaRFEneNM#lFC_Sjz_abgD7H~ z6o>cJHPmWA&IahZ+Asi=`8Re97=;2+D9B!KGL3`1gH7Yj9fbn>?+yU~+cHAmm&uJ-hXUveg*%v`I`Bc;^!U%4*ER| z&$0uM%MvUVtbIUy3W%NK1RCEv$>OJR)9TRG@a#N^Pu~LolACX>;TQQ&rMmf7QEmga zHGs4_R8b9ps;uqe;^+BK#jl%x6@KZn;3@%#onrvN*3(D9WLlO`kKeF@xrx|%_9XcE z=hE~i4267CXTDYPucD#`tQCN~HJhOMYVoNCV159-IG8SbR__WQ2K>)$z&rz1C!&cD zs_XIz2Ov{j;G6JY_c~wz-v6%P`IhsoycxmE9aZYyl-q3N^Ox2)_4Po{caQ%M9y968 T&*`H@00000NkvXXu0mjfv)Y%r literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/banana/moving.aseprite b/apps/website/src/public/units/banana/moving.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..b8cf70b57153e2262b936f38bbc162d1efd8cccb GIT binary patch literal 3787 zcmcgv3s4hR6n!BdK8Zw8apetWih(42G^juj1cYFyFd9r? z9KnXc7PT~3g@Uw*wS0n~j#9ONmZ>u+MF+7KBT_V|+szWlM#Tvo>D$?z&F;SY?mOq+ zb8oJi1911G3813~4gkPIPTlYYIL$*a9XY0AnBoCYtH|i8WMlzLO~qUf=&1Zl5)9 z&dx@&D>?$e_<%J}K=e-D9=hi4t#>9sz>g8qqmmLPnj6QD;!X5Uz>iIy|4zH6ASpgJ z4mIqBd_Y82r+`@iHbQ=&gA7O@t(425oA)hz2s>ITI~uzcFX8U6X{Bil1rgYrXUdC_ zFNt&`Kt{Hpn@It)(V0!to*jM$D;YHYuDZd^i|>`lXlpyfy_Tni#@tmq_9>VdKE@K$ zqa#@rPvPuP_a^9Ay0DJHu1puCKT#|QVAjy0JBp6ezR9x~qI=A*tM9P8`sZ4ygnBAh z$Lcr0&6{Y^zd)N;NRSl^Sr)8*_x;bxFr@WWi#E3s`#JDY#h{X~r2-)L0cpk-^ zh+LpCaJAmAOelpweEfXh zG1kncHhVS?(XEboW%d`ggC#>}ldxISJ(e{+hpPpjYgr@fWsTYRhG1=;G8ln2xkI9D zkO=r5=ayIrQ?5iaYFW!X+!-m1I)>&t{MA7>I!>7Cau-+pggH-l$9vxG#Eug_G8d-JH#5EBh6!Nf*73@AOI*1! z#*QoV4D@O6l0j^nOZ!!GMW8r>@rvRJ8fZvqn|*QPMV&nAmo`nkG*}+@OxR6e<EKv{;s;j<&1W7n&KZqDT)t`qGsiN+19y9wl_?S_*7zzN4img7OPODY=hOb9%-#7qu&BaA3~@XCU1r{4!WM+>~MUS*k~?Qlmc3q!5>Ljc)R!wyn7>inBX zli&*3$-nrH>LA_WNKy7`;9t33?40*^B+px=Xm-d8wncg|kzf98T?dU-^~rS5{{pDv B?fd`$ literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/banana/moving.json b/apps/website/src/public/units/banana/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/banana/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/banana/moving.png b/apps/website/src/public/units/banana/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..6a2bc68058f7f26b279898ce8355b4a43aec007b GIT binary patch literal 1416 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/burger/idle.gif b/apps/website/src/public/units/burger/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..bdc7afd990642d000c6223d78d687efb80c145ae GIT binary patch literal 8778 zcmd7XbyJ*OgXeKv8wd~xO>ly{B{)fd#x1xzG)^EmAwhymaJNPqcPBLN?(Q`1BtQtg z-1oDy&+OFH)Xvt_)ckSk)Vb<<0pI%kWaL1CZ%mPpk&r!*kZ2LO%F-I@lJ8Wdc{#aJ zk&&K0-Jzj#Jl*V12kEchx}PpiIxa^hCOdJrT0x#HX`xZDSobT9a~02DNiXiY*!I3F z|8Ca!ZUpULnLr>AXozP6a;5EpN29F>6Xs|On=Eiih5gYFXZG<=4(py3XTE0$SdOzS zJ9*4NzRRG!aP~y;C;4){%7rrb;S=wUl&_wOoay8Hb>0pbtrFm1U**c>v)eX5Cz+1+ zkG`%1LEnNyLcaw>1cXHse9`oehz3VTrg$Y<$7+Cab8;bhxG{wx`OuQmvZ9bobue0O zU427iQ*%olX8VtJtj@0Pp5CrzzbZ8_&gj_q#N-&t%9>YsaLK+~~eV8}D-np9aHrT3;J zsNDH*Zb*L&D&l=O;I2AfE_4INpfgxgFpLIPXZfm;WEQx1Raiti@517b< ze_YAvaTTvHkYh?|S9K$v|7FkXY9ms3VfiDuIJvSF>U)0D9FlKzlxlc;b(HOP4iT|P zoyAN;09i<|qJ$5x;l^(^RGD(ncWIb6gXWo=On5HPZfP)&d*Pd6q(*`x66B7|?>+Yp z2qB@Jf?x=SCP)2BB<|^r879x=OoF;-8R~m}Zdlqs^afG|TcUe4hDJG+qjC#%mi*u=9xxvJU=0z-1Fxb+jD3foki7M0D zO=z1eQVqQzi_KZ9D9H$42b5!oCtqyjo3>j-29?&E%O@8j@6L|ag0a}71+yL&=O@`7 zLW>Ja4ok`!4i8JK`dE+3>gH^Z%A58|jw;%I9v)S~FxZZ(dPwb#(X$yv7OIJukB$+x z9gvi*x(FDwq;AGa#IUHq%%|UX*QPYg2kLEy*%TI9`t-!_!Sc2UDm`ru(`n6Zc7uro zw_Q!;aupQ2dlIyS`huOAk1>2fzG!(aRh`(`tiyiKwMW*)*@;kTidWaHFZ%Dw2e$eS zSQIy6Fg}2z2k2f8oJ5V}7~~8sR{7=*Q^b?gj*4cRUj+d7L=VTrUO0@7KcXAf^x#Sy z*D=c)OF@sI<*u+EqBJUSs<$GL51P}87(Be-Gx+_6c;180_S+o1H9AY#u#R{Tyb zQUCD`+*}ZUPelXtV;lbFo8SDd7Oh^3lVeRn3oxtpG4_bNlPd8T>6cckhEc2#W4e6_ zl=0FEk6L4+Oeh9=(a$H5d}*VnGJg;d7L}fnrDuzDwu9Pn9Jrxw0?yuTM6|d#MZ_FL zMuukzRURqWivLL#*!%ooRlNTD6qEigl}qQYbq1M48Uy)f#m6T3jayP3AnH9qKw}(D zAu9>&5gRA4LGLAI;y0Le6u0h(d@hdmKo@Dt`8V#!T!6J~H~G?eu;558zQ;f})%|(M zTL9!)h-?oX`9-L#B7`V;podZTB1|e%gGKf@B~J7} zFQ4^jZ}0C-X_AuJJ2GG&Ps4mPQ}9=HLErrPPVVB z5@~r%27jQwANwlkOcq7{lOJPjgsdcma9uU4a4Y7bR zOGWifntJkk(ohD11oS?bGM7U(G!EqD4#&UHZ4^*PLCLJ-)!i5P$podL%BZkuNd5ET z#kWNt%jQOXDM*m@1EKs8i!%gb0wqG3tbC=1xuu2gp#gT}+MC;&AHLR$C-aZ1kCznH zIa-&a%odR`VrxHZ7%HEFvPpUg1v9l@09*sL=6x|^J0P@G_DCCBqGmdQY1)y=3@+`9M-O@)VdDV*wS=h_9q3Yy-HXbM6#NUSZuT9zq94gP( zmgBD6D_S1Wo$Zg7nOi~0Fm)EHn=Xi0vk3v`QaqKPN8ToGl4+M2v`UZjAqgOv;<+=c z7$R|N`Yc(l2TXU7R@S(MQPj}JCV@IXS=uhaK2_hU4=qJAUoaKI_OaTbPrBfWk%crbVt$ueoGR)GEO0 z_l1_WrQ=o6+VO_&ZfdW`-f-GYk@d;x;kfH-M}3TE4%X7}@JUoaU3>??@~wz)fQw^Y z?u*O=S!3bAOuvmNCL|j*1@f6dEt6dB!Ccj%X4{INMo{C`37ua+q}t%Cdc^^lN^fjX z``%2Y8riV~-tv5}5idL4-+hApKe$gk2m=4=lOW&l2ta6b%u}DZ|4W}l{}m{?kldJp z;Jo6$`UJPIk|67;Q2x;;t&NyJI(}gN)hB)3Z7qH^PlfW-CsQ~mfAz`Y91PaKwm!W% zF+8FIUfMr6TwLi`KkGeO*x6OeDZjmgo^+l+-b40h)7=<}>HRPt?z-unO=|h@=;R{@ z3L(8nI3b3L+Y?khVKfLyd@?x~i-CA%hH&EKoPyzGZsMGGi&c41sVtHZ7G2&Vm293s z9JeraI53@W0_%^^M<$hc#XMySc@itN@9*vCD0Ax$75LG+!YLIRzWP7)Nr_>^od0s8 z^R}>w!u(t9N{)I*rD~oLV2dXzE`FQZ*&00<36sND?W1CM2*V%C^c&`kK|8j_uoVWL z-QFZI&oO{EADknSBS6;hqV7NHlkEZIYNIgTZn4PY=+Ke?jsN z+~7wemF*P5(Q2ZR!1FfGMIw}E?)16-CWsRVB$YG{p}M!k@b>zyv&9YgmIU#k2F|WX z`cTCa}-x0_4tfH%bSG?TG*HBGj+?7*{ zBg{xN^4FY8HJvRe)N`r7n@h8e)g=jUx^e3S+qyxEvV>1%^MKL1ZuC}O-YkXLa)fDG zDduH`%zBaG{$R*gzn^4@<%Noz$gi}{R*ZmSFON>sMZs%+~V6~HIT(_@KMeBsCWBNW!R&gj+G_v&cs zB7!DF@6caTyp~p&DS6>ikkx0%Wthv3*fp3>g4o6L`5t>6lE|B;&GC73vFl-JRL@VN z@l*ypZqC;55dI7zOG-D(Gc!rW z2(+CB@9~1iWnbUfxikdr0`rrjrw+VyscewK)2kCSQsQ6v$kz>9h!n-4%-^e8L3Bwo zoLdeUufUXFd`>N;jDjz%-&Yo1IoLYQ1Lvr{S87SXI5y||#zPq)J1V#Px(EF+_b%=o zPOy_V822P|&1nP@7lBjj4?Rrmh*g5G(IwAqX0(INfX?2@Y9_g4vM>{|Xa0ojfk<{T zLdJ&Q12VT_(cYkUZQ&_6Vt-0PElBLL;yC&*>Jzel**@O1i%78OyS2Fm*o&Hrs3uo> zig~PVp{ZECOPmy{gQ}LYa&XMo1WD>Y2@P+J?7oYz=F{p14GjJHXoRhwPr=z&;wSwf zF5!5Y{)n4LE}YGjj6M)Xu{WrA$riJ7k?e)kFyJ4SYf@a3PkSiMsaWD77K*h?2J*tv zs~Jvee|XWt8a5=<#ES&C+2y!NR4@Z6k`OQJg(})`m%p1foysQ=Ft<^dK&Y`}aV zlnFuPh0(>~@Dfv+83l_;VDij zLnEh%KT!6~%m;H(yaF|mZbc4_X-}PENZ<5KEj6(O^Z}Z`H!fLtI$_3n%2vS zZUZh`;I@rzgsG?J@?`z%6qW6HK3u-LFO9CI<{{<_h8lgi#$o5b6lnc(KF_}-euzVE z=@;V$T7`6?A4S($!`3d_`bkd*dwr%#tDN2|8so)(>!$q4ZSZ!)WH~L#jpMN#s3=PM zyi&TCZH_7o{oC@=vF8`Q!jEb88Ke{)a{WA6(-98SKd^mO{r0!@9l0QMczQTPM9O%- zi$}@`vj~QDtwxeGr!CpIo{g*~9+zbSEUX<=J;nM+(lG@~-cZlQSY^?~torW0)=t)T z-J{7KKZajFvQ9V~Ihv#nn!p)CM*VP3ksxP^va%5=sPXRC%j|#F0lY2apZrSEh1%f~ zFGFX(kqT7tQo;#xg=cO!HcHVQ4lhTAC+knw%SC!@rO$A_Wl_!IZL~i4x+q#w!aSRy~ZH2$+_5e#UkMH#%R9UE`x~Z89@XoH^wnd zr)I*1UHN`@MNn7Ddw)7xAAYVszBbp6ioRH%TtM*$-I5`@+4YzBW6Q(%jI}WWef!v& z=F6|!#!-J1EWr)5tM4*KUvTh=vjPcFxYgVPm_5H+0o{=_lsXf^5NBEvT3KO4(HsWPq8n*8C+h1& z*Uu$^Erm#(S+qQK&6ScCccM(AX;O8hl0sAD!G*xCG}C$@%-XUo^+SeB7tfxBvesS^ z&>KWznaz^C(a!{Dzet1xn^Y0@{X+ij$@L(CyLWv!? zOs{{l()%0;t%Q;4hg7i;*&WyHWy(MiHN&LK>}-jw5r%ci{9Tmvv#&k+>lenVSAprG zKEXlzg?2-ArJr!KTF$$M9h>93c-Px|Rdr0cZ|Pby+HWxwBYylQa;@y>-elV51;j}@ zcVe+WjOKo4ZFBCP6E&#n8Kzm$_a_Ts|JwJPcb~_JCSrwqkR(m1T^JJ3z5n!@gC|tNb^bzL+HY zkh;;&8gcR@;yat{$bQ-@kAjc!2&o{2(`UPh5?*(sUr-Yg6E(dL7?KT2s7O;#m2Hp@ zp{=K+NBT>Tb55C4*rfX~E+dP|FEzl2i_kYwC1)55*ao?SxGk(#V+f4T`%|Uz?dQzi zRiDjL&Z{?8(F(3oU9arDju$VPH7-VAi&d!Gl=0CKTpWV?vc&V!g0{{ut; zm?_z!J($h}F!wxemV|;bvKr&8*heg}^c1C{iK)?gnaQogtMwryLP5Q&2#t>sNh#VM zhXvBy!ZML75Ix|?04+afm!X}-w(CkUmS7w*!3NP%)5u${oJ1a>j<7AN;R%_dROA?c zi!GW#)q(IoYWQA&dAj}y*_2EL>l6S1Wszi`hvj8_@xm**V?hknG#5k2s{%6RL3y>% zOXL#3SC|zGZdPxR@oqdZ3=HJfCq+yCbu`WC<;7*ZhnjNcnhy+R;Wi(Fn=~uN_gduF z*uBCs>%h`~QSTmHrO8J=_CV0z08F<**-xi$WqeKldJG&qm~r>cTCjO?%;fMAux~LT zTEEHbBTt-t$3Gz+GC6LcHw8c@DHg8QRqb=D0bs9=zx_5ju_=~-0F*!Pl?vSC3*0)6 z1ODj&`A@2a+)u{SQXX*0+fK$O(dOrY zjyC&RvR6y(m$L>1L$s9agDE@ui&@$dHCfft!`Z?#&2qh)EDL>oc+yP6VKzhl>N8r z2HKCmb%TKWf9pmzfVR)$;li2{;YTW18^?cTu)Y3em0~{!1(oPYH?XyeX(Ryd=DEWE z(2dbXli;49Ci#Ep1|U)v@~?CQu^I{q(*AS(w{Fnz2i`DGMt1;H|EU}Ck-h(Kx)Im# ze{|!`7&FxqY(TfkqIIPUvbi@>wNfYytw6cPl;Op=;gH^9vQp%h;+(&AqtFe>7Wkjl z4f|(#uS+KpHN=8!C**z6{af`IlhBg-1^3d>20xeO(9a>B!O{|22% zDH%d_0zzB8i)H#gmsaR=G5y+#2>D@t-g*Kog(-xF0rDW{G?!_y=iPYP$3xwO$%Gqy zO-;9SC=~Rlr*8M(+N%4x(#j(9i^v6cf|=t5cjW0M;Fp2i=C{?{d=cudF3%lxOhmtS*I0o7v|o-cdDk8rG_l*a#CH=IOHt)4mlQ#Z6vV?45UYCUXiS zCOP5*5@w4W0eK~JYpPhR;O76T_2pl5gDEA69GkgJpru-U*n9h>F|*8@5@%_YVRPyQ zveNp4N&OIoSZYLQ`P&*Nqo9#ITCorrZx;4gS5F;wz1>Qg_bvuF+skAaKdThXh>X&n zqcU+|%gF`vBIWT1wGX+;1%!2)Kuhvjk^6=|JPwP73R<$_Ru8$?UnU(5GB6OzQJI{w znKXz>acv7IhC$!Q8REvWr0WKUv9PCIr!tl{fpEf2YsJa(7=dNjl~1}6zeN!^q+D2= z>2IIesIzlBf~4|Thevf&_f7P(dX4YlRu8uTQ65W%-u4|QvhhZ zt6H@uGZ$e^unLkQdvAY z)Jy58+d4D>M=SB^OY!W1nyt24ra2@*wdAj;m&gHioth3k3HXMDCi6t3+?5!McE+2b z^PmqhRZi2kP#SnyOZj)LNQWfzOihW+McEqfJo|Dwk&?mJM+tsDl*be@WJ_U*d|@JC z`yd&;Hs_?OO-SaJ)bLWO?wLaJ4IAVG8_|+cMZG0&xfwi6zwjJi_D6U4v5~$g%Eg>> z1;XxwizJHZ-deOwjo9EvY;|mi4v*;Na|B z86sBW8N;~}AMq<6zJ9O8B4#nd3_wuynZz^aVQZf0xTMgRZe=E6Qri+9H~v{yd_C!IIODwL zoivfbMhc5!$EfW@UtrpXjoi;Y+!*;WzNEy2O^UYyGOPn%@U9TI84?m_1P%CQS611X z8UA9+z{w7mYlvGbvK)0wb9c=(60#VrwDEllPx&DM>^@RCt{2n#*ewQ51)NQ%b=WM36!%f@x#XXq!kQBnuUUGOd4rdl4l>Fu157 z7P@fZqGS~x-H6>*Tqq{FE+_L!0D>S0f*=TjAP9mW2!bF8f*}59B;Ere15w3kOum@oo|pWs@ptmdmuChY z$Hh`myjTSCi}y1JSu5|9pX%+quP!!>)%qn#61E7MpVjS^-wCh%qVw-)HlS$el&gL> zw9*|*t?Qpw_*v%X@pD}Qw%1AkfIb<>ZLHL_)uQza`~v7MR<{>yua)pJeWY&RZ@=jL zxe8!;?rUXZZltdLz)lFmCy(m;&*w%k`LoP3HM^g|4Zu6U0pI;K`5WEuf6VLstbVQn zkf*B^ck}A5zHPh`$z0Gd%Ox?8K%nhI|{8nxrKXU=(i#cgL3)4rT4a5F;MK1IX(8_Og_lCO= zORanIGG;ux1*5tj+^ z?f?MFh1p8OY5;1W3S6EA*!|B?F6>}w42WmM`A3I>SSVE8)_$N|*a0Bc&yxQ>)xXrF z-}Xh&=uptH`ezB)+`eGp#eZ+nf13`7C7io*SU(%P4A%B;K}CnBFLkI|9` zDhu#r@ilWWd(CeW50hWi6M!H2+nxc`J4pR*QVpm<1OT;xX$#=C`djU{!_F@XKk{$- z*FY5sf}i)v@2}r&0TBNojx^}Pr5=DOT{=d#7S*7C~`GEic002ovPDHLk FV1fmQuUP;9 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/burger/moving.aseprite b/apps/website/src/public/units/burger/moving.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..1c1dab8673816e0a6ad86cd4d7eeb7d264ad5571 GIT binary patch literal 5198 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/catchy/idle.aseprite b/apps/website/src/public/units/catchy/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..6ca6248e1974dc62128676fbb4e5c3fd31d0e735 GIT binary patch literal 2242 zcmX@a!NBlfDJz2l7&0<2FdPCAaNxke2<8hg2*Aat$(YN;!0_uM2iR7iQy9d6m|X$I z2|$rkK+M7b6m`&3(zi2pOA1Y$mXou3N>!$RQhhV)&oMN!F!%EcsY{u(vSrh*3EXk1++F>A>t`E0+}Z!*k&$t*hgZ38 z>K5PG&-yR_ch$7dwkw?ww{k_x=T~drmfD0Y^3Fe>TK~3TX0uG}VU>^%{uSRE8~-ey z@b~lv8IVsDn1Lh={0A~v7?Sc+Dsjo>q^1|+lFLXx25BTGa51m~op3q$(*N_@>%P@Dw_6t`*)EW>RVg*F)B8BTeanBK zC2Wt49SnC_TzqxGAV$`Rjlr8Up|Bln91{a45F&iU%fJWm5reJj-~R?@99S4uR+}B< zU-R$#Ie|%E8@~uF=D!)c!@%xyVd4zClCPDoURfCW$a5%n*Uwk$6K;NT@v8!JPE`U! zEPqG8Kfhx2gu^`3ZGZe>I{f0>gvIR7*qB}gUSbe@$*6LkfuX|6XIC~b#r^uo3{IS& zC>wqO-HAV-!AU1^Mk5D9(D$4s`G~*o=PIhaR(9jxG`k?NAOXF}PN1z5 z9MFfaD7xXYz@o>7RqJsIx<LU}+kh0(exI7Ra?3EN9wq50sWZubux_{)ie=^H;H-KM#LB z^hMg{PN(qUD@rpz{{Q~pY=^|oUyd_G{u+EWFm|Yzw^~(V{@D#jJ1@R%ZcW~?nO!rH z@0xVp<0A|V3O6==p>lferByH=TrMYj_)7yr2QSl&D~hL;UpF$&h&152%*?!GSFg-} z1z=`vJnmtI)!NhY9N0x0G1UbgtD^v8b^ye$2u7q zRtIe8rf>L?UtT;2?(doS6&Sw!!0`DpHwAMCOGXLwnzEMCH> cbcxwx9wWo51FnDb(ZYB5l^O(+Gkt>_0CVgJ^Z)<= literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/catchy/idle.gif b/apps/website/src/public/units/catchy/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..03186bae936b9ae7f09443b2a57150e570372c63 GIT binary patch literal 10415 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 gn~)9Bbq1YIu5N>l4~wFZz-ESsxJn7a}*m)c^nh literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/catchy/idle.json b/apps/website/src/public/units/catchy/idle.json new file mode 100644 index 00000000..ee7ec36a --- /dev/null +++ b/apps/website/src/public/units/catchy/idle.json @@ -0,0 +1,53 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 160, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4] + } +} diff --git a/apps/website/src/public/units/catchy/idle.png b/apps/website/src/public/units/catchy/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..af4f7f303095db357b77b063706a78d919615123 GIT binary patch literal 808 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/catchy/moving.json b/apps/website/src/public/units/catchy/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/catchy/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/catchy/moving.png b/apps/website/src/public/units/catchy/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..f36be9efae7d6e24e16f8453623fab5f1329c72f GIT binary patch literal 1791 zcmVPx*xk*GpRCt{2oIz_FM-<2Z5^ivFC-sY~eJQOkIXIudnAA477h_~rBHGR0UK`*yKgnST4{Gy zGdq$!KL{wAS-m&!z4_1ERTMy@(P%UpjYgxdv*E-0HCroKsR zd<6iIpFBwH2X_Y`T7i;a8kS9eRM=Lz{!X&5BK~CeGUp!vMi-8dpFBW*^1ypPNlX%V z0HPEqsqN8)BUF}#QnelQp?~;F>T8dhlZG#<*3a7Rl>7tf)ql`#GkE;rcDfUaP-Oz5 z=E(BHG%UNaG!!{cW-K}(_vD940g9Rubu3+N_^e7UXi9dV*T+2NW5*bue$z;N6(*ouU{=)YdW6EM4OK- z008h{=@0L9bRmi_LX`<@gaYW*U}V zsg3~v@;Nd0#Ft%w2$l7}dD@GShu5%u|D?eN`Qg4FE9Qwi0F`ut0LjKQEW9;X#FOvklucEbJ_wdGGiCJA;wg#g^C7{K7;JfR#iia5o5$3fTH@hRphBYXN{S z#@UTI=e=SH`?bATpBGyIWGN6YDiXl1{cwINasvXeO~cB#*Cw+0^x2_ZsgB`%>v6*v zB|41rV#(e3?X}*j1t^R(1vre&(_ZW>pT&xSED94nzI;%OlfvBrh*lsTR3zZz_h-CQ z&{=yKBOBi~oqt{|VQ2Xag^3;;0tzvEdmQ;3li>O2YeZ}~)dIvq0?d*7wgos0s{McZ zqH91#{qNWIGNxhK6kniqF5f+1BABYwpkpdh>iZu|*OztYIoV#_u{;Fa84##J434ja*Ngwo6j}(i-D3>S zE=v0~9^l*t&}M9!fVCIGd@v0Q0K6D9OG0h;7yvNH+@B6#@5`+Gvfi$J@9Q+$2y6!i zz)QSwYXCa~6#&jdS%ER|1PBO^0SQo&Qz*(V08e}Yv=*SX7rqD6qGB-i!6<(J^Dm!2 zVR3M8KZV8}sOO#z7vF6e{LkjtIZ?jE>HtWEgM|mw+YTy1a$MFgq1e;)lP|vXjmZ$8 zhLf;ZYG{MmwY%5251@qD&*XD(#m{-qy~p+Jkm7GIp8*5oQZ_%?1%QH^bAnyJ;P3u@ zw;|=~%gFnGHeSQm`!XVO001jLufjAeZ{r=#Pr+d90^)Cn!*UOVZ|uT^b3pQnU#t!w zN`P1OoiQX4@ZG9SG|SdrwN@NL`6++w?ljj;#NykL|t)p8$n)XHtF+9H;>z zyD=xV`waTQ);syb9+EOUV4!t=d21lD17KCCKHW<~1^_*AMWyPzDRU!u!Dm`s!1-nX z016WSabxglG}*6Ib2vz_DAH=dW!ut3 hlXgCu+3V&5;D6bMmz_dyu_XWi002ovPDHLkV1mQ5R-6C; literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/claw/128.png b/apps/website/src/public/units/claw/128.png new file mode 100644 index 0000000000000000000000000000000000000000..8b43653f8a00e66ba27d4063c749f065a36e4550 GIT binary patch literal 993 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-HD>V4m&i;uumf z=j~nlY!OF^;~ztnShW8yaFl+SlsMJ;;yE{gCtL^JdJ;6FvYuLR5LmM(=%N~jl9^bN zSA2t$o^Q~R$tGlzv{_NB5x?LyrX77A_{LGs(Z{h-h79xR$<_7_< zxQ;};rr)(`xPH89mYndFfcX!s)8!aE1wm3V-##U%R5ytA_lE8my?f6CS03_5UkKbAOPeYDyQV0`3e)fPS`o$FA}AaeCi; z{!{V$_w?`jvG+FrqI30M-?_g0=si83_36iRZcFd;XGp{B@wQ{zQ2hViyxr2?SO3j_ zd-?5*1Ft{Z#{I3-V~A7)hyS(X3>$0z&2*PPWUtfu{ch>^hoLurRaLVEFNRsV_I~p% z!vh~~do6u^bLWq^=PpZMAB~dy%XMmFws0AL;_c5&urOWsv9jUD@4D09Cf=K|@NFf7 zHQUEmvv2QVfV*a&{DRDl)eN>PuS>mhg9TQUJhRW5_t$mG>K(3rPWG+&cksw>mMB-4 z^rqSDAFdtW{dsRf?m;{4A5Tt|1@yh$y!Z3lU;iu8m0$hZxe(^i-hReCc6T;c=+@{z zxb=Ol*VoQkGlMc7!QYjYW&+S86ZU@fP43;tKfIcF*Xw%qw@oz?Uw-`C@#V*J`^}D) zrSs*w#Xu+}(4Z?b{N$WRqT) z4%r`u2kI-nzufs>EpTlHBPhPW$rloJEDm=<*2an-eNxv@n^7Xy@RwnR7FhZ_zu=>5 U@4|eVw}A4Gr>mdKI;Vst0Ik`*9{>OV literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/claw/idle.aseprite b/apps/website/src/public/units/claw/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..d10fc3d00d4df72524f0aefb522cf2fe19215986 GIT binary patch literal 2016 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/claw/moving.json b/apps/website/src/public/units/claw/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/claw/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/claw/moving.png b/apps/website/src/public/units/claw/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..f91f544bdacff6b076ef8abf0e2208ace5254773 GIT binary patch literal 2120 zcmV-O2)Fl%P)Px-0!c(cRCt{2TtSEvR~Y^x5v1(FAZ}PM3rU1MNG4^MUg|**N)Ez$5G{x&sh85t zsW*>31bQ+cg2mnnVtZLo%u%fN)It&jqwc17iR^;bg9qtK(?jx4{&{&b^WNmWnbDmO z0<)91`TzI6|NrKHZ{7@$Awz}?88T$ZkRd~ceS}=n4rIuXK@HWCGos_(pzE8vtX*!> z*7rBH1%Q6slmj0Nbo<>KbWtriM*6NoylQY{m=8(Cf3@U{4j(B30N%dd32ZC0%LUob zM{y#^0p5m^z!YpKpsHQnewzl7TE%n>WZzR8lOm7?0g58PHhf4j{t3rc>eBN+fA!Qo z{`!~q0K#KmSpc{K9X?VF4Mf()XfPy6Kv2KMHny(9D&*H&<8d(QL(&2i#yj`p?du)m zahHbp|Lo}J%5867JcN2Hyq#7Bz#aMQ=wT!6U<*+dfYZwp!iU_*hTAPEBW6A;#_fFzI!Pnp_HWN@JUxj!;jeJws z4+4~C4Et>i`|U_omy!V3RG_pY%?UUU@v2C3{|UAQDCzj`4Z1ne9{F?sUK8Ezj{8|^ zY`PUtz4bEmj*O8Cz;+-eO@JTbNI;Q%PW<%)$8r6@aRBfT52%qpFERm|`eb_?$PVHD zy(aG8Yf9TKH8#nYQ2vz`0VjdvA%X`Y;B};pbpY`MAut`7df)u~Pwcx&zX9`oANJdV zZQ$gKUjYEL%(>Lq1OPbY8er(|M^OJC9p453eEZ*vu>e`@zYI2c=SWHX=Kx^XZ;t@L zDf@7KJBJVdY$^3$M*!$>-vwckedomI3l;qJ=Wp(JLF5w* z2_PNrJMNhefO`J{3o$^6@04pZB0&5D;~2PmX-`Q6b@l=1Dv;^>usHxDD*H^8K#CXv zS_$aciX0Wyk~8wo>$g1L-@0>ihI|0RS^z?~(1!Uy$GZKWJPToh2P@^TDx!{o$@mwi zI1`cc`on0q5yIw@Y(-v}#g&BHZ=>x{YyZ97PDyAV3o& zBEWz=_BrB+f5NM4>sV@RdXk>};bQ?zVxZ;qRR-m|05Sy<2g3$90p0D6r@RHG#LEbn zcNJKcgyKNUz!PvDyGxDDncwOR-r(~2EAEGU;(yEhq48546S42Q{ijcNyW?^Zg%9$h zy|Jvty~(=(V(hDofl2fR-JIVY27V!?j}El90^3j^703wC?Pyf^C7|e!?EktAz$w>^ zTm`7=T3tIA*!R`7a~@%iQX+Bz5~13E4jKzUZ#-rMSfc{s3xX!VW8W#)LdU>l`~xHc z7@<|eOl8RI)7UuWno`xJd>gRd!bopF`z)INP+;rxx8uuMyW!2gKmzJhWk(F^Mwk2_;SZ%D=PV6 zNJ4;A5r+VCPz4H1t6mbyuraU+z6cq`cBJ&-J*Z=S*P z@>x9C(|-hBdwzK8;Cs)xAAcGb5#N9F0RZqoQ-O4B^S|30%eeZuICB+@MS&*}`wrOY zKW&AjO;EBe(YrfaSS(iDHa2_!fH?cl-vfBzbRAFse&w0}263fd%u^V z0ORK(@`VZjxFTq5E3mi`XR%n3w%gs=vX*@0M^XYr_WelM-5C$M>Hc$@+y(~`&v_a4 z+eQ;HX#pZXk`Q3ghp6b6iQf+mS0G6X5Qkq35C=(sC%+9J#4+~cmz~p^`h*IA?5a1MUS)Ft zrhBh7N{@L!2}ic#Lbc?KM4_R%SsYiNu-~_3KS=?SfeUcHP>C)1IsYVdyhOJ-{Z;*4 zUHdvO1PMYU^-%>EA)1CT5z;Pu=7G=r>XUi{upg2VAokmy7y$IVBYTO;uumf z=k48%-eG|f$3IS1F?E^Y6zIK-k8`2xqg9SiUW9o^3s_vcq_pHhlryi>1^I;8ixsC{ zP+31i=*EJyU=tT7UdKRQUEBVm{Pyp^<`w_0wZHATd*1h_$BX;U+kQ7?0osTJKG<7K zsA4)R^+NK`)KAaX=dQi>%QnZ`mT`$I!x2G-!mZK!|IE67u~g}5h!cn6o0?x4$4YMt z2QY%C{PSRC#gyds=2?Z2%|;R=RF91Rvs3hTaAH{5y0dWBaMSsg@6YI&XR zw>kB9e=+QwE4hTJLm8xJ$CK|&N#}n)zgMk4`@h46_2ysaHE=2PF@R(zy=P3)Jy&D; z_~XefwGDTk33tO}vbM8J%ztD0cxUzO&a_YM^ZoC_To)7eeVOx#_r?vgrv6Un2!y&h zrmU7>zuT|h&sT`S9G1GB{X=cT#c%n6|LcD}>|gQT{#K>^tKX;Z?5aE76JKW^^YZIz zH&&=uZ@y*R!yYW0R#Tm|?8EE$L(0bQc5F&KW_|vb)|^-l@pX4iA7A|DrN93@EFAQH z+d6Dcx?Zz?S+(}&%V&MmtwW$;H~s3*Edr0;v%Y!7Tyo3K;p*OhM*j=+5A1oK9liRu z&Eh1ux;^{`7mPEG?LK$bywYyL)jzZ9{{+mgwB>%StvlCWQVSH?z+m#e$Nr(ZVe{ST zXMVi>*1gMKJm81iWp;-ka6DcAWasc^mVHU#jt^DRx8I-LvHo|-!|USHpPl`2?CR{+ z>-C?$Y?SQh>7Ti={@?xc+c)lc^4;L%_t^Tyu*jMAo>6c9YqQ6#=4EH&@7Cn*dw2cC zu}_mE&3{We)%Auu!@@`R|J*C{e}107{r&k5TX}nDe@u8^Y5c94;XeC^Q@@zz{oi{( z{{DNR4}&-}bD!u2(uKix|CGyC`PUXJ9&G*HCY_|KYKn@%E;$p#ROwn1Ah_)R$kppseNT>gTe~DWM4fKtIxL literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/gentleman/idle.aseprite b/apps/website/src/public/units/gentleman/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..d51c116565e98b19389dea32c4f7a77138d6a218 GIT binary patch literal 2081 zcmY%7U|@K#l!ZY73>g_17!H95IB;NK1oH(L1mI%SWL#!qVEFZs18ghMDGXvj%&vgq z1fa+%AZB3ziaO{i>D!sQC55I=%gI?ir7F`uslK3V_UcW??_Bu*|9_sk`eqBmSN>*S zYrWPfo4l~L{+%uReVX{sL)ujauJc?i&t}*@o8b3*XNZrTN_v{{qLuDfA9(-%-zFC2 zqdXy5Zcp*V+nHzY=NOtimk zb&K!pXZ@G|yK35J+m%j;Te+g;^Q*OQOKn0HdFP)`t$*7vvsotguu8}W|B7#ojenL; z_(b{sS2-3>m43DY)d4@>42t$>pS`7q17Jz^cH&z`?-E@E;hS5Fo%H z#85FOIl+Oo%InwvkBMwH3@Z8QuiC^P8#hb+>O9zd_V0;2WjFgx_7lDetd_s4Bk}*Q zUux5@iB}VfjXmV#kBNyL*)co7LP+}ijZ2IjbC<8-+6?`!=&rqk_#aQ+l)(_FDozz zvolVR@X;w)3bNGdv93HQg2LG$saa z25BUxaRI}%V$S8@OaFo4_sw3@L{$A6^Qw!^LF|to3%Nfwb}+p8>ViRxtPvZ-r7SmxHbNrNJK71&TZM9;AkdEn@2TX}fd|MQ8)Cl8*U;lOHGhAb5y78s?%E2=SmdoF)n^Et1 zu|MZ|;#7ehb}9A_XIWpi&TjOzH{*e4ojz-Zz~(!XX2By!6v^2rS?53hA)XYb3HQER zPyPSjcJD*`GdfBJ%tE|r&0m@gI8<7f{o4-8N(P1kY{0DK!QauJ$H&pk(BWpzEP3Dz z1LKU_7yq{Au+q>i|QFo-3Py!ymgD VXBZfKU#$H^l~@|hIfF0f006Cf;RXNz literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/gentleman/idle.gif b/apps/website/src/public/units/gentleman/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..2bdd024001212211a4d8104ee79a6b1a588a7ade GIT binary patch literal 9878 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 WJo^XF{=u_<@a!Kv`~L*br2YfV2}y|n literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/gentleman/idle.json b/apps/website/src/public/units/gentleman/idle.json new file mode 100644 index 00000000..467f1e43 --- /dev/null +++ b/apps/website/src/public/units/gentleman/idle.json @@ -0,0 +1,45 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 128, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3] + } +} diff --git a/apps/website/src/public/units/gentleman/idle.png b/apps/website/src/public/units/gentleman/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..f0b3c2d7d60e36b04ea734243d88b1a9c4f5e766 GIT binary patch literal 987 zcmV<110?*3P)Px&l}SWFRCt{2nlWe-Q5eVnR}?!)i47R+(wJ1RAa^Y(8COxqAO4m)z_9 zzW>+vzWeSaK&)7?V#SIT>wlCYJAkN3&1ja}dBfBrl~d+mWhX!;U(IM%BAId>bMot_ z@EF|Av$8L-!o3opLbF6AKsH~tMEGZ#0I|+i_(c-)1dyEo*?gK?fJpJaKJx^SodDT< z+2ZX#z6DUotMTeKJ_@}E)dY~80GWJe<3+o=$ar22sYw5QG#5)GQ=X;ADKefl@LuFQ zRW8=JjA4;z|4g@la3P+2j3|ll&olvKCqM?@Fm**m^ENZn@?h38PA(7%0E>FAgh2W0*;c+C%Sj}kA3{=&5O44b2AG7 zfZfx6u3VA+sVjif{L1UU_VK{rYTNj^nFZ{g_H(TOgipf;5c4Vdo=*WpFPCRqUK0pXng9YfcfQO%X??}`Lwyxa!ksQ zn$cjGy6@n+$&Kw)82q)qTXY}1AL2Ivy<+= zooP#al>B=(32H{e?eu+oIo@IILKOgkSAd$)0KiWN9GI_WG^<>!VPJ68PnnH`f7c4& z{O3>P@|eiwkw~WOSG{@w^0{6;u(vBGa(TZ&w`l%R0RSu~Crm!jEVqPp(fqsi01xh@ zv3>D2=~dHfWW{k^t5>5Z**Ki;UceRyn@i#60MC2VZ1L(7hZ$_Jo~PcK;jpjQjj z{x`PPQLmKH_*>tPf?@b~tpMi(aB3tyjLH0z{eCh(g^~2I9aQ7K7kfLzh@th4keY%j~}Rm@edNnT zS?k(VmFt&5BK*5nfJO&tcax0?(FOv}zJn%#H50)988`}j0GOP;Dva&LXYucQC$J#} zU8;!a1oS#TBn9>#bOOYRxP1LAywc&faos-Wt*G!t{UDUL|9=8v#Hhgarl|k`002ov JPDHLkV1iWe;z|Gj literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/gentleman/moving.aseprite b/apps/website/src/public/units/gentleman/moving.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..3b0e6e74c69c67ab2af5e8b9469e7cf6230d6bd7 GIT binary patch literal 5438 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/gentleman/moving.json b/apps/website/src/public/units/gentleman/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/gentleman/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/gentleman/moving.png b/apps/website/src/public/units/gentleman/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..b97fa50d5172c671e1b5be893b8f99061b94cdd8 GIT binary patch literal 1943 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 AZvX%Q literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/marshmallow/idle.gif b/apps/website/src/public/units/marshmallow/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..c3a6017935c6b840ce4c9555a2c8b3c32c5a5fc0 GIT binary patch literal 7310 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

7J$kmWPlKav$+@ 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 RjrH%w`gddf|J_(+{sk`UfAIhS literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/marshmallow/idle.json b/apps/website/src/public/units/marshmallow/idle.json new file mode 100644 index 00000000..467f1e43 --- /dev/null +++ b/apps/website/src/public/units/marshmallow/idle.json @@ -0,0 +1,45 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 128, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3] + } +} diff --git a/apps/website/src/public/units/marshmallow/idle.png b/apps/website/src/public/units/marshmallow/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..6f9a9a51f63e0a7426cdce816c10c33001863be0 GIT binary patch literal 631 zcmV--0*L*IP)Px%F-b&0RCt{2nlVqpKorOSB@WIy7)?yHL?f8ABz^)n9fVoG0vn%2`3Mka1{b4? ztBDY)CPrk_$<;)Ob&xBi9_`T{y?VS~LP83?-@C`ls7!)xA3z*r<{DAjR<6J@?XkAPYeQevb@!vb;=M;!3smiAV=?Ev%|9{$elah|q(NlC z&kkTL)7EnSk-q{Q#{n>EH{10C3;+yvKe2fFHgN!UUs4qNjpL&e7XS*ItH#62tE=1m zBi8@`#uCtMHO9`MgZRIf3Tw;8`OTG3AX)Tt;?ZvYp&ekjg7j9C!+`#XfZx+978qN6 zbb6ugNL2g7&}IHf&jJj@{9BnM$e++phe31BRMo>-RkHiXuFvYvk>r=}{{bjBvF$zQ RFSGyv002ovPDHLkV1mb0CGG$K literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/marshmallow/moving.aseprite b/apps/website/src/public/units/marshmallow/moving.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..3ce4c06c860657664a3af7fa6e35a4ae882c0b0c GIT binary patch literal 3607 zcmd5;4NMbf82+xMw9uw?ptLZ=@}o@MundQ&Sc`}d1T>RDV2DRsEGSMa5VRRu6d5S2 ztvIM*I)Vd+WuRc9vbh265TZ;JyMZ$Q_!(9){()GAx8qvrvB`p>$?kGZd)Is3_j{iA zdEbvo2jFH21+cLb0ssin%XIhvX!ItShMsTZxIq9w|B#ABrJ@0B(2LB*LgK=;px?~^ zde_IzX#w}6Rs2t4^Ai$O2PN@q_`4GK6{@Pwb+#f1@|mk^jhDM_jpsmGV5RfIzNJft zH_v>U&wSP}U&8S_;9aTst2`Ueskod#wA z1l7cFSOOB*{&m~B%Se?!%R}0y3a@&8j=IwddM zah^VB)C-JFd#V3+0)bCcgkyn-fI7|zmSg$u8qjHxb`W5nF(BQ zh6f7mluMM6O7xS(V~Ti$zWe+-2skB)zgmI8nxXmQOO}KwPfeN!18CXo5riZCm3+cy z2z4`@6O3x66G)rgc@QXW;ar_qCcLFy*96PQWU?ApN28rf087DWcI*pM&Cim7c`S7| z4@A(+8R>#yvgF?smvp5uWOmLQ2J>CC&mJnD{Bfg~z^#s>YW zd@>M6o6Dk%GEo2v7tqkKUgS#?0y%dYxWw^XavDv0pPev`vtwFjvzilRZ_B>xA4Y7G z-E&iVS96n3Isaf$;GM$&1B{g1Wk#*YK@FhjYR|LCy@bE%rP7VtNmmCVRdK($^6 zqAPjOJj=iz}=MjqROM zho>4scd~y_XV+@g(B(zd-XN?D$}_2Ci%a)StAuYXlT@i_LY46Ld|fk{dLABa3O#R1 zgK5lE6ZX8dMl)HC8%wy=lQo8!)aRpR*C^a6(kDk%#O!)aOakj0h?01S)OJxyEV>J2 zLxA*09Mjb7#t)^@W-_^E$DeTGZNX(6*i4z&_P%-S2!WV_|7tQhRHbNzw$ho%+__ikzw+h2{->-nV;-SA_p((!`M#+Ost*rcf%DX*bd;rI+LCLgeJh@o I$?jYK2D|N;1ONa4 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/marshmallow/moving.json b/apps/website/src/public/units/marshmallow/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/marshmallow/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/marshmallow/moving.png b/apps/website/src/public/units/marshmallow/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..372d32bc54d55b0ace345540f4b5e38f1045194b GIT binary patch literal 1403 zcmV->1%&#EP)Px)HAzH4RCt{2oV{+`Mi9s61Qo86B5(j3Fb@u38Xyly>&lf?DCrzXZ{Wy<;U{qs z`w=9-E>*;Z;WrTAJNOtNhA&2%s8Sms7D5-gq37myNiMmwdlKgd2squx{%3b)XJ?nZ z15gx2Q4~c{6h%=KMNt$*Q4~c{6y=IBifw?RDDGrQUYeetEv8O$S`)w}!u#X&IvsZS(2AF-`mK?lSX@-j2&tq z#_YG0<6UjQ$3yaaopy{k;LlAzzB9hp#fH`f4mA*C_gl*GF8V|CyUB*wae(@$P5Vs2 z_-LcQ?PA27G|Z5=>u%Eyz^hXZ2v8{liuyExt_L-ji+b{ueQ`Yt#nfT0Fr z?0(yHLJ_lOM6&#?rqkg|ga&?tZ+cDbm zX_O*M-O3hX)r+mKn90YJ>d%$V31Eo9ut|OH<8-Azv15U*@Y9d)sz3f(6J9ES7{M6Z z0Wtba9s7LiHay?DZF~*MlDxECH}A_3eO{+6Jr=XYbi@xsebD&~fM+1vYayTmFR2}) z&r8RzTnYmKxcA}Jg|6ju^zzx>?!K4HVmtu>037`PVeK_)1AxqR`A|N$5i=IJ79R`z zzs8|P!6c;w=_?G`WfE5|5O6ByA;O#P!vUP8#XlogZbr%+Z>>YVc6A+eTJ6qVMNIOk_3CyAe001XDXYk|i z->h8@>pBKB0dZUs(BAHTFF(ZeyU7;%f897p-I2&O={V#3YpdO93t%$#lF`~K#!~iJ}p5} z_u6l#D~^;3zR(E>V6zf1g~vhVi$|y82a+c{XYtNJvLr9(^LdFU%vq9`|GxOHq)44S zXGvb#_Sx-wy8ippCw8o~ z-{kv{c7zxMY_BfVIw z*DZ>oD$}zh_p2bAVuDj{ASwKg8yTq9{bSVMoV@aCCgQjKRM}$AI{L zt@<_D1#ofb3gGc70RKAX_R~{f?J|H-+w!rE&7Sm z?FTxTmzZ>0K(;F0f1e8$eml)M}PeFPwfip`{0@So{n*_7{Iav%YIq{(y{}~ zWT~4^co~XX6nxINw#^Q1kCc9s4lmDrZ$0Sv^6ekrBKam^AUdzudd;!vt_iczN0BnXVp1-ecyN%WJY%v|>Rjs zwJ)WQ?b59f)#9&9j|08$1WV%(Q2(cCx^gv4di&e9-Kf9KD76C7wrwjws1?|x6=LO4 z%rOwk_o#2$ZiLd8;L`t+D`e;lgXI7K002ov JPDHLkV1oPrw(U>5LnaSW-L z^Y*TNMsT3W@sH^*7cCIU`glGm>i-3&43__An=Gy!J$v+^>nn}EJgXJW%?~d5y2#89 z?23)i(VZc1;pi>jg?vrBcRiEyo_GBF^Lu;lf8Tufndwem`*W6+C$l&404>A|j%?BY z#pqOaEridu`=;xDnrYhd-1p}|>7NH@y%rwNj^CSFmvlXy`)>W! z6%3C!8Z4L;))g8zT(y+^_Tb)g{;hU#ui)YzjT^QM;@U4C_uf}b>HmI?<=gw)cW!OCUoG+VuLRu1?{+mj{kk+^@6N4(ul|Pr-F5Gs zeJL#V#Q%O~h@5uw`q9SLo5=^|?CX9?$=I9Ls#yFBdF|48_h)7Ll-9?W58nU$>+bEK z?~h$!F1Wa!`@^Q|e9z7@xSm(8cyIqTn^6~G;ob(RCtqJoe6BjHjSCcL;J}82ACP(M v)t=I6fB(iEs9*8LhT%PH!WsckBDo{abP0l+XkK7~h5l literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/pup/idle.aseprite b/apps/website/src/public/units/pup/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..2b8205495c9e27926fa3ec1cea1b6ce41ca81d41 GIT binary patch literal 1841 zcmXqHXJB}+l!ZY73>g_17!H95IB;ZO1oH(L1mI%SWK3gXVEFZs18ge?&|onjW>-LQ z0#M{E5VJ4aiMQkChSRA10Fd-bN{cP{+@|36P%eY1t(D}S@E zwO;F#OZxf61 zQJ#=2x2JgG?aZ_Ha}3Qa%>BGV>QW}HY}vGH0(V?0cUM2(`q>5#clQ5yWMmxd;Z^RN zy2W?)v;NEfT{Z2q?Mf%atz6Oa`PJIDr8Xgpyz|ee*1v6-*(?)#SS93xf5o@P#y`s^ z{5`$l^3K^ZAkQc;14$V84`i?~B;}`6;*!frO)thJmyw#7QVBGHRRI`uzySOY3{nUX zWME^cn3J54kZ>XRQaVSm7Q@B=`~8L0I~-pvn8DcQd6D0k`J_&pl6}3%-y3IsReDJG z6wYK^G}$S*a2Dg`{v19ZUJv;*@d{=}^Ck8#c$wJnlDGU@f`ZtAuQx0V85pV*_AGM+ z+QbTsFKz~DB#XHiSb-K_4!-n1KmFA=drcEj^=r(lE;T@aC%v1~IZm zYz&vO{EQ}o4Pj#702+gEJwF2v*!2z!wyJ;sw-_*sF$n#)^OfnVm%DWAfI?x(-xI$Q zUWNIuJaoXoazp=#)y$XdfRTB^QP1tKtdgMlTj{lmS zN?dAB;!A4fUMUsuJQBXtohNUkCgT6&%Oh`jmP@KJ{0#ZW+Qs65N$uB1W^k$mMbt-y^mp0umkL_6y*$2L{H|R|kN!N4mq(}CO}N|4eE2H^!=iVcH)GL) zHy0fLn5h?3B=@ul)@8(%;Ytiq{ygRcp;W_~;j$&%Yusgh!6layj94$@7aAQj=c-0!b{X5L{f o#R8to+=qTV;=H@|g@kSGflDHrstXc!$T2iJ^yrMHU7Ds{0JIBV82|tP literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/pup/idle.gif b/apps/website/src/public/units/pup/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..8f5f6a533d74d3a6dc18925780536e893a74131b GIT binary patch literal 8859 zcmeI%^-~+%n!s_SIHeSdON$gja0*4+(&Abiin|1NDFupaptx&-yM_dcySp|(g9a#+ z0tG5r?z?;M-I;sm?#}G~urvGqaLzMx=J^9Y^F0bm@?xSESlC$DzF1f+7!q|k9c`JH z8gfE>0=U>%w@=r1@OW=0&+Wnb%Ua*<;A7=i~$^-7~W;+i|-@U%ue{#$e$R|J>s<&GvuUZ_!&8{h%v~oK2b0T!6HfotQ*WRk)!< zA$kMDr#`Z;kTa43n22uHnaUr_5HPbPZKog@5f`;mPnjRuQS}#bNaB)i254sSdLvOI z!mmdlZt?U`y5@e33WKt2oza%V0>L+Z)P;uL14^XUgykkxdev)fZYZ#tLxWRlv(r)} zbd9GDS#5o6*>mX2uW>K@8~t;DpPFTB+#xG7s*QKEFQNTZ4%hNq)_9>z9J3m{`CzVG zyUKI|-g3B9Z#9;$hG;!rgE_oKPW(`DVHJmpF!3F5p*93UPnd&lrp)E~aWT$J^d~9}XlrS~xy7>y@gO4N&xIea@Z1zQWO#(VwoH*Q38<>Fh zmbUq~;Aw(U1*V=7g7+{wG1B1cOw^1tt*yaySmu_fqBn`=@-%=n-N4fKqyO^za8%a5 zr2={7)%)a{m?Ys4>$gDj2{%}xfHCC6FzCi zoL|eK!uo?$C60C`r^{v@X%3|Z9b5L)Hffp;RyKEF2NBs4@eXu)W~+32HZNwm9^^!P zLyLROv>1v7V;fkcX)2p*RFi>0XT!dKJ5% zvvm_O9->$(=~_>yXB8iaO~M%a4mQdSbz|kg5v2Vl{&QrYKxrNF>;lJ_BxH5l2>G$$ z!f2?Ab?TMJ6As@nAt&I&B$Iaj=i8g?cqsjE6WhDvQa_S^ll#wyARv*~TdN80#6bO5rg z>0xS=A)oMj06a#mFL9vFtSsK8Yzc+aRJTnIZNsKm%2pEMENs)0XcBLX;xoKEjQVLX zS7-J`~JHZ%am!QL%A_;0M;u}i90T(hWu|6+H1J1P=6& z1)PRGA}u0RQ0%41J`D$`77^mjnRlNe&8=H)|*ft8$roJjqw@a#n_UEfk{4miR?pM)ew7) z(XnZd?gNG43JFpcD6GEn`(m|Uy_+a?CkFfY)OEOnQ&z1OZeTGlfC5Qg>|`uuHp2v3 z%1J~<5KsE+a>X8JBl?oWHCUTO#_4^@EU76D?u_A=p+c#vbdSM&6}&p7XU1Ub*IaDv z(dibrX_w0RAOj_4BP3479ZBo=wsf_YS6bM$=9(hm{5B$x zP^7XBDcuEBu_ZyvvuD1Pc)Q|x0{XxWT?ZlZcF^+%Njg;)R|FM9EZM4hq?PL`BktDl zYdP+j)4&5-Rh-=txOuqS^@1bkYuPB|OfQIAKuJ!O4k5$LXtpF(G7{znS0-BYERSIP2oUj zm(Nw*2}kq>|9)F{-Vt%=uehNT`G_7IvcA*SP-EVg{N3OMx2)`?EhL)LGx!v;1H{*43XSvr=yDv(_r}fDmDCY!MaX;gS!vcMT^XT%hWtRNG_jS%8EO~pX z4CtA$gfuAEu@!$m-87V5q)fCBtebC-5(q=%Rr3$!I3~e!s!3tNK8Nw{$D)e5s;J<^EZx^5~ZZ2%VoM}C;SIT%3#n| zL`P+nOpRMzJmOX(!$kvDV-8)iJ+6Im9ShA6dvnO*I`J(>W?bfCNB+i<-HKa|Sfy;| zjof17=dW9i{Ag#Rnp){_yCB|imsKw4yX6R)n|9Zn!rhblY4Y$bN4z#LJnB7)g8$Bu zj#RhgTaH+b<|uC!IH?l)jRAXK&e`HHVjlqnN^av7*f}UFNSGlm*e@nki-n z>wN-UK&I-{Nd&T0h36FW``Zee79XsLdf58#YrQhR-HmgsB16Se79ex_(w(rZj z4RTYy?Ip5*9j`WSP_v*f5)~Tid<&>Bt+X@G&ogWTAwBcz(iz3BW$K;in$no{n*_f1 zMC-pbG4z)^{2DreQChnLcW%)z_T7V0UsbF<&tFP8-q? z^Cr=JUa33XY`B6l&-;wd6l}TAwI3a{TECkgs#)Gs9K}%y$TtpFo20vi!{nEjr9>*1PN?~Qrdmh{9%DcOoUgwWN&hi8BrYPJp zbZnDZSg+r?kM|VF9z_g9f2=}1BYy}O?0>)+A~@(lMrz*MKx(h`9>A}fGZIsndjwM*2gh|o#-J;{Ck|0jt`I=W*Skv-dM6cH;?+xCAhJJkYn#vFo7r%-j za0Sdj-KWYO8K>}kTLX+Jvr129BbmpfTJ+ZlZwowDr%ZVzlHc5I>MPBl_^ISKr_5@p!v9T-nCd0y(@8`p=xt%s!n^CHtr&*l$>~7zSSWnxfxbf4?N&w@Ao-X#eA2LpexycXDIlpn3Hk$9Y)w6zxyFwY1+! zS}!n4_#t5wh1mQuFMcbThb(&*Rz>b)nc>BShQoF0pAP@8afJ0AsV|INOVf?D!*a8+ zT#gh2B=_PUG5I33S3UMiHhz>9bv3>(AY9r2B1&CoTECKq+~w2V_-xS8D_6^|RBvsC zJIYKD6Y`wmUU1GR+ZbLyOX7fNIA zH9d3UmjEle%Adk1B&v+{xjos0v$)JtTcwbWAg(9IqpBITTaQNrR~lbTg1zmeGy@}7 zMvUp_e9Puh!~1ipiCaV2Ne>bQ90VT*=~9}HciUn;p;IeWo6BL5Fm^g1gw z{%UB`iADV`WV5y> zx6_QUvP!y(Y{N6FYE`B&!eMzmDC=D(LrRMkdZkNGw*)1cPDQb&p*YyFO=NQaCfDZqwJ@XfaBY>Elsi%`Dc!g7tZj1ek%3ZT)xy_x zpUD)3pjz`U^1g)P27M|t>ps(0{-%54h7%Zq%~05_0nFF>$$*7Lu-ro~pAw$7N3|0> z;_o(d{8Bm)Fyo(DZt9j2z4y}cPWo2AE=ceumfk|J9M&g5ogB}wY;xE2wHiq?Ci(BVgydhj1n0*;x@0s@68AQf)KtxGzae>ip|L3x*3ol1y3`ACt8wrBY2=!{nJNzF(FRe&5g&hSV<9 z?cN7q??a(_^G4TS_&82}ZlB5GaV4LY8>nr=Q$&Mcfte?$Q6oY-To(Gf`~NJHcpf4r z5N#(L2o;it>U3hS1QmOLX2_w}W+*NxzCGE_8#blM7cx=R%?B)pq!Td@?-7GSj_Dv_ z?29$@*T%jk#R%*$sY8Z5Zur$kvGI{yY>Ne?P4FEV|U zU0x9UDgbGl`gG7fHhJ<9po}r_#-{9_Ws<+Uq~j8OSl5lueN^91?RZpQ%ptkjfCD@{ z!ld?CawTNVpIM;lX2IIWt$xOi+;M>+oVDJ|BMqDdn_mRKz;jX=IGgw3*E8TFb^8-8 zBykoWVrTuZ4seZx@$--_p49>HPy{DFxEmR6JOtd|>Us9?IZvKN|NM>@djD;41IskOzN=DT>jfL)=!Ykd<;Hc~gaC&{!~&rYl!*oP6p?Yl3nkmto|W`V~r%HX9+} zC5y5;pP_yH%cTVSX+pF(OLDo0G;RV#eXJg5h_|Fs#_{VVEKdLZVez>`FMz-(piNdd z{rn=*LezS8J&-{|RLPf({^@-94?uIbvjVNwR(yt+*z%d_wNvB!CPw_!6zy6c48+rx zWN$CIO-iIZDUR&s;I*=nh^syGg5Gu+{}5Cs2OMj3h!-9tj<%5yK`^E_K9|q88k{_4 zh7q_n(Dt(t-FzLsm$-+jZE$$M*U`n7yHncY5ODcs)c>%=Ki&1WUX@i&h4o(BM&QlI zXeJ>_IxrXG8Y|H{ryNWgV_3pBd=Cc}v5cI}| zQp!Fmd_dS`Djp|1YPm=tn8st9^*_oaWr_np!>_Rho0Mv+AOqBmU;!% zYvXMhx3IgSDED91d7#4b#@1oHVnHfkWD#4-kpcJAK?694gso;aLNKUd%*3t!Q6I(L z0~rY+3ja;E3c`veh1=lbs=+=->p-X?L6H({@aXfh82C*CSs9~zUSjHG$PDn^#Wc{BUA-w0ZGs^&kQvn@7;^4#Afw1y{V z&cyHVb7x_t9qeV_wUif=yef3i^UVEy%>nFmXvET+$i3spNvlCE=re1XRp(GDC0aU} zTI89JIobgDiYjQQJ6SFlt^n$l)E!*roasDEry8-Fqqdqb0jFNeeH1rM5x^%ou<`wu zq7s_II>Ht-&T7b`1u-8*-Vcv19>4syUnIX?1wHh0;IM*sWPwHs<<{=0Z+wV1y?j7= zxw)$r6-$;E*;urCe$e~~*czBL;bb6Z1c;Aqio&^Yh7Hr}wUsWM-AR6HrU=v>8U#0F z*Hjm5qNio)=j%-uY7E1wIJW~N;h`6l?uTpfFujr{pUFCX203#)qYqsP;dO0qDge}D z%Q0el>`5k+mQ@lfow}_J;Vn59Y9eB#+0;y2X4S(km*SfehbBsw{n^E^9ch z)M=4hSnEwMb7F&jnFVBzN9w><*<9QejDSaYTJ3xo!CH{rA^U#1JiN)B@2a~@!narf zv9@F4>#Ps|6#2bFna##U8`tza$fX0v+n#n%$QT`|@ALjh3mcE_&4CT{qoz22(43>` zkBKyYLu@y!b;-?{8fw2Ed9^hAIqL))`r=)2Vefy$Zc0*}_yXpHRANW=v0Ge;qZHLzW*Cy!oi5wP^gD1l;3k0R1FzF|Z8Se@ z49?7)bCj}GxIn7X%AZzZy(1QD5&VV3Guv27@h+e8xIM>L`aY~(VZ@tI>wGG_jiZkj z>a*kNtm-+~(J1>Z|E_@A)a+m1_ZUb(Q)KZ?KGg!{JhFXsmFPx%u}MThRCt{2nmugOKorOSj=C^_Dy0>n3u!2*k*oxXkE}(i7}JHV3qzMGYsCU$ zg8^k==*Y%^7|Dn#vaqyjrN*)ZOG7s*wF43}HA8%d6Q9qQ^Vts8`$?8A_OpNQ-JSdu z0|Y@31VIo4K@bE%5ClOGM8UD932xMyUR;bb987gg^5^SU4sO(%-u})R|6Q^dLNS-_ z1zO!oDxDDYi`?Yb^D704^rqo;NRFqq+F6{S2df z0L?=ub_1hpAW$K{0@`N)CIx`=U%&an)}>9JZsrfV^Y8=7>(`zDLD}N`Rla0_%$>y` zFvs&hYkU#qmbM>AUcc6RfS$8~-un-c@q_bgsXYhBxye7BU*$ajR;!Qj{j|>~L945D zeX#(*84grpXVNcntN8bK&RC2!>-9_T)S@~d*q)@-t*{R8Fy(&@v*us7tJrhL-70=l zWKqBL9$?+B#?HKwy%70sIw^Vk_uNzO{=J9%chumDa`5+y{qsgf7WGRfz+?xAds5Jq97O@VPFJH$>^=9Ng!9?pzW$WYDFUrZxnqQEQ zlHb%5Ko<2&&j9`%B)^;V6AFm{Aeb2IfTXiOZ@&zg-xOKYpXg1XpImBRz>q(Ef6@s+ p{O2V7CXnqvwmz-z;>d5_{}&cRd7=!4J@4kuUX>@z_8S=5?b#P*>s?}-_9mf&Z?$=s zKaP~>ns+;9YM3@gGCO?JCXnGBITn=~t?EMGba(=PYUcFmh1|r&#=9NmX&Qo;(SY9j zUyTo)Nr3?GqahmZCy%K@SO4BG0Xzb|$nWd(@pkumUtfSXF?hpo+LQ(-eThE8K|g^W zfJ5t!0&4+Z9J&xT82|^T(s?-B1%84io$mJNpgLX_a8# z=Ty@q=ofGeaUcz3L@b~oi>J~(3FZK+waAargDHYFe4MT7CCJ9(YK;>ii}mw_VS9XD zZMB|BN<>I_y`S!Q`o*>MY0r*0R4bo3$oGM7x$V8U#K*rx+oe5DZ$`RU#8o1#5&8y0LYSjO`+t zPT4ol_YF{k)ytaNl^x>U_Q4qBl!j*$6yn7ffXS}f2Jrx;O}l+F;X}KPki9ssuPE+h?1s6=7l^?3$5v3&i{Uq=e8lB%pU$mPk>=;>sjK zidgsyCCXlsNE*OICZq$@Ac@AV*GNa1qa+Fyk*(L=vOpw`fJ>)8)s5AWG@Q!9gMJSX1zN#e{sSxnnb!*j!2DEsuWY2yp5gm5OMaQzj>`yAKpY}&}IG1RkpQoX4(!x8aynER-j z6_Y(c{HDvS+%UvV3!nXz=9g)W@1?+$ZCciTzJv?n7plO8vU(B-gjTzDqEzq}(8gD8 z6?lDgUF^cbE2@&@BqZ@G>TTD%N>Z9>2#@HX2gQgz=fwcmMmyQ_SM0o#Uck;85x0Ra z#g-^xsMTnSdW4s;g?pyF;QICxQ1a1}Nt~N$FmYfSglSlYM>INp2t2967Zr!1tF*`* z-WN;$Fg!&9coa|_33%P6O!}4$L8uO7?QFkvFO98qWZpa!EsJ8pfHjCi3@$+=1x7_6 zvIY7Ah@RWX)aog~TMO#o?D{;*u$Ph&+^QHq9kj=dtierd8K>hzCLXjVryW)LBDf0s z_=_iW-%%_>_hS>6mLsWJ^*Z>YWUX8ZCldkT^ci=gs3C&&FvMXxgS{&$^~IY~vI*0H z+o08Ds!1LoZxf5U!F}DyV^nabGyNHFDm=!^XZH8aT?&i?)yZtLnd}}bSA(9G#cDJ1 z!1qW3|GWI)ew`BRx?@#tPx(XGU_8lsY*B}s_@=bG1e^QT#Wky|r5Ahsvi1Om9fV&3 zP4XA{MN-HB6qf{$5rCK=>1v=n*3He)=OEhX`scG0zKY#=R!6p0FZ^IrR1+~u9Mt4( zee{0B<{&NOgSPEV;;I#-@PQXkUyewpD%~9~y%sLpmfo2o<5-u?w8RK`x{Nqr~ zjQz^2=$Gs3RhE@b%DnXz?fyMZR%m1iG3)+CV|Rae-E!&_mGcj#&V54YeyfNU zWqKvd{Lk!jFi>#=hxU_5&@IA@AJ{Em=7qi=OkWOuFiQ(@H@{?aILxj3B@a{cy`)63 z^|n!kc}rIG5FGQ!FZ65r=}(!BW4Phj6BUK7=wK%!w=AN`nag(Qlf&+fIbFk0jRqzn zJJpBno!n|1wlmnAcow66uf2o1;ZF%0JMfCx5y44^&@*NLoVu8aM|1W&eu>Lx*0G9N zFNR6?a+w|Hx=jF>{kCoVgmtr#L9(3@cY>052yGw^>g|bph9f6BM?4rAS8&5R7vg{F zo`U|Ez_#RI<4q`2(%nr-(*(vyO@;!9(&0pK?@-IUQ<^oO^5#x9Or+Q~@4;`N>u3h@ zUZ+-KJ*pa~M#okwd(TM@BpBE(7x1Ere|Q1!^out?9QAK1X^(yH#F`pLxNT@^w*CinnZEqj`s~?xQ=akvyIhzEi)r zaB9GDgflRmR6mZFm8i!XU^#iq7+xptnm*LEZ~ zQV)#W!SPx*s7XXYRCt{2oIhw=R}{uSxmj9hFxbX!7dx_B5-?IginKPRbSm~zx^!p;FU1{9 zF&Wz6p(P$1Q9QH+f(wRH3f&^;5=`CIvILb7G^CCrPqncP#u?HfwK_bV=d1hPeShzL zSB~xv1oC@N@0@$Tb3VO)GGH(m3 z;Q>p0)j0tDYe2f{pPzeH|Eup@asAA@udfC&fxtvay2*4**k7?)vXj?+bGQ^W0fH~YCodKN0Nd-UxN$4nRy7HL zSb**Im(pT~X}~8h7Jx}$Yw-?>C3$0K2_if&2b8W$iPsC`4`V=Ei~G{&z8C7>jqK!g z)Svz-To;5u2H=K&A4N8ju@F*1rf==TATX9suz3{V(iw zK};aB0RVCwC@MMy(Aj{1zwoN*Cj;_AXZ^EdUs+m4cI5p1ZCKX;g0%NQoFw={q+;aP zslscLRSKYU+|5U8_RA9f6xoqetSl|t%m2MUrZk6s)tyK8JOEb11Hj?QbNfZhf)M!# zK$Zi=LB=6aSp3EfSQp^{wN1FPw2Z@(=Zv?{Wo^& zsba~x7IM}+!c68N%8gmn4=;CZmmN8^-v_-55$hCycOZHtN!&xAI57d|xMjz-#2>ST zfBg3|d)-ovi%Bb`hg694^D;12ISpH#d82WNeJN8fFfkvi_WC8_~iYCu6>?0 zkMPmJkB)hF(_w3IA3xkI$4LP|ZyOMx-hcsd{d=Lh{t_YLi8x~!1S=4 zgN)+aXtp955Fn@V0kHx5Y2Pv6HWdEamF)x7HNeA;|Ew8rU!e@3v0G1N(%ClKVBHQh zoY*8JApkW2PD4FmSWs|I9|Nn1}f(oy03 zru%lJQ<(XWbe~M71H~l?0r(~$M6u>KXJW_f9J;1}^V5N9t%71{%)aizveVkb)WkS| zid`@=)g5UlP{9_<`KR7gs z`Azpkc3OKlIX+N!{-Z$vy9uscc`NnTvwzy6=H6-Tb>1D=W^wK9p;TixUII)3*aGur zM9TrN<`BySdcc5ebQrK-KB8E0FL<)>+Mmy{yc+N|07`035A zu}#3dcYG_dWAAL+`HYkt?3fg1aA>q^oaFdB0H!9!l@=k8i~)6U9EEr_H#2U_v?Um@ zC=TGf1LpM&9R)Y-DIPz!R0C{I(vAQCtFU&sWqk8bO^gE_hk~2}0MPvn#KvU@%QvA) zDAvjG0mvL>Hy#V$=368QpS_1wY3keVJvUp8oVT z0JZ>#>iLmC3II-y53Kdf;fbo#fG)Fv^V>)znRK?z8%?!Vq4Q1U4?g+rU*)M6pvQpR zU=5fKjgx@YpNx*agpxS@mAM@e=m;RdP9wQbP*@Y9(-6jlLLc_TVana)l>YX-SI}iZ z%)Yy701)b-43~KAe6FCh`Bie^66WC_j8OeQ;gX7F@F!_KMDbKy^Gb^U0WMledmsQK QaR2}S07*qoM6N<$g0K@*t^fc4 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/shape/128.png b/apps/website/src/public/units/shape/128.png new file mode 100644 index 0000000000000000000000000000000000000000..95e16c434950439a59e9e115c0b5b826f92b4f20 GIT binary patch literal 816 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-HD>V0z{0;uumf z=k1-1St5ZV$37Zzh?Q|Qg?Wk{T=0fX`k>wC09DEh7XRuIqiVZA_KU z>-)Fm=fBH0Q+7@ z;Q+=X5H*FbuW!2kr~2^T3$N|{?$0QEY0D_;Aj2r&&Tu65O*NBd?)snh@i$Cs-#+P< z{4aNBo$bBz=_WVKKA+vIzJRGinc)#f!;UxA4a!#S-Rmmxuhk)z`nh+kt|KR)U z#ee?)JY83txdNopf=OZB4!HyIi>H6P)AMI%t^QW=4OvJs3a8=^UoXjja4WdF=9SdJ zJArUl+8#K!+CQ!4%a6PlKSKNkZ1e@kOQmY=eNyPHr}^&U-Gg0e*I48|9-Z0ync@F+u#1I{f}SfT)LNXt`Vl#>OObJ zx}O)HGk)1CKffx@VXEW(uliabhXW0Jy@&nA-pzT(9zVV@>;3hL|G$=<7wCGm`*}te zT>E>*W5<_o{rz+GvHE?RoBysk#|;nZvhS=vUjO_1@7L}2`)4cuJtg@toyfd)RsAC;ws``eDxb$0RPWvcKic(^629^mO%eS?83{1OWFX BaE|~0 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/shape/idle.aseprite b/apps/website/src/public/units/shape/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..e9fee8d33e8c863cd552d391de6478836618ffea GIT binary patch literal 1978 zcmdnR&cN_sDGP%F7&0<2FdPCAaNx+m2<8hg2*Aat$+*bG!0_uM7uZ%Vpuu85%&vgq z1fa-SAZB3ziaP2k>D!sQC55I=%gI?ir7F`uslK3V_UcW??_Bu*|9_sk`eqBmSN>*S zYrWPfo4l~L{+%uReVX{sL)ujauJc?i&t}*@o8b3*XNZrTN_v{{qLuDfA9(-%-zFC2 zqdXy5Zcp*V+nHzY=NOtimk zb&K!pXZ@G|yK35J+m%j;Te+g;^Q*OQOKn0HdFP)`t$*7vvsotguu8}W|B7#ojenL; z_t?rrO=1E% zhzH4mJU|}EBnJjt)xZC57%+=52)VOYm&>zWeo?hyrRinf*5nl19aps8{Qn=Hc}~=z zcMW^2t&i@esu^-KswP+`N~rJ!wf9ZDIyuX3<-78TqG<^~7PJeR*>3pY9^Su(UA}Es zdqS0ipE!f|Z@&c&U^g%`h@$w08SEQyAT3{Vp5f5{MhE^=?&;P#mfX*pGbE(j4(HC1 zU|0~Q=ur+#rN2J1fD<$e&@7q%=o^Gvp>* zW@Xq~;{AcrU@skN!Hz4fb7Q3Sc1Gj70TyhGCAKfJM8Ez2zux3I*9^Do&Az}CUSg}T zr~G@M0b6JDm4(R@EIj0v%?tTFkx}ov@@im87jxz>`jHUazmEM$TuFnBn}O{PgKZWH zEsn1kq~>T?BLW>c5fPu(Yv~>6$mQ11P3vyp90w|5@C5tO|B?+1NB;4%R0UWH+)g|h VX&~=%_=bT@-s2+-40|?Qd&mF) literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/shape/idle.gif b/apps/website/src/public/units/shape/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..f4bf712d70603ca195b0f11c7c7b3416d3bd43e3 GIT binary patch literal 7853 zcmeI$RZtsHoA7apLxBP<6fatw;?e@8xEFWV5F7$QTQm?{0|a*n?oM%cr?_jOP$+Gn zWc$9mvor6^w=?_6#a?_D=bV`{&;4)ykAjlCsE8%n6SOB_G&Ba(Q*}8VZJ7@ma{N5J z7*Ejte*MP8KpN{odZeNc$D& z>|7K0+xqh1&m#&A1K9w+#BK6Hl5&`o$?IfON>Be|V&DNJ7 zjHh&}t+hM-kT@x`;18+3f3md>gUD<`Hee=IMxu(w{)SBzxkLQ z?6Kj!Lzt7-r+N0Elc_<@^vkU-;OFjG>Bc6x2EI{so&dtD-KzL0->UVS22f7+dl3db zBxovAqF|%Dj_duUCtK))(q^bNAN$^T?sR;hKmHJ2*H$iw>*~P`EiwnCI6Gp% zaXaWHW??!Q>@Jr?`A!#LsVZg*m=EVx`jrO^!}IzOLI7#p3S>@T!})yJwf8EDuZ#jG z>{pY44sfscI3(stNcxj_yqPlVD6X%~x{3XS<@-sh!YBL58uIK1DLQ%%2dM^jQPY`-nRcdr(*$9+1MJRS|!OE_Xbr98HVe^y5~ z^I6plx62=+p>tj-49?N-{V()st~^VZ%C9H_Hq)+#sK5akK}WE302-r=Jb%M$ zm59W?Pk&T+D7n*)EdqI$SsFTQ7bdnRFHLCDB1E-Ec4pr>lrhZ7;$#b$s>L^u>|Q zfgq|c39jb-p@7~gN&kaep!G5UqGQQ=o?dGN_PQQ8%2oxeS$&BRE?0u#*$nu5PX1iA z+o{?}3>xNct+4yKaj5|s?*i;aY@O2W3p}fC8FC&J1EaDtm{yOD@*;SU$3ym8s({#)x&_5DTX-NpT756+v1?*lJgAFf7NYaXsAL@pnG%qYD1 zbF-lD`sY?ExKrcX*9JNNJ3RMikH(d0S(`a=@h*?F#|mahq&xlk-mYigvxtWeNWzjo zWv3O2V^+JlsK>PKfx2@x3{_0De&!xb@1el^cX^#J@)2%Ij^;l&U-lw&3qH;&n_z~~ zH~B5~f-D_POM5LIkHK&74x>Z1$CkXL4a5dA#==Wm^zgu?k4oP2PfzJfoE zfRGjlM2_&t;S$Q1&RKfdj3DI1N#yz&VLUP6l{_eyzDR1WQ1a+S&Npz97_G5g3fEpa z0lKHLnp%5QKW5}bkoa*~(pH6}B-|RBb$WUWuU_0Lva|4nLfJtD^mU4gA1O)6BeN_S ztB>pC@uj0+$U=edE7J5tBcbFm;rQ&UIoN#~rqzl?=udyikn-cEz&q&)ePJz3exwq$ zviZy;bv@$bQ*tbzJhXwrUO_FQv_6{G{EA9+wS!C&a8oWIAZ1Nk!sDi2^;hC~mx z^BzfWOTe9N6At{)%tiWALBkPlcV&g_WQ#-ZZM{0bDTN%0hD?b&%2xr83b_vi$L}9} zsr~S8@^uY;ywImfx1_i(*7 z_y;jd;Q*$uT=s9C&Q2he8ckT7->pWG#iPGSXXv7F+&DBEUax{A32ZyDd`({?Uxe6b znPdgLW9mYZ)&%!EAN@>R-#XN59?=uZ@_0{gQpwL-7SLbq{*KagMIG$Xv2mP^pk8|A zuw1()?y4n3y}5#|-?c>O?Ej@=?ZRljZ9M#=XLPjLXUn*Dl*Ihd^?2^215raxtAK=^C zhWj5hr?%rZHtCke{=?=8L_KI|SbMaka`k*291ra9YwX7@whSgY>Qo~=G1@Mm7M;ln5WC<%IiTBjoKFhz+;P7Iri_!G4 z$JTN}emt#=`q)9wBC>cAQFT}iA4LcO6!ij?Vy06U$qtOT z;bF1IoH+{Dz3k8ZPjf^~f&|L}>UI7B3}wBaC`=N7+bjeLv65+Qw8nR>n#&yRMz=c9ZY`QN5F(`|_TC=0~DY-8euaAVE!9rMofZwEBmWDujrba9fv?I0U)p0;jJl9~nZPRk{|pr3hhL^B*NgP~_7rNGpcqWl_N++g%Y zOqoyw1ElqKp2nD)V(Gb)bF-Rh=r6BX94NQhwAQn}-7=>LGLd(lV0O0&fz$QI4F8Jt zmW0n~l)t9V7AIlTgzdgQI}hxVo|*CBjt>Xi4Nzay9#Cn@2Q31)GxT2%6m!dg zh(VytNhLG6zL3BR6)McM_S0MT=a8|`P4pchgI1mm=I@`MhNTgyu=Lp{Bv8MvTnT_g z@=)#~BKDLS(HsY5eT&baf)j*o^e<~UP(wSqHKGMwPPqJdR_umjUk4ep2IVcKIK{LD zGbrcMaqOCA4F~(eNi{*(Z+RSJ!A{n6KWY`yZfE0xI%~I+nnw5dyv?;*dA045;tD{aVO`7^rk{idCzU za=TSbtw}0R;lQ{iGU>VEKye2Iuh@!;F(w;iN%;ZF>nmHyKux2jfKN%?n$MVt{_CYc z?!MYL8|^HU_2Q$q=u>Xh$B9T~iWqh29&p@qCF0DZKDXcoe=QR0+7D!fU7LGB``}<`*j9J=V0*J8;*C}O>s|H3^ zn9Re`ItylaT?pAtZlhY-^wcT?R*zT7Ig=ZI+c>MFvRT~~7!2_&)ky?%NnP~MRO&3% z+x2sO6jZ@}0R3do#j0A8DNXd}DN80t+49E0wwxHTjv`x+3T=Ur&aXqMH(p!bHPRGc?D`?~-$C_D0Uj48 z1K&-*HAi)<+LriX_?T6ZmUr)Om^*^bFAXVkXCHiUU z9`O9k`ku@}P+PlhXIIyk-nzWO@lW<61^}Fu)s?w9$fp1L`0%3E^4Fu|ovs$#(+j-4 zeGQ=9@z1+ozmfMiH@4SmDT7xEf9(zhzShKOmD%q2Yd43Wz||`m%EP&GPqsR1(YQO* zuIUR9#Jo9_PP==2bb<+(@;8{iwWA5ZT(*S9QIX*BYSVIjI3yt zgH+e^<0)0CX`Ty{Ze!>YhTfpXq|uz&3Yz5@P;kksvZ?%Wu1|Nb`M=8Qf45utP`Mdb zY?Ttc#s6amSW-_C7ydJdbch|ERg$A0bTRL=Qea>GJcDjU_!dv++@-5vutS8)xJ6?P zW{ll%yi#MypdjdPbhN|!#^0$bQjpJ$+EIqpaQYlHnW2rpHMQfY8-EVtUsTU&eV_b& zZ+w`%p-cb7iS=yjW1@iVT17c)9!i!bmUTt{0#h_kfqvE6!t78CFcb2kuTW3roK`Ov zOWNz0L0u|*Wj;di#NHeaS8ruDl(oReQtR=Gb;$SkpXJ@B>`RIef9sjnO;3@&guQrS z7v6mbN^EFIj2y6MKTi3-m(~Aa_Y&S=vi52@dXDS~Wk^VO(A}irCo41nO$ZUyo~}0? zK8_dE07uD_9DTK<(2M3M#-rG>l&R3x3ZI=fsa>8uS~&{g;8aZH2~5)4g;8^M{I=tC z?P&@DCe%+Ml&e~>@7L(g&;1G!eq8oa6+N9mc2wHPVLn$wzUZ0_EFA*lVqMTuK2BS$ zZw7kRnwBbr)av;%%R>E_%-VIT?=?C$?e5NDB-JdMeov{^th$ei1}=jhb9`n3a9O!5 zKY*!{UHutlfBm-G^>`f&)&rE+)V74&?)DL!1KJ_@VPe>+-p)p&hO zStwGy*I+anIwtsr1Dk=Njeud|cizH}j*X1425mG)>zi3l(%9)aA0^c%Py;YqL8M_O zZua7H8*br9V~oXH8$woE-UXJeijpa(&m2pcZ;j8HhS_orMRLLOhu(01lylhveFLS> zCOHjJab{Gg5#5etp`6IRhswo=Jx_rtR#f~$uLIxFJsHRUgRK5*cb6vJ^DzHA_YERR ziLLlt?DN^V4#R`8(wc6x@c4^vxwzUlia#{nTMF&UpT@b@7Yh!!y_Dj+9Ye zK7=iqhA_?z^{#Z2l(SNFP!_*F-E~@XMtEWH!?=Z0WvUcFSHomYny4v{q&GR0*qn7@ zpcPWrr=HE}LCYNKt~G+d5v~YNgror zyQ2zTxXKOcq71GaWw~~1;#%dHy*0_qX{OM0kNbg7_+lB(rg7{Q5yJJ~A?FzS1V?Dn z1b)(n%mjI`r4<LOjo2L&7|(h#40Y#QzU2C1tAlXx2zhKN_EYbb#-a}AsQn0|G@ zkAG7BjtcKHVU`Zngu9L@JP`B6*C0#Ds;@%%r_V~7s|b$8fm0>Q(;)`B zWm4R5y^JBsoB z+w#f@o1`#Erb_Ggp3!1+L=&>S3h<8IIDXE%f#=r5)%|s?&Es)=d1am`#vV zcS^T|mw_26=8qTp@*|P|KcfF7qMPmi+0ZwC8(IzcV14~}zx|JhenlCmS~)8)QkyR$ z@NJ5IJwM^&pg+Z`EqRi^V^NqacI^&Zy=1#BT4{_FkrKOnYd z@nA~xC3t3~-`dXP0+31m4`RmSzy|k)0*$WZR%G5douqb$iM<2E!yYV)yvIGykX^ zLEMHC1t92g2f6JPu`H~km-}n2$a0t}nS80wo8bTB!dcLkWi&9sP4Hm;Yqi7Mu z(w&|nD0S@<5-ofhv9Bxtzp>x`3vt^)lI!Ryb++{C?^zG#rX#gPck4hjm@02CF6+myySS9smA7VD9(tP8;Bh8$kSN|qza zTAGj(6*0M$;s8y@ZroVc3&D^+6`lFdl zS@5*9VJ#a@N19u}pH@U2TMM;~@E94Qt}SY1mr zZU;R#X^FERz5D4GiPQRe$Ilh*caQ(8NANzCYPU5C&M+*;nwib{*p~Buz2E-#h%WW> zSZ)9O?9;_=i`u8(4-*&e{p3}Dd?s&dbNNrt&KSQRmM-Ux|ACI5@b#SR#^0}Cy$^W8 zOY-2E1%Cuf$ubjzupaa=WajB7yr98zRJxq4BvNT)>XsxnL{+_G*JVKf6f2W;SCM!MZdsYVzv z4sI2hSrlaEgH?G-y2xvk-!#GS=^`UcPTo@ROjKtgzOFC5lAlM#pp~LvY>IeDym2HE9eAVp zmg^=nEPs{7K8hsESq=Vq)6 zkdoO|`*O~WF3)E|&V`G&1~p_b)`%+Yr5E?}{DMn$@rz0}rG3qx(yMah{VULtm1Ut? z76`TMvkBFAPZmgZo5XCZFirgRnx^=xW3)@6AC}~*l9W6<1~XZe{Ac*Td$)q#@~F83 zMQ2>(S|05+FXAKLY3|{J+q%6ny*$^}9^K=rUZ7W_e>pR0{IKlV8hGTprN5bCC)G*p zbg3eSX8zMfziWf`O<=F1vD+B9OQgL!lB^p5 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/shape/idle.json b/apps/website/src/public/units/shape/idle.json new file mode 100644 index 00000000..1861228c --- /dev/null +++ b/apps/website/src/public/units/shape/idle.json @@ -0,0 +1,45 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 450 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 450 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 450 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 450 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 128, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3] + } +} diff --git a/apps/website/src/public/units/shape/idle.png b/apps/website/src/public/units/shape/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..299bc061007597fa3ea632480aefb65f4b2f1cd3 GIT binary patch literal 817 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/sharky/idle.aseprite b/apps/website/src/public/units/sharky/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..bb997f24ef24bcc08653160141eb0d6046949339 GIT binary patch literal 2589 zcmb2;Vqkc%l!ZY73>g_17!H95IB;NK1oH(L1mI%SWXxb@VEFZs4{R$R&|onjW>-LQ z0#M`>5VJ4aiMQkChSRA10Fd-bN{cP{+@|36P%eY1t(D}S@E zwO;F#OZxf61 zQJ#=2x2JgG?aZ_Ha}3Qa%>BGV>QW}HY}vGH0(V?0cUM2(`q>5#clQ5yWMmxd;Z^RN zy2W?)v;NEfT{Z2q?Mf%atz6Oa`PJIDr8Xgpyz|ee*1v6-*(?)#SS93xf5o@P#y`s^ z{5`!v2ILb3pr_&BKS+e3Br!7wmt0P2dND4!r2LdhTyhzyi7AR8(=qJhWGKo^&nQty zEXq~Ds(^zbCp8T$?+cV?1u9};kYM=F1mu7LI|DmI#hlB*m;SG3Kf;sYz_0ag_AXYv zejT>Qho3l_@F<@?xIu1~?TfU? z91b><323GOl9}8LTu?LLTmQaU@8rP0;$2Rg?hLgheT*C&E7?02ul{T2E2G!fllbUG zR$=0ds0q6o!@RqyJp;KJ&X%yRtpOX$3^axX$ygo+UZAnb2@MRks(=40oN-`bSXuov zpY51I?T;^quQX@ezoPrUHr>8Cxx`ih=n3aFSsz~>Tq-tOuH@?rhSgOvSr@-5%;rsc z%yc5rZCzE&rx!^#t~}n{Eb?{32Sv5J4GawX1ij+i!FIC%!&nf>ZWabkWV?Bif1j&k zJNBX`#mq`Rjm^xir}s>{!zSxHH<{0{G4TJjUS|U~hLu4S#TaI=F`%eB&%nBG^ZdWp zn?GH=X<(;k*3*BE?PdE#2E7|Px&MHf?bk;(aK2;%ngdG)tay@v2QV419on}t`oSjy zI}YW~6OUeenh?Q%R<308#ka>**(bX{V`kt#Z6-a0l0h*z3`tK0H_rzcnAsX^zHs%? zrDlI!GusodHZsP%`p7s#ZbpA-b8C#ec8hkw04T6L) NS`0vHgOOPb001q7Q>g#| literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/sharky/idle.gif b/apps/website/src/public/units/sharky/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7794efaf290662fe63a8361a3487e4d5bb653f2 GIT binary patch literal 10078 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/sharky/idle.json b/apps/website/src/public/units/sharky/idle.json new file mode 100644 index 00000000..467f1e43 --- /dev/null +++ b/apps/website/src/public/units/sharky/idle.json @@ -0,0 +1,45 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 128, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3] + } +} diff --git a/apps/website/src/public/units/sharky/idle.png b/apps/website/src/public/units/sharky/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..cebbc815665a559719ecda6d4897855e81737960 GIT binary patch literal 736 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

(fGP!&MHPb3Rsts4Mltf0`miG06Kur) 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/twitchy/idle.gif b/apps/website/src/public/units/twitchy/idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..2f8efbf72d53c4d01349e81b878c31f60fa7b5e0 GIT binary patch literal 8677 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
    E4kq{i@bGmDfLR5yCsF$_!h@~R8)9*OZEeLwQ@ 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 Hu0mjfKj$jt literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/woody/128.png b/apps/website/src/public/units/woody/128.png new file mode 100644 index 0000000000000000000000000000000000000000..b75cc6cb2e6559dbfd55540cf0a417a5e8602c76 GIT binary patch literal 1124 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-HD>V3G55aSW-L z^Y*U2$J9WXV;{GBbWB_1v9N8C6qnQHi~^0O2SpFf)OiI%5}Z6Nws@>`^>%I%F>B%F z3v_l?@wh1D65@O%$yq|L)$OH-W00=y{`jhMwXdu07gz6_|F+=1{qs|YEuY(dpL1P@ z8E7>s=*^0}DEh&#2p_o3cu&G&+lEn)TTWzxE4gPILI&xOs}cGx@+m# zFF&Wxx_mC@{u%yYzgnLO-{OV6`xrWu86Jg+#4?`${*!&yzMaZpS2vpdw~t~dgy_5@ zq44bDo9l~K3vArUE-@bpBal~h<)_2!4G8m5tLTzzpfG}e|eP*aUI`8*;+xo;) z;_G{!?)ta$p4W%EUNe0Mn8iUd%rpLe+5J0jXF1c=vb%fVU%q;Q3FHZmh8<7t#b4gF zRJY9I(tFM`ckX{V`{ebaSAn8%&peV)xN&^`&8+)^A?wzdKmEATe_74j(`>E{p|CRbzT@XU*M3fz&tmQ#XV`cCd-kgud7B%>x8n|cU1`mC)6mJ% zI{(yh`F93SpNUml*6)8^ey;WX`zf0_qvt1XFE=czy9hVn;b(@pH#_(2OpW$^|NQr# z851YH{k)tnmP5|o`0u$X;y2s_UhHAeg$8)^CqsufJMGizu6z}60v*lW@Gaotk{ZH{f zkCT0xWqdd9Gwt#!lUs1@{`PBdj{rj=xmkAEoGN+A%b`}&URV78d)xZBxaB50gp%(| zkAD0Ad*}ai&1LH!9QoaUaBoZ9*?INx4ciagvpu|?y<;!`f$R3~zppiiN9dK`S*srY zzGC`1O3ZqTmizg6e06qJKchZ;-g*A=vY3+j^Tc6+(`5YC9k)2QYc$7!GOnkqpUXO@geCwG C91_p~ literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/woody/idle.aseprite b/apps/website/src/public/units/woody/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..3770743cafd11407ec7cb8f22ab15b5f07186f9e GIT binary patch literal 2091 zcmdPqU|@K#l!ZY73>g_17!H95IB;NK1oH(L1mI%SWSnJUVEFZs18ghMDGXvj%&vgq z1fa+%AZB3ziaO{i>D!sQC55I=%gI?ir7F`uslK3V_UcW??_Bu*|9_sk`eqBmSN>*S zYrWPfo4l~L{+%uReVX{sL)ujauJc?i&t}*@o8b3*XNZrTN_v{{qLuDfA9(-%-zFC2 zqdXy5Zcp*V+nHzY=NOtimk zb&K!pXZ@G|yK35J+m%j;Te+g;^Q*OQOKn0HdFP)`t$*7vvsotguu8}W|B7#ojenL; z_(b{sS2-3^}Rk#kk~>@>42t$z`M_rUU{_U{zpX;AW6w_zw(E2;gF1 zW2l&OIr!55{Pb6CP3i0Ju^cnlCl|oWQC%_h|99WJO~Q*;H-9YbT>MdT!Hk^J42gAo zlFSS-vFUL~fhMp5BY_PV=?DXb8MuH3CMO(Vsq*^uzw==U~uNF!GEQ8cAY&5RS9)XGdVxYpRqmh>%z|yiRRT` z)i&6b@CY4G6+7dXvbp1<@~*fUH=1b;JW&=~` zuaC^�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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/woody/idle.json b/apps/website/src/public/units/woody/idle.json new file mode 100644 index 00000000..467f1e43 --- /dev/null +++ b/apps/website/src/public/units/woody/idle.json @@ -0,0 +1,45 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "idle.png", + "format": "RGBA8888", + "size": { "w": 128, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3] + } +} diff --git a/apps/website/src/public/units/woody/idle.png b/apps/website/src/public/units/woody/idle.png new file mode 100644 index 0000000000000000000000000000000000000000..a68fc7f170bf3e218658406622b742841a1e8811 GIT binary patch literal 1041 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/woody/moving.json b/apps/website/src/public/units/woody/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/woody/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/woody/moving.png b/apps/website/src/public/units/woody/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..15be49f30983aa4b73dd2bad273343adf9a7d5b1 GIT binary patch literal 2179 zcmV-}2z>X6P)Px-JxN4CRCt{2oL^{DR~*N`5d%^f{-Z6V4;^Wh2qQ7d9?EDL$ijvAHfScS6sAyR z5;`BYhu~ryeQ*ydouY!PiW}0xd>AWSIs{Qh(K19|T3FXD4`!?4^hpLOyL(7}HzzkY zH|Hex+>_e-fuPMjxxaJH_xJnWbI(l+`1ttv`1ttv`1ts2AOfm8;N#=dn8O460RRiD zYX(pICo7M+YTGw}b->|){jLk|v;K&NW5z_+Ca$)bXa8~K!e-v!vK(kVpt=ATR@eB2 zN6c`$530xC4yexmXgFrPAN&_UhnuGrTLH*$AYN1opmN-z@n!Tu_4wPxfK<*y#Q^xY zTioLA3P6?v@$&8buVMm7xDxU((X~lR?4Mu0=4$uBb~XACGRCiZ1q7(if0nbSjv>(h zwqu)kD$8{)ZUZ2A6A{=VdTK{h3(yV)$Rqq`AAbS2=N@Q}@$(?dfC*LkFAHG<0NiyT zQB(?`vH*#ADvL+cIfr9sq|Lo=KqXY=|JhT=aN^V@^ZZVEz)MpGpc<71)QEH6$t%Ei zV51t)n+pHV5=sIPP9neQ1<=efx1i#?{oo$IZrY_Jwq4?R!3NenurG5BcZ;>Fo0BJ!=1Y{OZvj{b`s(a#Rc9Ve z=iXQ`8jV{LfxE>mHIKpm9^YMxjoq^1*1(RD%;(epeych5rlTnT0|1PDnQM-XzQQcE zZHR~g1omaF8Fu$q%{Wi1cr1Wz0eU>{^8DAQEIi=;H$2l4g-1#LN5e4#074NB0H96k81L)A@f`)cd-Nt2E{~Y{6XmuIABTzn}RrWxf#2@eLz)Wxmv$+ApQ&|IO*$6he0Rf8hpNjw4>M{V} z{O_+3ifHKSF2%h#eG<9!EdYRqMYCNaxHbXVL<~hVXp?yWl_UgU>p=85moUmN=;>aJ z_jO?N_I^B?&Y7>x+xs!z*8x4%!u8vA%(N6X`nhGPbe>)Glu za_L)`2@WBD@HDh!CuV{}=<4n_#h(cdVJ0{P0N8Wsl6f9FM>HHWMEgUZX?Fb0#e#Eeh`nC&@&Wb!J2(*0fu68{$fm3wd610b5Y zC#QK789#lFod;e6vO@bDUETdP#~K-MJe6(v_X6tWztbGZ$p0rRj|0(g%wY36p3-q; z?gsKGng3McD&Cnqjd)_z-QNZ*JCFfXKkqFisg9|{BCJX17ODlHA`~gWR+!BVAeo)7 zDt;n6c?i8feTh%z_Lx5d)#8sObhEu^^0$itsWM<*WaoerSLSY1<$#qj&f*6I9|Ov8 zpl0zx0J|#|Zvi%YwPTI8nfVhDzaAbINX*Nd&%fCv=^To0O;P(*8}tE~Kw zhGWLIo!xl-{1HC-9su6L$mhrLA%L4-U%+*|h4Yhnq1a6sfb1l+!)pPog^)U+VeyZ@ zxW-PmEb)}?S|ZTqnUna}zvuspF;1v7AQn{y>_lNnM?9sMzYE|^{zt==zi+U0Z@TK( zk8`Dex9&|NeG;mtJ1Fi><%)083Ta1`#W5`M_cE6`?0}r{N5e6r_rQcHaPNVMnl{C!_Yv$FG~3AN0|0nAeu~K$un~%Am`W@*)SmsU z8+~E>(6R$r#q3qlQB2tX%m*GAKV)<^#4#qL$GJiwq5b*eH515yXx8XL$v|b z6QTI@J^;8rel{i>gN1}=b;;k!xLSy+4T$=o!ho%PXjF)9&pS}jo;0>z?I{PWZCd^+ zFm-~8+X{7r?Et%EaSJk`j?Q>hqO(h&;?w(h^}^jHA4_RWnVRR=?AT?-q&T67W;L49 zalkA>8A(X-oszFo92qHpmWy2iv)WU?y!bni^@`ES7@EOOdx~c>PJ`_O?_6;20R(#n z5wg5zE&gE7AbQQ>bT0v{S0F3w^2ZC?O{10Ijod94I!d3tP002ovPDHLk FV1o4OFm?a{ literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/wooly/128.png b/apps/website/src/public/units/wooly/128.png new file mode 100644 index 0000000000000000000000000000000000000000..408894ee9fd0cdb1bef38f7842f90bd8ddd3f35c GIT binary patch literal 845 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-HD>U}pDpaSW-L z^Y*TNwuqz5v5y);AM_Wgafz|H80sGgPe@hY*HE&Osq9wA)EgP-W$4KmYIRjF-#~kt_#f7!AtTd|`ZYY1aOde^1u%EB^d*t(qx~p%^T6 zJ%)cm_QN+X9lvk?`}X;Q-`c&BARX=uXF~5YKbiME`)vJ|vg`|wEBE|!`?u-xmt73T z4VFv^eGD^J?~8M_bqM*qUN?5$rHOyH)_l)2TE^}W%mI>L_p7uarv3co;K}LQk-wvN z+P^HexSGrcGFOnHc=2mSwS0Tk$4^^@L*K49JHzk{tSPU=_Q18%S5x-v{J5aFI`(w< zY-uaM@8Wy+mm#TWxOMB_oSv^y2hXmaZgqeCb*8p`$2XY3ykq`L&fz_0PgX?<|H5w~ zYY{fSXWWwZ{947`xZ~~D1#kUYrvUfHI=iobZ5fu{XYR0s!LvG zUXTS2qwv304k5{l-{!Ahr~df5{~_uc*Z z-&I?)nPIM8S7Cc;>;D&awQGNNFMl@qm`F*Ws>Fwv=G?t$KEei9s_C7v?x3gB5T9v=Ge`T1p z|DJpz%;clh4Ux0$i}!AJlmGMM!cILyc>Dk(T^Slx>wcCp{MCE#?%#&}H;v!^oqmi5 elq7(%{}_%dKkDaP*L(<+Ts>X=T-G@yGywpGhJq{r literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/wooly/idle.aseprite b/apps/website/src/public/units/wooly/idle.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..b925d07340832c408a15f8ada320e2ce64bd1b5e GIT binary patch literal 2010 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 literal 0 HcmV?d00001 diff --git a/apps/website/src/public/units/wooly/moving.json b/apps/website/src/public/units/wooly/moving.json new file mode 100644 index 00000000..84cf86a0 --- /dev/null +++ b/apps/website/src/public/units/wooly/moving.json @@ -0,0 +1,77 @@ +{ + "frames": { + "0": { + "frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "1": { + "frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "2": { + "frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "3": { + "frame": { "x": 96, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "4": { + "frame": { "x": 128, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "5": { + "frame": { "x": 160, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "6": { + "frame": { "x": 192, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + }, + "7": { + "frame": { "x": 224, "y": 0, "w": 32, "h": 32 }, + "rotated": false, + "trimmed": false, + "spriteSourceSize": { "x": 0, "y": 0, "w": 32, "h": 32 }, + "sourceSize": { "w": 32, "h": 32 }, + "duration": 100 + } + }, + "meta": { + "image": "moving.png", + "format": "RGBA8888", + "size": { "w": 256, "h": 32 }, + "scale": "1" + }, + "animations": { + "main": [0, 1, 2, 3, 4, 5, 6, 7] + } +} diff --git a/apps/website/src/public/units/wooly/moving.png b/apps/website/src/public/units/wooly/moving.png new file mode 100644 index 0000000000000000000000000000000000000000..5b43b96b4855aace140c4d8893b76d00ae088cc2 GIT binary patch literal 1885 zcmV-j2cr0iP)Px+7fD1xRCt{2TR&(UR~-Ia8U;I65V2(oG+0D9*fi8b5p*aNnl4^S$SXfwCSXfwCSXfwCSXfwCSXfwCSXfy6KQUyw0~Qt* z!7(#F-0k(*tGDk$*Yo>l>yAa-P%Qw9^Mjf3;cj8C_x{~mm@ec!pH)}Nn7#cdRC|F9 zK$inWMcf1=p#TSwUtX+g8-pa|PcUh~6yK!&X{@U&WpS;%SdG+H=oNr!2MUTL5MZ(Z z2`b4C3u{2;^zVxE_Z!S+M+ROCf=F9{B#Tft0VZ8e#hmu|&mP|q#eYivlFJZu z;vyRm!L|U{oh?ik@|Z53*hHKeCYuk55oLHB~6v%U$*U|HJEZ`0BH7 z#CxaNL2aXsMyrkTVpa5kMA&GxT>_xlG3<=shbZ~eZwg~ql=IPxdom!M`~zn6PrQ;2 z0D#690Pa0}8mZmDX8_qu8cwq#9=Mpj{Rm%t`-}LWz7y7gf*=V5ge}0c;`5sYynOjX zmvX1QCUL-XrKKNnQ!3`rXthP3qs&I<-GEd>*8luM#WM!F^iTYe21pNlYQdCS0m+ElfMwJ+>aP5=nY3pNbc6Dz!Y7{T^?=8ueG!pt}^h8*r)yDVVeTnHp9`g$omjG18=6UZQ9ARhgP>7uRAv^F{^XIc3f4F60 zG=-_jYraBPIqp1f;FR;t?cIU-6I60QoO7Ye+{;?j5g#};1D*W$>IZ+%>wxDE1RwiQ zhk(5J=)L@zt|zgGbRw7fuv}U7B>)NzzIYMR;7*LDTxLi4I?ayApDoQI_aSxl#*ou| zEePj_YP8pt1*rOYcxsR57$kqy2cX=5X$4d&<~*m~)E6Cp7vN_wJSNXyCujnYx#!UG z*MKBIr`Zun`Z*8)E$(NU0N!pK1^DvK3xKWAxckd7RqV56B*B188n6t?k+uN+^4DR4 z)ZWPDO90>*Z$A5nLFn6nsvRgOOb~F=Mwi;70vJ?)y0#&;jXHMr4ly+ePwdU@T}(}0 zgVXG|1QQje4M;}Z2J9CH7(f(K$Oc5Zr z#m$dnb9+}ye7*!Gg89}DM(Q*mfCN?V0`3_} zXIvhW#&}{hg`K@aF7T7F*%b$bIu1c)1EMjY>%@gh1EMyl_{n4dcuYXY))N4JUHu(1 zB~T0>a_((UA-{`0Ehp+cDawPlVD!x$A;uJAxW4@ zF*82g;Kzr~_;NfxIh{uhoVyOokVT=}0OE>eF&J_4(JS70o&f#> XXDGy5TDNyn00000NkvXXu0mjfZP|hI literal 0 HcmV?d00001 diff --git a/apps/website/src/server/tsconfig.json b/apps/website/src/server/tsconfig.json index b9ed69c1..3c6e968e 100644 --- a/apps/website/src/server/tsconfig.json +++ b/apps/website/src/server/tsconfig.json @@ -1,3 +1,3 @@ { - "extends": "../.nuxt/tsconfig.server.json" + "extends": "../../.nuxt/tsconfig.server.json" } diff --git a/apps/website/src/stores/website.ts b/apps/website/src/stores/website.ts new file mode 100644 index 00000000..9f0bb93c --- /dev/null +++ b/apps/website/src/stores/website.ts @@ -0,0 +1,6 @@ +export const useWebsiteStore = defineStore('websiteStore', { + state: () => ({ + isMobileMenuOpened: false, + isFeedOpened: false + }), +}) \ No newline at end of file diff --git a/apps/website/src/utils/locale.ts b/apps/website/src/utils/locale.ts new file mode 100644 index 00000000..f2bdca12 --- /dev/null +++ b/apps/website/src/utils/locale.ts @@ -0,0 +1,18 @@ +export function pluralizationRu( + int: number, + array: [string, string, string], +): string { + const n = Math.abs(int) + + let idx: number + // @see http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html + if (n % 10 === 1 && n % 100 !== 11) { + idx = 0 // one + } else if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20)) { + idx = 1 // few + } else { + idx = 2 // many + } + + return array[idx] +} diff --git a/package.json b/package.json index 228492ea..3a75d627 100644 --- a/package.json +++ b/package.json @@ -38,14 +38,15 @@ "howler": "^2.2.4", "javascript-time-ago": "^2.5.10", "jsonwebtoken": "^9.0.2", - "lucide-svelte": "^0.396.0", - "pixi.js": "^8.2.0", + "lucide-svelte": "^0.427.0", + "pixi.js": "~8.2.6", "zod": "^3.23.8" }, "devDependencies": { "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", "@nuxt/devtools": "^1.3.9", + "@nuxt/eslint": "^0.5.1", "@nuxt/eslint-config": "~0.3.6", "@nuxt/kit": "^3.10.0", "@nuxt/ui-templates": "^1.3.1", @@ -58,6 +59,7 @@ "@nx/vite": "19.6.1", "@nx/web": "19.6.1", "@nx/workspace": "19.6.1", + "@pinia/nuxt": "^0.5.3", "@playwright/test": "^1.36.0", "@sveltejs/adapter-node": "^5.2.0", "@sveltejs/kit": "^2.5.17", @@ -76,6 +78,8 @@ "@vitest/coverage-v8": "^1.0.4", "@vitest/ui": "^1.3.1", "@vue/test-utils": "^2.4.1", + "@vueuse/core": "^11.0.1", + "@vueuse/nuxt": "^11.0.1", "changelogen": "^0.5.5", "eslint": "~8.57.0", "eslint-config-prettier": "^9.0.0", @@ -88,6 +92,7 @@ "lint-staged": "^15.2.7", "nuxt": "^3.10.0", "nx": "19.6.1", + "pinia": "^2.2.2", "prettier": "^2.6.2", "svelte": "^5.0.0-next.165", "svelte-check": "^3.8.2", diff --git a/yarn.lock b/yarn.lock index 2da5d961..1100c0ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20,6 +20,15 @@ resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-0.7.10.tgz#ae829f170158e297a9b6a28f161a8e487d00814d" integrity sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww== +"@apidevtools/json-schema-ref-parser@^11.7.0": + version "11.7.0" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.7.0.tgz#228d72018a0e7cbee744b677eaa01a8968f302d9" + integrity sha512-pRrmXMCwnmrkS3MLgAIW5dXRzeTv6GLjkjb4HmxNnvAKXN1Nfzp4KmGADBQvlVUcqi+a5D+hfGDLLnd5NnYxog== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.15" + js-yaml "^4.1.0" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" @@ -1314,6 +1323,15 @@ esquery "^1.6.0" jsdoc-type-pratt-parser "~4.0.0" +"@es-joy/jsdoccomment@~0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz#5d9dc1a295cf5d1ed224dffafb4800d5c7206c27" + integrity sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw== + dependencies: + comment-parser "1.4.1" + esquery "^1.6.0" + jsdoc-type-pratt-parser "~4.1.0" + "@esbuild/aix-ppc64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" @@ -1676,6 +1694,37 @@ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.1.tgz#361461e5cb3845d874e61731c11cfedd664d83a0" integrity sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA== +"@eslint/config-array@^0.17.1": + version "0.17.1" + resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.17.1.tgz#d9b8b8b6b946f47388f32bedfd3adf29ca8f8910" + integrity sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA== + dependencies: + "@eslint/object-schema" "^2.1.4" + debug "^4.3.1" + minimatch "^3.1.2" + +"@eslint/config-inspector@^0.5.4": + version "0.5.4" + resolved "https://registry.yarnpkg.com/@eslint/config-inspector/-/config-inspector-0.5.4.tgz#403fe1bcadff0d490ca48ff1926f0eb663c1c5de" + integrity sha512-WB/U/B6HdRiIt/CfbcqqFp7Svz+3INLtnGcuMT2hnU39S3cb9JGGkvB1T6lbIlDoQ9VRnhc4riIFFoicGRZ2mw== + dependencies: + "@eslint/config-array" "^0.17.1" + "@voxpelli/config-array-find-files" "^0.1.2" + bundle-require "^5.0.0" + cac "^6.7.14" + chokidar "^3.6.0" + esbuild "^0.21.5" + fast-glob "^3.3.2" + find-up "^7.0.0" + get-port-please "^3.1.2" + h3 "^1.12.0" + minimatch "^9.0.5" + mlly "^1.7.1" + mrmime "^2.0.0" + open "^10.1.0" + picocolors "^1.0.1" + ws "^8.18.0" + "@eslint/eslintrc@^2.1.4": version "2.1.4" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" @@ -1711,11 +1760,16 @@ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== -"@eslint/js@^9.2.0": +"@eslint/js@^9.2.0", "@eslint/js@^9.9.0": version "9.9.0" resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.9.0.tgz#d8437adda50b3ed4401964517b64b4f59b0e2638" integrity sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug== +"@eslint/object-schema@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.4.tgz#9e69f8bb4031e11df79e03db09f9dbbae1740843" + integrity sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ== + "@fastify/busboy@^2.0.0": version "2.1.1" resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" @@ -1839,6 +1893,11 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + "@jsonjoy.com/base64@^1.1.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jsonjoy.com/base64/-/base64-1.1.2.tgz#cf8ea9dcb849b81c95f14fc0aaa151c6b54d2578" @@ -2045,11 +2104,24 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" +"@nodelib/fs.scandir@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-3.0.0.tgz#91c0a33e1aeaedcd4bab2bf31be5d1962a55d2a7" + integrity sha512-ktI9+PxfHYtKjF3cLTUAh2N+b8MijCRPNwKJNqTVdL0gB0QxLU2rIRaZ1t71oEa3YBDE6bukH1sR0+CDnpp/Mg== + dependencies: + "@nodelib/fs.stat" "3.0.0" + run-parallel "^1.2.0" + "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== +"@nodelib/fs.stat@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-3.0.0.tgz#ef6c829f2b05f42595d88854ebd777d4335ff0a9" + integrity sha512-2tQOI38s19P9i7X/Drt0v8iMA+KMsgdhB/dyPER+e+2Y8L1Z7QvnuRdW/uLuf5YRFUYmnj4bMA6qCuZHFI1GDQ== + "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -2058,6 +2130,14 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@nodelib/fs.walk@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-2.0.0.tgz#10499ac2210f6399770b465ba728adafc7d44bb1" + integrity sha512-54voNDBobGdMl3BUXSu7UaDh1P85PGHWlJ5e0XhPugo1JulOyCtp2I+5ri4wplGDJ8QGwPEQW7/x3yTLU7yF1A== + dependencies: + "@nodelib/fs.scandir" "3.0.0" + fastq "^1.15.0" + "@nrwl/devkit@19.6.1": version "19.6.1" resolved "https://registry.yarnpkg.com/@nrwl/devkit/-/devkit-19.6.1.tgz#8fd3d703088d97c32dc34eb1f13acefaf6bac69b" @@ -2120,7 +2200,7 @@ resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-2.0.2.tgz#5749f04df13bda4c863338d8dabaf370f45ef7c7" integrity sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA== -"@nuxt/devtools-kit@1.3.9": +"@nuxt/devtools-kit@1.3.9", "@nuxt/devtools-kit@^1.3.9": version "1.3.9" resolved "https://registry.yarnpkg.com/@nuxt/devtools-kit/-/devtools-kit-1.3.9.tgz#ad2dc18a76e2508913f1693105185051b45a1bd3" integrity sha512-tgr/F+4BbI53/JxgaXl3cuV9dMuCXMsd4GEXN+JqtCdAkDbH3wL79GGWx0/6I9acGzRsB6UZ1H6U96nfgcIrAw== @@ -2188,6 +2268,30 @@ which "^3.0.1" ws "^8.17.1" +"@nuxt/eslint-config@0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@nuxt/eslint-config/-/eslint-config-0.5.1.tgz#c00743f4e718cd556bf54f77b602a36578f0e0a2" + integrity sha512-Z6JNHe4trtJdte3y5Fy0CueFCris/kEIbDAoY1bYum1EtOFjEhOcx6BWCrkQybzUIfPVel7YgJ4CiG9bkD3plQ== + dependencies: + "@eslint/js" "^9.9.0" + "@nuxt/eslint-plugin" "0.5.1" + "@rushstack/eslint-patch" "^1.10.4" + "@stylistic/eslint-plugin" "^2.6.4" + "@typescript-eslint/eslint-plugin" "^8.1.0" + "@typescript-eslint/parser" "^8.1.0" + eslint-config-flat-gitignore "^0.1.8" + eslint-flat-config-utils "^0.3.1" + eslint-plugin-import-x "^3.1.0" + eslint-plugin-jsdoc "^50.2.2" + eslint-plugin-regexp "^2.6.0" + eslint-plugin-unicorn "^55.0.0" + eslint-plugin-vue "^9.27.0" + globals "^15.9.0" + local-pkg "^0.5.0" + pathe "^1.1.2" + tslib "^2.6.3" + vue-eslint-parser "^9.4.3" + "@nuxt/eslint-config@~0.3.6": version "0.3.13" resolved "https://registry.yarnpkg.com/@nuxt/eslint-config/-/eslint-config-0.3.13.tgz#645eaac54352fff2664ca60673ddfa7be0093496" @@ -2219,7 +2323,34 @@ "@typescript-eslint/types" "^7.9.0" "@typescript-eslint/utils" "^7.9.0" -"@nuxt/kit@3.12.4", "@nuxt/kit@^3.10.0", "@nuxt/kit@^3.11.2", "@nuxt/kit@^3.12.2": +"@nuxt/eslint-plugin@0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@nuxt/eslint-plugin/-/eslint-plugin-0.5.1.tgz#1527d0e3799c4e6251332ae7575aa417ba382076" + integrity sha512-erJ6bum60DTAy+nCq+oU2ZmG4kat+zhvTPvBEkA9SSnJvrHLSjTzJ/r74rgwPM5yuUfIxtujYQ6BBvwvbCBzXw== + dependencies: + "@typescript-eslint/types" "^8.1.0" + "@typescript-eslint/utils" "^8.1.0" + +"@nuxt/eslint@^0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@nuxt/eslint/-/eslint-0.5.1.tgz#07b27be7bded246379ced35325741c1470d8320a" + integrity sha512-ftpJyVxBTCdUIic6k6FZQc0Z00Wr1Gh109UC4XbKf1rp9hznQF855ZHXSEmRubNW4eshrl3UkYknaUzKR8p6mw== + dependencies: + "@eslint/config-inspector" "^0.5.4" + "@nuxt/devtools-kit" "^1.3.9" + "@nuxt/eslint-config" "0.5.1" + "@nuxt/eslint-plugin" "0.5.1" + "@nuxt/kit" "^3.12.4" + chokidar "^3.6.0" + eslint-flat-config-utils "^0.3.1" + eslint-typegen "^0.3.1" + find-up "^7.0.0" + get-port-please "^3.1.2" + mlly "^1.7.1" + pathe "^1.1.2" + unimport "^3.10.0" + +"@nuxt/kit@3.12.4", "@nuxt/kit@^3.10.0", "@nuxt/kit@^3.11.2", "@nuxt/kit@^3.12.2", "@nuxt/kit@^3.12.4", "@nuxt/kit@^3.9.0": version "3.12.4" resolved "https://registry.yarnpkg.com/@nuxt/kit/-/kit-3.12.4.tgz#b7073611d533ac32b504d95664074be3587046b3" integrity sha512-aNRD1ylzijY0oYolldNcZJXVyxdGzNTl+Xd0UYyFQCu9f4wqUZqQ9l+b7arCEzchr96pMK0xdpvLcS3xo1wDcw== @@ -2704,6 +2835,14 @@ dependencies: esquery "^1.4.0" +"@pinia/nuxt@^0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@pinia/nuxt/-/nuxt-0.5.3.tgz#d9de0653e36011d859e42917480b09c814ab6197" + integrity sha512-AEuHEcaxZdAl73qUOco1TpOGjcmn83nJlYORZ63zhufSCVMj28lPq15ZnfhhofwBh5IjkT/lB7d8Ff958LajDQ== + dependencies: + "@nuxt/kit" "^3.9.0" + pinia "2.2.1" + "@pixi/colord@^2.9.6": version "2.9.6" resolved "https://registry.yarnpkg.com/@pixi/colord/-/colord-2.9.6.tgz#7e4e7851480da6fd3cef4e331f008d60be7e1204" @@ -2989,7 +3128,7 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz#20c09cf44dcb082140cc7f439dd679fe4bba3375" integrity sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ== -"@rushstack/eslint-patch@^1.10.3": +"@rushstack/eslint-patch@^1.10.3", "@rushstack/eslint-patch@^1.10.4": version "1.10.4" resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz#427d5549943a9c6fce808e39ea64dbe60d4047f1" integrity sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA== @@ -3014,6 +3153,16 @@ eslint-visitor-keys "^4.0.0" espree "^10.0.1" +"@stylistic/eslint-plugin-js@2.6.4", "@stylistic/eslint-plugin-js@^2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.6.4.tgz#52e2b89e1f0878aaeeca3be832287bc060d3a422" + integrity sha512-kx1hS3xTvzxZLdr/DCU/dLBE++vcP97sHeEFX2QXhk1Ipa4K1rzPOLw1HCbf4mU3s+7kHP5eYpDe+QteEOFLug== + dependencies: + "@types/eslint" "^9.6.0" + acorn "^8.12.1" + eslint-visitor-keys "^4.0.0" + espree "^10.1.0" + "@stylistic/eslint-plugin-jsx@2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-jsx/-/eslint-plugin-jsx-2.2.2.tgz#f3775d778be76dd3ca3ba1406acf00a37273ec20" @@ -3024,6 +3173,18 @@ estraverse "^5.3.0" picomatch "^4.0.2" +"@stylistic/eslint-plugin-jsx@2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-jsx/-/eslint-plugin-jsx-2.6.4.tgz#8d02c91a26b781740bede271fbb6523cf6ab198d" + integrity sha512-bIvVhdtjmyu3S10V7QRIuawtCZSq9gRmzAX23ucjCOdSFzEwlq+di0IM0riBAvvQerrJL4SM6G3xgyPs8BSXIA== + dependencies: + "@stylistic/eslint-plugin-js" "^2.6.4" + "@types/eslint" "^9.6.0" + eslint-visitor-keys "^4.0.0" + espree "^10.1.0" + estraverse "^5.3.0" + picomatch "^4.0.2" + "@stylistic/eslint-plugin-plus@2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-plus/-/eslint-plugin-plus-2.2.2.tgz#f3aead1df886f3be8067a421bab11a92bb462e85" @@ -3032,6 +3193,13 @@ "@types/eslint" "^8.56.10" "@typescript-eslint/utils" "^7.12.0" +"@stylistic/eslint-plugin-plus@2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-plus/-/eslint-plugin-plus-2.6.4.tgz#5447d72bd6754fb74d31ff268ae2cb91037f0406" + integrity sha512-EuRvtxhf7Hv8OoMIePulP/6rBJIgPTu1l5GAm1780WcF1Cl8bOZXIn84Pdac5pNv6lVlzCOFm8MD3VE+2YROuA== + dependencies: + "@types/eslint" "^9.6.0" + "@stylistic/eslint-plugin-ts@2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-ts/-/eslint-plugin-ts-2.2.2.tgz#2df9bd05d0b67c6abcfdcf4247fc83c5742ecfaa" @@ -3041,6 +3209,15 @@ "@types/eslint" "^8.56.10" "@typescript-eslint/utils" "^7.12.0" +"@stylistic/eslint-plugin-ts@2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin-ts/-/eslint-plugin-ts-2.6.4.tgz#06f975ae5f1d866827b2495e0d93b9e005c0579c" + integrity sha512-yxL8Hj6WkObw1jfiLpBzKy5yfxY6vwlwO4miq34ySErUjUecPV5jxfVbOe4q1QDPKemQGPq93v7sAQS5PzM8lA== + dependencies: + "@stylistic/eslint-plugin-js" "2.6.4" + "@types/eslint" "^9.6.0" + "@typescript-eslint/utils" "^8.1.0" + "@stylistic/eslint-plugin@^2.1.0": version "2.2.2" resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-2.2.2.tgz#ff49c7d4157a0010ae0c12cc9167faf150625d13" @@ -3052,6 +3229,17 @@ "@stylistic/eslint-plugin-ts" "2.2.2" "@types/eslint" "^8.56.10" +"@stylistic/eslint-plugin@^2.6.4": + version "2.6.4" + resolved "https://registry.yarnpkg.com/@stylistic/eslint-plugin/-/eslint-plugin-2.6.4.tgz#64071a1e3a356b0cf0adf7f9a9b9ebc24ed2cad8" + integrity sha512-euUGnjzH8EOqEYTGk9dB2OBINp0FX1nuO7/k4fO82zNRBIKZgJoDwTLM4Ce+Om6W1Qmh1PrZjCr4jh4tMEXGPQ== + dependencies: + "@stylistic/eslint-plugin-js" "2.6.4" + "@stylistic/eslint-plugin-jsx" "2.6.4" + "@stylistic/eslint-plugin-plus" "2.6.4" + "@stylistic/eslint-plugin-ts" "2.6.4" + "@types/eslint" "^9.6.0" + "@sveltejs/adapter-node@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@sveltejs/adapter-node/-/adapter-node-5.2.0.tgz#68080dfc3314514f5466a1886280f36a927b2629" @@ -3385,7 +3573,7 @@ "@types/eslint" "*" "@types/estree" "*" -"@types/eslint@*": +"@types/eslint@*", "@types/eslint@^9.6.0": version "9.6.0" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.0.tgz#51d4fe4d0316da9e9f2c80884f2c20ed5fb022ff" integrity sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg== @@ -3467,7 +3655,7 @@ resolved "https://registry.yarnpkg.com/@types/javascript-time-ago/-/javascript-time-ago-2.0.8.tgz#e778029ce2e348edfec8671f557a0e892878d2cb" integrity sha512-X77q3xUzWVn0qohgurKE1G5NiXZjee8VbLqaukW/HXVkz7bdCFJgOPQ3JVB4IkrDhMS4CviFTmpZuNVg0i2QFA== -"@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -3571,6 +3759,11 @@ dependencies: "@types/node" "*" +"@types/web-bluetooth@^0.0.20": + version "0.0.20" + resolved "https://registry.yarnpkg.com/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz#f066abfcd1cbe66267cdbbf0de010d8a41b41597" + integrity sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow== + "@types/ws@^8.5.10": version "8.5.12" resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.12.tgz#619475fe98f35ccca2a2f6c137702d85ec247b7e" @@ -3605,6 +3798,21 @@ natural-compare "^1.4.0" ts-api-utils "^1.3.0" +"@typescript-eslint/eslint-plugin@^8.1.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.2.0.tgz#bf50e9c8dac6bdf15dd1b52ca29448550903558e" + integrity sha512-02tJIs655em7fvt9gps/+4k4OsKULYGtLBPJfOsmOq1+3cdClYiF0+d6mHu6qDnTcg88wJBkcPLpQhq7FyDz0A== + dependencies: + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/scope-manager" "8.2.0" + "@typescript-eslint/type-utils" "8.2.0" + "@typescript-eslint/utils" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + graphemer "^1.4.0" + ignore "^5.3.1" + natural-compare "^1.4.0" + ts-api-utils "^1.3.0" + "@typescript-eslint/parser@^7.16.0", "@typescript-eslint/parser@^7.9.0": version "7.18.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.18.0.tgz#83928d0f1b7f4afa974098c64b5ce6f9051f96a0" @@ -3616,6 +3824,17 @@ "@typescript-eslint/visitor-keys" "7.18.0" debug "^4.3.4" +"@typescript-eslint/parser@^8.1.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.2.0.tgz#de3993304feb98576d9ffbf10c83ca1bcb68a5dd" + integrity sha512-j3Di+o0lHgPrb7FxL3fdEy6LJ/j2NE8u+AP/5cQ9SKb+JLH6V6UHDqJ+e0hXBkHP1wn1YDFjYCS9LBQsZDlDEg== + dependencies: + "@typescript-eslint/scope-manager" "8.2.0" + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/typescript-estree" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + debug "^4.3.4" + "@typescript-eslint/scope-manager@7.13.1": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e" @@ -3632,6 +3851,14 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/visitor-keys" "7.18.0" +"@typescript-eslint/scope-manager@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.2.0.tgz#4a4bd7e7df5522acc8795c3b6f21e8c41b951138" + integrity sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw== + dependencies: + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + "@typescript-eslint/type-utils@7.18.0", "@typescript-eslint/type-utils@^7.16.0": version "7.18.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz#2165ffaee00b1fbbdd2d40aa85232dab6998f53b" @@ -3642,6 +3869,16 @@ debug "^4.3.4" ts-api-utils "^1.3.0" +"@typescript-eslint/type-utils@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.2.0.tgz#5cd7fef50f492e5a0f508bdd40678861a57c3549" + integrity sha512-g1CfXGFMQdT5S+0PSO0fvGXUaiSkl73U1n9LTK5aRAFnPlJ8dLKkXr4AaLFvPedW8lVDoMgLLE3JN98ZZfsj0w== + dependencies: + "@typescript-eslint/typescript-estree" "8.2.0" + "@typescript-eslint/utils" "8.2.0" + debug "^4.3.4" + ts-api-utils "^1.3.0" + "@typescript-eslint/types@7.13.1": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8" @@ -3652,6 +3889,11 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.18.0.tgz#b90a57ccdea71797ffffa0321e744f379ec838c9" integrity sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ== +"@typescript-eslint/types@8.2.0", "@typescript-eslint/types@^8.1.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.2.0.tgz#dfe9895a2812f7c6bf7af863054c22a67060420c" + integrity sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ== + "@typescript-eslint/typescript-estree@7.13.1": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f" @@ -3680,6 +3922,20 @@ semver "^7.6.0" ts-api-utils "^1.3.0" +"@typescript-eslint/typescript-estree@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.2.0.tgz#fbdb93a1c7ac7f1f96ae2de4fc97cd64c60ae894" + integrity sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA== + dependencies: + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/visitor-keys" "8.2.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + "@typescript-eslint/utils@7.18.0", "@typescript-eslint/utils@^7.16.0", "@typescript-eslint/utils@^7.9.0": version "7.18.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.18.0.tgz#bca01cde77f95fc6a8d5b0dbcbfb3d6ca4be451f" @@ -3690,6 +3946,16 @@ "@typescript-eslint/types" "7.18.0" "@typescript-eslint/typescript-estree" "7.18.0" +"@typescript-eslint/utils@8.2.0", "@typescript-eslint/utils@^8.1.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.2.0.tgz#02d442285925f28d520587185f295f932702e733" + integrity sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "8.2.0" + "@typescript-eslint/types" "8.2.0" + "@typescript-eslint/typescript-estree" "8.2.0" + "@typescript-eslint/utils@^7.12.0", "@typescript-eslint/utils@^7.4.0": version "7.13.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2" @@ -3716,6 +3982,14 @@ "@typescript-eslint/types" "7.18.0" eslint-visitor-keys "^3.4.3" +"@typescript-eslint/visitor-keys@8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.2.0.tgz#f6abb3b6508898a117175ddc11f9b9869cc96834" + integrity sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q== + dependencies: + "@typescript-eslint/types" "8.2.0" + eslint-visitor-keys "^3.4.3" + "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -3896,6 +4170,13 @@ path-browserify "^1.0.1" vscode-uri "^3.0.8" +"@voxpelli/config-array-find-files@^0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@voxpelli/config-array-find-files/-/config-array-find-files-0.1.2.tgz#6da222d833e5e49312d195b2fc91026869d46a70" + integrity sha512-jOva73R+0Nc5/pyS/piBSjQzO4EehME7rPSkBpPC9PYSta+yj3OpF14v0m0HLLYLVNuyHbBjQh5QvGIZwTH2eA== + dependencies: + "@nodelib/fs.walk" "^2.0.0" + "@vue-macros/common@^1.12.2": version "1.12.2" resolved "https://registry.yarnpkg.com/@vue-macros/common/-/common-1.12.2.tgz#ffaaf91c5fc2f2e8aee64bdfa75a559970793428" @@ -4101,6 +4382,39 @@ js-beautify "^1.14.9" vue-component-type-helpers "^2.0.0" +"@vueuse/core@11.0.1", "@vueuse/core@^11.0.1": + version "11.0.1" + resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-11.0.1.tgz#cffaf8824a1b3b3c3cbe5d7d6de21000f43fab23" + integrity sha512-YTrekI18WwEyP3h168Fir94G/HNC27wvXJI21Alm0sPOwvhihfkrvHIe+5PNJq+MpgWdRcsjvE/38JaoKrgZhQ== + dependencies: + "@types/web-bluetooth" "^0.0.20" + "@vueuse/metadata" "11.0.1" + "@vueuse/shared" "11.0.1" + vue-demi ">=0.14.10" + +"@vueuse/metadata@11.0.1": + version "11.0.1" + resolved "https://registry.yarnpkg.com/@vueuse/metadata/-/metadata-11.0.1.tgz#b78fee96948896f1663c8da1f4a94839aa7627d7" + integrity sha512-dTFvuHFAjLYOiSd+t9Sk7xUiuL6jbfay/eX+g+jaipXXlwKur2VCqBCZX+jfu+2vROUGcUsdn3fJR9KkpadIOg== + +"@vueuse/nuxt@^11.0.1": + version "11.0.1" + resolved "https://registry.yarnpkg.com/@vueuse/nuxt/-/nuxt-11.0.1.tgz#a53181626522731b314d2091d60a8f8b87ba0703" + integrity sha512-2utGiRItdFV6/ED39YMyVl/mWFg/Hfx21sVTpo/uv+ZVwg38bLP79Ziqy21WXow18t1E9NEOirU9KhB655ERug== + dependencies: + "@nuxt/kit" "^3.12.4" + "@vueuse/core" "11.0.1" + "@vueuse/metadata" "11.0.1" + local-pkg "^0.5.0" + vue-demi ">=0.14.10" + +"@vueuse/shared@11.0.1": + version "11.0.1" + resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-11.0.1.tgz#50c34d3d20a889bfa36db87fd7208be29e5448c7" + integrity sha512-eAPf5CQB3HR0S76HqrhjBqFYstZfiHWZq8xF9EQmobGBkrhPfErJEhr8aMNQMqd6MkENIx2pblIEfJGlHpClug== + dependencies: + vue-demi ">=0.14.10" + "@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" @@ -4913,6 +5227,13 @@ bundle-name@^4.1.0: dependencies: run-applescript "^7.0.0" +bundle-require@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/bundle-require/-/bundle-require-5.0.0.tgz#071521bdea6534495cf23e92a83f889f91729e93" + integrity sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w== + dependencies: + load-tsconfig "^0.2.3" + bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" @@ -5794,7 +6115,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.3.5: +debug@4, debug@^4.1.0, debug@^4.3.5, debug@^4.3.6: version "4.3.6" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== @@ -6342,7 +6663,7 @@ esbuild@^0.20.2: "@esbuild/win32-ia32" "0.20.2" "@esbuild/win32-x64" "0.20.2" -esbuild@^0.21.3: +esbuild@^0.21.3, esbuild@^0.21.5: version "0.21.5" resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== @@ -6441,6 +6762,14 @@ eslint-config-flat-gitignore@^0.1.5: find-up "^7.0.0" parse-gitignore "^2.0.0" +eslint-config-flat-gitignore@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-0.1.8.tgz#3a5c0ac6ed7a5d925603263b529d217088ebb005" + integrity sha512-OEUbS2wzzYtUfshjOqzFo4Bl4lHykXUdM08TCnYNl7ki+niW4Q1R0j0FDFDr0vjVsI5ZFOz5LvluxOP+Ew+dYw== + dependencies: + find-up-simple "^1.0.0" + parse-gitignore "^2.0.0" + eslint-config-prettier@^9.0.0: version "9.1.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz#31af3d94578645966c082fcb71a5846d3c94867f" @@ -6454,6 +6783,14 @@ eslint-flat-config-utils@^0.2.5: "@types/eslint" "^8.56.10" pathe "^1.1.2" +eslint-flat-config-utils@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/eslint-flat-config-utils/-/eslint-flat-config-utils-0.3.1.tgz#8af51e4351b8d39e89a639527ca317d87cca46bd" + integrity sha512-eFT3EaoJN1hlN97xw4FIEX//h0TiFUobgl2l5uLkIwhVN9ahGq95Pbs+i1/B5UACA78LO3rco3JzuvxLdTUOPA== + dependencies: + "@types/eslint" "^9.6.0" + pathe "^1.1.2" + eslint-import-resolver-node@^0.3.9: version "0.3.9" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" @@ -6479,6 +6816,22 @@ eslint-plugin-import-x@^0.5.0: stable-hash "^0.0.4" tslib "^2.6.2" +eslint-plugin-import-x@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import-x/-/eslint-plugin-import-x-3.1.0.tgz#e1d132bde47c431b37f3b294d9ff813098375e7d" + integrity sha512-/UbPA+bYY7nIxcjL3kpcDY3UNdoLHFhyBFzHox2M0ypcUoueTn6woZUUmzzi5et/dXChksasYYFeKE2wshOrhg== + dependencies: + "@typescript-eslint/utils" "^7.4.0" + debug "^4.3.4" + doctrine "^3.0.0" + eslint-import-resolver-node "^0.3.9" + get-tsconfig "^4.7.3" + is-glob "^4.0.3" + minimatch "^9.0.3" + semver "^7.6.0" + stable-hash "^0.0.4" + tslib "^2.6.2" + eslint-plugin-jsdoc@^48.2.5: version "48.11.0" resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz#7c8dae6ce0d814aff54b87fdb808f02635691ade" @@ -6496,12 +6849,29 @@ eslint-plugin-jsdoc@^48.2.5: spdx-expression-parse "^4.0.0" synckit "^0.9.1" +eslint-plugin-jsdoc@^50.2.2: + version "50.2.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.2.tgz#151e63c8bc245ea8b2357d4229392a5b993827b0" + integrity sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg== + dependencies: + "@es-joy/jsdoccomment" "~0.48.0" + are-docs-informative "^0.0.2" + comment-parser "1.4.1" + debug "^4.3.6" + escape-string-regexp "^4.0.0" + espree "^10.1.0" + esquery "^1.6.0" + parse-imports "^2.1.1" + semver "^7.6.3" + spdx-expression-parse "^4.0.0" + synckit "^0.9.1" + eslint-plugin-playwright@^0.15.3: version "0.15.3" resolved "https://registry.yarnpkg.com/eslint-plugin-playwright/-/eslint-plugin-playwright-0.15.3.tgz#9fd8753688351bcaf41797eb6a7df8807fd5eb1b" integrity sha512-LQMW5y0DLK5Fnpya7JR1oAYL2/7Y9wDiYw6VZqlKqcRGSgjbVKNqxraphk7ra1U3Bb5EK444xMgUlQPbMg2M1g== -eslint-plugin-regexp@^2.5.0: +eslint-plugin-regexp@^2.5.0, eslint-plugin-regexp@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/eslint-plugin-regexp/-/eslint-plugin-regexp-2.6.0.tgz#54b9ca535662ca2c59ca211b7723ef22e2b6681b" integrity sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A== @@ -6553,6 +6923,28 @@ eslint-plugin-unicorn@^53.0.0: semver "^7.6.1" strip-indent "^3.0.0" +eslint-plugin-unicorn@^55.0.0: + version "55.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz#e2aeb397914799895702480970e7d148df5bcc7b" + integrity sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA== + dependencies: + "@babel/helper-validator-identifier" "^7.24.5" + "@eslint-community/eslint-utils" "^4.4.0" + ci-info "^4.0.0" + clean-regexp "^1.0.0" + core-js-compat "^3.37.0" + esquery "^1.5.0" + globals "^15.7.0" + indent-string "^4.0.0" + is-builtin-module "^3.2.1" + jsesc "^3.0.2" + pluralize "^8.0.0" + read-pkg-up "^7.0.1" + regexp-tree "^0.1.27" + regjsparser "^0.10.0" + semver "^7.6.1" + strip-indent "^3.0.0" + eslint-plugin-vue@^9.26.0: version "9.26.0" resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.26.0.tgz#bf7f5cce62c8f878059b91edae44d22974133af5" @@ -6567,6 +6959,20 @@ eslint-plugin-vue@^9.26.0: vue-eslint-parser "^9.4.2" xml-name-validator "^4.0.0" +eslint-plugin-vue@^9.27.0: + version "9.27.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.27.0.tgz#c22dae704a03d9ecefa81364ff89f60ce0481f94" + integrity sha512-5Dw3yxEyuBSXTzT5/Ge1X5kIkRTQ3nvBn/VwPwInNiZBSJOO/timWMUaflONnFBzU6NhB68lxnCda7ULV5N7LA== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + globals "^13.24.0" + natural-compare "^1.4.0" + nth-check "^2.1.1" + postcss-selector-parser "^6.0.15" + semver "^7.6.0" + vue-eslint-parser "^9.4.3" + xml-name-validator "^4.0.0" + eslint-scope@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" @@ -6583,6 +6989,15 @@ eslint-scope@^7.1.1, eslint-scope@^7.2.2: esrecurse "^4.3.0" estraverse "^5.2.0" +eslint-typegen@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/eslint-typegen/-/eslint-typegen-0.3.1.tgz#f4d47a2a3b7701b0ef7a138a2908fb8d49a38af6" + integrity sha512-D1hMMOuQw+WmN1uMk5lDfc9XCgOZMRlvOWwQfME6dyAgJqxGJ/STEyN7YBmt3zMqKkN7XJJ+4mjB82JcR4s/UA== + dependencies: + "@types/eslint" "^9.6.0" + json-schema-to-typescript-lite "^14.1.0" + ohash "^1.1.3" + eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" @@ -6897,7 +7312,7 @@ fast-uri@^3.0.1: resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.1.tgz#cddd2eecfc83a71c1be2cc2ef2061331be8a7134" integrity sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw== -fastq@^1.6.0: +fastq@^1.15.0, fastq@^1.6.0: version "1.17.1" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== @@ -6984,6 +7399,11 @@ find-pkg@2.0.0: dependencies: find-file-up "^2.0.1" +find-up-simple@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-up-simple/-/find-up-simple-1.0.0.tgz#21d035fde9fdbd56c8f4d2f63f32fd93a1cfc368" + integrity sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw== + find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -7405,7 +7825,7 @@ globals@^14.0.0: resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== -globals@^15.2.0: +globals@^15.2.0, globals@^15.7.0, globals@^15.9.0: version "15.9.0" resolved "https://registry.yarnpkg.com/globals/-/globals-15.9.0.tgz#e9de01771091ffbc37db5714dab484f9f69ff399" integrity sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA== @@ -8416,6 +8836,11 @@ jsdoc-type-pratt-parser@^4.0.0, jsdoc-type-pratt-parser@~4.0.0: resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz#136f0571a99c184d84ec84662c45c29ceff71114" integrity sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ== +jsdoc-type-pratt-parser@~4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz#ff6b4a3f339c34a6c188cbf50a16087858d22113" + integrity sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg== + jsdom@~22.1.0: version "22.1.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-22.1.0.tgz#0fca6d1a37fbeb7f4aac93d1090d782c56b611c8" @@ -8470,6 +8895,14 @@ json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-schema-to-typescript-lite@^14.1.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/json-schema-to-typescript-lite/-/json-schema-to-typescript-lite-14.1.0.tgz#a35624a2d783e5e125631a3d25ac4c2fb96dd191" + integrity sha512-b8K6P3aiLgiYKYcHacgZKrwPXPyjekqRPV5vkNfBt0EoohcOSXEbcuGzgi6KQmsAhuy5Mh2KMxofXodRhMxURA== + dependencies: + "@apidevtools/json-schema-ref-parser" "^11.7.0" + "@types/json-schema" "^7.0.15" + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -8779,6 +9212,11 @@ listr2@~8.2.1: rfdc "^1.4.1" wrap-ansi "^9.0.0" +load-tsconfig@^0.2.3: + version "0.2.5" + resolved "https://registry.yarnpkg.com/load-tsconfig/-/load-tsconfig-0.2.5.tgz#453b8cd8961bfb912dea77eb6c168fe8cca3d3a1" + integrity sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg== + loader-runner@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" @@ -8991,10 +9429,10 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -lucide-svelte@^0.396.0: - version "0.396.0" - resolved "https://registry.yarnpkg.com/lucide-svelte/-/lucide-svelte-0.396.0.tgz#8ad40f5e75112d44f2dcb79526303b5b3facb95b" - integrity sha512-0oU3ZwQYzlFB1VyXcCRn1/cTsA+J7d+6MTC9t8lyIz12l0Rcrnoq0LUrGjX1I3r14uwSGrNDUTkdRdrHsl8L1Q== +lucide-svelte@^0.427.0: + version "0.427.0" + resolved "https://registry.yarnpkg.com/lucide-svelte/-/lucide-svelte-0.427.0.tgz#0dec379de2e9d602b00927fa48251ea2e5527d9c" + integrity sha512-l0IJqYVBTxMkJPvZqyIMyVFlbZ18Mjg0n6p7Zo9bSQNvsmeviTyOxYmYdp/G5gXcSHaOGL6YoQW7fmbFklbW/w== luxon@^3.2.1: version "3.5.0" @@ -9222,6 +9660,13 @@ minimatch@^9.0.3, minimatch@^9.0.4: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" @@ -10127,15 +10572,31 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== +pinia@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.2.1.tgz#7cf860f6a23981c23e58605cee45496ce46d15d1" + integrity sha512-ltEU3xwiz5ojVMizdP93AHi84Rtfz0+yKd8ud75hr9LVyWX2alxp7vLbY1kFm7MXFmHHr/9B08Xf8Jj6IHTEiQ== + dependencies: + "@vue/devtools-api" "^6.6.3" + vue-demi "^0.14.10" + +pinia@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.2.2.tgz#dcf576c9a778187d1542c5e6a9f8b8cd5b6aea14" + integrity sha512-ja2XqFWZC36mupU4z1ZzxeTApV7DOw44cV4dhQ9sGwun+N89v/XP7+j7q6TanS1u1tdbK4r+1BUx7heMaIdagA== + dependencies: + "@vue/devtools-api" "^6.6.3" + vue-demi "^0.14.10" + pirates@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== -pixi.js@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/pixi.js/-/pixi.js-8.2.0.tgz#24d0492d77e1a4790ee48c142e731e0e9f132898" - integrity sha512-hwPZ3sBYNbgrTyRmYAjQUyqZehiTxc1Qy0SI9GGrHLwtC15AtY7JaAk3ZVjnUo04wz9b0BHLjpRYnEUuIOENMw== +pixi.js@~8.2.6: + version "8.2.6" + resolved "https://registry.yarnpkg.com/pixi.js/-/pixi.js-8.2.6.tgz#e56508109c6a4195f288770f3a937514a5719dbb" + integrity sha512-CNfr7CmjIEWJ06e3TBrXBKFpcTPMGUaFdtP4RlMOgNOTkDD6+Bhm728I/EkGAo2vsOVO1YwNFsuORQyD3MngZg== dependencies: "@pixi/colord" "^2.9.6" "@types/css-font-loading-module" "^0.0.12" @@ -11222,7 +11683,7 @@ run-applescript@^7.0.0: resolved "https://registry.yarnpkg.com/run-applescript/-/run-applescript-7.0.0.tgz#e5a553c2bffd620e169d276c1cd8f1b64778fbeb" integrity sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A== -run-parallel@^1.1.9: +run-parallel@^1.1.9, run-parallel@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== @@ -11774,7 +12235,16 @@ string-argv@~0.3.2: resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -11815,7 +12285,14 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -12449,7 +12926,7 @@ unicorn-magic@^0.1.0: resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== -unimport@^3.7.2, unimport@^3.9.0: +unimport@^3.10.0, unimport@^3.7.2, unimport@^3.9.0: version "3.10.0" resolved "https://registry.yarnpkg.com/unimport/-/unimport-3.10.0.tgz#a2a442679db2332d1f703fe7bb6d902dc1a93683" integrity sha512-/UvKRfWx3mNDWwWQhR62HsoM3wxHwYdTq8ellZzMOHnnw4Dp8tovgthyW7DjTrbjDL+i4idOp06voz2VKlvrLw== @@ -12855,12 +13332,17 @@ vue-component-type-helpers@^2.0.0: resolved "https://registry.yarnpkg.com/vue-component-type-helpers/-/vue-component-type-helpers-2.0.29.tgz#3e476321482526c63b3bbe3771eae1ad55f58a01" integrity sha512-58i+ZhUAUpwQ+9h5Hck0D+jr1qbYl4voRt5KffBx8qzELViQ4XdT/Tuo+mzq8u63teAG8K0lLaOiL5ofqW38rg== +vue-demi@>=0.14.10, vue-demi@^0.14.10: + version "0.14.10" + resolved "https://registry.yarnpkg.com/vue-demi/-/vue-demi-0.14.10.tgz#afc78de3d6f9e11bf78c55e8510ee12814522f04" + integrity sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg== + vue-devtools-stub@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz#a65b9485edecd4273cedcb8102c739b83add2c81" integrity sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ== -vue-eslint-parser@^9.4.2: +vue-eslint-parser@^9.4.2, vue-eslint-parser@^9.4.3: version "9.4.3" resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz#9b04b22c71401f1e8bca9be7c3e3416a4bde76a8" integrity sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg== @@ -13154,7 +13636,16 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -13191,7 +13682,7 @@ ws@8.17.1: resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== -ws@^8.13.0, ws@^8.16.0, ws@^8.17.1: +ws@^8.13.0, ws@^8.16.0, ws@^8.17.1, ws@^8.18.0: version "8.18.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==