@zukquote/zuki-react 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,16 @@
1
+ # React + Vite
2
+
3
+ This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4
+
5
+ Currently, two official plugins are available:
6
+
7
+ - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Oxc](https://oxc.rs)
8
+ - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/)
9
+
10
+ ## React Compiler
11
+
12
+ The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).
13
+
14
+ ## Expanding the ESLint configuration
15
+
16
+ If you are developing a production application, we recommend using TypeScript with type-aware lint rules enabled. Check out the [TS template](https://github.com/vitejs/vite/tree/main/packages/create-vite/template-react-ts) for information on how to integrate TypeScript and [`typescript-eslint`](https://typescript-eslint.io) in your project.
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="46" fill="none" viewBox="0 0 48 46"><path fill="#863bff" d="M25.946 44.938c-.664.845-2.021.375-2.021-.698V33.937a2.26 2.26 0 0 0-2.262-2.262H10.287c-.92 0-1.456-1.04-.92-1.788l7.48-10.471c1.07-1.497 0-3.578-1.842-3.578H1.237c-.92 0-1.456-1.04-.92-1.788L10.013.474c.214-.297.556-.474.92-.474h28.894c.92 0 1.456 1.04.92 1.788l-7.48 10.471c-1.07 1.498 0 3.579 1.842 3.579h11.377c.943 0 1.473 1.088.89 1.83L25.947 44.94z" style="fill:#863bff;fill:color(display-p3 .5252 .23 1);fill-opacity:1"/><mask id="a" width="48" height="46" x="0" y="0" maskUnits="userSpaceOnUse" style="mask-type:alpha"><path fill="#000" d="M25.842 44.938c-.664.844-2.021.375-2.021-.698V33.937a2.26 2.26 0 0 0-2.262-2.262H10.183c-.92 0-1.456-1.04-.92-1.788l7.48-10.471c1.07-1.498 0-3.579-1.842-3.579H1.133c-.92 0-1.456-1.04-.92-1.787L9.91.473c.214-.297.556-.474.92-.474h28.894c.92 0 1.456 1.04.92 1.788l-7.48 10.471c-1.07 1.498 0 3.578 1.842 3.578h11.377c.943 0 1.473 1.088.89 1.832L25.843 44.94z" style="fill:#000;fill-opacity:1"/></mask><g mask="url(#a)"><g filter="url(#b)"><ellipse cx="5.508" cy="14.704" fill="#ede6ff" rx="5.508" ry="14.704" style="fill:#ede6ff;fill:color(display-p3 .9275 .9033 1);fill-opacity:1" transform="matrix(.00324 1 1 -.00324 -4.47 31.516)"/></g><g filter="url(#c)"><ellipse cx="10.399" cy="29.851" fill="#ede6ff" rx="10.399" ry="29.851" style="fill:#ede6ff;fill:color(display-p3 .9275 .9033 1);fill-opacity:1" transform="matrix(.00324 1 1 -.00324 -39.328 7.883)"/></g><g filter="url(#d)"><ellipse cx="5.508" cy="30.487" fill="#7e14ff" rx="5.508" ry="30.487" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(89.814 -25.913 -14.639)scale(1 -1)"/></g><g filter="url(#e)"><ellipse cx="5.508" cy="30.599" fill="#7e14ff" rx="5.508" ry="30.599" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(89.814 -32.644 -3.334)scale(1 -1)"/></g><g filter="url(#f)"><ellipse cx="5.508" cy="30.599" fill="#7e14ff" rx="5.508" ry="30.599" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="matrix(.00324 1 1 -.00324 -34.34 30.47)"/></g><g filter="url(#g)"><ellipse cx="14.072" cy="22.078" fill="#ede6ff" rx="14.072" ry="22.078" style="fill:#ede6ff;fill:color(display-p3 .9275 .9033 1);fill-opacity:1" transform="rotate(93.35 24.506 48.493)scale(-1 1)"/></g><g filter="url(#h)"><ellipse cx="3.47" cy="21.501" fill="#7e14ff" rx="3.47" ry="21.501" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(89.009 28.708 47.59)scale(-1 1)"/></g><g filter="url(#i)"><ellipse cx="3.47" cy="21.501" fill="#7e14ff" rx="3.47" ry="21.501" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(89.009 28.708 47.59)scale(-1 1)"/></g><g filter="url(#j)"><ellipse cx=".387" cy="8.972" fill="#7e14ff" rx="4.407" ry="29.108" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(39.51 .387 8.972)"/></g><g filter="url(#k)"><ellipse cx="47.523" cy="-6.092" fill="#7e14ff" rx="4.407" ry="29.108" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(37.892 47.523 -6.092)"/></g><g filter="url(#l)"><ellipse cx="41.412" cy="6.333" fill="#47bfff" rx="5.971" ry="9.665" style="fill:#47bfff;fill:color(display-p3 .2799 .748 1);fill-opacity:1" transform="rotate(37.892 41.412 6.333)"/></g><g filter="url(#m)"><ellipse cx="-1.879" cy="38.332" fill="#7e14ff" rx="4.407" ry="29.108" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(37.892 -1.88 38.332)"/></g><g filter="url(#n)"><ellipse cx="-1.879" cy="38.332" fill="#7e14ff" rx="4.407" ry="29.108" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(37.892 -1.88 38.332)"/></g><g filter="url(#o)"><ellipse cx="35.651" cy="29.907" fill="#7e14ff" rx="4.407" ry="29.108" style="fill:#7e14ff;fill:color(display-p3 .4922 .0767 1);fill-opacity:1" transform="rotate(37.892 35.651 29.907)"/></g><g filter="url(#p)"><ellipse cx="38.418" cy="32.4" fill="#47bfff" rx="5.971" ry="15.297" style="fill:#47bfff;fill:color(display-p3 .2799 .748 1);fill-opacity:1" transform="rotate(37.892 38.418 32.4)"/></g></g><defs><filter id="b" width="60.045" height="41.654" x="-19.77" y="16.149" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="7.659"/></filter><filter id="c" width="90.34" height="51.437" x="-54.613" y="-7.533" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="7.659"/></filter><filter id="d" width="79.355" height="29.4" x="-49.64" y="2.03" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="e" width="79.579" height="29.4" x="-45.045" y="20.029" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="f" width="79.579" height="29.4" x="-43.513" y="21.178" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="g" width="74.749" height="58.852" x="15.756" y="-17.901" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="7.659"/></filter><filter id="h" width="61.377" height="25.362" x="23.548" y="2.284" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="i" width="61.377" height="25.362" x="23.548" y="2.284" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="j" width="56.045" height="63.649" x="-27.636" y="-22.853" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="k" width="54.814" height="64.646" x="20.116" y="-38.415" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="l" width="33.541" height="35.313" x="24.641" y="-11.323" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="m" width="54.814" height="64.646" x="-29.286" y="6.009" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="n" width="54.814" height="64.646" x="-29.286" y="6.009" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="o" width="54.814" height="64.646" x="8.244" y="-2.416" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter><filter id="p" width="39.409" height="43.623" x="18.713" y="10.588" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2002_17158" stdDeviation="4.596"/></filter></defs></svg>
@@ -0,0 +1,24 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg">
2
+ <symbol id="bluesky-icon" viewBox="0 0 16 17">
3
+ <g clip-path="url(#bluesky-clip)"><path fill="#08060d" d="M7.75 7.735c-.693-1.348-2.58-3.86-4.334-5.097-1.68-1.187-2.32-.981-2.74-.79C.188 2.065.1 2.812.1 3.251s.241 3.602.398 4.13c.52 1.744 2.367 2.333 4.07 2.145-2.495.37-4.71 1.278-1.805 4.512 3.196 3.309 4.38-.71 4.987-2.746.608 2.036 1.307 5.91 4.93 2.746 2.72-2.746.747-4.143-1.747-4.512 1.702.189 3.55-.4 4.07-2.145.156-.528.397-3.691.397-4.13s-.088-1.186-.575-1.406c-.42-.19-1.06-.395-2.741.79-1.755 1.24-3.64 3.752-4.334 5.099"/></g>
4
+ <defs><clipPath id="bluesky-clip"><path fill="#fff" d="M.1.85h15.3v15.3H.1z"/></clipPath></defs>
5
+ </symbol>
6
+ <symbol id="discord-icon" viewBox="0 0 20 19">
7
+ <path fill="#08060d" d="M16.224 3.768a14.5 14.5 0 0 0-3.67-1.153c-.158.286-.343.67-.47.976a13.5 13.5 0 0 0-4.067 0c-.128-.306-.317-.69-.476-.976A14.4 14.4 0 0 0 3.868 3.77C1.546 7.28.916 10.703 1.231 14.077a14.7 14.7 0 0 0 4.5 2.306q.545-.748.965-1.587a9.5 9.5 0 0 1-1.518-.74q.191-.14.372-.293c2.927 1.369 6.107 1.369 8.999 0q.183.152.372.294-.723.437-1.52.74.418.838.963 1.588a14.6 14.6 0 0 0 4.504-2.308c.37-3.911-.63-7.302-2.644-10.309m-9.13 8.234c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.894 0 1.614.82 1.599 1.82.001 1-.705 1.82-1.6 1.82m5.91 0c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.893 0 1.614.82 1.599 1.82 0 1-.706 1.82-1.6 1.82"/>
8
+ </symbol>
9
+ <symbol id="documentation-icon" viewBox="0 0 21 20">
10
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="m15.5 13.333 1.533 1.322c.645.555.967.833.967 1.178s-.322.623-.967 1.179L15.5 18.333m-3.333-5-1.534 1.322c-.644.555-.966.833-.966 1.178s.322.623.966 1.179l1.534 1.321"/>
11
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M17.167 10.836v-4.32c0-1.41 0-2.117-.224-2.68-.359-.906-1.118-1.621-2.08-1.96-.599-.21-1.349-.21-2.848-.21-2.623 0-3.935 0-4.983.369-1.684.591-3.013 1.842-3.641 3.428C3 6.449 3 7.684 3 10.154v2.122c0 2.558 0 3.838.706 4.726q.306.383.713.671c.76.536 1.79.64 3.581.66"/>
12
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M3 10a2.78 2.78 0 0 1 2.778-2.778c.555 0 1.209.097 1.748-.047.48-.129.854-.503.982-.982.145-.54.048-1.194.048-1.749a2.78 2.78 0 0 1 2.777-2.777"/>
13
+ </symbol>
14
+ <symbol id="github-icon" viewBox="0 0 19 19">
15
+ <path fill="#08060d" fill-rule="evenodd" d="M9.356 1.85C5.05 1.85 1.57 5.356 1.57 9.694a7.84 7.84 0 0 0 5.324 7.44c.387.079.528-.168.528-.376 0-.182-.013-.805-.013-1.454-2.165.467-2.616-.935-2.616-.935-.349-.91-.864-1.143-.864-1.143-.71-.48.051-.48.051-.48.787.051 1.2.805 1.2.805.695 1.194 1.817.857 2.268.649.064-.507.27-.857.49-1.052-1.728-.182-3.545-.857-3.545-3.87 0-.857.31-1.558.8-2.104-.078-.195-.349-1 .077-2.078 0 0 .657-.208 2.14.805a7.5 7.5 0 0 1 1.946-.26c.657 0 1.328.092 1.946.26 1.483-1.013 2.14-.805 2.14-.805.426 1.078.155 1.883.078 2.078.502.546.799 1.247.799 2.104 0 3.013-1.818 3.675-3.558 3.87.284.247.528.714.528 1.454 0 1.052-.012 1.896-.012 2.156 0 .208.142.455.528.377a7.84 7.84 0 0 0 5.324-7.441c.013-4.338-3.48-7.844-7.773-7.844" clip-rule="evenodd"/>
16
+ </symbol>
17
+ <symbol id="social-icon" viewBox="0 0 20 20">
18
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M12.5 6.667a4.167 4.167 0 1 0-8.334 0 4.167 4.167 0 0 0 8.334 0"/>
19
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M2.5 16.667a5.833 5.833 0 0 1 8.75-5.053m3.837.474.513 1.035c.07.144.257.282.414.309l.93.155c.596.1.736.536.307.965l-.723.73a.64.64 0 0 0-.152.531l.207.903c.164.715-.213.991-.84.618l-.872-.52a.63.63 0 0 0-.577 0l-.872.52c-.624.373-1.003.094-.84-.618l.207-.903a.64.64 0 0 0-.152-.532l-.723-.729c-.426-.43-.289-.864.306-.964l.93-.156a.64.64 0 0 0 .412-.31l.513-1.034c.28-.562.735-.562 1.012 0"/>
20
+ </symbol>
21
+ <symbol id="x-icon" viewBox="0 0 19 19">
22
+ <path fill="#08060d" fill-rule="evenodd" d="M1.893 1.98c.052.072 1.245 1.769 2.653 3.77l2.892 4.114c.183.261.333.48.333.486s-.068.089-.152.183l-.522.593-.765.867-3.597 4.087c-.375.426-.734.834-.798.905a1 1 0 0 0-.118.148c0 .01.236.017.664.017h.663l.729-.83c.4-.457.796-.906.879-.999a692 692 0 0 0 1.794-2.038c.034-.037.301-.34.594-.675l.551-.624.345-.392a7 7 0 0 1 .34-.374c.006 0 .93 1.306 2.052 2.903l2.084 2.965.045.063h2.275c1.87 0 2.273-.003 2.266-.021-.008-.02-1.098-1.572-3.894-5.547-2.013-2.862-2.28-3.246-2.273-3.266.008-.019.282-.332 2.085-2.38l2-2.274 1.567-1.782c.022-.028-.016-.03-.65-.03h-.674l-.3.342a871 871 0 0 1-1.782 2.025c-.067.075-.405.458-.75.852a100 100 0 0 1-.803.91c-.148.172-.299.344-.99 1.127-.304.343-.32.358-.345.327-.015-.019-.904-1.282-1.976-2.808L6.365 1.85H1.8zm1.782.91 8.078 11.294c.772 1.08 1.413 1.973 1.425 1.984.016.017.241.02 1.05.017l1.03-.004-2.694-3.766L7.796 5.75 5.722 2.852l-1.039-.004-1.039-.004z" clip-rule="evenodd"/>
23
+ </symbol>
24
+ </svg>
@@ -0,0 +1,2 @@
1
+ .zuk .zuk-root,.zuk .zuk-eyes,.zuk .zuk-claw-left,.zuk .zuk-claw-right,.zuk .zuk-gear-a,.zuk .zuk-gear-b,.zuk .zuk-props-doc,.zuk .zuk-props-q,.zuk .zuk-ping,.zuk .zuk-mouth,.zuk [class*=zuk-leg]{transform-box:fill-box}@keyframes zuki-sway{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes zuki-blink{0%,93%,to{transform:scaleY(1)}96.5%{transform:scaleY(.07)}}@keyframes zuki-idle-look{0%,15%{transform:translate(0)}18%,25%{transform:translate(-6px,2px)}28%,45%{transform:translate(0)}48%,55%{transform:translate(5px,-4px)}58%,75%{transform:translate(0)}78%,85%{transform:translateY(6px)}88%,to{transform:translate(0)}}.anim-idle .zuk-root{transform-origin:50% 92%;animation:2s ease-in-out infinite zuki-sway}.anim-idle .zuk-eyes{transform-origin:50%;animation:4.5s ease-in-out infinite zuki-blink}.anim-idle .zuk-pupil,.anim-idle .zuk-eye-glint{animation:12s ease-in-out infinite zuki-idle-look}@keyframes zuki-idle-armL{0%,6%{transform:rotate(0)}12%,22%{transform:rotate(-13deg)}28%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes zuki-idle-armR{0%,6%{transform:rotate(0)}12%,22%{transform:rotate(13deg)}28%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes zuki-idle-clap{0%,12%{transform:rotate(0)}15%{transform:rotate(-16deg)}18.5%{transform:rotate(7deg)}22%{transform:rotate(-16deg)}26%,to{transform:rotate(0)}}.anim-claps .zuk-claw-left{transform-box:view-box;transform-origin:58px 180px;animation:7s ease-in-out infinite zuki-idle-armL}.anim-claps .zuk-claw-right{transform-box:view-box;transform-origin:202px 180px;animation:7s ease-in-out infinite zuki-idle-armR}.anim-claps .zuk-jaw{animation:7s ease-in-out infinite zuki-idle-clap}@keyframes zuki-bite{0%,to{transform:rotate(0)}50%{transform:rotate(20deg)}}@keyframes zuki-spin{to{transform:rotate(360deg)}}@keyframes zuki-spin-rev{to{transform:rotate(-360deg)}}@keyframes zuki-process-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes zuki-process-anchor{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.anim-process .zuk-root{transform-origin:50% 92%;animation:3s ease-in-out infinite zuki-process-breathe}.anim-process .zuk-leg-0,.anim-process .zuk-leg-1,.anim-process .zuk-leg-2,.anim-process .zuk-leg-3{animation:3s ease-in-out infinite zuki-process-anchor}.anim-process .zuk-claw-left .zuk-jaw{animation:.7s ease-in-out infinite zuki-bite}.anim-process .zuk-claw-right .zuk-jaw{animation:.7s ease-in-out .35s infinite zuki-bite}.anim-process .zuk-gear-a{transform-origin:50%;animation:2.4s linear infinite zuki-spin}.anim-process .zuk-gear-b{transform-origin:50%;animation:2.4s linear infinite zuki-spin-rev}@keyframes zuki-champ-jump{0%,to{transform:translateY(0)}10%{transform:translateY(-2px)}15%{transform:translateY(0)}20%{transform:translateY(-2px)}25%{transform:translateY(0)}30%{transform:translateY(-2px)}35%{transform:translateY(0)}42%{transform:translateY(3px)}50%{transform:translateY(-10px)}65%{transform:translateY(0)}}@keyframes zuki-champ-armL{0%,to{transform:translateY(0)rotate(0)}10%{transform:translateY(-4px)rotate(-3deg)}15%{transform:translateY(0)}20%{transform:translateY(-4px)rotate(-3deg)}25%{transform:translateY(0)}30%{transform:translateY(-4px)rotate(-3deg)}35%{transform:translateY(0)}42%{transform:translateY(8px)rotate(8deg)}50%{transform:translateY(-12px)rotate(-15deg)}65%{transform:translateY(0)}}@keyframes zuki-champ-armR{0%,to{transform:translateY(0)rotate(0)}10%{transform:translateY(-4px)rotate(3deg)}15%{transform:translateY(0)}20%{transform:translateY(-4px)rotate(3deg)}25%{transform:translateY(0)}30%{transform:translateY(-4px)rotate(3deg)}35%{transform:translateY(0)}42%{transform:translateY(8px)rotate(-8deg)}50%{transform:translateY(-12px)rotate(15deg)}65%{transform:translateY(0)}}@keyframes zuki-champ-mouth{0%,to{transform:scale(1)}10%,15%{transform:scale(1.05)}20%,25%{transform:scale(1.05)}30%,35%{transform:scale(1.05)}42%{transform:scale(.9)}50%,60%{transform:scale(1.3)translateY(2px)}70%{transform:scale(1)}}@keyframes zuki-champ-jaw{0%,to{transform:rotate(0)}10%,15%{transform:rotate(-5deg)}20%,25%{transform:rotate(-5deg)}30%,35%{transform:rotate(-5deg)}42%{transform:rotate(5deg)}50%,60%{transform:rotate(-20deg)}70%{transform:rotate(0)}}@keyframes zuki-float-star{0%{opacity:0;transform:translateY(0)scale(.5)}20%{opacity:.8}50%{opacity:1;transform:translateY(-20px)scale(1)}80%{opacity:.8}to{opacity:0;transform:translateY(-50px)scale(.5)}}.anim-success .zuk-root{transform-origin:50% 95%;animation:3.5s ease-in-out infinite zuki-champ-jump}.anim-success .zuk-claw-left{transform-box:view-box;transform-origin:58px 180px;animation:3.5s ease-in-out infinite zuki-champ-armL}.anim-success .zuk-claw-right{transform-box:view-box;transform-origin:200px 160px;animation:3.5s ease-in-out infinite zuki-champ-armR}.anim-success .zuk-mouth{transform-origin:50%;animation:3.5s ease-in-out infinite zuki-champ-mouth}.anim-success .zuk-jaw{animation:3.5s ease-in-out infinite zuki-champ-jaw}.anim-success .zuk-star-1{transform-box:view-box;transform-origin:130px 29px;animation:6s ease-in-out infinite zuki-float-star}.anim-success .zuk-star-2{transform-box:view-box;transform-origin:175px 42px;animation:7.5s ease-in-out 1.2s infinite zuki-float-star}.anim-success .zuk-star-3{transform-box:view-box;transform-origin:85px 43px;animation:5s ease-in-out 2.5s infinite zuki-float-star}.anim-success .zuk-star-4{transform-box:view-box;transform-origin:100px 20px;animation:6.5s ease-in-out 3.8s infinite zuki-float-star}.anim-success .zuk-star-5{transform-box:view-box;transform-origin:150px 28px;animation:5.5s ease-in-out .5s infinite zuki-float-star}@keyframes zuki-devis-point-anim{0%,10%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-175deg)scale(1.3)}30%{transform:rotate(-175deg)scale(1.3)translateY(5px)}35%{transform:rotate(-175deg)scale(1.3)}40%{transform:rotate(-175deg)scale(1.3)translateY(5px)}45%{transform:rotate(-175deg)scale(1.3)}60%{transform:rotate(-165deg)scale(1.4)}65%{transform:rotate(-165deg)scale(1.4)translateY(5px)}70%{transform:rotate(-165deg)scale(1.4)}85%{transform:rotate(0)scale(1)}}@keyframes zuki-devis-jaw{0%,20%,80%,to{transform:rotate(0)}28%{transform:rotate(-25deg)}33%{transform:rotate(5deg)}38%{transform:rotate(-25deg)}43%{transform:rotate(0)}58%{transform:rotate(-25deg)}63%{transform:rotate(5deg)}68%{transform:rotate(-25deg)}73%{transform:rotate(0)}}@keyframes zuki-devis-look{0%,10%,to{transform:translate(0)}25%,45%{transform:translate(6px,2px)}60%,75%{transform:translate(6px,6px)}}@keyframes zuki-devis-talk{0%,10%,to{transform:scaleY(1)}20%,25%,30%,35%,40%,45%{transform:scaleY(1.4)translateY(1px)}22.5%,27.5%,32.5%,37.5%,42.5%{transform:scaleY(.8)}55%,60%,65%,70%,75%{transform:scaleY(1.4)translateY(1px)}57.5%,62.5%,67.5%,72.5%{transform:scaleY(.8)}}.anim-quote .zuk-claw-left{transform-box:view-box;transform-origin:58px 180px;animation:5s ease-in-out infinite zuki-devis-point-anim}.anim-quote .zuk-claw-left .zuk-jaw{animation:5s ease-in-out infinite zuki-devis-jaw}.anim-quote .zuk-mouth{transform-origin:50%;animation:5s ease-in-out infinite zuki-devis-talk}.anim-quote .zuk-pupil,.anim-quote .zuk-eye-glint{animation:5s ease-in-out infinite zuki-devis-look}@keyframes zuki-bouncein{0%{transform:scale(0)}60%{transform:scale(1.1)}80%{transform:scale(.96)}to{transform:scale(1)}}@keyframes zuki-wave-organic{0%,to{transform:rotate(0)}10%{transform:rotate(40deg)}15%{transform:rotate(50deg)}20%{transform:rotate(30deg)}25%{transform:rotate(50deg)}30%{transform:rotate(30deg)}35%{transform:rotate(40deg)}45%,to{transform:rotate(0)}}@keyframes zuki-pinch-organic{0%,to{transform:rotate(0)}8%{transform:rotate(-16deg)}15%{transform:rotate(10deg)}22%{transform:rotate(-16deg)}29%{transform:rotate(8deg)}36%{transform:rotate(-10deg)}43%{transform:rotate(0)}}@keyframes zuki-happy-legs{0%,to{transform:translateY(0)}25%{transform:translateY(-3px)rotate(4deg)}50%{transform:translateY(0)}75%{transform:translateY(-3px)rotate(-4deg)}}@keyframes zuki-look-around{0%,to{transform:translate(0)}10%,25%{transform:translate(6px,-4px)}35%,50%{transform:translate(-6px,-2px)}60%,75%{transform:translateY(-6px)}85%,95%{transform:translate(4px,4px)}}@keyframes zuki-arm-sway{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)translateY(-2px)}}@keyframes zuki-chat{0%,to{transform:scaleY(1)}10%,15%,20%,25%,30%{transform:scaleY(1.5)translateY(2px)}12.5%,17.5%,22.5%,27.5%{transform:scaleY(.8)}35%,to{transform:scaleY(1)}}@keyframes zuki-cross-room{0%,to{transform:translate(0)}25%{transform:translate(-15px)}75%{transform:translate(15px)}}.anim-hello .zuk-claw-left{transform-box:view-box;transform-origin:58px 180px;animation:5s ease-in-out infinite zuki-wave-organic}.anim-hello .zuk-claw-left .zuk-jaw{animation:5s ease-in-out infinite zuki-pinch-organic}@keyframes zuki-crab-walk-leg{0%,to{transform:rotate(0)translate(0)}25%{transform:rotate(-15deg)translate(-4px)}75%{transform:rotate(15deg)translate(4px)}}.anim-hello .zuk-leg-0,.anim-hello .zuk-leg-2{transform-origin:top;animation:.4s ease-in-out infinite zuki-crab-walk-leg}.anim-hello .zuk-leg-1,.anim-hello .zuk-leg-3{transform-origin:top;animation:.4s ease-in-out infinite reverse zuki-crab-walk-leg}.anim-hello .zuk-pupil,.anim-hello .zuk-eye-glint{animation:5s ease-in-out infinite zuki-look-around}.anim-hello .zuk-claw-right{transform-box:view-box;transform-origin:200px 150px;animation:2.5s ease-in-out infinite zuki-arm-sway}.anim-hello .zuk-mouth{transform-origin:50%;animation:5s ease-in-out infinite zuki-chat}@keyframes zuki-tilt-think{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes zuki-serious-arm{0%,40%{transform:rotate(0)}42%,75%{transform:translateY(-4px)}77%,to{transform:translateY(0)}}@keyframes zuki-snap-jaw{0%,40%{transform:rotate(0)}42%{transform:rotate(-35deg)}45%{transform:rotate(5deg)}48%{transform:rotate(-25deg)}51%{transform:rotate(2deg)}54%{transform:rotate(-15deg)}57%,to{transform:rotate(0)}}@keyframes zuki-eyebrow-twitch{0%,40%{transform:translateY(0)rotate(0)}42%,75%{transform:translateY(-6px)rotate(10deg)}77%,to{transform:translateY(0)rotate(0)}}@keyframes zuki-nervous-look{0%,40%{transform:translate(0)}42%,75%{transform:translateY(-6px)}77%,to{transform:translate(0)}}@keyframes zuki-q-float{0%,to{opacity:.8;transform:translateY(0)scale(1)rotate(0)}25%{opacity:1;transform:translateY(-8px)scale(1.1)rotate(6deg)}50%{opacity:.9;transform:translateY(2px)scale(.95)rotate(-4deg)}75%{opacity:1;transform:translateY(-5px)scale(1.05)rotate(3deg)}}@keyframes zuki-foot-tap{0%,to{transform:translateY(0)rotate(0)}10%{transform:translateY(-6px)rotate(-4deg)}15%{transform:translateY(0)rotate(0)}20%{transform:translateY(-6px)rotate(-4deg)}25%{transform:translateY(0)rotate(0)}30%{transform:translateY(-6px)rotate(-4deg)}35%,90%{transform:translateY(0)rotate(0)}}.anim-perplexed .zuk-root{transform-origin:50% 95%;animation:4s ease-in-out infinite zuki-tilt-think}.anim-perplexed .zuk-claw-left,.anim-perplexed .zuk-claw-right{transform-box:view-box;transform-origin:50%;animation:4s ease-in-out infinite zuki-serious-arm}.anim-perplexed .zuk-jaw{animation:4s ease-in-out infinite zuki-snap-jaw}.anim-perplexed .zuk-eyebrow{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite zuki-eyebrow-twitch}.anim-perplexed .zuk-pupil,.anim-perplexed .zuk-eye-glint{animation:3s ease-in-out infinite zuki-nervous-look}.anim-perplexed .zuk-props-q{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite zuki-q-float}.anim-perplexed .zuk-leg-3{transform-origin:top;animation:4s ease-in-out infinite zuki-foot-tap}@keyframes zuki-zzz{0%{opacity:0;transform:scale(.5)translateY(10px)}50%{opacity:1}to{opacity:0;transform:scale(1.2)translate(10px,-20px)}}@keyframes zuki-snore{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes zuki-snore-mouth{0%,to{transform:scale(1.8)}50%{transform:scale(1)}}.anim-sleeping .zuk-carapace,.anim-sleeping .zuk-plastron{transform-origin:130px 150px;animation:3s ease-in-out infinite zuki-snore}.anim-sleeping .zuk-z-1{transform-origin:188px 92px;animation:3s linear infinite zuki-zzz}.anim-sleeping .zuk-z-2{transform-origin:208px 66px;animation:3s linear 1s infinite zuki-zzz}.anim-sleeping .zuk-z-3{transform-origin:226px 40px;animation:3s linear 2s infinite zuki-zzz}.anim-sleeping .zuk-mouth-snore ellipse{transform-origin:130px 172px;animation:3s ease-in-out infinite zuki-snore-mouth}@keyframes zuki-cop-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes zuki-cop-sign{0%,to{transform:rotate(0)}50%{transform:rotate(4deg)}}@keyframes zuki-cop-circuler{0%,30%,80%,to{transform:rotate(2deg)}45%,65%{transform:rotate(-4deg)}}@keyframes zuki-stop-jaw{0%,30%,80%,to{transform:rotate(0)}45%{transform:rotate(-25deg)}55%{transform:rotate(0)}65%{transform:rotate(-25deg)}}.anim-stop .zuk-root{transform-origin:50% 90%;animation:4s ease-in-out infinite zuki-cop-breathe}.anim-stop .zuk-claw-left{transform-box:view-box;transform-origin:30px 90px;animation:4s ease-in-out infinite zuki-cop-circuler}.anim-stop .zuk-claw-left .zuk-jaw{animation:4s ease-in-out infinite zuki-stop-jaw}.anim-stop .zuk-claw-right{transform-box:view-box;transform-origin:200px 160px;animation:4s ease-in-out infinite zuki-cop-sign}.anim-stop .zuk-eyes{transform-origin:50%;animation:4.5s ease-in-out 1s infinite zuki-blink}@media (prefers-reduced-motion:reduce){.zuk *{animation:none!important}}
2
+ /*$vite$:1*/
@@ -0,0 +1,832 @@
1
+ import e from "react";
2
+ import { Fragment as t, jsx as n, jsxs as r } from "react/jsx-runtime";
3
+ //#region src/lib/Zuki.jsx
4
+ var i = {
5
+ orange: {
6
+ shell: "#F2552C",
7
+ body: "#E24921",
8
+ belly: "#FF8E63",
9
+ helmet: "#FFC53D",
10
+ ink: "#2B2B33",
11
+ light: "#FFFFFF"
12
+ },
13
+ blue: {
14
+ shell: "#4F6EF7",
15
+ body: "#3A59E0",
16
+ belly: "#86A0FB",
17
+ helmet: "#FFC53D",
18
+ ink: "#2B2B33",
19
+ light: "#FFFFFF"
20
+ }
21
+ }, a = 260, o = {
22
+ cx: 130,
23
+ cy: 148,
24
+ rx: 92,
25
+ ry: 78
26
+ }, s = {
27
+ lx: 101,
28
+ rx: 159,
29
+ cy: 126,
30
+ r: 29
31
+ }, c = { r: 15 };
32
+ function l(e) {
33
+ return Math.round(e * 10) / 10;
34
+ }
35
+ function u() {
36
+ return {
37
+ base: "M-18 -24 C8 -34 44 -30 60 -14 C66 -8 64 2 54 4 L10 3 C-2 5 -12 4 -20 -2 C-30 -10 -30 -18 -18 -24 Z",
38
+ jaw: "M10 3 C26 5 44 12 50 20 C46 26 30 26 16 22 C8 19 6 10 10 3 Z"
39
+ };
40
+ }
41
+ var d = ({ side: e, p: t, C: i }) => {
42
+ let a = t.s == null ? 1 : t.s, o = !!t.flip, s = o ? -a : a, c = (o ? t.rot : t.rot + 180) * Math.PI / 180, d = t.cx + Math.cos(c) * 14 * a, f = t.cy + Math.sin(c) * 14 * a, p = u();
43
+ return /* @__PURE__ */ r("g", {
44
+ className: `zuk-claw zuk-claw-${e}`,
45
+ children: [/* @__PURE__ */ n("line", {
46
+ className: "zuk-arm",
47
+ x1: l(t.ax),
48
+ y1: l(t.ay),
49
+ x2: l(d),
50
+ y2: l(f),
51
+ stroke: i.shell,
52
+ strokeWidth: "24",
53
+ strokeLinecap: "round"
54
+ }), /* @__PURE__ */ n("g", {
55
+ className: "zuk-claw-pos",
56
+ transform: `translate(${l(t.cx)} ${l(t.cy)}) rotate(${l(t.rot)}) scale(${l(s)} ${a})`,
57
+ children: /* @__PURE__ */ r("g", {
58
+ className: "zuk-claw-tip",
59
+ children: [
60
+ t.holdSign && /* @__PURE__ */ r("g", {
61
+ transform: "translate(0, 0)",
62
+ children: [/* @__PURE__ */ n("rect", {
63
+ x: "-10",
64
+ y: "-6",
65
+ width: "145",
66
+ height: "12",
67
+ fill: i.ink
68
+ }), /* @__PURE__ */ r("g", {
69
+ transform: "translate(135, 0) rotate(90) scale(2.2)",
70
+ children: [
71
+ /* @__PURE__ */ n("polygon", {
72
+ points: "0,-36 25,-25 36,0 25,25 0,36 -25,25 -36,0 -25,-25",
73
+ fill: "#E63946",
74
+ stroke: i.ink,
75
+ strokeWidth: "2.5",
76
+ strokeLinejoin: "round"
77
+ }),
78
+ /* @__PURE__ */ n("polygon", {
79
+ points: "0,-30 21,-21 30,0 21,21 0,30 -21,21 -30,0 -21,-21",
80
+ fill: "none",
81
+ stroke: "#FFFFFF",
82
+ strokeWidth: "1.5",
83
+ strokeLinejoin: "round"
84
+ }),
85
+ /* @__PURE__ */ n("text", {
86
+ x: "0",
87
+ y: "6",
88
+ fontFamily: "'Arial Black', 'Impact', sans-serif",
89
+ fontSize: "19",
90
+ fontWeight: "900",
91
+ fill: "#FFFFFF",
92
+ textAnchor: "middle",
93
+ letterSpacing: "0",
94
+ children: t.signText || "STOP"
95
+ })
96
+ ]
97
+ })]
98
+ }),
99
+ /* @__PURE__ */ n("path", {
100
+ className: "zuk-jaw",
101
+ d: p.jaw,
102
+ fill: i.shell,
103
+ style: {
104
+ transformBox: "fill-box",
105
+ transformOrigin: "9% 0%"
106
+ }
107
+ }),
108
+ /* @__PURE__ */ n("path", {
109
+ className: "zuk-jaw-fixed",
110
+ d: p.base,
111
+ fill: i.shell
112
+ })
113
+ ]
114
+ })
115
+ })]
116
+ });
117
+ }, f = ({ C: e }) => /* @__PURE__ */ n("g", {
118
+ className: "zuk-legs",
119
+ children: [
120
+ {
121
+ x0: 92,
122
+ x1: 84
123
+ },
124
+ {
125
+ x0: 116,
126
+ x1: 113
127
+ },
128
+ {
129
+ x0: 144,
130
+ x1: 147
131
+ },
132
+ {
133
+ x0: 168,
134
+ x1: 176
135
+ }
136
+ ].map((t, r) => /* @__PURE__ */ n("line", {
137
+ className: `zuk-leg zuk-leg-${r}`,
138
+ x1: t.x0,
139
+ y1: 206,
140
+ x2: t.x1,
141
+ y2: 232,
142
+ stroke: e.shell,
143
+ strokeWidth: 17,
144
+ strokeLinecap: "round"
145
+ }, r))
146
+ }), p = {
147
+ none: () => null,
148
+ helmet: ({ C: e }) => /* @__PURE__ */ r(t, { children: [
149
+ /* @__PURE__ */ n("path", {
150
+ d: "M55 83 A 75 68 0 0 1 205 83 Z",
151
+ fill: e.helmet
152
+ }),
153
+ /* @__PURE__ */ n("path", {
154
+ d: "M113 83 L113 16 Q130 8 147 16 L147 83 Z",
155
+ fill: e.helmet
156
+ }),
157
+ /* @__PURE__ */ n("path", {
158
+ d: "M113 83 L113 16 Q130 8 147 16 L147 83 Z",
159
+ fill: "rgba(255,255,255,0.15)"
160
+ }),
161
+ /* @__PURE__ */ n("path", {
162
+ d: "M113 83 L113 16",
163
+ stroke: "rgba(0,0,0,0.1)",
164
+ strokeWidth: "2.5",
165
+ fill: "none"
166
+ }),
167
+ /* @__PURE__ */ n("path", {
168
+ d: "M147 83 L147 16",
169
+ stroke: "rgba(0,0,0,0.1)",
170
+ strokeWidth: "2.5",
171
+ fill: "none"
172
+ }),
173
+ /* @__PURE__ */ n("path", {
174
+ d: "M80 83 Q80 50 92 38",
175
+ stroke: "rgba(0,0,0,0.1)",
176
+ strokeWidth: "2.5",
177
+ fill: "none",
178
+ strokeLinecap: "round"
179
+ }),
180
+ /* @__PURE__ */ n("path", {
181
+ d: "M180 83 Q180 50 168 38",
182
+ stroke: "rgba(0,0,0,0.1)",
183
+ strokeWidth: "2.5",
184
+ fill: "none",
185
+ strokeLinecap: "round"
186
+ }),
187
+ /* @__PURE__ */ n("path", {
188
+ d: "M42 93 Q130 83 218 93 A 7 7 0 0 0 218 79 Q130 69 42 79 A 7 7 0 0 0 42 93 Z",
189
+ fill: e.helmet
190
+ }),
191
+ /* @__PURE__ */ n("path", {
192
+ d: "M42 93 Q130 83 218 93 A 7 7 0 0 0 218 79 Q130 69 42 79 A 7 7 0 0 0 42 93 Z",
193
+ fill: "rgba(0,0,0,0.15)"
194
+ }),
195
+ /* @__PURE__ */ n("path", {
196
+ d: "M42 89 Q130 79 218 89 A 7 7 0 0 0 218 75 Q130 65 42 75 A 7 7 0 0 0 42 89 Z",
197
+ fill: e.helmet
198
+ })
199
+ ] }),
200
+ cap: ({ C: e }) => /* @__PURE__ */ r(t, { children: [
201
+ /* @__PURE__ */ n("path", {
202
+ d: "M58 84 Q5 88 10 105 Q60 110 132 96 Z",
203
+ fill: e.helmet
204
+ }),
205
+ /* @__PURE__ */ n("path", {
206
+ d: "M10 105 Q15 111 65 112 Q125 102 132 96 Q60 110 10 105 Z",
207
+ fill: "rgba(0,0,0,0.1)"
208
+ }),
209
+ /* @__PURE__ */ n("path", {
210
+ d: "M58 84 A74 58 0 0 1 206 84 A 74 12 0 0 1 58 84 Z",
211
+ fill: e.helmet
212
+ }),
213
+ /* @__PURE__ */ n("path", {
214
+ d: "M132 26 Q132 55 132 96",
215
+ stroke: "rgba(0,0,0,0.15)",
216
+ strokeWidth: "2",
217
+ fill: "none"
218
+ }),
219
+ /* @__PURE__ */ n("path", {
220
+ d: "M132 26 Q90 45 70 88",
221
+ stroke: "rgba(0,0,0,0.15)",
222
+ strokeWidth: "2",
223
+ fill: "none"
224
+ }),
225
+ /* @__PURE__ */ n("path", {
226
+ d: "M132 26 Q174 45 194 88",
227
+ stroke: "rgba(0,0,0,0.15)",
228
+ strokeWidth: "2",
229
+ fill: "none"
230
+ }),
231
+ /* @__PURE__ */ n("circle", {
232
+ cx: "102",
233
+ cy: "50",
234
+ r: "2.5",
235
+ fill: "rgba(0,0,0,0.15)"
236
+ }),
237
+ /* @__PURE__ */ n("circle", {
238
+ cx: "162",
239
+ cy: "50",
240
+ r: "2.5",
241
+ fill: "rgba(0,0,0,0.15)"
242
+ }),
243
+ /* @__PURE__ */ n("path", {
244
+ d: "M58 84 A 74 12 0 0 0 206 84",
245
+ stroke: "rgba(0,0,0,0.15)",
246
+ strokeWidth: "3",
247
+ fill: "none"
248
+ }),
249
+ /* @__PURE__ */ n("ellipse", {
250
+ cx: "132",
251
+ cy: "26",
252
+ rx: "8",
253
+ ry: "4",
254
+ fill: e.helmet
255
+ }),
256
+ /* @__PURE__ */ n("path", {
257
+ d: "M124 26 A 8 4 0 0 0 140 26",
258
+ stroke: "rgba(0,0,0,0.15)",
259
+ strokeWidth: "1.5",
260
+ fill: "none"
261
+ })
262
+ ] }),
263
+ beanie: ({ C: e }) => /* @__PURE__ */ r(t, { children: [
264
+ /* @__PURE__ */ n("path", {
265
+ d: "M54 82 A76 60 0 0 1 206 82 Z",
266
+ fill: e.helmet
267
+ }),
268
+ /* @__PURE__ */ n("rect", {
269
+ x: "50",
270
+ y: "76",
271
+ width: "160",
272
+ height: "18",
273
+ rx: "9",
274
+ fill: e.ink
275
+ }),
276
+ /* @__PURE__ */ n("circle", {
277
+ cx: "130",
278
+ cy: "20",
279
+ r: "11",
280
+ fill: e.ink
281
+ })
282
+ ] }),
283
+ headset: ({ C: e }) => /* @__PURE__ */ r(t, { children: [
284
+ /* @__PURE__ */ n("path", {
285
+ d: "M58 86 A78 70 0 0 1 202 86",
286
+ stroke: e.ink,
287
+ strokeWidth: "14",
288
+ fill: "none",
289
+ strokeLinecap: "round"
290
+ }),
291
+ /* @__PURE__ */ n("rect", {
292
+ x: "42",
293
+ y: "78",
294
+ width: "28",
295
+ height: "40",
296
+ rx: "12",
297
+ fill: e.ink
298
+ }),
299
+ /* @__PURE__ */ n("rect", {
300
+ x: "190",
301
+ y: "78",
302
+ width: "28",
303
+ height: "40",
304
+ rx: "12",
305
+ fill: e.ink
306
+ }),
307
+ /* @__PURE__ */ n("path", {
308
+ d: "M204 116 Q214 150 176 162",
309
+ stroke: e.ink,
310
+ strokeWidth: "9",
311
+ fill: "none",
312
+ strokeLinecap: "round"
313
+ }),
314
+ /* @__PURE__ */ n("circle", {
315
+ cx: "174",
316
+ cy: "164",
317
+ r: "9",
318
+ fill: e.helmet
319
+ })
320
+ ] }),
321
+ party: ({ C: e }) => /* @__PURE__ */ r(t, { children: [
322
+ /* @__PURE__ */ n("path", {
323
+ d: "M130 6 L172 90 L88 90 Z",
324
+ fill: e.helmet
325
+ }),
326
+ /* @__PURE__ */ n("path", {
327
+ d: "M130 6 L150 46 L110 46 Z",
328
+ fill: e.ink,
329
+ opacity: "0.18"
330
+ }),
331
+ /* @__PURE__ */ n("circle", {
332
+ cx: "130",
333
+ cy: "8",
334
+ r: "10",
335
+ fill: e.ink
336
+ })
337
+ ] })
338
+ }, m = ({ name: e, C: t }) => {
339
+ let r = p[e] || p.helmet;
340
+ return /* @__PURE__ */ n("g", {
341
+ className: `zuk-casque zuk-acc-${e}`,
342
+ children: /* @__PURE__ */ n(r, { C: t })
343
+ });
344
+ }, h = ({ C: t, look: i = {
345
+ dx: 0,
346
+ dy: 4
347
+ } }) => {
348
+ let a = (a) => {
349
+ let o = a + i.dx, u = s.cy + i.dy;
350
+ return /* @__PURE__ */ r(e.Fragment, { children: [
351
+ /* @__PURE__ */ n("circle", {
352
+ cx: a,
353
+ cy: s.cy,
354
+ r: s.r,
355
+ fill: t.light
356
+ }),
357
+ /* @__PURE__ */ n("circle", {
358
+ className: "zuk-pupil",
359
+ cx: l(o),
360
+ cy: l(u),
361
+ r: c.r,
362
+ fill: t.ink
363
+ }),
364
+ /* @__PURE__ */ n("circle", {
365
+ className: "zuk-eye-glint",
366
+ cx: l(o + 5),
367
+ cy: l(u - 6),
368
+ r: "5.5",
369
+ fill: t.light
370
+ })
371
+ ] }, a);
372
+ };
373
+ return /* @__PURE__ */ r("g", {
374
+ className: "zuk-eyes",
375
+ children: [a(s.lx), a(s.rx)]
376
+ });
377
+ }, g = ({ C: e }) => {
378
+ let t = (t) => /* @__PURE__ */ n("path", {
379
+ d: `M${t - 20} ${s.cy} Q${t} ${s.cy + 20} ${t + 20} ${s.cy}`,
380
+ stroke: e.ink,
381
+ strokeWidth: "8",
382
+ fill: "none",
383
+ strokeLinecap: "round"
384
+ }, t);
385
+ return /* @__PURE__ */ r("g", {
386
+ className: "zuk-eyes",
387
+ children: [t(s.lx), t(s.rx)]
388
+ });
389
+ }, _ = ({ C: e }) => {
390
+ let t = (t) => /* @__PURE__ */ n("path", {
391
+ d: `M${t - 19} ${s.cy + 6} Q${t} ${s.cy - 16} ${t + 19} ${s.cy + 6}`,
392
+ stroke: e.ink,
393
+ strokeWidth: "8",
394
+ fill: "none",
395
+ strokeLinecap: "round"
396
+ }, t);
397
+ return /* @__PURE__ */ r("g", {
398
+ className: "zuk-eyes",
399
+ children: [t(s.lx), t(s.rx)]
400
+ });
401
+ }, v = ({ C: t, look: i = {
402
+ dx: 0,
403
+ dy: 2
404
+ } }) => {
405
+ let a = (a) => {
406
+ let o = a + i.dx, u = s.cy + i.dy;
407
+ return /* @__PURE__ */ r(e.Fragment, { children: [
408
+ /* @__PURE__ */ n("circle", {
409
+ cx: a,
410
+ cy: s.cy,
411
+ r: s.r,
412
+ fill: t.light
413
+ }),
414
+ /* @__PURE__ */ n("circle", {
415
+ className: "zuk-pupil",
416
+ cx: l(o),
417
+ cy: l(u),
418
+ r: c.r,
419
+ fill: t.ink
420
+ }),
421
+ /* @__PURE__ */ n("circle", {
422
+ className: "zuk-eye-glint",
423
+ cx: l(o + 5),
424
+ cy: l(u - 6),
425
+ r: "6",
426
+ fill: t.light
427
+ }),
428
+ /* @__PURE__ */ n("circle", {
429
+ className: "zuk-eye-glint",
430
+ cx: l(o - 5),
431
+ cy: l(u + 5),
432
+ r: "3",
433
+ fill: t.light
434
+ })
435
+ ] }, a);
436
+ };
437
+ return /* @__PURE__ */ r("g", {
438
+ className: "zuk-eyes",
439
+ children: [a(s.lx), a(s.rx)]
440
+ });
441
+ }, y = {
442
+ smile: "M108 164 Q130 186 152 164",
443
+ neutral: "M112 172 L148 172",
444
+ small: "M120 172 Q130 180 140 172",
445
+ worried: "M112 174 Q130 166 148 174"
446
+ }, b = ({ C: e, d: t = y.smile }) => /* @__PURE__ */ n("path", {
447
+ className: "zuk-mouth",
448
+ d: t,
449
+ stroke: e.ink,
450
+ strokeWidth: "8",
451
+ fill: "none",
452
+ strokeLinecap: "round"
453
+ }), x = ({ C: e }) => /* @__PURE__ */ n("g", {
454
+ className: "zuk-mouth",
455
+ children: /* @__PURE__ */ n("path", {
456
+ d: "M104 162 Q130 168 156 162 Q150 196 130 196 Q110 196 104 162 Z",
457
+ fill: e.ink
458
+ })
459
+ }), S = ({ C: e }) => /* @__PURE__ */ n("g", {
460
+ className: "zuk-mouth zuk-mouth-snore",
461
+ children: /* @__PURE__ */ n("ellipse", {
462
+ cx: "130",
463
+ cy: "172",
464
+ rx: "6",
465
+ ry: "6",
466
+ fill: e.ink
467
+ })
468
+ }), C = ({ C: e }) => /* @__PURE__ */ n("g", {
469
+ className: "zuk-plastron",
470
+ children: /* @__PURE__ */ n("ellipse", {
471
+ cx: "130",
472
+ cy: "170",
473
+ rx: "55",
474
+ ry: "49",
475
+ fill: e.belly
476
+ })
477
+ }), w = ({ C: e }) => /* @__PURE__ */ n("g", {
478
+ className: "zuk-carapace",
479
+ children: /* @__PURE__ */ n("ellipse", {
480
+ cx: o.cx,
481
+ cy: o.cy,
482
+ rx: o.rx,
483
+ ry: o.ry,
484
+ fill: e.body
485
+ })
486
+ }), T = {
487
+ ax: 58,
488
+ ay: 180,
489
+ cx: 30,
490
+ cy: 172,
491
+ rot: 18,
492
+ s: .6,
493
+ flip: !0
494
+ }, E = {
495
+ ax: 202,
496
+ ay: 180,
497
+ cx: 230,
498
+ cy: 172,
499
+ rot: 342,
500
+ s: .6
501
+ };
502
+ function D(e, t, r, i, a) {
503
+ let o = "";
504
+ for (let n = 0; n < 10; n++) {
505
+ let i = Math.PI / 5 * n - Math.PI / 2, a = n % 2 == 0 ? r : r * .45;
506
+ o += `${l(e + a * Math.cos(i))},${l(t + a * Math.sin(i))} `;
507
+ }
508
+ return /* @__PURE__ */ n("polygon", {
509
+ points: o.trim(),
510
+ fill: i
511
+ }, a);
512
+ }
513
+ function O(e, t, r, i) {
514
+ let a = r * .62, o = r * .34, s = "";
515
+ for (let n = 0; n < 16; n++) {
516
+ let i = Math.PI / 8 * n, o = n % 2 == 0 ? r : a;
517
+ s += (n === 0 ? "M" : "L") + l(e + o * Math.cos(i)) + " " + l(t + o * Math.sin(i)) + " ";
518
+ }
519
+ return s += "Z", s += ` M ${l(e - o)} ${l(t)} A ${l(o)} ${l(o)} 0 1 0 ${l(e + o)} ${l(t)} A ${l(o)} ${l(o)} 0 1 0 ${l(e - o)} ${l(t)} Z`, /* @__PURE__ */ n("path", {
520
+ d: s,
521
+ fill: i,
522
+ fillRule: "evenodd"
523
+ });
524
+ }
525
+ var k = ({ C: e }) => /* @__PURE__ */ r("g", {
526
+ className: "zuk-props zuk-props-gears",
527
+ children: [/* @__PURE__ */ n("g", {
528
+ className: "zuk-gear-a",
529
+ children: O(75, 48, 25, "currentColor")
530
+ }), /* @__PURE__ */ n("g", {
531
+ className: "zuk-gear-b",
532
+ children: /* @__PURE__ */ n("g", {
533
+ transform: "rotate(22.5 49 22)",
534
+ children: O(49, 22, 20, e.helmet)
535
+ })
536
+ })]
537
+ }), A = ({ C: e, transform: t }) => /* @__PURE__ */ r("g", {
538
+ className: "zuk-props zuk-props-doc",
539
+ transform: t || "",
540
+ children: [
541
+ /* @__PURE__ */ n("rect", {
542
+ x: "168",
543
+ y: "140",
544
+ width: "64",
545
+ height: "80",
546
+ rx: "6",
547
+ fill: e.light,
548
+ transform: "rotate(8 200 180)"
549
+ }),
550
+ /* @__PURE__ */ r("g", {
551
+ transform: "rotate(8 200 180)",
552
+ stroke: e.shell,
553
+ strokeWidth: "5",
554
+ strokeLinecap: "round",
555
+ children: [
556
+ /* @__PURE__ */ n("line", {
557
+ x1: "178",
558
+ y1: "158",
559
+ x2: "222",
560
+ y2: "158"
561
+ }),
562
+ /* @__PURE__ */ n("line", {
563
+ x1: "178",
564
+ y1: "172",
565
+ x2: "222",
566
+ y2: "172"
567
+ }),
568
+ /* @__PURE__ */ n("line", {
569
+ x1: "178",
570
+ y1: "186",
571
+ x2: "210",
572
+ y2: "186"
573
+ })
574
+ ]
575
+ }),
576
+ /* @__PURE__ */ n("path", {
577
+ d: "M180 202 l8 9 16 -18",
578
+ transform: "rotate(8 200 180)",
579
+ stroke: e.helmet,
580
+ strokeWidth: "6",
581
+ fill: "none",
582
+ strokeLinecap: "round",
583
+ strokeLinejoin: "round"
584
+ })
585
+ ]
586
+ }), j = ({ C: e }) => /* @__PURE__ */ n("path", {
587
+ className: "zuk-eyebrow",
588
+ d: "M146 98 Q160 90 174 98",
589
+ stroke: e.ink,
590
+ strokeWidth: "7",
591
+ fill: "none",
592
+ strokeLinecap: "round"
593
+ }), M = ({ C: e }) => /* @__PURE__ */ n("g", {
594
+ className: "zuk-props zuk-props-q",
595
+ children: /* @__PURE__ */ n("text", {
596
+ x: "206",
597
+ y: "64",
598
+ fontFamily: "system-ui, sans-serif",
599
+ fontSize: "58",
600
+ fontWeight: "800",
601
+ fill: "currentColor",
602
+ children: "?"
603
+ })
604
+ }), N = ({ C: e }) => /* @__PURE__ */ r("g", {
605
+ className: "zuk-props-burst",
606
+ children: [
607
+ /* @__PURE__ */ n("g", {
608
+ className: "zuk-star-1",
609
+ children: D(130, 29, 8, e.helmet, "s1")
610
+ }),
611
+ /* @__PURE__ */ n("g", {
612
+ className: "zuk-star-2",
613
+ children: D(175, 42, 10, e.helmet, "s2")
614
+ }),
615
+ /* @__PURE__ */ n("g", {
616
+ className: "zuk-star-3",
617
+ children: D(85, 43, 10, e.helmet, "s3")
618
+ }),
619
+ /* @__PURE__ */ n("g", {
620
+ className: "zuk-star-4",
621
+ children: D(100, 20, 5, e.helmet, "s4")
622
+ }),
623
+ /* @__PURE__ */ n("g", {
624
+ className: "zuk-star-5",
625
+ children: D(150, 28, 6, e.helmet, "s5")
626
+ })
627
+ ]
628
+ }), P = ({ C: e }) => /* @__PURE__ */ r("g", {
629
+ className: "zuk-props zuk-props-wrench",
630
+ transform: "rotate(-32 196 150)",
631
+ children: [/* @__PURE__ */ n("rect", {
632
+ x: "188",
633
+ y: "96",
634
+ width: "16",
635
+ height: "74",
636
+ rx: "8",
637
+ fill: e.ink
638
+ }), /* @__PURE__ */ n("path", {
639
+ d: "M178 96 a18 18 0 1 1 36 0 l-8 0 a10 10 0 1 0 -20 0 Z",
640
+ fill: e.ink
641
+ })]
642
+ }), F = ({ C: e }) => /* @__PURE__ */ r("g", {
643
+ className: "zuk-props zuk-props-z",
644
+ fontFamily: "system-ui, sans-serif",
645
+ fontWeight: "800",
646
+ fill: e.body,
647
+ children: [
648
+ /* @__PURE__ */ n("text", {
649
+ className: "zuk-z-1",
650
+ x: "188",
651
+ y: "92",
652
+ fontSize: "26",
653
+ children: "Z"
654
+ }),
655
+ /* @__PURE__ */ n("text", {
656
+ className: "zuk-z-2",
657
+ x: "208",
658
+ y: "66",
659
+ fontSize: "34",
660
+ children: "Z"
661
+ }),
662
+ /* @__PURE__ */ n("text", {
663
+ className: "zuk-z-3",
664
+ x: "226",
665
+ y: "40",
666
+ fontSize: "22",
667
+ opacity: "0.6",
668
+ children: "z"
669
+ })
670
+ ]
671
+ }), I = ({ pose: e = "reference", theme: o = "orange", accessory: s = "none", mono: c = "", monoBg: l = "#FFFFFF", size: u = 260, className: p = "", title: D, stopText: O = "STOP", hideLimbs: I = !1, extra: L }) => {
672
+ let R = !!c, z = R ? {
673
+ shell: c,
674
+ body: c,
675
+ belly: c,
676
+ helmet: c,
677
+ ink: l,
678
+ light: l
679
+ } : i[o] || i.orange, B = { ...T }, V = { ...E }, H = /* @__PURE__ */ n(h, { C: z }), U = /* @__PURE__ */ n(b, { C: z }), W = null;
680
+ switch (e) {
681
+ case "idle": break;
682
+ case "hello":
683
+ B = { ...T }, H = /* @__PURE__ */ n(h, { C: z }), U = /* @__PURE__ */ n(b, {
684
+ C: z,
685
+ d: y.smile
686
+ });
687
+ break;
688
+ case "process":
689
+ H = /* @__PURE__ */ n(_, { C: z }), U = /* @__PURE__ */ n(b, {
690
+ C: z,
691
+ d: y.small
692
+ }), W = /* @__PURE__ */ n(k, { C: z });
693
+ break;
694
+ case "quote":
695
+ B = { ...T }, V = {
696
+ ax: 202,
697
+ ay: 180,
698
+ cx: 200,
699
+ cy: 140,
700
+ rot: 100,
701
+ s: .5
702
+ }, W = /* @__PURE__ */ n(A, { C: z }), U = /* @__PURE__ */ n(b, { C: z });
703
+ break;
704
+ case "perplexed":
705
+ B = {
706
+ ax: 50,
707
+ ay: 160,
708
+ cx: 20,
709
+ cy: 110,
710
+ rot: 25,
711
+ s: .6,
712
+ flip: !0
713
+ }, V = {
714
+ ax: 210,
715
+ ay: 160,
716
+ cx: 240,
717
+ cy: 110,
718
+ rot: 335,
719
+ s: .6
720
+ }, H = /* @__PURE__ */ n(h, {
721
+ C: z,
722
+ look: {
723
+ dx: 5,
724
+ dy: -1
725
+ }
726
+ }), U = /* @__PURE__ */ n(b, {
727
+ C: z,
728
+ d: y.neutral
729
+ }), W = /* @__PURE__ */ r(t, { children: [/* @__PURE__ */ n(j, { C: z }), /* @__PURE__ */ n(M, { C: z })] });
730
+ break;
731
+ case "success":
732
+ B = {
733
+ ax: 62,
734
+ ay: 152,
735
+ cx: 48,
736
+ cy: 80,
737
+ rot: 55,
738
+ s: .56,
739
+ flip: !0
740
+ }, V = {
741
+ ax: 198,
742
+ ay: 152,
743
+ cx: 212,
744
+ cy: 80,
745
+ rot: 305,
746
+ s: .56
747
+ }, H = /* @__PURE__ */ n(v, { C: z }), U = /* @__PURE__ */ n(x, { C: z }), W = /* @__PURE__ */ n(N, { C: z });
748
+ break;
749
+ case "travaille":
750
+ V = {
751
+ ax: 200,
752
+ ay: 170,
753
+ cx: 204,
754
+ cy: 150,
755
+ rot: 290,
756
+ s: .52
757
+ }, W = /* @__PURE__ */ n(P, { C: z }), U = /* @__PURE__ */ n(b, {
758
+ C: z,
759
+ d: y.small
760
+ });
761
+ break;
762
+ case "endormi":
763
+ B = {
764
+ ...T,
765
+ rot: -2
766
+ }, V = {
767
+ ...E,
768
+ rot: 2
769
+ }, H = /* @__PURE__ */ n(g, { C: z }), U = /* @__PURE__ */ n(S, { C: z }), W = /* @__PURE__ */ n(F, { C: z });
770
+ break;
771
+ case "stop":
772
+ B = { ...T }, V = {
773
+ ax: 200,
774
+ ay: 160,
775
+ cx: 230,
776
+ cy: 120,
777
+ rot: 270,
778
+ s: .7,
779
+ holdSign: !0,
780
+ signText: O
781
+ }, H = /* @__PURE__ */ n(_, { C: z }), U = /* @__PURE__ */ n(b, {
782
+ C: z,
783
+ d: y.neutral
784
+ });
785
+ break;
786
+ }
787
+ return /* @__PURE__ */ r("svg", {
788
+ className: `zuk ${p}`.trim(),
789
+ viewBox: `0 0 ${a} ${a}`,
790
+ width: u,
791
+ height: u,
792
+ style: { overflow: "visible" },
793
+ xmlns: "http://www.w3.org/2000/svg",
794
+ "data-pose": e,
795
+ children: [D && /* @__PURE__ */ n("title", { children: D }), /* @__PURE__ */ r("g", {
796
+ className: "zuk-root",
797
+ children: [
798
+ !I && /* @__PURE__ */ n(f, { C: z }),
799
+ /* @__PURE__ */ n(w, { C: z }),
800
+ !R && /* @__PURE__ */ n(C, { C: z }),
801
+ /* @__PURE__ */ n(m, {
802
+ name: s,
803
+ C: z
804
+ }),
805
+ H,
806
+ U,
807
+ !I && /* @__PURE__ */ r("g", {
808
+ className: "zuk-pinces",
809
+ children: [/* @__PURE__ */ n(d, {
810
+ side: "left",
811
+ p: B,
812
+ C: z
813
+ }), /* @__PURE__ */ n(d, {
814
+ side: "right",
815
+ p: V,
816
+ C: z
817
+ })]
818
+ }),
819
+ W,
820
+ L && /* @__PURE__ */ n("g", { dangerouslySetInnerHTML: { __html: L } })
821
+ ]
822
+ })]
823
+ });
824
+ }, L = ({ theme: e = "orange", size: t }) => /* @__PURE__ */ n(I, {
825
+ pose: "idle",
826
+ theme: e,
827
+ size: t,
828
+ accessory: "helmet",
829
+ hideLimbs: !0
830
+ });
831
+ //#endregion
832
+ export { I as Zuki, I as default, L as ZukiFavicon };
@@ -0,0 +1 @@
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("react"),require("react/jsx-runtime")):typeof define==`function`&&define.amd?define([`exports`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.ZukiReact={},e.React,e.jsxRuntime))})(this,function(e,t,n){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var s=o(t),l=0,u=s.length,d;l<u;l++)d=s[l],!c.call(e,d)&&d!==n&&i(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(r=a(t,d))||r.enumerable});return e};t=((e,t,n)=>(n=e==null?{}:r(s(e)),l(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)))(t,1);var u={orange:{shell:`#F2552C`,body:`#E24921`,belly:`#FF8E63`,helmet:`#FFC53D`,ink:`#2B2B33`,light:`#FFFFFF`},blue:{shell:`#4F6EF7`,body:`#3A59E0`,belly:`#86A0FB`,helmet:`#FFC53D`,ink:`#2B2B33`,light:`#FFFFFF`}},d=260,f={cx:130,cy:148,rx:92,ry:78},p={lx:101,rx:159,cy:126,r:29},m={r:15};function h(e){return Math.round(e*10)/10}function g(){return{base:`M-18 -24 C8 -34 44 -30 60 -14 C66 -8 64 2 54 4 L10 3 C-2 5 -12 4 -20 -2 C-30 -10 -30 -18 -18 -24 Z`,jaw:`M10 3 C26 5 44 12 50 20 C46 26 30 26 16 22 C8 19 6 10 10 3 Z`}}var _=({side:e,p:t,C:r})=>{let i=t.s==null?1:t.s,a=!!t.flip,o=a?-i:i,s=(a?t.rot:t.rot+180)*Math.PI/180,c=t.cx+Math.cos(s)*14*i,l=t.cy+Math.sin(s)*14*i,u=g();return(0,n.jsxs)(`g`,{className:`zuk-claw zuk-claw-${e}`,children:[(0,n.jsx)(`line`,{className:`zuk-arm`,x1:h(t.ax),y1:h(t.ay),x2:h(c),y2:h(l),stroke:r.shell,strokeWidth:`24`,strokeLinecap:`round`}),(0,n.jsx)(`g`,{className:`zuk-claw-pos`,transform:`translate(${h(t.cx)} ${h(t.cy)}) rotate(${h(t.rot)}) scale(${h(o)} ${i})`,children:(0,n.jsxs)(`g`,{className:`zuk-claw-tip`,children:[t.holdSign&&(0,n.jsxs)(`g`,{transform:`translate(0, 0)`,children:[(0,n.jsx)(`rect`,{x:`-10`,y:`-6`,width:`145`,height:`12`,fill:r.ink}),(0,n.jsxs)(`g`,{transform:`translate(135, 0) rotate(90) scale(2.2)`,children:[(0,n.jsx)(`polygon`,{points:`0,-36 25,-25 36,0 25,25 0,36 -25,25 -36,0 -25,-25`,fill:`#E63946`,stroke:r.ink,strokeWidth:`2.5`,strokeLinejoin:`round`}),(0,n.jsx)(`polygon`,{points:`0,-30 21,-21 30,0 21,21 0,30 -21,21 -30,0 -21,-21`,fill:`none`,stroke:`#FFFFFF`,strokeWidth:`1.5`,strokeLinejoin:`round`}),(0,n.jsx)(`text`,{x:`0`,y:`6`,fontFamily:`'Arial Black', 'Impact', sans-serif`,fontSize:`19`,fontWeight:`900`,fill:`#FFFFFF`,textAnchor:`middle`,letterSpacing:`0`,children:t.signText||`STOP`})]})]}),(0,n.jsx)(`path`,{className:`zuk-jaw`,d:u.jaw,fill:r.shell,style:{transformBox:`fill-box`,transformOrigin:`9% 0%`}}),(0,n.jsx)(`path`,{className:`zuk-jaw-fixed`,d:u.base,fill:r.shell})]})})]})},v=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-legs`,children:[{x0:92,x1:84},{x0:116,x1:113},{x0:144,x1:147},{x0:168,x1:176}].map((t,r)=>(0,n.jsx)(`line`,{className:`zuk-leg zuk-leg-${r}`,x1:t.x0,y1:206,x2:t.x1,y2:232,stroke:e.shell,strokeWidth:17,strokeLinecap:`round`},r))}),y={none:()=>null,helmet:({C:e})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(`path`,{d:`M55 83 A 75 68 0 0 1 205 83 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M113 83 L113 16 Q130 8 147 16 L147 83 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M113 83 L113 16 Q130 8 147 16 L147 83 Z`,fill:`rgba(255,255,255,0.15)`}),(0,n.jsx)(`path`,{d:`M113 83 L113 16`,stroke:`rgba(0,0,0,0.1)`,strokeWidth:`2.5`,fill:`none`}),(0,n.jsx)(`path`,{d:`M147 83 L147 16`,stroke:`rgba(0,0,0,0.1)`,strokeWidth:`2.5`,fill:`none`}),(0,n.jsx)(`path`,{d:`M80 83 Q80 50 92 38`,stroke:`rgba(0,0,0,0.1)`,strokeWidth:`2.5`,fill:`none`,strokeLinecap:`round`}),(0,n.jsx)(`path`,{d:`M180 83 Q180 50 168 38`,stroke:`rgba(0,0,0,0.1)`,strokeWidth:`2.5`,fill:`none`,strokeLinecap:`round`}),(0,n.jsx)(`path`,{d:`M42 93 Q130 83 218 93 A 7 7 0 0 0 218 79 Q130 69 42 79 A 7 7 0 0 0 42 93 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M42 93 Q130 83 218 93 A 7 7 0 0 0 218 79 Q130 69 42 79 A 7 7 0 0 0 42 93 Z`,fill:`rgba(0,0,0,0.15)`}),(0,n.jsx)(`path`,{d:`M42 89 Q130 79 218 89 A 7 7 0 0 0 218 75 Q130 65 42 75 A 7 7 0 0 0 42 89 Z`,fill:e.helmet})]}),cap:({C:e})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(`path`,{d:`M58 84 Q5 88 10 105 Q60 110 132 96 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M10 105 Q15 111 65 112 Q125 102 132 96 Q60 110 10 105 Z`,fill:`rgba(0,0,0,0.1)`}),(0,n.jsx)(`path`,{d:`M58 84 A74 58 0 0 1 206 84 A 74 12 0 0 1 58 84 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M132 26 Q132 55 132 96`,stroke:`rgba(0,0,0,0.15)`,strokeWidth:`2`,fill:`none`}),(0,n.jsx)(`path`,{d:`M132 26 Q90 45 70 88`,stroke:`rgba(0,0,0,0.15)`,strokeWidth:`2`,fill:`none`}),(0,n.jsx)(`path`,{d:`M132 26 Q174 45 194 88`,stroke:`rgba(0,0,0,0.15)`,strokeWidth:`2`,fill:`none`}),(0,n.jsx)(`circle`,{cx:`102`,cy:`50`,r:`2.5`,fill:`rgba(0,0,0,0.15)`}),(0,n.jsx)(`circle`,{cx:`162`,cy:`50`,r:`2.5`,fill:`rgba(0,0,0,0.15)`}),(0,n.jsx)(`path`,{d:`M58 84 A 74 12 0 0 0 206 84`,stroke:`rgba(0,0,0,0.15)`,strokeWidth:`3`,fill:`none`}),(0,n.jsx)(`ellipse`,{cx:`132`,cy:`26`,rx:`8`,ry:`4`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M124 26 A 8 4 0 0 0 140 26`,stroke:`rgba(0,0,0,0.15)`,strokeWidth:`1.5`,fill:`none`})]}),beanie:({C:e})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(`path`,{d:`M54 82 A76 60 0 0 1 206 82 Z`,fill:e.helmet}),(0,n.jsx)(`rect`,{x:`50`,y:`76`,width:`160`,height:`18`,rx:`9`,fill:e.ink}),(0,n.jsx)(`circle`,{cx:`130`,cy:`20`,r:`11`,fill:e.ink})]}),headset:({C:e})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(`path`,{d:`M58 86 A78 70 0 0 1 202 86`,stroke:e.ink,strokeWidth:`14`,fill:`none`,strokeLinecap:`round`}),(0,n.jsx)(`rect`,{x:`42`,y:`78`,width:`28`,height:`40`,rx:`12`,fill:e.ink}),(0,n.jsx)(`rect`,{x:`190`,y:`78`,width:`28`,height:`40`,rx:`12`,fill:e.ink}),(0,n.jsx)(`path`,{d:`M204 116 Q214 150 176 162`,stroke:e.ink,strokeWidth:`9`,fill:`none`,strokeLinecap:`round`}),(0,n.jsx)(`circle`,{cx:`174`,cy:`164`,r:`9`,fill:e.helmet})]}),party:({C:e})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(`path`,{d:`M130 6 L172 90 L88 90 Z`,fill:e.helmet}),(0,n.jsx)(`path`,{d:`M130 6 L150 46 L110 46 Z`,fill:e.ink,opacity:`0.18`}),(0,n.jsx)(`circle`,{cx:`130`,cy:`8`,r:`10`,fill:e.ink})]})},b=({name:e,C:t})=>{let r=y[e]||y.helmet;return(0,n.jsx)(`g`,{className:`zuk-casque zuk-acc-${e}`,children:(0,n.jsx)(r,{C:t})})},x=({C:e,look:r={dx:0,dy:4}})=>{let i=i=>{let a=i+r.dx,o=p.cy+r.dy;return(0,n.jsxs)(t.default.Fragment,{children:[(0,n.jsx)(`circle`,{cx:i,cy:p.cy,r:p.r,fill:e.light}),(0,n.jsx)(`circle`,{className:`zuk-pupil`,cx:h(a),cy:h(o),r:m.r,fill:e.ink}),(0,n.jsx)(`circle`,{className:`zuk-eye-glint`,cx:h(a+5),cy:h(o-6),r:`5.5`,fill:e.light})]},i)};return(0,n.jsxs)(`g`,{className:`zuk-eyes`,children:[i(p.lx),i(p.rx)]})},S=({C:e})=>{let t=t=>(0,n.jsx)(`path`,{d:`M${t-20} ${p.cy} Q${t} ${p.cy+20} ${t+20} ${p.cy}`,stroke:e.ink,strokeWidth:`8`,fill:`none`,strokeLinecap:`round`},t);return(0,n.jsxs)(`g`,{className:`zuk-eyes`,children:[t(p.lx),t(p.rx)]})},C=({C:e})=>{let t=t=>(0,n.jsx)(`path`,{d:`M${t-19} ${p.cy+6} Q${t} ${p.cy-16} ${t+19} ${p.cy+6}`,stroke:e.ink,strokeWidth:`8`,fill:`none`,strokeLinecap:`round`},t);return(0,n.jsxs)(`g`,{className:`zuk-eyes`,children:[t(p.lx),t(p.rx)]})},w=({C:e,look:r={dx:0,dy:2}})=>{let i=i=>{let a=i+r.dx,o=p.cy+r.dy;return(0,n.jsxs)(t.default.Fragment,{children:[(0,n.jsx)(`circle`,{cx:i,cy:p.cy,r:p.r,fill:e.light}),(0,n.jsx)(`circle`,{className:`zuk-pupil`,cx:h(a),cy:h(o),r:m.r,fill:e.ink}),(0,n.jsx)(`circle`,{className:`zuk-eye-glint`,cx:h(a+5),cy:h(o-6),r:`6`,fill:e.light}),(0,n.jsx)(`circle`,{className:`zuk-eye-glint`,cx:h(a-5),cy:h(o+5),r:`3`,fill:e.light})]},i)};return(0,n.jsxs)(`g`,{className:`zuk-eyes`,children:[i(p.lx),i(p.rx)]})},T={smile:`M108 164 Q130 186 152 164`,neutral:`M112 172 L148 172`,small:`M120 172 Q130 180 140 172`,worried:`M112 174 Q130 166 148 174`},E=({C:e,d:t=T.smile})=>(0,n.jsx)(`path`,{className:`zuk-mouth`,d:t,stroke:e.ink,strokeWidth:`8`,fill:`none`,strokeLinecap:`round`}),D=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-mouth`,children:(0,n.jsx)(`path`,{d:`M104 162 Q130 168 156 162 Q150 196 130 196 Q110 196 104 162 Z`,fill:e.ink})}),O=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-mouth zuk-mouth-snore`,children:(0,n.jsx)(`ellipse`,{cx:`130`,cy:`172`,rx:`6`,ry:`6`,fill:e.ink})}),k=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-plastron`,children:(0,n.jsx)(`ellipse`,{cx:`130`,cy:`170`,rx:`55`,ry:`49`,fill:e.belly})}),A=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-carapace`,children:(0,n.jsx)(`ellipse`,{cx:f.cx,cy:f.cy,rx:f.rx,ry:f.ry,fill:e.body})}),j={ax:58,ay:180,cx:30,cy:172,rot:18,s:.6,flip:!0},M={ax:202,ay:180,cx:230,cy:172,rot:342,s:.6};function N(e,t,r,i,a){let o=``;for(let n=0;n<10;n++){let i=Math.PI/5*n-Math.PI/2,a=n%2==0?r:r*.45;o+=`${h(e+a*Math.cos(i))},${h(t+a*Math.sin(i))} `}return(0,n.jsx)(`polygon`,{points:o.trim(),fill:i},a)}function P(e,t,r,i){let a=r*.62,o=r*.34,s=``;for(let n=0;n<16;n++){let i=Math.PI/8*n,o=n%2==0?r:a;s+=(n===0?`M`:`L`)+h(e+o*Math.cos(i))+` `+h(t+o*Math.sin(i))+` `}return s+=`Z`,s+=` M ${h(e-o)} ${h(t)} A ${h(o)} ${h(o)} 0 1 0 ${h(e+o)} ${h(t)} A ${h(o)} ${h(o)} 0 1 0 ${h(e-o)} ${h(t)} Z`,(0,n.jsx)(`path`,{d:s,fill:i,fillRule:`evenodd`})}var F=({C:e})=>(0,n.jsxs)(`g`,{className:`zuk-props zuk-props-gears`,children:[(0,n.jsx)(`g`,{className:`zuk-gear-a`,children:P(75,48,25,`currentColor`)}),(0,n.jsx)(`g`,{className:`zuk-gear-b`,children:(0,n.jsx)(`g`,{transform:`rotate(22.5 49 22)`,children:P(49,22,20,e.helmet)})})]}),I=({C:e,transform:t})=>(0,n.jsxs)(`g`,{className:`zuk-props zuk-props-doc`,transform:t||``,children:[(0,n.jsx)(`rect`,{x:`168`,y:`140`,width:`64`,height:`80`,rx:`6`,fill:e.light,transform:`rotate(8 200 180)`}),(0,n.jsxs)(`g`,{transform:`rotate(8 200 180)`,stroke:e.shell,strokeWidth:`5`,strokeLinecap:`round`,children:[(0,n.jsx)(`line`,{x1:`178`,y1:`158`,x2:`222`,y2:`158`}),(0,n.jsx)(`line`,{x1:`178`,y1:`172`,x2:`222`,y2:`172`}),(0,n.jsx)(`line`,{x1:`178`,y1:`186`,x2:`210`,y2:`186`})]}),(0,n.jsx)(`path`,{d:`M180 202 l8 9 16 -18`,transform:`rotate(8 200 180)`,stroke:e.helmet,strokeWidth:`6`,fill:`none`,strokeLinecap:`round`,strokeLinejoin:`round`})]}),L=({C:e})=>(0,n.jsx)(`path`,{className:`zuk-eyebrow`,d:`M146 98 Q160 90 174 98`,stroke:e.ink,strokeWidth:`7`,fill:`none`,strokeLinecap:`round`}),R=({C:e})=>(0,n.jsx)(`g`,{className:`zuk-props zuk-props-q`,children:(0,n.jsx)(`text`,{x:`206`,y:`64`,fontFamily:`system-ui, sans-serif`,fontSize:`58`,fontWeight:`800`,fill:`currentColor`,children:`?`})}),z=({C:e})=>(0,n.jsxs)(`g`,{className:`zuk-props-burst`,children:[(0,n.jsx)(`g`,{className:`zuk-star-1`,children:N(130,29,8,e.helmet,`s1`)}),(0,n.jsx)(`g`,{className:`zuk-star-2`,children:N(175,42,10,e.helmet,`s2`)}),(0,n.jsx)(`g`,{className:`zuk-star-3`,children:N(85,43,10,e.helmet,`s3`)}),(0,n.jsx)(`g`,{className:`zuk-star-4`,children:N(100,20,5,e.helmet,`s4`)}),(0,n.jsx)(`g`,{className:`zuk-star-5`,children:N(150,28,6,e.helmet,`s5`)})]}),B=({C:e})=>(0,n.jsxs)(`g`,{className:`zuk-props zuk-props-wrench`,transform:`rotate(-32 196 150)`,children:[(0,n.jsx)(`rect`,{x:`188`,y:`96`,width:`16`,height:`74`,rx:`8`,fill:e.ink}),(0,n.jsx)(`path`,{d:`M178 96 a18 18 0 1 1 36 0 l-8 0 a10 10 0 1 0 -20 0 Z`,fill:e.ink})]}),V=({C:e})=>(0,n.jsxs)(`g`,{className:`zuk-props zuk-props-z`,fontFamily:`system-ui, sans-serif`,fontWeight:`800`,fill:e.body,children:[(0,n.jsx)(`text`,{className:`zuk-z-1`,x:`188`,y:`92`,fontSize:`26`,children:`Z`}),(0,n.jsx)(`text`,{className:`zuk-z-2`,x:`208`,y:`66`,fontSize:`34`,children:`Z`}),(0,n.jsx)(`text`,{className:`zuk-z-3`,x:`226`,y:`40`,fontSize:`22`,opacity:`0.6`,children:`z`})]}),H=({pose:e=`reference`,theme:t=`orange`,accessory:r=`none`,mono:i=``,monoBg:a=`#FFFFFF`,size:o=260,className:s=``,title:c,stopText:l=`STOP`,hideLimbs:f=!1,extra:p})=>{let m=!!i,h=m?{shell:i,body:i,belly:i,helmet:i,ink:a,light:a}:u[t]||u.orange,g={...j},y={...M},N=(0,n.jsx)(x,{C:h}),P=(0,n.jsx)(E,{C:h}),H=null;switch(e){case`idle`:break;case`hello`:g={...j},N=(0,n.jsx)(x,{C:h}),P=(0,n.jsx)(E,{C:h,d:T.smile});break;case`process`:N=(0,n.jsx)(C,{C:h}),P=(0,n.jsx)(E,{C:h,d:T.small}),H=(0,n.jsx)(F,{C:h});break;case`quote`:g={...j},y={ax:202,ay:180,cx:200,cy:140,rot:100,s:.5},H=(0,n.jsx)(I,{C:h}),P=(0,n.jsx)(E,{C:h});break;case`perplexed`:g={ax:50,ay:160,cx:20,cy:110,rot:25,s:.6,flip:!0},y={ax:210,ay:160,cx:240,cy:110,rot:335,s:.6},N=(0,n.jsx)(x,{C:h,look:{dx:5,dy:-1}}),P=(0,n.jsx)(E,{C:h,d:T.neutral}),H=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(L,{C:h}),(0,n.jsx)(R,{C:h})]});break;case`success`:g={ax:62,ay:152,cx:48,cy:80,rot:55,s:.56,flip:!0},y={ax:198,ay:152,cx:212,cy:80,rot:305,s:.56},N=(0,n.jsx)(w,{C:h}),P=(0,n.jsx)(D,{C:h}),H=(0,n.jsx)(z,{C:h});break;case`travaille`:y={ax:200,ay:170,cx:204,cy:150,rot:290,s:.52},H=(0,n.jsx)(B,{C:h}),P=(0,n.jsx)(E,{C:h,d:T.small});break;case`endormi`:g={...j,rot:-2},y={...M,rot:2},N=(0,n.jsx)(S,{C:h}),P=(0,n.jsx)(O,{C:h}),H=(0,n.jsx)(V,{C:h});break;case`stop`:g={...j},y={ax:200,ay:160,cx:230,cy:120,rot:270,s:.7,holdSign:!0,signText:l},N=(0,n.jsx)(C,{C:h}),P=(0,n.jsx)(E,{C:h,d:T.neutral});break}return(0,n.jsxs)(`svg`,{className:`zuk ${s}`.trim(),viewBox:`0 0 ${d} ${d}`,width:o,height:o,style:{overflow:`visible`},xmlns:`http://www.w3.org/2000/svg`,"data-pose":e,children:[c&&(0,n.jsx)(`title`,{children:c}),(0,n.jsxs)(`g`,{className:`zuk-root`,children:[!f&&(0,n.jsx)(v,{C:h}),(0,n.jsx)(A,{C:h}),!m&&(0,n.jsx)(k,{C:h}),(0,n.jsx)(b,{name:r,C:h}),N,P,!f&&(0,n.jsxs)(`g`,{className:`zuk-pinces`,children:[(0,n.jsx)(_,{side:`left`,p:g,C:h}),(0,n.jsx)(_,{side:`right`,p:y,C:h})]}),H,p&&(0,n.jsx)(`g`,{dangerouslySetInnerHTML:{__html:p}})]})]})};e.Zuki=H,e.default=H,e.ZukiFavicon=({theme:e=`orange`,size:t})=>(0,n.jsx)(H,{pose:`idle`,theme:e,size:t,accessory:`helmet`,hideLimbs:!0})});
package/package.json ADDED
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "@zukquote/zuki-react",
3
+ "private": false,
4
+ "version": "1.0.0",
5
+ "type": "module",
6
+ "dependencies": {
7
+ "react": "^19.2.6",
8
+ "react-dom": "^19.2.6"
9
+ },
10
+ "devDependencies": {
11
+ "@eslint/js": "^10.0.1",
12
+ "@types/react": "^19.2.14",
13
+ "@types/react-dom": "^19.2.3",
14
+ "@vitejs/plugin-react": "^6.0.1",
15
+ "eslint": "^10.3.0",
16
+ "eslint-plugin-react-hooks": "^7.1.1",
17
+ "eslint-plugin-react-refresh": "^0.5.2",
18
+ "globals": "^17.6.0",
19
+ "vite": "^8.0.12"
20
+ },
21
+ "main": "dist-lib/zuki-react.umd.js",
22
+ "module": "dist-lib/zuki-react.es.js",
23
+ "exports": {
24
+ ".": {
25
+ "import": "./dist-lib/zuki-react.es.js",
26
+ "require": "./dist-lib/zuki-react.umd.js"
27
+ },
28
+ "./style.css": "./dist-lib/zuki-react.css"
29
+ },
30
+ "files": [
31
+ "dist-lib"
32
+ ],
33
+ "peerDependencies": {
34
+ "react": "^18.0.0 || ^19.0.0",
35
+ "react-dom": "^18.0.0 || ^19.0.0"
36
+ },
37
+ "scripts": {
38
+ "dev": "vite",
39
+ "build:app": "vite build",
40
+ "build:lib": "vite build -c vite.lib.config.js",
41
+ "build": "npm run build:lib && npm run build:app",
42
+ "lint": "eslint .",
43
+ "preview": "vite preview"
44
+ }
45
+ }