@pieai/swimmer-ui-kit 2.13.0 → 3.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +69 -4
- package/LICENSE +17 -20
- package/NOTICE +69 -36
- package/README.md +51 -162
- package/bin/lib/retired-theme.d.mts +2 -0
- package/bin/lib/retired-theme.mjs +58 -0
- package/bin/swimmer-ui-check.mjs +91 -16
- package/dist/GameStageTile-BcFCu22b.js +1554 -0
- package/dist/LiquidGroup-BXw1tv9H.js +1291 -0
- package/dist/fonts/zh/400-1f000.woff2 +0 -0
- package/dist/fonts/zh/400-1f200.woff2 +0 -0
- package/dist/fonts/zh/400-20000.woff2 +0 -0
- package/dist/fonts/zh/400-20600.woff2 +0 -0
- package/dist/fonts/zh/400-20c00.woff2 +0 -0
- package/dist/fonts/zh/400-21200.woff2 +0 -0
- package/dist/fonts/zh/400-21400.woff2 +0 -0
- package/dist/fonts/zh/400-22800.woff2 +0 -0
- package/dist/fonts/zh/400-23400.woff2 +0 -0
- package/dist/fonts/zh/400-23c00.woff2 +0 -0
- package/dist/fonts/zh/400-23e00.woff2 +0 -0
- package/dist/fonts/zh/400-24000.woff2 +0 -0
- package/dist/fonts/zh/400-24200.woff2 +0 -0
- package/dist/fonts/zh/400-24800.woff2 +0 -0
- package/dist/fonts/zh/400-24a00.woff2 +0 -0
- package/dist/fonts/zh/400-25400.woff2 +0 -0
- package/dist/fonts/zh/400-25a00.woff2 +0 -0
- package/dist/fonts/zh/400-25e00.woff2 +0 -0
- package/dist/fonts/zh/400-26200.woff2 +0 -0
- package/dist/fonts/zh/400-26400.woff2 +0 -0
- package/dist/fonts/zh/400-26600.woff2 +0 -0
- package/dist/fonts/zh/400-26800.woff2 +0 -0
- package/dist/fonts/zh/400-26a00.woff2 +0 -0
- package/dist/fonts/zh/400-26c00.woff2 +0 -0
- package/dist/fonts/zh/400-27800.woff2 +0 -0
- package/dist/fonts/zh/400-27e00.woff2 +0 -0
- package/dist/fonts/zh/400-28400.woff2 +0 -0
- package/dist/fonts/zh/400-28600.woff2 +0 -0
- package/dist/fonts/zh/400-28a00.woff2 +0 -0
- package/dist/fonts/zh/400-28c00.woff2 +0 -0
- package/dist/fonts/zh/400-28e00.woff2 +0 -0
- package/dist/fonts/zh/400-29600.woff2 +0 -0
- package/dist/fonts/zh/400-29800.woff2 +0 -0
- package/dist/fonts/zh/400-29e00.woff2 +0 -0
- package/dist/fonts/zh/400-2a600.woff2 +0 -0
- package/dist/fonts/zh/400-2a800.woff2 +0 -0
- package/dist/fonts/zh/400-2aa00.woff2 +0 -0
- package/dist/fonts/zh/400-2ae00.woff2 +0 -0
- package/dist/fonts/zh/400-2b000.woff2 +0 -0
- package/dist/fonts/zh/400-2b200.woff2 +0 -0
- package/dist/fonts/zh/400-2b400.woff2 +0 -0
- package/dist/fonts/zh/400-2b600.woff2 +0 -0
- package/dist/fonts/zh/400-2b800.woff2 +0 -0
- package/dist/fonts/zh/400-2ba00.woff2 +0 -0
- package/dist/fonts/zh/400-2bc00.woff2 +0 -0
- package/dist/fonts/zh/400-2be00.woff2 +0 -0
- package/dist/fonts/zh/400-2c000.woff2 +0 -0
- package/dist/fonts/zh/400-2c200.woff2 +0 -0
- package/dist/fonts/zh/400-2c400.woff2 +0 -0
- package/dist/fonts/zh/400-2c600.woff2 +0 -0
- package/dist/fonts/zh/400-2c800.woff2 +0 -0
- package/dist/fonts/zh/400-2ca00.woff2 +0 -0
- package/dist/fonts/zh/400-2cc00.woff2 +0 -0
- package/dist/fonts/zh/400-2ce00.woff2 +0 -0
- package/dist/fonts/zh/400-2d400.woff2 +0 -0
- package/dist/fonts/zh/400-2e00.woff2 +0 -0
- package/dist/fonts/zh/400-2f800.woff2 +0 -0
- package/dist/fonts/zh/400-3000.woff2 +0 -0
- package/dist/fonts/zh/400-3200.woff2 +0 -0
- package/dist/fonts/zh/400-3400.woff2 +0 -0
- package/dist/fonts/zh/400-3600.woff2 +0 -0
- package/dist/fonts/zh/400-3800.woff2 +0 -0
- package/dist/fonts/zh/400-3a00.woff2 +0 -0
- package/dist/fonts/zh/400-3c00.woff2 +0 -0
- package/dist/fonts/zh/400-3e00.woff2 +0 -0
- package/dist/fonts/zh/400-4000.woff2 +0 -0
- package/dist/fonts/zh/400-4200.woff2 +0 -0
- package/dist/fonts/zh/400-4400.woff2 +0 -0
- package/dist/fonts/zh/400-4600.woff2 +0 -0
- package/dist/fonts/zh/400-4800.woff2 +0 -0
- package/dist/fonts/zh/400-4a00.woff2 +0 -0
- package/dist/fonts/zh/400-4c00.woff2 +0 -0
- package/dist/fonts/zh/400-4e00.woff2 +0 -0
- package/dist/fonts/zh/400-5000.woff2 +0 -0
- package/dist/fonts/zh/400-5200.woff2 +0 -0
- package/dist/fonts/zh/400-5400.woff2 +0 -0
- package/dist/fonts/zh/400-5600.woff2 +0 -0
- package/dist/fonts/zh/400-5800.woff2 +0 -0
- package/dist/fonts/zh/400-5a00.woff2 +0 -0
- package/dist/fonts/zh/400-5c00.woff2 +0 -0
- package/dist/fonts/zh/400-5e00.woff2 +0 -0
- package/dist/fonts/zh/400-6000.woff2 +0 -0
- package/dist/fonts/zh/400-6200.woff2 +0 -0
- package/dist/fonts/zh/400-6400.woff2 +0 -0
- package/dist/fonts/zh/400-6600.woff2 +0 -0
- package/dist/fonts/zh/400-6800.woff2 +0 -0
- package/dist/fonts/zh/400-6a00.woff2 +0 -0
- package/dist/fonts/zh/400-6c00.woff2 +0 -0
- package/dist/fonts/zh/400-6e00.woff2 +0 -0
- package/dist/fonts/zh/400-7000.woff2 +0 -0
- package/dist/fonts/zh/400-7200.woff2 +0 -0
- package/dist/fonts/zh/400-7400.woff2 +0 -0
- package/dist/fonts/zh/400-7600.woff2 +0 -0
- package/dist/fonts/zh/400-7800.woff2 +0 -0
- package/dist/fonts/zh/400-7a00.woff2 +0 -0
- package/dist/fonts/zh/400-7c00.woff2 +0 -0
- package/dist/fonts/zh/400-7e00.woff2 +0 -0
- package/dist/fonts/zh/400-8000.woff2 +0 -0
- package/dist/fonts/zh/400-8200.woff2 +0 -0
- package/dist/fonts/zh/400-8400.woff2 +0 -0
- package/dist/fonts/zh/400-8600.woff2 +0 -0
- package/dist/fonts/zh/400-8800.woff2 +0 -0
- package/dist/fonts/zh/400-8a00.woff2 +0 -0
- package/dist/fonts/zh/400-8c00.woff2 +0 -0
- package/dist/fonts/zh/400-8e00.woff2 +0 -0
- package/dist/fonts/zh/400-9000.woff2 +0 -0
- package/dist/fonts/zh/400-9200.woff2 +0 -0
- package/dist/fonts/zh/400-9400.woff2 +0 -0
- package/dist/fonts/zh/400-9600.woff2 +0 -0
- package/dist/fonts/zh/400-9800.woff2 +0 -0
- package/dist/fonts/zh/400-9a00.woff2 +0 -0
- package/dist/fonts/zh/400-9c00.woff2 +0 -0
- package/dist/fonts/zh/400-9e00.woff2 +0 -0
- package/dist/fonts/zh/400-f800.woff2 +0 -0
- package/dist/fonts/zh/400-fa00.woff2 +0 -0
- package/dist/fonts/zh/400-fe00.woff2 +0 -0
- package/dist/fonts/zh/500-1f000.woff2 +0 -0
- package/dist/fonts/zh/500-1f200.woff2 +0 -0
- package/dist/fonts/zh/500-20000.woff2 +0 -0
- package/dist/fonts/zh/500-20600.woff2 +0 -0
- package/dist/fonts/zh/500-20c00.woff2 +0 -0
- package/dist/fonts/zh/500-21200.woff2 +0 -0
- package/dist/fonts/zh/500-21400.woff2 +0 -0
- package/dist/fonts/zh/500-22800.woff2 +0 -0
- package/dist/fonts/zh/500-23400.woff2 +0 -0
- package/dist/fonts/zh/500-23c00.woff2 +0 -0
- package/dist/fonts/zh/500-23e00.woff2 +0 -0
- package/dist/fonts/zh/500-24000.woff2 +0 -0
- package/dist/fonts/zh/500-24200.woff2 +0 -0
- package/dist/fonts/zh/500-24800.woff2 +0 -0
- package/dist/fonts/zh/500-24a00.woff2 +0 -0
- package/dist/fonts/zh/500-25400.woff2 +0 -0
- package/dist/fonts/zh/500-25a00.woff2 +0 -0
- package/dist/fonts/zh/500-25e00.woff2 +0 -0
- package/dist/fonts/zh/500-26200.woff2 +0 -0
- package/dist/fonts/zh/500-26400.woff2 +0 -0
- package/dist/fonts/zh/500-26600.woff2 +0 -0
- package/dist/fonts/zh/500-26800.woff2 +0 -0
- package/dist/fonts/zh/500-26a00.woff2 +0 -0
- package/dist/fonts/zh/500-26c00.woff2 +0 -0
- package/dist/fonts/zh/500-27800.woff2 +0 -0
- package/dist/fonts/zh/500-27e00.woff2 +0 -0
- package/dist/fonts/zh/500-28400.woff2 +0 -0
- package/dist/fonts/zh/500-28600.woff2 +0 -0
- package/dist/fonts/zh/500-28a00.woff2 +0 -0
- package/dist/fonts/zh/500-28c00.woff2 +0 -0
- package/dist/fonts/zh/500-28e00.woff2 +0 -0
- package/dist/fonts/zh/500-29600.woff2 +0 -0
- package/dist/fonts/zh/500-29800.woff2 +0 -0
- package/dist/fonts/zh/500-29e00.woff2 +0 -0
- package/dist/fonts/zh/500-2a600.woff2 +0 -0
- package/dist/fonts/zh/500-2a800.woff2 +0 -0
- package/dist/fonts/zh/500-2aa00.woff2 +0 -0
- package/dist/fonts/zh/500-2ae00.woff2 +0 -0
- package/dist/fonts/zh/500-2b000.woff2 +0 -0
- package/dist/fonts/zh/500-2b200.woff2 +0 -0
- package/dist/fonts/zh/500-2b400.woff2 +0 -0
- package/dist/fonts/zh/500-2b600.woff2 +0 -0
- package/dist/fonts/zh/500-2b800.woff2 +0 -0
- package/dist/fonts/zh/500-2ba00.woff2 +0 -0
- package/dist/fonts/zh/500-2bc00.woff2 +0 -0
- package/dist/fonts/zh/500-2be00.woff2 +0 -0
- package/dist/fonts/zh/500-2c000.woff2 +0 -0
- package/dist/fonts/zh/500-2c200.woff2 +0 -0
- package/dist/fonts/zh/500-2c400.woff2 +0 -0
- package/dist/fonts/zh/500-2c600.woff2 +0 -0
- package/dist/fonts/zh/500-2c800.woff2 +0 -0
- package/dist/fonts/zh/500-2ca00.woff2 +0 -0
- package/dist/fonts/zh/500-2cc00.woff2 +0 -0
- package/dist/fonts/zh/500-2ce00.woff2 +0 -0
- package/dist/fonts/zh/500-2d400.woff2 +0 -0
- package/dist/fonts/zh/500-2e00.woff2 +0 -0
- package/dist/fonts/zh/500-2f800.woff2 +0 -0
- package/dist/fonts/zh/500-3000.woff2 +0 -0
- package/dist/fonts/zh/500-3200.woff2 +0 -0
- package/dist/fonts/zh/500-3400.woff2 +0 -0
- package/dist/fonts/zh/500-3600.woff2 +0 -0
- package/dist/fonts/zh/500-3800.woff2 +0 -0
- package/dist/fonts/zh/500-3a00.woff2 +0 -0
- package/dist/fonts/zh/500-3c00.woff2 +0 -0
- package/dist/fonts/zh/500-3e00.woff2 +0 -0
- package/dist/fonts/zh/500-4000.woff2 +0 -0
- package/dist/fonts/zh/500-4200.woff2 +0 -0
- package/dist/fonts/zh/500-4400.woff2 +0 -0
- package/dist/fonts/zh/500-4600.woff2 +0 -0
- package/dist/fonts/zh/500-4800.woff2 +0 -0
- package/dist/fonts/zh/500-4a00.woff2 +0 -0
- package/dist/fonts/zh/500-4c00.woff2 +0 -0
- package/dist/fonts/zh/500-4e00.woff2 +0 -0
- package/dist/fonts/zh/500-5000.woff2 +0 -0
- package/dist/fonts/zh/500-5200.woff2 +0 -0
- package/dist/fonts/zh/500-5400.woff2 +0 -0
- package/dist/fonts/zh/500-5600.woff2 +0 -0
- package/dist/fonts/zh/500-5800.woff2 +0 -0
- package/dist/fonts/zh/500-5a00.woff2 +0 -0
- package/dist/fonts/zh/500-5c00.woff2 +0 -0
- package/dist/fonts/zh/500-5e00.woff2 +0 -0
- package/dist/fonts/zh/500-6000.woff2 +0 -0
- package/dist/fonts/zh/500-6200.woff2 +0 -0
- package/dist/fonts/zh/500-6400.woff2 +0 -0
- package/dist/fonts/zh/500-6600.woff2 +0 -0
- package/dist/fonts/zh/500-6800.woff2 +0 -0
- package/dist/fonts/zh/500-6a00.woff2 +0 -0
- package/dist/fonts/zh/500-6c00.woff2 +0 -0
- package/dist/fonts/zh/500-6e00.woff2 +0 -0
- package/dist/fonts/zh/500-7000.woff2 +0 -0
- package/dist/fonts/zh/500-7200.woff2 +0 -0
- package/dist/fonts/zh/500-7400.woff2 +0 -0
- package/dist/fonts/zh/500-7600.woff2 +0 -0
- package/dist/fonts/zh/500-7800.woff2 +0 -0
- package/dist/fonts/zh/500-7a00.woff2 +0 -0
- package/dist/fonts/zh/500-7c00.woff2 +0 -0
- package/dist/fonts/zh/500-7e00.woff2 +0 -0
- package/dist/fonts/zh/500-8000.woff2 +0 -0
- package/dist/fonts/zh/500-8200.woff2 +0 -0
- package/dist/fonts/zh/500-8400.woff2 +0 -0
- package/dist/fonts/zh/500-8600.woff2 +0 -0
- package/dist/fonts/zh/500-8800.woff2 +0 -0
- package/dist/fonts/zh/500-8a00.woff2 +0 -0
- package/dist/fonts/zh/500-8c00.woff2 +0 -0
- package/dist/fonts/zh/500-8e00.woff2 +0 -0
- package/dist/fonts/zh/500-9000.woff2 +0 -0
- package/dist/fonts/zh/500-9200.woff2 +0 -0
- package/dist/fonts/zh/500-9400.woff2 +0 -0
- package/dist/fonts/zh/500-9600.woff2 +0 -0
- package/dist/fonts/zh/500-9800.woff2 +0 -0
- package/dist/fonts/zh/500-9a00.woff2 +0 -0
- package/dist/fonts/zh/500-9c00.woff2 +0 -0
- package/dist/fonts/zh/500-9e00.woff2 +0 -0
- package/dist/fonts/zh/500-f800.woff2 +0 -0
- package/dist/fonts/zh/500-fa00.woff2 +0 -0
- package/dist/fonts/zh/500-fe00.woff2 +0 -0
- package/dist/fonts/zh/700-1f000.woff2 +0 -0
- package/dist/fonts/zh/700-1f200.woff2 +0 -0
- package/dist/fonts/zh/700-20000.woff2 +0 -0
- package/dist/fonts/zh/700-20600.woff2 +0 -0
- package/dist/fonts/zh/700-20c00.woff2 +0 -0
- package/dist/fonts/zh/700-21200.woff2 +0 -0
- package/dist/fonts/zh/700-21400.woff2 +0 -0
- package/dist/fonts/zh/700-22800.woff2 +0 -0
- package/dist/fonts/zh/700-23400.woff2 +0 -0
- package/dist/fonts/zh/700-23c00.woff2 +0 -0
- package/dist/fonts/zh/700-23e00.woff2 +0 -0
- package/dist/fonts/zh/700-24000.woff2 +0 -0
- package/dist/fonts/zh/700-24200.woff2 +0 -0
- package/dist/fonts/zh/700-24800.woff2 +0 -0
- package/dist/fonts/zh/700-24a00.woff2 +0 -0
- package/dist/fonts/zh/700-25400.woff2 +0 -0
- package/dist/fonts/zh/700-25a00.woff2 +0 -0
- package/dist/fonts/zh/700-25e00.woff2 +0 -0
- package/dist/fonts/zh/700-26200.woff2 +0 -0
- package/dist/fonts/zh/700-26400.woff2 +0 -0
- package/dist/fonts/zh/700-26600.woff2 +0 -0
- package/dist/fonts/zh/700-26800.woff2 +0 -0
- package/dist/fonts/zh/700-26a00.woff2 +0 -0
- package/dist/fonts/zh/700-26c00.woff2 +0 -0
- package/dist/fonts/zh/700-27800.woff2 +0 -0
- package/dist/fonts/zh/700-27e00.woff2 +0 -0
- package/dist/fonts/zh/700-28400.woff2 +0 -0
- package/dist/fonts/zh/700-28600.woff2 +0 -0
- package/dist/fonts/zh/700-28a00.woff2 +0 -0
- package/dist/fonts/zh/700-28c00.woff2 +0 -0
- package/dist/fonts/zh/700-28e00.woff2 +0 -0
- package/dist/fonts/zh/700-29600.woff2 +0 -0
- package/dist/fonts/zh/700-29800.woff2 +0 -0
- package/dist/fonts/zh/700-29e00.woff2 +0 -0
- package/dist/fonts/zh/700-2a600.woff2 +0 -0
- package/dist/fonts/zh/700-2a800.woff2 +0 -0
- package/dist/fonts/zh/700-2aa00.woff2 +0 -0
- package/dist/fonts/zh/700-2ae00.woff2 +0 -0
- package/dist/fonts/zh/700-2b000.woff2 +0 -0
- package/dist/fonts/zh/700-2b200.woff2 +0 -0
- package/dist/fonts/zh/700-2b400.woff2 +0 -0
- package/dist/fonts/zh/700-2b600.woff2 +0 -0
- package/dist/fonts/zh/700-2b800.woff2 +0 -0
- package/dist/fonts/zh/700-2ba00.woff2 +0 -0
- package/dist/fonts/zh/700-2bc00.woff2 +0 -0
- package/dist/fonts/zh/700-2be00.woff2 +0 -0
- package/dist/fonts/zh/700-2c000.woff2 +0 -0
- package/dist/fonts/zh/700-2c200.woff2 +0 -0
- package/dist/fonts/zh/700-2c400.woff2 +0 -0
- package/dist/fonts/zh/700-2c600.woff2 +0 -0
- package/dist/fonts/zh/700-2c800.woff2 +0 -0
- package/dist/fonts/zh/700-2ca00.woff2 +0 -0
- package/dist/fonts/zh/700-2cc00.woff2 +0 -0
- package/dist/fonts/zh/700-2ce00.woff2 +0 -0
- package/dist/fonts/zh/700-2d400.woff2 +0 -0
- package/dist/fonts/zh/700-2e00.woff2 +0 -0
- package/dist/fonts/zh/700-2f800.woff2 +0 -0
- package/dist/fonts/zh/700-3000.woff2 +0 -0
- package/dist/fonts/zh/700-3200.woff2 +0 -0
- package/dist/fonts/zh/700-3400.woff2 +0 -0
- package/dist/fonts/zh/700-3600.woff2 +0 -0
- package/dist/fonts/zh/700-3800.woff2 +0 -0
- package/dist/fonts/zh/700-3a00.woff2 +0 -0
- package/dist/fonts/zh/700-3c00.woff2 +0 -0
- package/dist/fonts/zh/700-3e00.woff2 +0 -0
- package/dist/fonts/zh/700-4000.woff2 +0 -0
- package/dist/fonts/zh/700-4200.woff2 +0 -0
- package/dist/fonts/zh/700-4400.woff2 +0 -0
- package/dist/fonts/zh/700-4600.woff2 +0 -0
- package/dist/fonts/zh/700-4800.woff2 +0 -0
- package/dist/fonts/zh/700-4a00.woff2 +0 -0
- package/dist/fonts/zh/700-4c00.woff2 +0 -0
- package/dist/fonts/zh/700-4e00.woff2 +0 -0
- package/dist/fonts/zh/700-5000.woff2 +0 -0
- package/dist/fonts/zh/700-5200.woff2 +0 -0
- package/dist/fonts/zh/700-5400.woff2 +0 -0
- package/dist/fonts/zh/700-5600.woff2 +0 -0
- package/dist/fonts/zh/700-5800.woff2 +0 -0
- package/dist/fonts/zh/700-5a00.woff2 +0 -0
- package/dist/fonts/zh/700-5c00.woff2 +0 -0
- package/dist/fonts/zh/700-5e00.woff2 +0 -0
- package/dist/fonts/zh/700-6000.woff2 +0 -0
- package/dist/fonts/zh/700-6200.woff2 +0 -0
- package/dist/fonts/zh/700-6400.woff2 +0 -0
- package/dist/fonts/zh/700-6600.woff2 +0 -0
- package/dist/fonts/zh/700-6800.woff2 +0 -0
- package/dist/fonts/zh/700-6a00.woff2 +0 -0
- package/dist/fonts/zh/700-6c00.woff2 +0 -0
- package/dist/fonts/zh/700-6e00.woff2 +0 -0
- package/dist/fonts/zh/700-7000.woff2 +0 -0
- package/dist/fonts/zh/700-7200.woff2 +0 -0
- package/dist/fonts/zh/700-7400.woff2 +0 -0
- package/dist/fonts/zh/700-7600.woff2 +0 -0
- package/dist/fonts/zh/700-7800.woff2 +0 -0
- package/dist/fonts/zh/700-7a00.woff2 +0 -0
- package/dist/fonts/zh/700-7c00.woff2 +0 -0
- package/dist/fonts/zh/700-7e00.woff2 +0 -0
- package/dist/fonts/zh/700-8000.woff2 +0 -0
- package/dist/fonts/zh/700-8200.woff2 +0 -0
- package/dist/fonts/zh/700-8400.woff2 +0 -0
- package/dist/fonts/zh/700-8600.woff2 +0 -0
- package/dist/fonts/zh/700-8800.woff2 +0 -0
- package/dist/fonts/zh/700-8a00.woff2 +0 -0
- package/dist/fonts/zh/700-8c00.woff2 +0 -0
- package/dist/fonts/zh/700-8e00.woff2 +0 -0
- package/dist/fonts/zh/700-9000.woff2 +0 -0
- package/dist/fonts/zh/700-9200.woff2 +0 -0
- package/dist/fonts/zh/700-9400.woff2 +0 -0
- package/dist/fonts/zh/700-9600.woff2 +0 -0
- package/dist/fonts/zh/700-9800.woff2 +0 -0
- package/dist/fonts/zh/700-9a00.woff2 +0 -0
- package/dist/fonts/zh/700-9c00.woff2 +0 -0
- package/dist/fonts/zh/700-9e00.woff2 +0 -0
- package/dist/fonts/zh/700-f800.woff2 +0 -0
- package/dist/fonts/zh/700-fa00.woff2 +0 -0
- package/dist/fonts/zh/700-fe00.woff2 +0 -0
- package/dist/fonts/zh/900-1f000.woff2 +0 -0
- package/dist/fonts/zh/900-1f200.woff2 +0 -0
- package/dist/fonts/zh/900-20000.woff2 +0 -0
- package/dist/fonts/zh/900-20600.woff2 +0 -0
- package/dist/fonts/zh/900-20c00.woff2 +0 -0
- package/dist/fonts/zh/900-21200.woff2 +0 -0
- package/dist/fonts/zh/900-21400.woff2 +0 -0
- package/dist/fonts/zh/900-22800.woff2 +0 -0
- package/dist/fonts/zh/900-23400.woff2 +0 -0
- package/dist/fonts/zh/900-23c00.woff2 +0 -0
- package/dist/fonts/zh/900-23e00.woff2 +0 -0
- package/dist/fonts/zh/900-24000.woff2 +0 -0
- package/dist/fonts/zh/900-24200.woff2 +0 -0
- package/dist/fonts/zh/900-24800.woff2 +0 -0
- package/dist/fonts/zh/900-24a00.woff2 +0 -0
- package/dist/fonts/zh/900-25400.woff2 +0 -0
- package/dist/fonts/zh/900-25a00.woff2 +0 -0
- package/dist/fonts/zh/900-25e00.woff2 +0 -0
- package/dist/fonts/zh/900-26200.woff2 +0 -0
- package/dist/fonts/zh/900-26400.woff2 +0 -0
- package/dist/fonts/zh/900-26600.woff2 +0 -0
- package/dist/fonts/zh/900-26800.woff2 +0 -0
- package/dist/fonts/zh/900-26a00.woff2 +0 -0
- package/dist/fonts/zh/900-26c00.woff2 +0 -0
- package/dist/fonts/zh/900-27800.woff2 +0 -0
- package/dist/fonts/zh/900-27e00.woff2 +0 -0
- package/dist/fonts/zh/900-28400.woff2 +0 -0
- package/dist/fonts/zh/900-28600.woff2 +0 -0
- package/dist/fonts/zh/900-28a00.woff2 +0 -0
- package/dist/fonts/zh/900-28c00.woff2 +0 -0
- package/dist/fonts/zh/900-28e00.woff2 +0 -0
- package/dist/fonts/zh/900-29600.woff2 +0 -0
- package/dist/fonts/zh/900-29800.woff2 +0 -0
- package/dist/fonts/zh/900-29e00.woff2 +0 -0
- package/dist/fonts/zh/900-2a600.woff2 +0 -0
- package/dist/fonts/zh/900-2a800.woff2 +0 -0
- package/dist/fonts/zh/900-2aa00.woff2 +0 -0
- package/dist/fonts/zh/900-2ae00.woff2 +0 -0
- package/dist/fonts/zh/900-2b000.woff2 +0 -0
- package/dist/fonts/zh/900-2b200.woff2 +0 -0
- package/dist/fonts/zh/900-2b400.woff2 +0 -0
- package/dist/fonts/zh/900-2b600.woff2 +0 -0
- package/dist/fonts/zh/900-2b800.woff2 +0 -0
- package/dist/fonts/zh/900-2ba00.woff2 +0 -0
- package/dist/fonts/zh/900-2bc00.woff2 +0 -0
- package/dist/fonts/zh/900-2be00.woff2 +0 -0
- package/dist/fonts/zh/900-2c000.woff2 +0 -0
- package/dist/fonts/zh/900-2c200.woff2 +0 -0
- package/dist/fonts/zh/900-2c400.woff2 +0 -0
- package/dist/fonts/zh/900-2c600.woff2 +0 -0
- package/dist/fonts/zh/900-2c800.woff2 +0 -0
- package/dist/fonts/zh/900-2ca00.woff2 +0 -0
- package/dist/fonts/zh/900-2cc00.woff2 +0 -0
- package/dist/fonts/zh/900-2ce00.woff2 +0 -0
- package/dist/fonts/zh/900-2d400.woff2 +0 -0
- package/dist/fonts/zh/900-2e00.woff2 +0 -0
- package/dist/fonts/zh/900-2f800.woff2 +0 -0
- package/dist/fonts/zh/900-3000.woff2 +0 -0
- package/dist/fonts/zh/900-3200.woff2 +0 -0
- package/dist/fonts/zh/900-3400.woff2 +0 -0
- package/dist/fonts/zh/900-3600.woff2 +0 -0
- package/dist/fonts/zh/900-3800.woff2 +0 -0
- package/dist/fonts/zh/900-3a00.woff2 +0 -0
- package/dist/fonts/zh/900-3c00.woff2 +0 -0
- package/dist/fonts/zh/900-3e00.woff2 +0 -0
- package/dist/fonts/zh/900-4000.woff2 +0 -0
- package/dist/fonts/zh/900-4200.woff2 +0 -0
- package/dist/fonts/zh/900-4400.woff2 +0 -0
- package/dist/fonts/zh/900-4600.woff2 +0 -0
- package/dist/fonts/zh/900-4800.woff2 +0 -0
- package/dist/fonts/zh/900-4a00.woff2 +0 -0
- package/dist/fonts/zh/900-4c00.woff2 +0 -0
- package/dist/fonts/zh/900-4e00.woff2 +0 -0
- package/dist/fonts/zh/900-5000.woff2 +0 -0
- package/dist/fonts/zh/900-5200.woff2 +0 -0
- package/dist/fonts/zh/900-5400.woff2 +0 -0
- package/dist/fonts/zh/900-5600.woff2 +0 -0
- package/dist/fonts/zh/900-5800.woff2 +0 -0
- package/dist/fonts/zh/900-5a00.woff2 +0 -0
- package/dist/fonts/zh/900-5c00.woff2 +0 -0
- package/dist/fonts/zh/900-5e00.woff2 +0 -0
- package/dist/fonts/zh/900-6000.woff2 +0 -0
- package/dist/fonts/zh/900-6200.woff2 +0 -0
- package/dist/fonts/zh/900-6400.woff2 +0 -0
- package/dist/fonts/zh/900-6600.woff2 +0 -0
- package/dist/fonts/zh/900-6800.woff2 +0 -0
- package/dist/fonts/zh/900-6a00.woff2 +0 -0
- package/dist/fonts/zh/900-6c00.woff2 +0 -0
- package/dist/fonts/zh/900-6e00.woff2 +0 -0
- package/dist/fonts/zh/900-7000.woff2 +0 -0
- package/dist/fonts/zh/900-7200.woff2 +0 -0
- package/dist/fonts/zh/900-7400.woff2 +0 -0
- package/dist/fonts/zh/900-7600.woff2 +0 -0
- package/dist/fonts/zh/900-7800.woff2 +0 -0
- package/dist/fonts/zh/900-7a00.woff2 +0 -0
- package/dist/fonts/zh/900-7c00.woff2 +0 -0
- package/dist/fonts/zh/900-7e00.woff2 +0 -0
- package/dist/fonts/zh/900-8000.woff2 +0 -0
- package/dist/fonts/zh/900-8200.woff2 +0 -0
- package/dist/fonts/zh/900-8400.woff2 +0 -0
- package/dist/fonts/zh/900-8600.woff2 +0 -0
- package/dist/fonts/zh/900-8800.woff2 +0 -0
- package/dist/fonts/zh/900-8a00.woff2 +0 -0
- package/dist/fonts/zh/900-8c00.woff2 +0 -0
- package/dist/fonts/zh/900-8e00.woff2 +0 -0
- package/dist/fonts/zh/900-9000.woff2 +0 -0
- package/dist/fonts/zh/900-9200.woff2 +0 -0
- package/dist/fonts/zh/900-9400.woff2 +0 -0
- package/dist/fonts/zh/900-9600.woff2 +0 -0
- package/dist/fonts/zh/900-9800.woff2 +0 -0
- package/dist/fonts/zh/900-9a00.woff2 +0 -0
- package/dist/fonts/zh/900-9c00.woff2 +0 -0
- package/dist/fonts/zh/900-9e00.woff2 +0 -0
- package/dist/fonts/zh/900-f800.woff2 +0 -0
- package/dist/fonts/zh/900-fa00.woff2 +0 -0
- package/dist/fonts/zh/900-fe00.woff2 +0 -0
- package/dist/fonts/zh/OFL.txt +98 -0
- package/dist/fonts/zh/font-faces.css +4176 -0
- package/dist/fonts/zh/manifest.json +3728 -0
- package/dist/fonts.css +1 -1
- package/dist/icon-paths.d.ts +247 -0
- package/dist/icon-paths.js +2 -0
- package/dist/index.d.ts +363 -1919
- package/dist/index.js +839 -9118
- package/dist/liquid-effects.d.ts +350 -0
- package/dist/liquid-effects.js +1318 -0
- package/dist/liquid-presence.css +1 -1
- package/dist/liquid-presence.d.ts +15 -3
- package/dist/liquid-presence.js +714 -664
- package/dist/paths-B7D0h7Mh.js +255 -0
- package/dist/preview.css +1 -1
- package/dist/preview.d.ts +24 -0
- package/dist/preview.js +1993 -0
- package/dist/reducedMotion-B8kv-v64.js +473 -0
- package/dist/styles.css +1 -1
- package/dist/tailwind.css +5 -3
- package/donors-individual.md +21 -2
- package/package.json +25 -9
- package/bin/swimmer-ui-assets.mjs +0 -83
- package/dist/assets/game/ui/clay/asset-manifest.json +0 -2823
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-blue-large-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-blue-large-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-brown-large-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-brown-large-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-green-large-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-green-large-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-purple-large-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-purple-large-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-red-large-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-red-large-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/common-icons-contact-sheet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/component-candidates-contact-sheet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/function-icons-contact-sheet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/phase03-clay-ui-catalog.json +0 -3476
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/alert-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/bar-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/best-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/check-off-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/check-on-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/count-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/direction-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/gauge-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/hot-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/label-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/label-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/loading-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/mission-badge-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/new-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/page-arrow-next-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/page-arrow-prev-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/pagenavigation-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/radiobtn-off-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/radiobtn-on-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/ribbon-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/ribbon-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/slidebar-dim-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/stage-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/switch-off-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/switch-on-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/tab-n-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/tab-s-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/top-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/user-info-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/button-close-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/check-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/language-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/popup/popup-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-blue-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-brown-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-brown-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-facebook-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-green-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/button-close-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/common-popup-title-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/language-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/radio-btn-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/slidebar-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/switch-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/switch-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/components/stage-lock/stage-lock-badge-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/checkbox-checked-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/anvil-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/arrow-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/bomb-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/candle-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/chicken-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/crown-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/energy-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/envelope-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gem-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gift-blue-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gift-red-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gold-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/hammer-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/horner-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/horseshoes-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/key-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/laurel-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/letter-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/lock-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/lucky-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-bronze-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-gold-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-silver-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/mission-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/pickax-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/poition-red-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/poiton-purple-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/purplegem-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sandglass-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/scroll-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/setting-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-a-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-b-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-c-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-d-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shop-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/skull-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/soulgem-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sword-a-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sword-b-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/talaria-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/target-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/timer-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/treasure-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/trophy-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/account-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/add-friend-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/add-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/align-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/alram-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/appstore-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-down-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-next-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-prev-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-up-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/asterisk-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/attachment-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ax-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/back-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bad-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/badge-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bank-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/basket-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/battle-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bin-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/binoculars-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bitcoin-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/block-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bluetooth-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bomb-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/book-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bookmark-add-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bookmark-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bottom-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/brain-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bug-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bulb-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/calendar-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/call-reject-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/call-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/camera-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cancel-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/card-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cart-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/category-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/chat-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/check-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cloud-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cny-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/coffee-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/compass-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/confirm-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/contact-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-next-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-pause-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-play-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-prev-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-stop-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/copy-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/coupon-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/crop-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/crown-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/defense-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/delete-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dislike-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/document-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dollar-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/down-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/download-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dynamite-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/earth-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/eat-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/emoji-good-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/emoji-soso-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/energy-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/exit-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/expand-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/export-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/facebook-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/feather-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/filter-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fingerprint-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fire-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/firm-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fix-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flag-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-01-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-02-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-03-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/folder-open-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/folder-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/game-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gem-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gender-fale-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gender-female-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gift-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/globe-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gmail-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gold-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/googleplay-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/graduation-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/graph-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hammer-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hand-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hashtag-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/headset-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/heart-empty-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/heart-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/helmet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hide-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/home-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/key-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/knowledge-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/left-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/like-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/link-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/list-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/location-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/lock-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/magnetic-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mail-read-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mail-unread-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/map-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-caution-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-caution-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-info-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-info-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-question-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-question-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/medal-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/media-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/megaphone-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/menu-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/message-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/minus-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mobile-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/money-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/more-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/music-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/music-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/newpaper-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/next-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/notification-off-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/notification-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/paper-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pc-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pen-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pencil-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/percent-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/photo-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pick-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/piechart-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pinterest-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pinwheel-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/planet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/player-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/plus-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/preferense-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/prev-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/printer-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/quit-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/random-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ranking-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/record-off-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/record-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/refresh-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/reload-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/remove-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/reset-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/right-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ring-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/safe-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sandglass-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/scan-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/screwdriver-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/search-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/send-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/send-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/service-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/setting-1-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/setting-2-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/share-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/shop-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/shopping-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/show-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sign-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/siren-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/skull-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/skype-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sort-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sparkle-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/speedmeter-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/star-circle-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/star-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/stopwatch-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/support-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sword-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/tag-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/target-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/tent-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/text-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/thumbnails-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/thunder-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/time-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/toolbox-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/top-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/treasure-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/trophy-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/twitter-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ufo-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/unlock-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/up-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/upload-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/user-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/video-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/volume-mute-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/volume-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/wallet-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/warning-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/water-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/wifi-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/youtube-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/zoom-in-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/zoom-out-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-add-friend-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-card-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-check-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-game-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-refresh-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-target-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-user-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-entered-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-entered-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-error-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-error-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-required-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-required-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-typing-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-typing-v2.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/panels/popup-frame-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/panels/settings-frame-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/00_title-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/01_login-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/03_stage-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/04_stageready-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/05_complete-v1.png +0 -0
- package/dist/assets/game/ui/clay/phase03-clay-kit/screens/06_lose-v1.png +0 -0
- package/dist/liquidGooeySpring-WwyGKGPL.js +0 -450
|
@@ -0,0 +1,1291 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { _ as e, c as t, d as n, h as r, l as i, n as a, o, p as s, r as c, s as l, t as u, u as d, v as f, x as p, y as m } from "./reducedMotion-B8kv-v64.js";
|
|
3
|
+
import { createContext as h, forwardRef as g, useCallback as _, useContext as v, useEffect as y, useId as b, useLayoutEffect as x, useMemo as S, useRef as C, useState as w } from "react";
|
|
4
|
+
import { Fragment as T, jsx as E, jsxs as D } from "react/jsx-runtime";
|
|
5
|
+
import { createPortal as O } from "react-dom";
|
|
6
|
+
//#region src/tokens/references.ts
|
|
7
|
+
var k = {
|
|
8
|
+
morphShape: "var(--game-ui-liquid-gooey-morph-shape)",
|
|
9
|
+
morphSpeed: "var(--game-ui-liquid-gooey-morph-speed)",
|
|
10
|
+
morphBounce: "var(--game-ui-liquid-gooey-morph-bounce)",
|
|
11
|
+
evolveMassStiffness: "var(--game-ui-liquid-gooey-evolve-mass-stiffness)",
|
|
12
|
+
evolveMassDamping: "var(--game-ui-liquid-gooey-evolve-mass-damping)",
|
|
13
|
+
evolveSizeStiffness: "var(--game-ui-liquid-gooey-evolve-size-stiffness)",
|
|
14
|
+
evolveSizeDamping: "var(--game-ui-liquid-gooey-evolve-size-damping)",
|
|
15
|
+
evolveRadiusStiffness: "var(--game-ui-liquid-gooey-evolve-radius-stiffness)",
|
|
16
|
+
evolveRadiusDamping: "var(--game-ui-liquid-gooey-evolve-radius-damping)",
|
|
17
|
+
evolveContentBlur: "var(--game-ui-liquid-gooey-evolve-content-blur)",
|
|
18
|
+
evolveRoundness: "var(--game-ui-liquid-gooey-evolve-roundness)",
|
|
19
|
+
evolveCornerDuration: "var(--game-ui-liquid-gooey-evolve-corner-duration)",
|
|
20
|
+
evolveCornerDelay: "var(--game-ui-liquid-gooey-evolve-corner-delay)",
|
|
21
|
+
evolveCornerEase: "var(--game-ui-liquid-gooey-evolve-corner-ease)",
|
|
22
|
+
evolveAnticipation: "var(--game-ui-liquid-gooey-evolve-anticipation)",
|
|
23
|
+
evolveTravel: "var(--game-ui-liquid-gooey-evolve-travel)",
|
|
24
|
+
contentBlurAreaMultiplier: "var(--game-ui-liquid-gooey-content-blur-area-multiplier)",
|
|
25
|
+
bendVertical: "var(--game-ui-liquid-gooey-bend-vertical)",
|
|
26
|
+
bendHorizontal: "var(--game-ui-liquid-gooey-bend-horizontal)",
|
|
27
|
+
bendVelocityVertical: "var(--game-ui-liquid-gooey-bend-velocity-vertical)",
|
|
28
|
+
bendVelocityHorizontal: "var(--game-ui-liquid-gooey-bend-velocity-horizontal)",
|
|
29
|
+
bendSmoothing: "var(--game-ui-liquid-gooey-bend-smoothing)",
|
|
30
|
+
bendActiveThreshold: "var(--game-ui-liquid-gooey-bend-active-threshold)",
|
|
31
|
+
bendVerticalCap: "var(--game-ui-liquid-gooey-bend-vertical-cap)",
|
|
32
|
+
bendHorizontalCap: "var(--game-ui-liquid-gooey-bend-horizontal-cap)",
|
|
33
|
+
bendRadiusMin: "var(--game-ui-liquid-gooey-bend-radius-min)",
|
|
34
|
+
bendRadiusMax: "var(--game-ui-liquid-gooey-bend-radius-max)",
|
|
35
|
+
bendLeadingCapFactor: "var(--game-ui-liquid-gooey-bend-leading-cap-factor)",
|
|
36
|
+
bendTrailingCapFactor: "var(--game-ui-liquid-gooey-bend-trailing-cap-factor)",
|
|
37
|
+
moveStiffness: "var(--game-ui-liquid-gooey-move-stiffness)",
|
|
38
|
+
moveDamping: "var(--game-ui-liquid-gooey-move-damping)",
|
|
39
|
+
moveStretch: "var(--game-ui-liquid-gooey-move-stretch)",
|
|
40
|
+
moveTail: "var(--game-ui-liquid-gooey-move-tail)",
|
|
41
|
+
moveForce: "var(--game-ui-liquid-gooey-move-force)",
|
|
42
|
+
moveTailSpringStiffness: "var(--game-ui-liquid-gooey-move-tail-spring-stiffness)",
|
|
43
|
+
moveTailSpringDamping: "var(--game-ui-liquid-gooey-move-tail-spring-damping)",
|
|
44
|
+
moveStretchSpeed: "var(--game-ui-liquid-gooey-move-stretch-speed)",
|
|
45
|
+
moveStretchSquash: "var(--game-ui-liquid-gooey-move-stretch-squash)",
|
|
46
|
+
moveSpeedThreshold: "var(--game-ui-liquid-gooey-move-speed-threshold)",
|
|
47
|
+
moveTailOnsetSpeed: "var(--game-ui-liquid-gooey-move-tail-onset-speed)",
|
|
48
|
+
moveTailOnsetRange: "var(--game-ui-liquid-gooey-move-tail-onset-range)",
|
|
49
|
+
moveTailRamp: "var(--game-ui-liquid-gooey-move-tail-ramp)",
|
|
50
|
+
moveTailMinRadius: "var(--game-ui-liquid-gooey-move-tail-min-radius)",
|
|
51
|
+
moveTailWobble: "var(--game-ui-liquid-gooey-move-tail-wobble)",
|
|
52
|
+
moveTailPhaseSpeed: "var(--game-ui-liquid-gooey-move-tail-phase-speed)",
|
|
53
|
+
moveTailMidpointA: "var(--game-ui-liquid-gooey-move-tail-midpoint-a)",
|
|
54
|
+
moveTailMidpointB: "var(--game-ui-liquid-gooey-move-tail-midpoint-b)",
|
|
55
|
+
moveTailMidRadiusA: "var(--game-ui-liquid-gooey-move-tail-mid-radius-a)",
|
|
56
|
+
moveTailMidRadiusB: "var(--game-ui-liquid-gooey-move-tail-mid-radius-b)",
|
|
57
|
+
moveTailWobblePhase: "var(--game-ui-liquid-gooey-move-tail-wobble-phase)",
|
|
58
|
+
moveMinPerpendicular: "var(--game-ui-liquid-gooey-move-min-perpendicular)",
|
|
59
|
+
moveLagBase: "var(--game-ui-liquid-gooey-move-lag-base)",
|
|
60
|
+
moveLagForce: "var(--game-ui-liquid-gooey-move-lag-force)",
|
|
61
|
+
moveSettleDistance: "var(--game-ui-liquid-gooey-move-settle-distance)",
|
|
62
|
+
moveSettleSpeed: "var(--game-ui-liquid-gooey-move-settle-speed)",
|
|
63
|
+
moveIntegrationRate: "var(--game-ui-liquid-gooey-move-integration-rate)",
|
|
64
|
+
waviness: "var(--game-ui-liquid-gooey-waviness)",
|
|
65
|
+
wavinessFreq: "var(--game-ui-liquid-gooey-waviness-freq)",
|
|
66
|
+
meltBlur: "var(--game-ui-liquid-gooey-melt-blur)",
|
|
67
|
+
meltContrast: "var(--game-ui-liquid-gooey-melt-contrast)",
|
|
68
|
+
meltReach: "var(--game-ui-liquid-gooey-melt-reach)",
|
|
69
|
+
meltFade: "var(--game-ui-liquid-gooey-melt-fade)",
|
|
70
|
+
meltWarp: "var(--game-ui-liquid-gooey-melt-warp)",
|
|
71
|
+
meltMix: "var(--game-ui-liquid-gooey-melt-mix)",
|
|
72
|
+
meltMixBlur: "var(--game-ui-liquid-gooey-melt-mix-blur)",
|
|
73
|
+
meltGravity: "var(--game-ui-liquid-gooey-melt-gravity)",
|
|
74
|
+
meltWaviness: "var(--game-ui-liquid-gooey-melt-waviness)",
|
|
75
|
+
dissolveBlur: "var(--game-ui-liquid-gooey-dissolve-blur)",
|
|
76
|
+
dissolveWarp: "var(--game-ui-liquid-gooey-dissolve-warp)",
|
|
77
|
+
dissolvePull: "var(--game-ui-liquid-gooey-dissolve-pull)",
|
|
78
|
+
dissolveRange: "var(--game-ui-liquid-gooey-dissolve-range)",
|
|
79
|
+
dissolveZone: "var(--game-ui-liquid-gooey-dissolve-zone)",
|
|
80
|
+
dissolveMix: "var(--game-ui-liquid-gooey-dissolve-mix)",
|
|
81
|
+
dissolveGravity: "var(--game-ui-liquid-gooey-dissolve-gravity)",
|
|
82
|
+
dissolveTaper: "var(--game-ui-liquid-gooey-dissolve-taper)",
|
|
83
|
+
dissolveWarpFreq: "var(--game-ui-liquid-gooey-dissolve-warp-freq)",
|
|
84
|
+
dissolveFlowSpeed: "var(--game-ui-liquid-gooey-dissolve-flow-speed)",
|
|
85
|
+
dissolveDetail: "var(--game-ui-liquid-gooey-dissolve-detail)",
|
|
86
|
+
dissolveReleaseMs: "var(--game-ui-liquid-gooey-dissolve-release-ms)",
|
|
87
|
+
dissolveFadeMs: "var(--game-ui-liquid-gooey-dissolve-fade-ms)",
|
|
88
|
+
dissolveStrength: "var(--game-ui-liquid-gooey-dissolve-strength)",
|
|
89
|
+
dissolveSink: "var(--game-ui-liquid-gooey-dissolve-sink)",
|
|
90
|
+
dissolveSeamBlur: "var(--game-ui-liquid-gooey-dissolve-seam-blur)"
|
|
91
|
+
}, A = {
|
|
92
|
+
bg: "var(--game-ui-overlay-glass-bg)",
|
|
93
|
+
bgHover: "var(--game-ui-overlay-glass-bg-hover)",
|
|
94
|
+
bgStrong: "var(--game-ui-overlay-glass-bg-strong)",
|
|
95
|
+
bgPanel: "var(--game-ui-overlay-glass-bg-panel)",
|
|
96
|
+
border: "var(--game-ui-overlay-glass-border)",
|
|
97
|
+
borderHover: "var(--game-ui-overlay-glass-border-hover)",
|
|
98
|
+
text: "var(--game-ui-overlay-glass-text)",
|
|
99
|
+
textMuted: "var(--game-ui-overlay-glass-text-muted)",
|
|
100
|
+
blur: "var(--game-ui-overlay-glass-blur)",
|
|
101
|
+
focusRing: "var(--game-ui-overlay-glass-focus-ring)",
|
|
102
|
+
primaryFill: "var(--game-ui-overlay-glass-primary-fill)"
|
|
103
|
+
}, j = {
|
|
104
|
+
background: "var(--game-ui-bg)",
|
|
105
|
+
playfieldScrim: "var(--game-ui-playfield-scrim)",
|
|
106
|
+
surface: "var(--game-ui-surface)",
|
|
107
|
+
surfaceRaised: "var(--game-ui-surface-raised)",
|
|
108
|
+
surfaceSunken: "var(--game-ui-surface-sunken)",
|
|
109
|
+
text: "var(--game-ui-text)",
|
|
110
|
+
textMuted: "var(--game-ui-text-muted)",
|
|
111
|
+
accent: "var(--game-ui-accent)",
|
|
112
|
+
accentContrast: "var(--game-ui-accent-contrast)",
|
|
113
|
+
secondary: "var(--game-ui-secondary)",
|
|
114
|
+
success: "var(--game-ui-success)",
|
|
115
|
+
danger: "var(--game-ui-danger)",
|
|
116
|
+
warning: "var(--game-ui-warning)",
|
|
117
|
+
focusRing: "var(--game-ui-focus-ring)",
|
|
118
|
+
borderSubtle: "var(--game-ui-border-subtle)",
|
|
119
|
+
borderStrong: "var(--game-ui-border-strong)",
|
|
120
|
+
disabled: "var(--game-ui-disabled)"
|
|
121
|
+
}, M = {
|
|
122
|
+
familyDisplay: "var(--game-ui-font-display)",
|
|
123
|
+
familyBody: "var(--game-ui-font-body)",
|
|
124
|
+
familyMono: "var(--game-ui-font-mono)",
|
|
125
|
+
xs: "var(--game-ui-font-xs)",
|
|
126
|
+
sm: "var(--game-ui-font-sm)",
|
|
127
|
+
md: "var(--game-ui-font-md)",
|
|
128
|
+
lg: "var(--game-ui-font-lg)",
|
|
129
|
+
xl: "var(--game-ui-font-xl)",
|
|
130
|
+
xxl: "var(--game-ui-font-xxl)",
|
|
131
|
+
lineTight: "var(--game-ui-line-tight)",
|
|
132
|
+
lineBody: "var(--game-ui-line-body)",
|
|
133
|
+
reading: "var(--game-ui-font-reading)",
|
|
134
|
+
lineReading: "var(--game-ui-line-reading)",
|
|
135
|
+
measureReading: "var(--game-ui-measure-reading)",
|
|
136
|
+
weightBody: "var(--game-ui-weight-body)",
|
|
137
|
+
weightStrong: "var(--game-ui-weight-strong)",
|
|
138
|
+
weightTitle: "var(--game-ui-weight-title)"
|
|
139
|
+
}, ee = {
|
|
140
|
+
px2: "var(--game-ui-space-2)",
|
|
141
|
+
px4: "var(--game-ui-space-4)",
|
|
142
|
+
px6: "var(--game-ui-space-6)",
|
|
143
|
+
px8: "var(--game-ui-space-8)",
|
|
144
|
+
px10: "var(--game-ui-space-10)",
|
|
145
|
+
px12: "var(--game-ui-space-12)",
|
|
146
|
+
px16: "var(--game-ui-space-16)",
|
|
147
|
+
px20: "var(--game-ui-space-20)",
|
|
148
|
+
px24: "var(--game-ui-space-24)",
|
|
149
|
+
px32: "var(--game-ui-space-32)",
|
|
150
|
+
safeTop: "var(--game-ui-safe-top)",
|
|
151
|
+
safeRight: "var(--game-ui-safe-right)",
|
|
152
|
+
safeBottom: "var(--game-ui-safe-bottom)",
|
|
153
|
+
safeLeft: "var(--game-ui-safe-left)"
|
|
154
|
+
}, N = {
|
|
155
|
+
bead: "var(--game-ui-radius-bead)",
|
|
156
|
+
control: "var(--game-ui-radius-control)",
|
|
157
|
+
card: "var(--game-ui-radius-card)",
|
|
158
|
+
radiusPanel: "var(--game-ui-radius-panel)",
|
|
159
|
+
radiusModal: "var(--game-ui-radius-modal)"
|
|
160
|
+
}, P = {
|
|
161
|
+
size: "var(--game-ui-scrollbar-size)",
|
|
162
|
+
track: "var(--game-ui-scrollbar-track)",
|
|
163
|
+
thumb: "var(--game-ui-scrollbar-thumb)",
|
|
164
|
+
thumbHover: "var(--game-ui-scrollbar-thumb-hover)"
|
|
165
|
+
}, te = {
|
|
166
|
+
shadowRaised: "var(--game-ui-shadow-raised)",
|
|
167
|
+
stroke: "var(--game-ui-stroke)"
|
|
168
|
+
}, ne = {
|
|
169
|
+
fast: "var(--game-ui-motion-fast)",
|
|
170
|
+
base: "var(--game-ui-motion-base)",
|
|
171
|
+
slow: "var(--game-ui-motion-slow)",
|
|
172
|
+
easingPop: "var(--game-ui-ease-pop)",
|
|
173
|
+
easingSoft: "var(--game-ui-ease-soft)",
|
|
174
|
+
reducedMotion: "var(--game-ui-reduced-motion-policy)"
|
|
175
|
+
}, re = {
|
|
176
|
+
playfield: "var(--game-ui-z-playfield)",
|
|
177
|
+
hud: "var(--game-ui-z-hud)",
|
|
178
|
+
sidebar: "var(--game-ui-z-sidebar)",
|
|
179
|
+
overlay: "var(--game-ui-z-overlay)",
|
|
180
|
+
zModal: "var(--game-ui-z-modal)",
|
|
181
|
+
toast: "var(--game-ui-z-toast)"
|
|
182
|
+
}, ie = {
|
|
183
|
+
touchMinimumPx: 44,
|
|
184
|
+
touchPrimaryPx: 52,
|
|
185
|
+
touchIconPx: 48,
|
|
186
|
+
touchRowPx: 46,
|
|
187
|
+
adjacentSpacingPx: 8,
|
|
188
|
+
mobileLandscapeMinHeightPx: 390,
|
|
189
|
+
desktopProofWidthPx: 1440,
|
|
190
|
+
desktopProofHeightPx: 900,
|
|
191
|
+
mobileLandscapeProofWidthPx: 844,
|
|
192
|
+
mobileLandscapeProofHeightPx: 390
|
|
193
|
+
}, ae = {
|
|
194
|
+
iconSm: "var(--game-ui-icon-sm)",
|
|
195
|
+
iconMd: "var(--game-ui-icon-md)",
|
|
196
|
+
iconLg: "var(--game-ui-icon-lg)",
|
|
197
|
+
buttonSkinMinWidth: "var(--game-ui-asset-button-min-width)",
|
|
198
|
+
stageTileMinHeight: "var(--game-ui-stage-tile-min-height)",
|
|
199
|
+
terrainSwatchSize: "var(--game-ui-terrain-swatch-size)",
|
|
200
|
+
terrainToolHitSize: "var(--game-ui-terrain-tool-hit-size)",
|
|
201
|
+
buildRailCardSize: "var(--game-ui-build-rail-card-size)",
|
|
202
|
+
brushNumberWidth: "var(--game-ui-brush-number-width)"
|
|
203
|
+
}, oe = .3;
|
|
204
|
+
function se(e, t, n = oe) {
|
|
205
|
+
let r = Math.max(0, Number.isFinite(e) ? e : 0);
|
|
206
|
+
if (n === !1) return r;
|
|
207
|
+
let i = Math.max(0, Number.isFinite(n) ? n : oe), a = Math.max(0, Number.isFinite(t) ? t : 0);
|
|
208
|
+
return a > 0 ? Math.min(r, a * i) : r;
|
|
209
|
+
}
|
|
210
|
+
//#endregion
|
|
211
|
+
//#region src/liquid/motionTokens.ts
|
|
212
|
+
function F(e, t = 0, n = 1) {
|
|
213
|
+
return Math.min(n, Math.max(t, e));
|
|
214
|
+
}
|
|
215
|
+
function I(e, t) {
|
|
216
|
+
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
217
|
+
}
|
|
218
|
+
function ce(e) {
|
|
219
|
+
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
220
|
+
}
|
|
221
|
+
function le(e, t, n) {
|
|
222
|
+
let r = e?.ownerDocument.defaultView, i = ce(k[t]);
|
|
223
|
+
if (!r || !i) return n;
|
|
224
|
+
let a = r.getComputedStyle(e).getPropertyValue(i), o = Number.parseFloat(a);
|
|
225
|
+
return Number.isFinite(o) ? o : n;
|
|
226
|
+
}
|
|
227
|
+
function L(e) {
|
|
228
|
+
return Math.round(e * 10) / 10;
|
|
229
|
+
}
|
|
230
|
+
function R(e) {
|
|
231
|
+
return String(Math.round(e * 1e3) / 1e3);
|
|
232
|
+
}
|
|
233
|
+
//#endregion
|
|
234
|
+
//#region src/liquid/move.ts
|
|
235
|
+
var z = {
|
|
236
|
+
stiffness: 380,
|
|
237
|
+
damping: 18,
|
|
238
|
+
stretch: .18,
|
|
239
|
+
tail: .46,
|
|
240
|
+
force: .5
|
|
241
|
+
}, B = {
|
|
242
|
+
tailSpringStiffness: 170,
|
|
243
|
+
tailSpringDamping: 22,
|
|
244
|
+
stretchSpeed: 6e-4,
|
|
245
|
+
stretchSquash: .65,
|
|
246
|
+
speedThreshold: 2,
|
|
247
|
+
tailOnsetSpeed: 20,
|
|
248
|
+
tailOnsetRange: 120,
|
|
249
|
+
tailRamp: 10,
|
|
250
|
+
tailMinRadius: .3,
|
|
251
|
+
tailWobble: .16,
|
|
252
|
+
tailPhaseSpeed: .045,
|
|
253
|
+
tailMidpointA: .45,
|
|
254
|
+
tailMidpointB: .75,
|
|
255
|
+
tailMidRadiusA: .62,
|
|
256
|
+
tailMidRadiusB: .4,
|
|
257
|
+
tailWobblePhase: 2.4,
|
|
258
|
+
minPerpendicular: 4,
|
|
259
|
+
lagBase: .2,
|
|
260
|
+
lagForce: 1.6,
|
|
261
|
+
settleDistance: .05,
|
|
262
|
+
settleSpeed: 1,
|
|
263
|
+
integrationRate: 60
|
|
264
|
+
};
|
|
265
|
+
function ue(e) {
|
|
266
|
+
let t = (t, n) => le(e, t, n);
|
|
267
|
+
return {
|
|
268
|
+
stiffness: Math.max(.001, t("moveStiffness", z.stiffness)),
|
|
269
|
+
damping: Math.max(0, t("moveDamping", z.damping)),
|
|
270
|
+
stretch: F(t("moveStretch", z.stretch)),
|
|
271
|
+
tail: F(t("moveTail", z.tail)),
|
|
272
|
+
force: F(t("moveForce", z.force)),
|
|
273
|
+
tailSpringStiffness: Math.max(.001, t("moveTailSpringStiffness", B.tailSpringStiffness)),
|
|
274
|
+
tailSpringDamping: Math.max(0, t("moveTailSpringDamping", B.tailSpringDamping)),
|
|
275
|
+
stretchSpeed: Math.max(0, t("moveStretchSpeed", B.stretchSpeed)),
|
|
276
|
+
stretchSquash: Math.max(0, t("moveStretchSquash", B.stretchSquash)),
|
|
277
|
+
speedThreshold: Math.max(0, t("moveSpeedThreshold", B.speedThreshold)),
|
|
278
|
+
tailOnsetSpeed: Math.max(0, t("moveTailOnsetSpeed", B.tailOnsetSpeed)),
|
|
279
|
+
tailOnsetRange: Math.max(.001, t("moveTailOnsetRange", B.tailOnsetRange)),
|
|
280
|
+
tailRamp: Math.max(0, t("moveTailRamp", B.tailRamp)),
|
|
281
|
+
tailMinRadius: Math.max(0, t("moveTailMinRadius", B.tailMinRadius)),
|
|
282
|
+
tailWobble: Math.max(0, t("moveTailWobble", B.tailWobble)),
|
|
283
|
+
tailPhaseSpeed: Math.max(0, t("moveTailPhaseSpeed", B.tailPhaseSpeed)),
|
|
284
|
+
tailMidpointA: F(t("moveTailMidpointA", B.tailMidpointA)),
|
|
285
|
+
tailMidpointB: F(t("moveTailMidpointB", B.tailMidpointB)),
|
|
286
|
+
tailMidRadiusA: F(t("moveTailMidRadiusA", B.tailMidRadiusA)),
|
|
287
|
+
tailMidRadiusB: F(t("moveTailMidRadiusB", B.tailMidRadiusB)),
|
|
288
|
+
tailWobblePhase: t("moveTailWobblePhase", B.tailWobblePhase),
|
|
289
|
+
minPerpendicular: Math.max(0, t("moveMinPerpendicular", B.minPerpendicular)),
|
|
290
|
+
lagBase: Math.max(0, t("moveLagBase", B.lagBase)),
|
|
291
|
+
lagForce: Math.max(0, t("moveLagForce", B.lagForce)),
|
|
292
|
+
settleDistance: Math.max(0, t("moveSettleDistance", B.settleDistance)),
|
|
293
|
+
settleSpeed: Math.max(0, t("moveSettleSpeed", B.settleSpeed)),
|
|
294
|
+
integrationRate: Math.max(1, t("moveIntegrationRate", B.integrationRate))
|
|
295
|
+
};
|
|
296
|
+
}
|
|
297
|
+
function de(e, t, n, r, i, a) {
|
|
298
|
+
let o = t + (r * (n - e) - i * t) * a;
|
|
299
|
+
return [e + o * a, o];
|
|
300
|
+
}
|
|
301
|
+
function V(e, t, n, r, i, a, o) {
|
|
302
|
+
let s = Math.max(0, I(a, 0)), c = Math.max(1, Math.ceil(s * o)), l = s / c, u = e, d = t;
|
|
303
|
+
for (; c-- > 0;) [u, d] = de(u, d, n, r, i, l);
|
|
304
|
+
return [u, d];
|
|
305
|
+
}
|
|
306
|
+
function fe(e) {
|
|
307
|
+
return {
|
|
308
|
+
cx: e.cx,
|
|
309
|
+
cy: e.cy,
|
|
310
|
+
vcx: 0,
|
|
311
|
+
vcy: 0,
|
|
312
|
+
tailX: e.cx,
|
|
313
|
+
tailY: e.cy,
|
|
314
|
+
tailVx: 0,
|
|
315
|
+
tailVy: 0,
|
|
316
|
+
tailR: 0,
|
|
317
|
+
tailPhase: 0,
|
|
318
|
+
tailInitialized: !0
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
function pe(e, t) {
|
|
322
|
+
e.cx = t.cx, e.cy = t.cy, e.vcx = 0, e.vcy = 0, e.tailX = t.cx, e.tailY = t.cy, e.tailVx = 0, e.tailVy = 0, e.tailR = 0, e.tailPhase = 0, e.tailInitialized = !0;
|
|
323
|
+
}
|
|
324
|
+
function me(e, t, n, r, a) {
|
|
325
|
+
let o = Math.max(.01, I(t.scale, 1));
|
|
326
|
+
[e.cx, e.vcx] = V(e.cx, e.vcx, t.cx, a.stiffness, a.damping, r, a.integrationRate), [e.cy, e.vcy] = V(e.cy, e.vcy, t.cy, a.stiffness, a.damping, r, a.integrationRate);
|
|
327
|
+
let s = Math.hypot(e.vcx, e.vcy), c = 0, l = 1, u = 1;
|
|
328
|
+
if (s > a.speedThreshold) {
|
|
329
|
+
let t = Math.min(a.stretch, s * a.stretchSpeed);
|
|
330
|
+
c = Math.round(Math.atan2(e.vcy, e.vcx) * 100) / 100, l = 1 + t, u = 1 / (1 + t * a.stretchSquash);
|
|
331
|
+
}
|
|
332
|
+
e.tailInitialized ||= (e.tailX = e.cx, e.tailY = e.cy, !0), [e.tailX, e.tailVx] = V(e.tailX, e.tailVx, e.cx, a.tailSpringStiffness, a.tailSpringDamping, r, a.integrationRate), [e.tailY, e.tailVy] = V(e.tailY, e.tailVy, e.cy, a.tailSpringStiffness, a.tailSpringDamping, r, a.integrationRate);
|
|
333
|
+
let d = Math.max(0, n.w * o), f = Math.max(0, n.h * o), p = s > .001 ? e.vcx / s : 1, m = s > .001 ? e.vcy / s : 0, h = Math.max(a.minPerpendicular, Math.abs(p) * f + Math.abs(m) * d), g = (Math.abs(p) * d + Math.abs(m) * f) / 2, _ = h / 2, v = e.tailX - e.cx, y = e.tailY - e.cy, b = Math.hypot(v, y), x = g + _ * (a.lagBase + a.force * a.lagForce);
|
|
334
|
+
b > x && b > 0 && (e.tailX = e.cx + v / b * x, e.tailY = e.cy + y / b * x);
|
|
335
|
+
let S = F((s - a.tailOnsetSpeed) / a.tailOnsetRange), C = _ * a.tail * S;
|
|
336
|
+
e.tailR += (C - e.tailR) * Math.min(1, Math.max(0, r) * a.tailRamp);
|
|
337
|
+
let w = e.tailR >= a.tailMinRadius, T = e.cx, E = e.cy, D = e.cx, O = e.cy, k = 0, A = 0;
|
|
338
|
+
if (w) {
|
|
339
|
+
e.tailPhase += s * Math.max(0, I(r, 0)) * a.tailPhaseSpeed;
|
|
340
|
+
let t = e.tailR * a.tailWobble, n = -m, i = p, o = Math.sin(e.tailPhase) * t, c = Math.sin(e.tailPhase + a.tailWobblePhase) * -t;
|
|
341
|
+
T = e.cx + v * a.tailMidpointA + n * o, E = e.cy + y * a.tailMidpointA + i * o, D = e.cx + v * a.tailMidpointB + n * c, O = e.cy + y * a.tailMidpointB + i * c, k = e.tailR * a.tailMidRadiusA, A = e.tailR * a.tailMidRadiusB;
|
|
342
|
+
}
|
|
343
|
+
let j = {
|
|
344
|
+
cx: L(e.tailX),
|
|
345
|
+
cy: L(e.tailY),
|
|
346
|
+
radius: w ? L(e.tailR) : 0,
|
|
347
|
+
midACx: L(T),
|
|
348
|
+
midACy: L(E),
|
|
349
|
+
midARadius: w ? L(k) : 0,
|
|
350
|
+
midBCx: L(D),
|
|
351
|
+
midBCy: L(O),
|
|
352
|
+
midBRadius: w ? L(A) : 0,
|
|
353
|
+
visible: w,
|
|
354
|
+
fingerprint: w ? [
|
|
355
|
+
L(e.tailX),
|
|
356
|
+
L(e.tailY),
|
|
357
|
+
L(e.tailR),
|
|
358
|
+
L(T),
|
|
359
|
+
L(E),
|
|
360
|
+
L(D),
|
|
361
|
+
L(O)
|
|
362
|
+
].join(",") : "hidden"
|
|
363
|
+
};
|
|
364
|
+
return {
|
|
365
|
+
path: i(-n.w / 2, -n.h / 2, n.w, n.h, n.r),
|
|
366
|
+
transform: `translate(${R(e.cx)} ${R(e.cy)}) ` + (s > a.speedThreshold ? `rotate(${R(c * 180 / Math.PI)}) scale(${R(l)} ${R(u)}) ` : "") + `scale(${R(o)})`,
|
|
367
|
+
tail: j,
|
|
368
|
+
moving: Math.hypot(e.cx - t.cx, e.cy - t.cy) > a.settleDistance || s > a.settleSpeed || e.tailR >= a.tailMinRadius
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
//#endregion
|
|
372
|
+
//#region src/liquid/evolve.ts
|
|
373
|
+
var H = {
|
|
374
|
+
massStiffness: 320,
|
|
375
|
+
massDamping: 17,
|
|
376
|
+
sizeStiffness: 170,
|
|
377
|
+
sizeDamping: 11.5,
|
|
378
|
+
radiusStiffness: 900,
|
|
379
|
+
radiusDamping: 60,
|
|
380
|
+
contentBlur: 7,
|
|
381
|
+
roundness: 1,
|
|
382
|
+
cornerDuration: 460,
|
|
383
|
+
cornerDelay: 0,
|
|
384
|
+
cornerEase: "cubic-bezier(0.3, 1.05, 0.4, 1)",
|
|
385
|
+
anticipation: 90,
|
|
386
|
+
travel: 32
|
|
387
|
+
};
|
|
388
|
+
function he(e) {
|
|
389
|
+
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
390
|
+
}
|
|
391
|
+
function U(e, t) {
|
|
392
|
+
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
393
|
+
}
|
|
394
|
+
function W(e, t = 0, n = 1) {
|
|
395
|
+
return Math.min(n, Math.max(t, e));
|
|
396
|
+
}
|
|
397
|
+
function G(e, t, n) {
|
|
398
|
+
let r = e?.ownerDocument.defaultView, i = he(k[t]);
|
|
399
|
+
if (!r || !i) return n;
|
|
400
|
+
let a = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(i));
|
|
401
|
+
return Number.isFinite(a) ? a : n;
|
|
402
|
+
}
|
|
403
|
+
function K(e, t, n) {
|
|
404
|
+
let r = e?.ownerDocument.defaultView, i = he(k[t]);
|
|
405
|
+
return !r || !i ? n : r.getComputedStyle(e).getPropertyValue(i).trim() || n;
|
|
406
|
+
}
|
|
407
|
+
function q(e, t) {
|
|
408
|
+
let n = (t, n) => G(e, t, n), r = {
|
|
409
|
+
massStiffness: Math.max(.001, n("evolveMassStiffness", H.massStiffness)),
|
|
410
|
+
massDamping: Math.max(0, n("evolveMassDamping", H.massDamping)),
|
|
411
|
+
sizeStiffness: Math.max(.001, n("evolveSizeStiffness", H.sizeStiffness)),
|
|
412
|
+
sizeDamping: Math.max(0, n("evolveSizeDamping", H.sizeDamping)),
|
|
413
|
+
radiusStiffness: Math.max(.001, n("evolveRadiusStiffness", H.radiusStiffness)),
|
|
414
|
+
radiusDamping: Math.max(0, n("evolveRadiusDamping", H.radiusDamping)),
|
|
415
|
+
contentBlur: Math.max(0, n("evolveContentBlur", H.contentBlur)),
|
|
416
|
+
roundness: W(n("evolveRoundness", H.roundness)),
|
|
417
|
+
cornerDuration: Math.max(0, n("evolveCornerDuration", H.cornerDuration)),
|
|
418
|
+
cornerDelay: Math.max(0, n("evolveCornerDelay", H.cornerDelay)),
|
|
419
|
+
cornerEase: K(e, "evolveCornerEase", H.cornerEase),
|
|
420
|
+
anticipation: Math.max(0, n("evolveAnticipation", H.anticipation)),
|
|
421
|
+
travel: Math.max(0, n("evolveTravel", H.travel))
|
|
422
|
+
}, i = Math.max(.25, U(t?.speed, n("morphSpeed", 1))), a = W(U(t?.bounce, n("morphBounce", .5))), o = (e) => Math.max(.12, 1 - 1.1 * W(e)), s = o(a) / o(.5);
|
|
423
|
+
return {
|
|
424
|
+
massStiffness: r.massStiffness * i * i,
|
|
425
|
+
massDamping: r.massDamping * i * s,
|
|
426
|
+
sizeStiffness: r.sizeStiffness * i * i,
|
|
427
|
+
sizeDamping: r.sizeDamping * i * s,
|
|
428
|
+
radiusStiffness: r.radiusStiffness * i * i,
|
|
429
|
+
radiusDamping: r.radiusDamping * i,
|
|
430
|
+
contentBlur: Math.max(0, U(t?.contentBlur, r.contentBlur)),
|
|
431
|
+
roundness: r.roundness,
|
|
432
|
+
cornerDuration: r.cornerDuration / i,
|
|
433
|
+
cornerDelay: r.cornerDelay,
|
|
434
|
+
cornerEase: r.cornerEase,
|
|
435
|
+
anticipation: r.anticipation,
|
|
436
|
+
travel: r.travel,
|
|
437
|
+
...t?.advanced ?? {}
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
function ge(e, t) {
|
|
441
|
+
return t?.shape === void 0 ? G(e, "morphShape", 1) >= .5 : t.shape;
|
|
442
|
+
}
|
|
443
|
+
function J(e, t) {
|
|
444
|
+
let n = q(e, t), r = Math.max(0, G(e, "contentBlurAreaMultiplier", 3));
|
|
445
|
+
return n.contentBlur * r;
|
|
446
|
+
}
|
|
447
|
+
function _e(e) {
|
|
448
|
+
return {
|
|
449
|
+
cx: e.cx,
|
|
450
|
+
cy: e.cy,
|
|
451
|
+
w: e.w,
|
|
452
|
+
h: e.h,
|
|
453
|
+
r: e.r,
|
|
454
|
+
vcx: 0,
|
|
455
|
+
vcy: 0,
|
|
456
|
+
vw: 0,
|
|
457
|
+
vh: 0,
|
|
458
|
+
vr: 0,
|
|
459
|
+
motionEnv: 0,
|
|
460
|
+
tPrev: null,
|
|
461
|
+
tvx: 0,
|
|
462
|
+
tvy: 0,
|
|
463
|
+
lead01: 0,
|
|
464
|
+
cornerT0: 0,
|
|
465
|
+
cornerStarted: !1,
|
|
466
|
+
lastTargetMoveT: 0,
|
|
467
|
+
lastTargetSize: null,
|
|
468
|
+
morphActive: !1,
|
|
469
|
+
round01: 0
|
|
470
|
+
};
|
|
471
|
+
}
|
|
472
|
+
function ve(e, t) {
|
|
473
|
+
e.cx = t.cx, e.cy = t.cy, e.w = t.w, e.h = t.h, e.r = t.r, e.vcx = 0, e.vcy = 0, e.vw = 0, e.vh = 0, e.vr = 0, e.motionEnv = 0, e.tPrev = {
|
|
474
|
+
cx: t.cx,
|
|
475
|
+
cy: t.cy
|
|
476
|
+
}, e.tvx = 0, e.tvy = 0, e.lead01 = 0, e.cornerT0 = 0, e.cornerStarted = !1, e.lastTargetMoveT = 0, e.lastTargetSize = {
|
|
477
|
+
w: t.w,
|
|
478
|
+
h: t.h
|
|
479
|
+
}, e.morphActive = !1, e.round01 = 0;
|
|
480
|
+
}
|
|
481
|
+
function Y(e, t, n, r, i, a) {
|
|
482
|
+
let o = t + (r * (n - e) - i * t) * a;
|
|
483
|
+
return [e + o * a, o];
|
|
484
|
+
}
|
|
485
|
+
function X(e, t, n, r, i, a) {
|
|
486
|
+
let o = Math.max(0, U(a, 0)), s = Math.max(1, Math.ceil(o * 60)), c = o / s, l = e, u = t;
|
|
487
|
+
for (; s-- > 0;) [l, u] = Y(l, u, n, r, i, c);
|
|
488
|
+
return [l, u];
|
|
489
|
+
}
|
|
490
|
+
var ye = /* @__PURE__ */ new Map();
|
|
491
|
+
function be(e) {
|
|
492
|
+
let t = ye.get(e);
|
|
493
|
+
if (t) return t;
|
|
494
|
+
let n = /cubic-bezier\(([^)]+)\)/.exec(e);
|
|
495
|
+
if (n) {
|
|
496
|
+
let [e = 0, r = 0, i = 1, a = 1] = (n[1] ?? "").split(",").map(Number);
|
|
497
|
+
t = (t) => {
|
|
498
|
+
if (t <= 0) return 0;
|
|
499
|
+
if (t >= 1) return 1;
|
|
500
|
+
let n = 0, o = 1;
|
|
501
|
+
for (let r = 0; r < 24; r += 1) {
|
|
502
|
+
let r = (n + o) / 2;
|
|
503
|
+
3 * r * (1 - r) * (1 - r) * e + 3 * r * r * (1 - r) * i + r ** 3 < t ? n = r : o = r;
|
|
504
|
+
}
|
|
505
|
+
let s = (n + o) / 2;
|
|
506
|
+
return 3 * s * (1 - s) * (1 - s) * r + 3 * s * s * (1 - s) * a + s ** 3;
|
|
507
|
+
};
|
|
508
|
+
} else t = e === "ease-in-out" ? be("cubic-bezier(0.42, 0, 0.58, 1)") : (e) => W(e);
|
|
509
|
+
return ye.set(e, t), t;
|
|
510
|
+
}
|
|
511
|
+
function xe(e) {
|
|
512
|
+
return String(Math.round(e * 1e3) / 1e3);
|
|
513
|
+
}
|
|
514
|
+
function Se(e, t, n, r, i, a) {
|
|
515
|
+
let o = Math.max(0, U(n, 0)), s = t.cx, c = t.cy;
|
|
516
|
+
e.tPrev ||= {
|
|
517
|
+
cx: s,
|
|
518
|
+
cy: c
|
|
519
|
+
};
|
|
520
|
+
let l = (s - e.tPrev.cx) / Math.max(1e-6, o || 1 / 60), u = (c - e.tPrev.cy) / Math.max(1e-6, o || 1 / 60);
|
|
521
|
+
e.tvx = e.tvx * .7 + l * .3, e.tvy = e.tvy * .7 + u * .3, e.tPrev = {
|
|
522
|
+
cx: s,
|
|
523
|
+
cy: c
|
|
524
|
+
};
|
|
525
|
+
let f = s - e.cx, p = c - e.cy, m = Math.hypot(f, p), h = Math.hypot(e.tvx, e.tvy), g = 0, _ = 0;
|
|
526
|
+
h > .001 ? (g = e.tvx / h, _ = e.tvy / h) : m > .001 && (g = f / m, _ = p / m);
|
|
527
|
+
let v = Math.max(0, i.anticipation) / 1e3, y = v > 0 ? 1 - Math.exp(-o / v) : 1;
|
|
528
|
+
e.lead01 += (+(m > .5) - e.lead01) * y;
|
|
529
|
+
let b = Math.min(Math.max(0, i.travel) * e.lead01, m);
|
|
530
|
+
[e.cx, e.vcx] = X(e.cx, e.vcx, s + g * b, i.massStiffness, i.massDamping, o), [e.cy, e.vcy] = X(e.cy, e.vcy, c + _ * b, i.massStiffness, i.massDamping, o), [e.w, e.vw] = X(e.w, e.vw, t.w, i.sizeStiffness, i.sizeDamping, o), [e.h, e.vh] = X(e.h, e.vh, t.h, i.sizeStiffness, i.sizeDamping, o), [e.r, e.vr] = X(e.r, e.vr, t.r, i.radiusStiffness, i.radiusDamping, o);
|
|
531
|
+
let x = e.lastTargetSize;
|
|
532
|
+
(x ? Math.abs(t.w - x.w) + Math.abs(t.h - x.h) : 0) > .5 ? (e.morphActive ||= (e.cornerT0 = r, e.cornerStarted = !0, !0), e.lastTargetMoveT = r) : e.morphActive && r - e.lastTargetMoveT > 150 && r - e.cornerT0 > Math.max(0, i.cornerDelay) + Math.max(1, i.cornerDuration) && (e.morphActive = !1), e.lastTargetSize = {
|
|
533
|
+
w: t.w,
|
|
534
|
+
h: t.h
|
|
535
|
+
};
|
|
536
|
+
let S = Math.max(0, i.cornerDelay) + Math.max(1, i.cornerDuration), C = 0;
|
|
537
|
+
if (e.cornerStarted && i.roundness > 0 && r - e.cornerT0 < S) {
|
|
538
|
+
let t = W((r - e.cornerT0 - Math.max(0, i.cornerDelay)) / Math.max(1, i.cornerDuration));
|
|
539
|
+
C = W((1 - be(i.cornerEase)(t)) * i.roundness);
|
|
540
|
+
}
|
|
541
|
+
let w = o * 8;
|
|
542
|
+
e.round01 += Math.max(-w, Math.min(w, C - e.round01));
|
|
543
|
+
let T = Math.max(0, e.r);
|
|
544
|
+
if (e.round01 > .001) {
|
|
545
|
+
let n = Math.max(Math.min(e.w, e.h) / 2, T);
|
|
546
|
+
T += (n - T) * e.round01, T = Math.max(T, t.r);
|
|
547
|
+
}
|
|
548
|
+
let E = Math.min(1, (Math.hypot(e.vcx, e.vcy) + Math.abs(e.vw) + Math.abs(e.vh)) / 420);
|
|
549
|
+
e.motionEnv = Math.max(E, e.motionEnv - o * 1.9);
|
|
550
|
+
let D = e.motionEnv * e.motionEnv * Math.max(0, i.contentBlur), O = e.cornerStarted && r - e.cornerT0 < S + 80 || Math.abs(C - e.round01) > .004 || e.round01 > .004, k = Math.hypot(e.vcx, e.vcy), A = Math.abs(e.cx - s) < .05 && Math.abs(e.cy - c) < .05 && Math.abs(e.w - t.w) < .05 && Math.abs(e.h - t.h) < .05 && Math.abs(e.r - t.r) < .05 && k < 1 && Math.abs(e.vw) + Math.abs(e.vh) + Math.abs(e.vr) < 1 && e.motionEnv < .01 && !O, j = [
|
|
551
|
+
T,
|
|
552
|
+
T,
|
|
553
|
+
T,
|
|
554
|
+
T
|
|
555
|
+
];
|
|
556
|
+
return {
|
|
557
|
+
path: d(-e.w / 2, -e.h / 2, e.w, e.h, j, a),
|
|
558
|
+
transform: `translate(${xe(e.cx)} ${xe(e.cy)}) scale(${xe(t.scale)} ${xe(t.scaleY ?? t.scale)})`,
|
|
559
|
+
contentBlur: D,
|
|
560
|
+
moving: !A
|
|
561
|
+
};
|
|
562
|
+
}
|
|
563
|
+
//#endregion
|
|
564
|
+
//#region src/liquid/engine.ts
|
|
565
|
+
function Z(e, t) {
|
|
566
|
+
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
567
|
+
}
|
|
568
|
+
function Ce(e) {
|
|
569
|
+
let t = {
|
|
570
|
+
observe: e.observe ?? !1,
|
|
571
|
+
x: Z(e.x, 0),
|
|
572
|
+
y: Z(e.y, 0),
|
|
573
|
+
scale: Math.max(.01, Z(e.scale, 1)),
|
|
574
|
+
scaleY: Math.max(.01, Z(e.scaleY ?? e.scale, 1))
|
|
575
|
+
};
|
|
576
|
+
return e.effect !== void 0 && (t.effect = e.effect), e.morph !== void 0 && (t.morph = e.morph), e.deformation !== void 0 && (t.deformation = e.deformation), e.transition !== void 0 && (t.transition = e.transition), e.delay !== void 0 && (t.delay = Math.max(0, Z(e.delay, 0))), e.radius !== void 0 && (t.radius = e.radius), e.blob !== void 0 && (t.blob = e.blob), t;
|
|
577
|
+
}
|
|
578
|
+
function we(e) {
|
|
579
|
+
return {
|
|
580
|
+
x: e.x,
|
|
581
|
+
y: e.y,
|
|
582
|
+
scale: e.scale,
|
|
583
|
+
scaleY: e.scaleY
|
|
584
|
+
};
|
|
585
|
+
}
|
|
586
|
+
function Te(e, t) {
|
|
587
|
+
return e.x === t.x && e.y === t.y && e.scale === t.scale && e.scaleY === t.scaleY;
|
|
588
|
+
}
|
|
589
|
+
function Ee(e, t) {
|
|
590
|
+
return e.effect === t.effect && e.observe === t.observe && JSON.stringify(e.morph) === JSON.stringify(t.morph) && e.deformation === t.deformation && JSON.stringify(e.transition) === JSON.stringify(t.transition) && e.delay === t.delay && De(e.radius) === De(t.radius);
|
|
591
|
+
}
|
|
592
|
+
function De(e) {
|
|
593
|
+
return e === void 0 ? "" : JSON.stringify(e);
|
|
594
|
+
}
|
|
595
|
+
function Oe(e, t) {
|
|
596
|
+
return !!(e && Math.abs(e.x - t.x) < .01 && Math.abs(e.y - t.y) < .01 && Math.abs(e.w - t.w) < .01 && Math.abs(e.h - t.h) < .01 && e.r.every((e, n) => Math.abs(e - (t.r[n] ?? 0)) < .01));
|
|
597
|
+
}
|
|
598
|
+
function Q(e) {
|
|
599
|
+
return String(Math.round(e * 1e3) / 1e3);
|
|
600
|
+
}
|
|
601
|
+
var ke = class {
|
|
602
|
+
getGroup;
|
|
603
|
+
getFilterArea;
|
|
604
|
+
onModeChange;
|
|
605
|
+
onFeaturePaddingChange;
|
|
606
|
+
nowFn;
|
|
607
|
+
requestFrame;
|
|
608
|
+
cancelFrame;
|
|
609
|
+
follow;
|
|
610
|
+
items = /* @__PURE__ */ new Map();
|
|
611
|
+
removeListeners = [];
|
|
612
|
+
mutationObserver = null;
|
|
613
|
+
awake = !1;
|
|
614
|
+
raf = 0;
|
|
615
|
+
needsPaint = !1;
|
|
616
|
+
lastActivity = 0;
|
|
617
|
+
claimed = !1;
|
|
618
|
+
budgetWarningEmitted = !1;
|
|
619
|
+
reducedMotion;
|
|
620
|
+
filterArea = 0;
|
|
621
|
+
featurePadding = 0;
|
|
622
|
+
mode = "static";
|
|
623
|
+
lastFrameTime = null;
|
|
624
|
+
moveOptions = null;
|
|
625
|
+
disposed = !1;
|
|
626
|
+
constructor(e) {
|
|
627
|
+
this.getGroup = e.getGroup, this.getFilterArea = e.getFilterArea, this.reducedMotion = e.reducedMotion ?? !1, this.onModeChange = e.onModeChange, this.onFeaturePaddingChange = e.onFeaturePaddingChange, this.follow = e.follow ?? !1, this.nowFn = e.now ?? (() => performance.now()), this.requestFrame = e.requestFrame ?? ((e) => requestAnimationFrame(e)), this.cancelFrame = e.cancelFrame ?? ((e) => cancelAnimationFrame(e));
|
|
628
|
+
}
|
|
629
|
+
register(e) {
|
|
630
|
+
this.revive(), this.unregister(e.id);
|
|
631
|
+
let t = Ce(e.config), n = {
|
|
632
|
+
...e,
|
|
633
|
+
config: t,
|
|
634
|
+
target: we(t),
|
|
635
|
+
current: we(t),
|
|
636
|
+
motion: null,
|
|
637
|
+
lastBox: null,
|
|
638
|
+
lastPaint: null,
|
|
639
|
+
ownTransform: "",
|
|
640
|
+
resizeObserver: null,
|
|
641
|
+
move: null,
|
|
642
|
+
tail: this.follow && !t.deformation ? this.createTailElements(e.blob) : null,
|
|
643
|
+
evolve: null,
|
|
644
|
+
baseContentFilter: e.host.style.filter,
|
|
645
|
+
contentBlurred: !1,
|
|
646
|
+
lastContentFilter: null
|
|
647
|
+
};
|
|
648
|
+
return n.host.style.transformOrigin = "center", this.applyHost(n), typeof ResizeObserver < "u" && (n.resizeObserver = new ResizeObserver(() => {
|
|
649
|
+
this.touch(), this.wake();
|
|
650
|
+
}), n.resizeObserver.observe(n.host)), this.items.set(n.id, n), this.updateFeaturePadding(), this.ensureSources(), this.touch(), this.wake(), () => this.unregister(n.id);
|
|
651
|
+
}
|
|
652
|
+
update(e, t) {
|
|
653
|
+
let n = this.items.get(e);
|
|
654
|
+
if (!n) return;
|
|
655
|
+
let r = Ce(t), i = we(r), o = !Te(n.target, i), s = !Ee(n.config, r);
|
|
656
|
+
if (n.config.deformation !== r.deformation && n.config.deformation?.reset(n.host), n.config = r, this.updateFeaturePadding(), !o) {
|
|
657
|
+
s && (n.lastPaint = null, this.isDynamic(n) || this.resetDynamicEntry(n), this.isDynamic(n) && !this.reducedMotion && (this.ensureClaim() ? this.setMode("animated") : (this.snapEntry(n), this.resetDynamicEntry(n), this.setMode("static"))), this.touch(), this.wake());
|
|
658
|
+
return;
|
|
659
|
+
}
|
|
660
|
+
let l = this.now();
|
|
661
|
+
if (this.advanceEntry(n, l), n.target = i, this.reducedMotion) this.snapEntry(n), this.resetMoveEntry(n), this.resetDynamicEntry(n), this.setMode("reduced");
|
|
662
|
+
else {
|
|
663
|
+
let e = c(r.transition), t = e.duration > 0;
|
|
664
|
+
!(t || this.follow || this.isDynamic(n)) || !this.ensureClaim() ? (this.snapEntry(n), this.resetMoveEntry(n), this.resetDynamicEntry(n), this.setMode("static")) : !t || r.observe ? (n.current = { ...i }, n.motion = null, n.host.style.willChange = "", n.lastPaint = null, this.applyHost(n), this.setMode("animated")) : (n.motion = {
|
|
665
|
+
from: { ...n.current },
|
|
666
|
+
to: { ...i },
|
|
667
|
+
start: l + (r.delay ?? 0),
|
|
668
|
+
duration: e.duration,
|
|
669
|
+
ease: a(e.easing)
|
|
670
|
+
}, n.host.style.willChange = r.observe ? "" : "transform", this.setMode("animated"));
|
|
671
|
+
}
|
|
672
|
+
this.touch(l), this.needsPaint = !0, this.wake();
|
|
673
|
+
}
|
|
674
|
+
setReducedMotion(e) {
|
|
675
|
+
if (this.reducedMotion !== e) {
|
|
676
|
+
if (this.reducedMotion = e, e) {
|
|
677
|
+
let e = this.now();
|
|
678
|
+
for (let t of this.items.values()) this.advanceEntry(t, e), this.snapEntry(t), this.resetMoveEntry(t), this.resetDynamicEntry(t);
|
|
679
|
+
this.releaseClaim(), this.setMode("reduced");
|
|
680
|
+
} else this.claimed || this.setMode("static");
|
|
681
|
+
this.touch(), this.needsPaint = !0, this.wake();
|
|
682
|
+
}
|
|
683
|
+
}
|
|
684
|
+
setFilterArea(e) {
|
|
685
|
+
let t = Number.isFinite(e) ? Math.max(0, e) : Infinity;
|
|
686
|
+
if (!(Math.abs(t - this.filterArea) < .5)) {
|
|
687
|
+
if (this.filterArea = t, this.claimed && t > f().maxFilterArea) {
|
|
688
|
+
for (let e of this.items.values()) this.snapEntry(e), this.resetMoveEntry(e), this.resetDynamicEntry(e);
|
|
689
|
+
this.releaseClaim(), this.setMode(this.reducedMotion ? "reduced" : "static");
|
|
690
|
+
}
|
|
691
|
+
this.needsPaint = !0, this.wake();
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
wake() {
|
|
695
|
+
this.disposed || this.items.size === 0 || (this.needsPaint = !0, !this.awake && (this.awake = !0, this.raf = this.requestFrame(this.loop)));
|
|
696
|
+
}
|
|
697
|
+
dispose() {
|
|
698
|
+
if (!this.disposed) {
|
|
699
|
+
this.disposed = !0, this.raf && this.cancelFrame(this.raf), this.mutationObserver?.disconnect(), this.removeListeners.forEach((e) => e());
|
|
700
|
+
for (let e of this.items.values()) e.resizeObserver?.disconnect(), e.host.style.willChange = "", this.clearContentBlur(e), e.config.deformation?.reset(e.host), this.removeTailElements(e);
|
|
701
|
+
this.items.clear(), this.releaseClaim(), this.awake = !1, this.lastFrameTime = null;
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
getDebugState() {
|
|
705
|
+
return {
|
|
706
|
+
awake: this.awake,
|
|
707
|
+
mode: this.mode,
|
|
708
|
+
itemCount: this.items.size,
|
|
709
|
+
claimed: this.claimed,
|
|
710
|
+
filterArea: this.filterArea,
|
|
711
|
+
featurePadding: this.featurePadding
|
|
712
|
+
};
|
|
713
|
+
}
|
|
714
|
+
now() {
|
|
715
|
+
return this.nowFn();
|
|
716
|
+
}
|
|
717
|
+
touch(e = this.now()) {
|
|
718
|
+
this.lastActivity = e;
|
|
719
|
+
}
|
|
720
|
+
setMode(e) {
|
|
721
|
+
this.mode !== e && (this.mode = e, this.onModeChange?.(e));
|
|
722
|
+
}
|
|
723
|
+
ensureClaim() {
|
|
724
|
+
if (this.claimed) return !0;
|
|
725
|
+
let e = this.getFilterArea();
|
|
726
|
+
return Number.isFinite(e) && (this.filterArea = Math.max(0, e)), p(this.filterArea) ? (this.claimed = !0, this.moveOptions = ue(this.getGroup()), !0) : (this.warnBudgetFallback(), !1);
|
|
727
|
+
}
|
|
728
|
+
warnBudgetFallback() {
|
|
729
|
+
if (this.budgetWarningEmitted) return;
|
|
730
|
+
this.budgetWarningEmitted = !0;
|
|
731
|
+
let e = f(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
732
|
+
console.warn(`LiquidGroup: the liquid animation budget is insufficient (${t}); degrading to static rendering for this group.`);
|
|
733
|
+
}
|
|
734
|
+
revive() {
|
|
735
|
+
this.disposed && (this.disposed = !1, this.mutationObserver = null, this.removeListeners.length = 0, this.lastFrameTime = null, this.budgetWarningEmitted = !1);
|
|
736
|
+
}
|
|
737
|
+
releaseClaim() {
|
|
738
|
+
this.claimed &&= (m(), !1);
|
|
739
|
+
}
|
|
740
|
+
isDeformed(e) {
|
|
741
|
+
return e.config.deformation !== void 0;
|
|
742
|
+
}
|
|
743
|
+
isShape(e) {
|
|
744
|
+
return !this.isDeformed(e) && e.config.morph !== void 0 && ge(this.getGroup(), e.config.morph);
|
|
745
|
+
}
|
|
746
|
+
isDynamic(e) {
|
|
747
|
+
return this.isDeformed(e) || this.isShape(e);
|
|
748
|
+
}
|
|
749
|
+
featureBox(e) {
|
|
750
|
+
return e.lastBox ?? {
|
|
751
|
+
x: 0,
|
|
752
|
+
y: 0,
|
|
753
|
+
w: Math.max(1, e.host.offsetWidth),
|
|
754
|
+
h: Math.max(1, e.host.offsetHeight),
|
|
755
|
+
r: [
|
|
756
|
+
0,
|
|
757
|
+
0,
|
|
758
|
+
0,
|
|
759
|
+
0
|
|
760
|
+
]
|
|
761
|
+
};
|
|
762
|
+
}
|
|
763
|
+
updateFeaturePadding() {
|
|
764
|
+
let e = 0;
|
|
765
|
+
for (let t of this.items.values()) {
|
|
766
|
+
let n = this.featureBox(t);
|
|
767
|
+
this.isDeformed(t) ? e = Math.max(e, t.config.deformation.padding(this.getGroup(), n)) : this.isShape(t) && (e = Math.max(e, J(this.getGroup(), t.config.morph)));
|
|
768
|
+
}
|
|
769
|
+
Math.abs(e - this.featurePadding) < .5 || (this.featurePadding = e, this.onFeaturePaddingChange?.(e));
|
|
770
|
+
}
|
|
771
|
+
clearContentBlur(e) {
|
|
772
|
+
!e.contentBlurred && e.lastContentFilter === null || (e.baseContentFilter ? e.host.style.filter = e.baseContentFilter : e.host.style.removeProperty("filter"), e.contentBlurred = !1, e.lastContentFilter = null);
|
|
773
|
+
}
|
|
774
|
+
writeContentBlur(e, t) {
|
|
775
|
+
let n = Math.max(0, Number.isFinite(t) ? t : 0);
|
|
776
|
+
if (n <= .3) {
|
|
777
|
+
this.clearContentBlur(e);
|
|
778
|
+
return;
|
|
779
|
+
}
|
|
780
|
+
let r = e.baseContentFilter.trim(), i = `${r && r !== "none" ? `${r} ` : ""}blur(${Q(n)}px)`;
|
|
781
|
+
e.lastContentFilter !== i && (e.host.style.filter = i, e.lastContentFilter = i, e.contentBlurred = !0);
|
|
782
|
+
}
|
|
783
|
+
resetDynamicEntry(e) {
|
|
784
|
+
e.evolve = null, this.clearContentBlur(e), e.config.deformation?.reset(e.host), e.lastPaint = null;
|
|
785
|
+
}
|
|
786
|
+
snapEntry(e) {
|
|
787
|
+
e.current = { ...e.target }, e.motion = null, e.host.style.willChange = "", this.applyHost(e);
|
|
788
|
+
}
|
|
789
|
+
resetMoveEntry(e) {
|
|
790
|
+
e.move = null, e.lastPaint = null, this.hideTail(e);
|
|
791
|
+
}
|
|
792
|
+
advanceEntry(e, t) {
|
|
793
|
+
let n = e.motion;
|
|
794
|
+
if (!n) return !1;
|
|
795
|
+
if (e.config.observe) return e.current = { ...e.target }, e.motion = null, e.host.style.willChange = "", this.applyHost(e), !1;
|
|
796
|
+
let r = Math.min(1, Math.max(0, (t - n.start) / n.duration)), i = n.ease(r);
|
|
797
|
+
return e.current = {
|
|
798
|
+
x: n.from.x + (n.to.x - n.from.x) * i,
|
|
799
|
+
y: n.from.y + (n.to.y - n.from.y) * i,
|
|
800
|
+
scale: n.from.scale + (n.to.scale - n.from.scale) * i,
|
|
801
|
+
scaleY: n.from.scaleY + (n.to.scaleY - n.from.scaleY) * i
|
|
802
|
+
}, this.applyHost(e), r >= 1 ? (e.current = { ...n.to }, e.motion = null, e.host.style.willChange = "", this.applyHost(e), !1) : !0;
|
|
803
|
+
}
|
|
804
|
+
applyHost(e) {
|
|
805
|
+
if (e.config.observe) {
|
|
806
|
+
e.ownTransform && e.host.style.transform === e.ownTransform && e.host.style.removeProperty("transform"), e.ownTransform = "";
|
|
807
|
+
return;
|
|
808
|
+
}
|
|
809
|
+
let t = `translate(${Q(e.current.x)}px, ${Q(e.current.y)}px) scale(${Q(e.current.scale)}, ${Q(e.current.scaleY)})`;
|
|
810
|
+
e.ownTransform !== t && (e.ownTransform = t, e.host.style.transform = t);
|
|
811
|
+
}
|
|
812
|
+
createTailElements(e) {
|
|
813
|
+
let t = e.parentElement;
|
|
814
|
+
if (!t) return null;
|
|
815
|
+
let n = e.ownerDocument, r = (e) => {
|
|
816
|
+
let t = n.createElementNS("http://www.w3.org/2000/svg", "circle");
|
|
817
|
+
return t.setAttribute("data-liquid-gooey-move-tail", e), t.setAttribute("r", "0"), t;
|
|
818
|
+
}, i = r("lead"), a = r("mid-a"), o = r("mid-b");
|
|
819
|
+
return t.insertBefore(i, e), t.insertBefore(a, e), t.insertBefore(o, e), {
|
|
820
|
+
lead: i,
|
|
821
|
+
midA: a,
|
|
822
|
+
midB: o,
|
|
823
|
+
lastPaint: null
|
|
824
|
+
};
|
|
825
|
+
}
|
|
826
|
+
removeTailElements(e) {
|
|
827
|
+
e.tail?.lead.remove(), e.tail?.midA.remove(), e.tail?.midB.remove(), e.tail = null;
|
|
828
|
+
}
|
|
829
|
+
hideTail(e) {
|
|
830
|
+
let t = e.tail;
|
|
831
|
+
!t || t.lastPaint === "hidden" || (t.lead.setAttribute("r", "0"), t.midA.setAttribute("r", "0"), t.midB.setAttribute("r", "0"), t.lastPaint = "hidden");
|
|
832
|
+
}
|
|
833
|
+
paintTail(e, t) {
|
|
834
|
+
let n = e.tail;
|
|
835
|
+
return !n || n.lastPaint === t.fingerprint ? !1 : t.visible ? (n.lead.setAttribute("cx", String(t.cx)), n.lead.setAttribute("cy", String(t.cy)), n.lead.setAttribute("r", String(t.radius)), n.midA.setAttribute("cx", String(t.midACx)), n.midA.setAttribute("cy", String(t.midACy)), n.midA.setAttribute("r", String(t.midARadius)), n.midB.setAttribute("cx", String(t.midBCx)), n.midB.setAttribute("cy", String(t.midBCy)), n.midB.setAttribute("r", String(t.midBRadius)), n.lastPaint = t.fingerprint, !0) : (this.hideTail(e), !0);
|
|
836
|
+
}
|
|
837
|
+
moveTarget(e, t) {
|
|
838
|
+
return {
|
|
839
|
+
cx: t.x + t.w / 2 + e.current.x,
|
|
840
|
+
cy: t.y + t.h / 2 + e.current.y,
|
|
841
|
+
scale: e.current.scale,
|
|
842
|
+
scaleY: e.current.scaleY
|
|
843
|
+
};
|
|
844
|
+
}
|
|
845
|
+
readBox(e, n) {
|
|
846
|
+
let r = e.host.firstElementChild ?? e.host, i = t(e.host, n), a = e.host.offsetWidth, s = e.host.offsetHeight;
|
|
847
|
+
if (e.config.observe) {
|
|
848
|
+
let o = r.getBoundingClientRect(), c = n.getBoundingClientRect();
|
|
849
|
+
o.width > 0 || o.height > 0 ? (i = {
|
|
850
|
+
x: o.left - c.left,
|
|
851
|
+
y: o.top - c.top
|
|
852
|
+
}, a = o.width || r.offsetWidth, s = o.height || r.offsetHeight) : (i = t(r, n), a = r.offsetWidth || e.host.offsetWidth, s = r.offsetHeight || e.host.offsetHeight);
|
|
853
|
+
}
|
|
854
|
+
let c = e.config.radius === void 0 ? o(r, a, s) : l(e.config.radius);
|
|
855
|
+
return {
|
|
856
|
+
x: i.x,
|
|
857
|
+
y: i.y,
|
|
858
|
+
w: a,
|
|
859
|
+
h: s,
|
|
860
|
+
r: c
|
|
861
|
+
};
|
|
862
|
+
}
|
|
863
|
+
dynamicTarget(e, t) {
|
|
864
|
+
let n = e.config.observe;
|
|
865
|
+
return {
|
|
866
|
+
cx: t.x + t.w / 2 + (n ? 0 : e.current.x),
|
|
867
|
+
cy: t.y + t.h / 2 + (n ? 0 : e.current.y),
|
|
868
|
+
scale: n ? 1 : e.current.scale,
|
|
869
|
+
scaleY: n ? 1 : e.current.scaleY,
|
|
870
|
+
w: t.w,
|
|
871
|
+
h: t.h,
|
|
872
|
+
r: t.r[0] ?? 0
|
|
873
|
+
};
|
|
874
|
+
}
|
|
875
|
+
paintEvolveEntry(e, t, n, r) {
|
|
876
|
+
let i = this.dynamicTarget(e, t);
|
|
877
|
+
e.evolve ||= _e(i), (this.reducedMotion || !this.claimed && !r) && ve(e.evolve, i);
|
|
878
|
+
let a = q(this.getGroup(), e.config.morph), o = Se(e.evolve, i, this.reducedMotion || !this.claimed && !r ? 0 : n, this.now(), a, e.config.blob), s = `${o.path}|${o.transform}`, c = !1;
|
|
879
|
+
return e.lastPaint !== s && (e.lastPaint = s, e.blob.setAttribute("d", o.path), e.blob.setAttribute("transform", o.transform), c = !0), this.hideTail(e), this.writeContentBlur(e, o.contentBlur), {
|
|
880
|
+
changed: c,
|
|
881
|
+
moving: !this.reducedMotion && this.claimed && o.moving
|
|
882
|
+
};
|
|
883
|
+
}
|
|
884
|
+
paintDeformedEntry(e, t, n, r) {
|
|
885
|
+
let i = e.config.deformation.paint({
|
|
886
|
+
group: this.getGroup(),
|
|
887
|
+
host: e.host,
|
|
888
|
+
target: this.dynamicTarget(e, t),
|
|
889
|
+
box: t,
|
|
890
|
+
dt: n,
|
|
891
|
+
snap: this.reducedMotion || !this.claimed && !r
|
|
892
|
+
}), a = !1;
|
|
893
|
+
return e.lastPaint !== i.fingerprint && (e.lastPaint = i.fingerprint, e.blob.setAttribute("d", i.path), e.blob.setAttribute("transform", i.transform), a = !0), this.hideTail(e), this.clearContentBlur(e), {
|
|
894
|
+
changed: a,
|
|
895
|
+
moving: !this.reducedMotion && this.claimed && i.moving
|
|
896
|
+
};
|
|
897
|
+
}
|
|
898
|
+
paintFollowEntry(e, t, n, r, i) {
|
|
899
|
+
let a = this.moveTarget(e, t);
|
|
900
|
+
!i && r && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetMoveEntry(e), e.move = fe(a))), e.move ||= fe(a), this.reducedMotion && pe(e.move, a);
|
|
901
|
+
let o = this.moveOptions ??= ue(this.getGroup()), s = me(e.move, a, t, this.reducedMotion ? 0 : n, o), c = `${s.path}|${s.transform}`, l = !1;
|
|
902
|
+
return e.lastPaint !== c && (e.lastPaint = c, e.blob.setAttribute("d", s.path), e.blob.setAttribute("transform", s.transform), l = !0), this.paintTail(e, s.tail) && (l = !0), {
|
|
903
|
+
changed: l,
|
|
904
|
+
moving: !this.reducedMotion && s.moving && this.claimed
|
|
905
|
+
};
|
|
906
|
+
}
|
|
907
|
+
paintEntry(e, t) {
|
|
908
|
+
let n = t.x + e.current.x + t.w * (1 - e.current.scale) / 2, r = t.y + e.current.y + t.h * (1 - e.current.scaleY) / 2, i = `translate(${Q(n)} ${Q(r)}) scale(${Q(e.current.scale)} ${Q(e.current.scaleY)})`, a = d(0, 0, t.w, t.h, t.r, e.config.blob), o = `${a}|${i}`;
|
|
909
|
+
return e.lastPaint === o ? !1 : (e.lastPaint = o, e.blob.setAttribute("d", a), e.blob.setAttribute("transform", i), !0);
|
|
910
|
+
}
|
|
911
|
+
loop = (e) => {
|
|
912
|
+
if (this.raf = 0, this.disposed || this.items.size === 0) {
|
|
913
|
+
this.awake = !1;
|
|
914
|
+
return;
|
|
915
|
+
}
|
|
916
|
+
let t = this.lastFrameTime === null ? 1 / 60 : Math.max(0, (e - this.lastFrameTime) / 1e3);
|
|
917
|
+
this.lastFrameTime = e;
|
|
918
|
+
let n = !1;
|
|
919
|
+
for (let t of this.items.values()) this.advanceEntry(t, e) && (n = !0);
|
|
920
|
+
let r = this.getGroup(), i = !1;
|
|
921
|
+
if (r) {
|
|
922
|
+
let e = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set();
|
|
923
|
+
for (let t of this.items.values()) e.set(t.id, this.readBox(t, r));
|
|
924
|
+
for (let t of this.items.values()) {
|
|
925
|
+
let n = e.get(t.id);
|
|
926
|
+
if (!n) continue;
|
|
927
|
+
let r = t.lastBox === null, s = !Oe(t.lastBox, n);
|
|
928
|
+
r && a.add(t.id), s && o.add(t.id), s && (t.lastBox = n, t.lastPaint = null, i = !0);
|
|
929
|
+
}
|
|
930
|
+
this.updateFeaturePadding();
|
|
931
|
+
for (let r of this.items.values()) {
|
|
932
|
+
let s = e.get(r.id);
|
|
933
|
+
if (!s) continue;
|
|
934
|
+
let c = a.has(r.id), l = o.has(r.id);
|
|
935
|
+
this.isDynamic(r) && l && !c && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetDynamicEntry(r), this.snapEntry(r)));
|
|
936
|
+
let u = this.isDeformed(r) ? this.paintDeformedEntry(r, s, t, c) : this.isShape(r) ? this.paintEvolveEntry(r, s, t, c) : this.follow ? this.paintFollowEntry(r, s, t, l, c) : {
|
|
937
|
+
changed: this.paintEntry(r, s),
|
|
938
|
+
moving: !1
|
|
939
|
+
};
|
|
940
|
+
u.changed && (i = !0), u.moving && (n = !0);
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
this.needsPaint = !1, (n || i) && this.touch(e);
|
|
944
|
+
let a = e - this.lastActivity < 500;
|
|
945
|
+
if (n || this.needsPaint || a) {
|
|
946
|
+
this.raf = this.requestFrame(this.loop);
|
|
947
|
+
return;
|
|
948
|
+
}
|
|
949
|
+
this.awake = !1, this.releaseClaim(), this.setMode(this.reducedMotion ? "reduced" : "static"), this.lastFrameTime = null;
|
|
950
|
+
};
|
|
951
|
+
ensureSources() {
|
|
952
|
+
if (this.mutationObserver) return;
|
|
953
|
+
let e = this.getGroup();
|
|
954
|
+
if (!e || typeof MutationObserver > "u") return;
|
|
955
|
+
this.mutationObserver = new MutationObserver((e) => {
|
|
956
|
+
let t = !1;
|
|
957
|
+
for (let n of e) {
|
|
958
|
+
let e = n.target;
|
|
959
|
+
if (!(e instanceof Element && e.closest("[data-liquid-gooey-silhouette]"))) {
|
|
960
|
+
if (n.type === "attributes" && n.attributeName === "style") {
|
|
961
|
+
let t = [...this.items.values()].find((t) => t.host === e);
|
|
962
|
+
if (t && t.ownTransform === t.host.style.transform) continue;
|
|
963
|
+
}
|
|
964
|
+
t = !0;
|
|
965
|
+
break;
|
|
966
|
+
}
|
|
967
|
+
}
|
|
968
|
+
t && (this.touch(), this.wake());
|
|
969
|
+
}), this.mutationObserver.observe(e, {
|
|
970
|
+
attributes: !0,
|
|
971
|
+
attributeFilter: ["class", "style"],
|
|
972
|
+
childList: !0,
|
|
973
|
+
subtree: !0
|
|
974
|
+
});
|
|
975
|
+
let t = () => {
|
|
976
|
+
this.touch(), this.wake();
|
|
977
|
+
};
|
|
978
|
+
for (let n of [
|
|
979
|
+
"transitionrun",
|
|
980
|
+
"animationstart",
|
|
981
|
+
"pointerdown"
|
|
982
|
+
]) e.addEventListener(n, t, !0), this.removeListeners.push(() => e.removeEventListener(n, t, !0));
|
|
983
|
+
window.addEventListener("scroll", t, {
|
|
984
|
+
capture: !0,
|
|
985
|
+
passive: !0
|
|
986
|
+
}), this.removeListeners.push(() => window.removeEventListener("scroll", t, !0));
|
|
987
|
+
}
|
|
988
|
+
unregister(e) {
|
|
989
|
+
let t = this.items.get(e);
|
|
990
|
+
t && (t.resizeObserver?.disconnect(), t.host.style.willChange = "", this.clearContentBlur(t), t.config.deformation?.reset(t.host), this.removeTailElements(t), this.items.delete(e), this.updateFeaturePadding(), this.items.size === 0 && (this.raf && this.cancelFrame(this.raf), this.raf = 0, this.awake = !1, this.releaseClaim(), this.lastFrameTime = null, this.featurePadding = 0, this.onFeaturePaddingChange?.(0)));
|
|
991
|
+
}
|
|
992
|
+
};
|
|
993
|
+
//#endregion
|
|
994
|
+
//#region src/liquid/shadow.ts
|
|
995
|
+
function Ae(e, t) {
|
|
996
|
+
let n = [], r = 0, i = "";
|
|
997
|
+
for (let a of e) a === "(" ? r += 1 : a === ")" && --r, r === 0 && (t === "," ? a === "," : /\s/.test(a)) ? (i.trim() && n.push(i.trim()), i = "") : i += a;
|
|
998
|
+
return i.trim() && n.push(i.trim()), n;
|
|
999
|
+
}
|
|
1000
|
+
var je = /^[+-]?(\d+\.?\d*|\.\d+)(px)?$/;
|
|
1001
|
+
function Me(e) {
|
|
1002
|
+
if (!e || e.trim() === "" || e.trim() === "none") return [];
|
|
1003
|
+
let t = [];
|
|
1004
|
+
for (let n of Ae(e, ",")) {
|
|
1005
|
+
let e = Ae(n, " "), r = e.includes("inset"), i = [], a = [];
|
|
1006
|
+
for (let t of e) t !== "inset" && (i.length < 4 && je.test(t) ? i.push(parseFloat(t)) : a.push(t));
|
|
1007
|
+
let [o = 0, s = 0, c = 0, l = 0] = i;
|
|
1008
|
+
t.push({
|
|
1009
|
+
x: o,
|
|
1010
|
+
y: s,
|
|
1011
|
+
blur: c,
|
|
1012
|
+
spread: l,
|
|
1013
|
+
color: a.join(" ") || "var(--game-ui-shadow-color, transparent)",
|
|
1014
|
+
inset: r
|
|
1015
|
+
});
|
|
1016
|
+
}
|
|
1017
|
+
return t;
|
|
1018
|
+
}
|
|
1019
|
+
function Ne(e) {
|
|
1020
|
+
if (!e || e.trim() === "" || e.trim() === "none") return null;
|
|
1021
|
+
let t = Ae(e, " "), n = 0, r = [];
|
|
1022
|
+
for (let e of t) e !== "solid" && (n === 0 && je.test(e) ? n = parseFloat(e) : r.push(e));
|
|
1023
|
+
return {
|
|
1024
|
+
width: n,
|
|
1025
|
+
color: r.join(" ") || "var(--game-ui-stroke, transparent)"
|
|
1026
|
+
};
|
|
1027
|
+
}
|
|
1028
|
+
function Pe(e) {
|
|
1029
|
+
return !e.inset && e.spread === 0 && (e.blur > 0 || e.x !== 0 || e.y !== 0);
|
|
1030
|
+
}
|
|
1031
|
+
function Fe(e) {
|
|
1032
|
+
let t = e.filter(Pe).map((e) => `drop-shadow(${e.x}px ${e.y}px ${e.blur}px ${e.color})`);
|
|
1033
|
+
return t.length > 0 ? t.join(" ") : void 0;
|
|
1034
|
+
}
|
|
1035
|
+
function Ie(e) {
|
|
1036
|
+
return e.filter((e) => !Pe(e));
|
|
1037
|
+
}
|
|
1038
|
+
function Le(e) {
|
|
1039
|
+
return e.reduce((e, t) => Math.max(e, Math.max(Math.abs(t.x), Math.abs(t.y)) + t.blur * 1.5 + Math.max(0, t.spread)), 0);
|
|
1040
|
+
}
|
|
1041
|
+
//#endregion
|
|
1042
|
+
//#region src/liquid/LiquidGroup/resolve.ts
|
|
1043
|
+
function Re(e) {
|
|
1044
|
+
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
1045
|
+
}
|
|
1046
|
+
function $(e, t) {
|
|
1047
|
+
return Number.isFinite(e) ? e : t;
|
|
1048
|
+
}
|
|
1049
|
+
function ze(e, t) {
|
|
1050
|
+
if (!e) return e;
|
|
1051
|
+
let n = /^var\((--[\w-]+)\)$/.exec(e.trim());
|
|
1052
|
+
if (!n || !t) return e;
|
|
1053
|
+
let r = t.ownerDocument.defaultView;
|
|
1054
|
+
return r && r.getComputedStyle(t).getPropertyValue(n[1] ?? "").trim() || e;
|
|
1055
|
+
}
|
|
1056
|
+
function Be(e, t, n) {
|
|
1057
|
+
let r = ze(e, t), i = Number.parseFloat(r ?? "");
|
|
1058
|
+
return Number.isFinite(i) ? i : n;
|
|
1059
|
+
}
|
|
1060
|
+
function Ve(...e) {
|
|
1061
|
+
return e.filter(Boolean).join(" ") || void 0;
|
|
1062
|
+
}
|
|
1063
|
+
//#endregion
|
|
1064
|
+
//#region src/liquid/LiquidGroup/fill.tsx
|
|
1065
|
+
function He({ id: e, fill: t }) {
|
|
1066
|
+
let n = t.bottom ?? t.top, r = Math.round(Math.min(1, Math.max(0, t.sheen ?? .3)) * 100);
|
|
1067
|
+
return /* @__PURE__ */ E("defs", { children: /* @__PURE__ */ E("linearGradient", {
|
|
1068
|
+
id: e,
|
|
1069
|
+
x1: "0",
|
|
1070
|
+
y1: "0",
|
|
1071
|
+
x2: "0",
|
|
1072
|
+
y2: "1",
|
|
1073
|
+
children: [
|
|
1074
|
+
[0, `color-mix(in srgb, ${t.top}, white ${r}%)`],
|
|
1075
|
+
[.16, `color-mix(in srgb, ${t.top}, white ${Math.round(r / 2)}%)`],
|
|
1076
|
+
[.5, `color-mix(in srgb, ${t.top}, ${n})`],
|
|
1077
|
+
[1, `color-mix(in srgb, ${n}, black 5%)`]
|
|
1078
|
+
].map(([e, t]) => /* @__PURE__ */ E("stop", {
|
|
1079
|
+
offset: e,
|
|
1080
|
+
style: { stopColor: t }
|
|
1081
|
+
}, e))
|
|
1082
|
+
}) });
|
|
1083
|
+
}
|
|
1084
|
+
//#endregion
|
|
1085
|
+
//#region src/liquid/LiquidGroup/context.ts
|
|
1086
|
+
var Ue = h(null);
|
|
1087
|
+
function We() {
|
|
1088
|
+
let e = v(Ue);
|
|
1089
|
+
if (!e) throw Error("<LiquidGroup.Item> must be rendered inside <LiquidGroup>.");
|
|
1090
|
+
return e;
|
|
1091
|
+
}
|
|
1092
|
+
//#endregion
|
|
1093
|
+
//#region src/liquid/LiquidGroup/LiquidItem.tsx
|
|
1094
|
+
var Ge = g(function({ effect: e, suppressMorph: t = !1, x: n = 0, y: r = 0, scale: i = 1, scaleY: a, transition: o, delay: s, radius: c, blob: l, morph: u, deformation: d, observe: f, className: p, style: m, children: h, ...g }, v) {
|
|
1095
|
+
let { portal: w, engine: k, follow: A } = We(), j = `liquid-item-${Re(b())}`, M = C(null), ee = C(null), N = C(null), P = S(() => {
|
|
1096
|
+
let p = e === "morph" ? e : void 0, m = d !== void 0, h = d !== void 0 || A && u === void 0 && e !== "morph" || t && u === void 0 && e !== "morph" ? void 0 : u ?? {}, g = {
|
|
1097
|
+
...p === void 0 ? {} : { effect: p },
|
|
1098
|
+
...h === void 0 ? {} : { morph: h },
|
|
1099
|
+
...d === void 0 ? {} : { deformation: d },
|
|
1100
|
+
...f === void 0 && !m ? {} : { observe: m || f },
|
|
1101
|
+
x: $(n, 0),
|
|
1102
|
+
y: $(r, 0),
|
|
1103
|
+
scale: $(i, 1),
|
|
1104
|
+
...a === void 0 ? {} : { scaleY: $(a, 1) }
|
|
1105
|
+
};
|
|
1106
|
+
return o !== void 0 && (g.transition = o), s !== void 0 && (g.delay = s), c !== void 0 && (g.radius = c), l !== void 0 && (g.blob = l), g;
|
|
1107
|
+
}, [
|
|
1108
|
+
d,
|
|
1109
|
+
l,
|
|
1110
|
+
s,
|
|
1111
|
+
e,
|
|
1112
|
+
A,
|
|
1113
|
+
t,
|
|
1114
|
+
u,
|
|
1115
|
+
f,
|
|
1116
|
+
c,
|
|
1117
|
+
i,
|
|
1118
|
+
a,
|
|
1119
|
+
o,
|
|
1120
|
+
n,
|
|
1121
|
+
r
|
|
1122
|
+
]);
|
|
1123
|
+
N.current === null && (N.current = P);
|
|
1124
|
+
let te = _((e) => {
|
|
1125
|
+
M.current = e, typeof v == "function" ? v(e) : v && (v.current = e);
|
|
1126
|
+
}, [v]);
|
|
1127
|
+
return x(() => {
|
|
1128
|
+
let e = M.current, t = ee.current;
|
|
1129
|
+
if (!(!w || !e || !t || !N.current)) return k.register({
|
|
1130
|
+
id: j,
|
|
1131
|
+
host: e,
|
|
1132
|
+
blob: t,
|
|
1133
|
+
config: N.current
|
|
1134
|
+
});
|
|
1135
|
+
}, [
|
|
1136
|
+
k,
|
|
1137
|
+
j,
|
|
1138
|
+
w
|
|
1139
|
+
]), x(() => {
|
|
1140
|
+
k.update(j, P);
|
|
1141
|
+
}, [
|
|
1142
|
+
P,
|
|
1143
|
+
k,
|
|
1144
|
+
j
|
|
1145
|
+
]), y(() => {
|
|
1146
|
+
e === "move" && console.warn("[swimmer-ui] effect=\"move\" is not an item effect. Use <LiquidGroup motion=\"follow\"> for selection and progress.");
|
|
1147
|
+
}, [e]), x(() => {
|
|
1148
|
+
let e = M.current;
|
|
1149
|
+
if (!e) return;
|
|
1150
|
+
let t = e.firstElementChild;
|
|
1151
|
+
if (!t) return;
|
|
1152
|
+
let n = window.getComputedStyle(t), r = n.borderStyle !== "none" && n.borderWidth !== "0px" && n.borderWidth !== "", i = n.outlineStyle !== "none" && n.outlineWidth !== "0px" && n.outlineWidth !== "", a = n.boxShadow && n.boxShadow !== "none";
|
|
1153
|
+
(r || i || a) && console.warn("LiquidGroup.Item children should not have their own border, outline, or box-shadow. They exist on the content layer and will not merge with the liquid silhouette. Use the `stroke` and `shadow` props on <LiquidGroup> instead.");
|
|
1154
|
+
}, []), /* @__PURE__ */ D(T, { children: [/* @__PURE__ */ E("div", {
|
|
1155
|
+
...g,
|
|
1156
|
+
ref: te,
|
|
1157
|
+
className: Ve("game-ui-liquid-item", p),
|
|
1158
|
+
style: m,
|
|
1159
|
+
children: h
|
|
1160
|
+
}), w ? O(/* @__PURE__ */ E("path", {
|
|
1161
|
+
ref: ee,
|
|
1162
|
+
d: "",
|
|
1163
|
+
"data-liquid-gooey-blob": ""
|
|
1164
|
+
}), w) : null] });
|
|
1165
|
+
}), Ke = g(function(e, t) {
|
|
1166
|
+
return /* @__PURE__ */ E(Ge, {
|
|
1167
|
+
...e,
|
|
1168
|
+
ref: t
|
|
1169
|
+
});
|
|
1170
|
+
}), qe = g(function({ blur: t = 6, contrast: i = 18, gloss: a, fill: o = "var(--game-ui-surface, var(--game-ui-surface))", filterPadding: c = 24, shadow: l, stroke: d, waviness: f, wavinessFreq: p, wavinessClamp: m, motion: h = "auto", className: g, style: v, children: T, auxiliary: O, ...A }, j) {
|
|
1171
|
+
let M = C(null), [ee, N] = w(null), [P, te] = w({
|
|
1172
|
+
w: 0,
|
|
1173
|
+
h: 0
|
|
1174
|
+
}), [ne, re] = w({
|
|
1175
|
+
waviness: n.waviness,
|
|
1176
|
+
wavinessFreq: n.wavinessFreq
|
|
1177
|
+
}), [ie, ae] = w(0), F = C(0), I = u(), ce = h === "reduced" || I, [le, L] = w(ce ? "reduced" : "static"), R = Math.max(0, $(t, 6)), z = Math.max(1, $(i, 18)), B = Math.max(0, $(c, 24)), ue = Math.max(0, $(f ?? ne.waviness, n.waviness)), de = m !== !1 && Math.max(0, $(m ?? .3, oe)), V = se(ue, P.w > 0 && P.h > 0 ? Math.min(P.w, P.h) : 0, de), fe = Math.max(0, $(p ?? ne.wavinessFreq, n.wavinessFreq)), pe = ze(l, M.current), me = ze(d, M.current), H = S(() => Me(pe), [pe]), he = S(() => Ie(H), [H]), U = S(() => Fe(H), [H]), W = S(() => Ne(me), [me]), G = Math.ceil(R * 3 + B + Le(he) + (W ? W.width : 0) + V), K = C(G);
|
|
1178
|
+
K.current = G;
|
|
1179
|
+
let q = Math.ceil(G + ie), ge = C(q);
|
|
1180
|
+
ge.current = q;
|
|
1181
|
+
let J = `liquid-gooey-${Re(b())}`, _e = _((e) => {
|
|
1182
|
+
M.current = e, typeof j == "function" ? j(e) : j && (j.current = e);
|
|
1183
|
+
}, [j]), ve = _((e) => N(e), []);
|
|
1184
|
+
x(() => {
|
|
1185
|
+
let e = M.current;
|
|
1186
|
+
if (!e) return;
|
|
1187
|
+
let t = {
|
|
1188
|
+
waviness: Math.max(0, f === void 0 ? Be(k.waviness, e, n.waviness) : $(f, n.waviness)),
|
|
1189
|
+
wavinessFreq: Math.max(0, p === void 0 ? Be(k.wavinessFreq, e, n.wavinessFreq) : $(p, n.wavinessFreq))
|
|
1190
|
+
};
|
|
1191
|
+
re((e) => e.waviness === t.waviness && e.wavinessFreq === t.wavinessFreq ? e : t);
|
|
1192
|
+
}, [f, p]);
|
|
1193
|
+
let Y = S(() => new ke({
|
|
1194
|
+
getGroup: () => M.current,
|
|
1195
|
+
getFilterArea: () => {
|
|
1196
|
+
let e = M.current;
|
|
1197
|
+
return e ? (e.offsetWidth + (K.current + F.current) * 2) * (e.offsetHeight + (K.current + F.current) * 2) : 0;
|
|
1198
|
+
},
|
|
1199
|
+
onModeChange: L,
|
|
1200
|
+
onFeaturePaddingChange: (e) => {
|
|
1201
|
+
F.current = e, ae((t) => Math.abs(t - e) < .5 ? t : e);
|
|
1202
|
+
},
|
|
1203
|
+
follow: h === "follow"
|
|
1204
|
+
}), [h]);
|
|
1205
|
+
x(() => {
|
|
1206
|
+
let e = M.current;
|
|
1207
|
+
if (!e) return;
|
|
1208
|
+
let t = () => {
|
|
1209
|
+
let t = {
|
|
1210
|
+
w: e.offsetWidth,
|
|
1211
|
+
h: e.offsetHeight
|
|
1212
|
+
};
|
|
1213
|
+
te((e) => e.w === t.w && e.h === t.h ? e : t), Y.setFilterArea((t.w + ge.current * 2) * (t.h + ge.current * 2));
|
|
1214
|
+
};
|
|
1215
|
+
if (t(), typeof ResizeObserver > "u") return;
|
|
1216
|
+
let n = new ResizeObserver(t);
|
|
1217
|
+
return n.observe(e), () => n.disconnect();
|
|
1218
|
+
}, [Y, q]), y(() => {
|
|
1219
|
+
Y.setReducedMotion(ce);
|
|
1220
|
+
}, [Y, ce]), y(() => () => Y.dispose(), [Y]);
|
|
1221
|
+
let X = Math.max(1, P.w), ye = Math.max(1, P.h), be = Ve("game-ui-liquid-group", g);
|
|
1222
|
+
return /* @__PURE__ */ D("div", {
|
|
1223
|
+
...A,
|
|
1224
|
+
ref: _e,
|
|
1225
|
+
className: be,
|
|
1226
|
+
"data-liquid-filter-area": Math.round((P.w + q * 2) * (P.h + q * 2)),
|
|
1227
|
+
"data-liquid-filter-budget": e,
|
|
1228
|
+
"data-liquid-feature-padding": Math.round(ie * 10) / 10,
|
|
1229
|
+
"data-liquid-motion": le,
|
|
1230
|
+
"data-liquid-waviness": Math.round(V * 100) / 100,
|
|
1231
|
+
style: v,
|
|
1232
|
+
children: [
|
|
1233
|
+
/* @__PURE__ */ D("svg", {
|
|
1234
|
+
"aria-hidden": "true",
|
|
1235
|
+
className: "game-ui-liquid-silhouette",
|
|
1236
|
+
"data-liquid-gooey-silhouette": "",
|
|
1237
|
+
focusable: "false",
|
|
1238
|
+
style: U ? { filter: U } : void 0,
|
|
1239
|
+
viewBox: `0 0 ${X} ${ye}`,
|
|
1240
|
+
children: [
|
|
1241
|
+
/* @__PURE__ */ E("defs", { children: /* @__PURE__ */ E("filter", {
|
|
1242
|
+
colorInterpolationFilters: "sRGB",
|
|
1243
|
+
filterUnits: "userSpaceOnUse",
|
|
1244
|
+
height: ye + q * 2,
|
|
1245
|
+
id: J,
|
|
1246
|
+
width: X + q * 2,
|
|
1247
|
+
x: -q,
|
|
1248
|
+
y: -q,
|
|
1249
|
+
children: /* @__PURE__ */ E(s, {
|
|
1250
|
+
blur: R,
|
|
1251
|
+
contrast: z,
|
|
1252
|
+
gloss: a ?? r.gloss,
|
|
1253
|
+
shadows: he,
|
|
1254
|
+
stroke: W,
|
|
1255
|
+
waviness: V,
|
|
1256
|
+
wavinessFreq: fe
|
|
1257
|
+
})
|
|
1258
|
+
}) }),
|
|
1259
|
+
typeof o == "string" ? null : /* @__PURE__ */ E(He, {
|
|
1260
|
+
id: `${J}-fill`,
|
|
1261
|
+
fill: o
|
|
1262
|
+
}),
|
|
1263
|
+
/* @__PURE__ */ E("g", {
|
|
1264
|
+
ref: ve,
|
|
1265
|
+
fill: typeof o == "string" ? o : `url(#${J}-fill)`,
|
|
1266
|
+
filter: `url(#${J})`
|
|
1267
|
+
})
|
|
1268
|
+
]
|
|
1269
|
+
}),
|
|
1270
|
+
O?.(() => M.current),
|
|
1271
|
+
/* @__PURE__ */ E(Ue.Provider, {
|
|
1272
|
+
value: {
|
|
1273
|
+
portal: ee,
|
|
1274
|
+
engine: Y,
|
|
1275
|
+
follow: h === "follow"
|
|
1276
|
+
},
|
|
1277
|
+
children: /* @__PURE__ */ E("div", {
|
|
1278
|
+
className: "game-ui-liquid-content",
|
|
1279
|
+
children: T
|
|
1280
|
+
})
|
|
1281
|
+
})
|
|
1282
|
+
]
|
|
1283
|
+
});
|
|
1284
|
+
}), Je = Object.assign(g(function(e, t) {
|
|
1285
|
+
return /* @__PURE__ */ E(qe, {
|
|
1286
|
+
...e,
|
|
1287
|
+
ref: t
|
|
1288
|
+
});
|
|
1289
|
+
}), { Item: Ke });
|
|
1290
|
+
//#endregion
|
|
1291
|
+
export { j as _, F as a, M as b, le as c, re as d, k as f, P as g, N as h, Me as i, ae as l, A as m, qe as n, I as o, ne as p, Ge as r, R as s, Je as t, te as u, ee as v, ie as y };
|