@pieai/swimmer-ui-kit 2.14.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.
Files changed (848) hide show
  1. package/CHANGELOG.md +47 -1
  2. package/LICENSE +17 -20
  3. package/NOTICE +69 -36
  4. package/README.md +51 -162
  5. package/bin/lib/retired-theme.d.mts +2 -0
  6. package/bin/lib/retired-theme.mjs +58 -0
  7. package/bin/swimmer-ui-check.mjs +91 -16
  8. package/dist/GameStageTile-BcFCu22b.js +1554 -0
  9. package/dist/LiquidGroup-BXw1tv9H.js +1291 -0
  10. package/dist/fonts/zh/400-1f000.woff2 +0 -0
  11. package/dist/fonts/zh/400-1f200.woff2 +0 -0
  12. package/dist/fonts/zh/400-20000.woff2 +0 -0
  13. package/dist/fonts/zh/400-20600.woff2 +0 -0
  14. package/dist/fonts/zh/400-20c00.woff2 +0 -0
  15. package/dist/fonts/zh/400-21200.woff2 +0 -0
  16. package/dist/fonts/zh/400-21400.woff2 +0 -0
  17. package/dist/fonts/zh/400-22800.woff2 +0 -0
  18. package/dist/fonts/zh/400-23400.woff2 +0 -0
  19. package/dist/fonts/zh/400-23c00.woff2 +0 -0
  20. package/dist/fonts/zh/400-23e00.woff2 +0 -0
  21. package/dist/fonts/zh/400-24000.woff2 +0 -0
  22. package/dist/fonts/zh/400-24200.woff2 +0 -0
  23. package/dist/fonts/zh/400-24800.woff2 +0 -0
  24. package/dist/fonts/zh/400-24a00.woff2 +0 -0
  25. package/dist/fonts/zh/400-25400.woff2 +0 -0
  26. package/dist/fonts/zh/400-25a00.woff2 +0 -0
  27. package/dist/fonts/zh/400-25e00.woff2 +0 -0
  28. package/dist/fonts/zh/400-26200.woff2 +0 -0
  29. package/dist/fonts/zh/400-26400.woff2 +0 -0
  30. package/dist/fonts/zh/400-26600.woff2 +0 -0
  31. package/dist/fonts/zh/400-26800.woff2 +0 -0
  32. package/dist/fonts/zh/400-26a00.woff2 +0 -0
  33. package/dist/fonts/zh/400-26c00.woff2 +0 -0
  34. package/dist/fonts/zh/400-27800.woff2 +0 -0
  35. package/dist/fonts/zh/400-27e00.woff2 +0 -0
  36. package/dist/fonts/zh/400-28400.woff2 +0 -0
  37. package/dist/fonts/zh/400-28600.woff2 +0 -0
  38. package/dist/fonts/zh/400-28a00.woff2 +0 -0
  39. package/dist/fonts/zh/400-28c00.woff2 +0 -0
  40. package/dist/fonts/zh/400-28e00.woff2 +0 -0
  41. package/dist/fonts/zh/400-29600.woff2 +0 -0
  42. package/dist/fonts/zh/400-29800.woff2 +0 -0
  43. package/dist/fonts/zh/400-29e00.woff2 +0 -0
  44. package/dist/fonts/zh/400-2a600.woff2 +0 -0
  45. package/dist/fonts/zh/400-2a800.woff2 +0 -0
  46. package/dist/fonts/zh/400-2aa00.woff2 +0 -0
  47. package/dist/fonts/zh/400-2ae00.woff2 +0 -0
  48. package/dist/fonts/zh/400-2b000.woff2 +0 -0
  49. package/dist/fonts/zh/400-2b200.woff2 +0 -0
  50. package/dist/fonts/zh/400-2b400.woff2 +0 -0
  51. package/dist/fonts/zh/400-2b600.woff2 +0 -0
  52. package/dist/fonts/zh/400-2b800.woff2 +0 -0
  53. package/dist/fonts/zh/400-2ba00.woff2 +0 -0
  54. package/dist/fonts/zh/400-2bc00.woff2 +0 -0
  55. package/dist/fonts/zh/400-2be00.woff2 +0 -0
  56. package/dist/fonts/zh/400-2c000.woff2 +0 -0
  57. package/dist/fonts/zh/400-2c200.woff2 +0 -0
  58. package/dist/fonts/zh/400-2c400.woff2 +0 -0
  59. package/dist/fonts/zh/400-2c600.woff2 +0 -0
  60. package/dist/fonts/zh/400-2c800.woff2 +0 -0
  61. package/dist/fonts/zh/400-2ca00.woff2 +0 -0
  62. package/dist/fonts/zh/400-2cc00.woff2 +0 -0
  63. package/dist/fonts/zh/400-2ce00.woff2 +0 -0
  64. package/dist/fonts/zh/400-2d400.woff2 +0 -0
  65. package/dist/fonts/zh/400-2e00.woff2 +0 -0
  66. package/dist/fonts/zh/400-2f800.woff2 +0 -0
  67. package/dist/fonts/zh/400-3000.woff2 +0 -0
  68. package/dist/fonts/zh/400-3200.woff2 +0 -0
  69. package/dist/fonts/zh/400-3400.woff2 +0 -0
  70. package/dist/fonts/zh/400-3600.woff2 +0 -0
  71. package/dist/fonts/zh/400-3800.woff2 +0 -0
  72. package/dist/fonts/zh/400-3a00.woff2 +0 -0
  73. package/dist/fonts/zh/400-3c00.woff2 +0 -0
  74. package/dist/fonts/zh/400-3e00.woff2 +0 -0
  75. package/dist/fonts/zh/400-4000.woff2 +0 -0
  76. package/dist/fonts/zh/400-4200.woff2 +0 -0
  77. package/dist/fonts/zh/400-4400.woff2 +0 -0
  78. package/dist/fonts/zh/400-4600.woff2 +0 -0
  79. package/dist/fonts/zh/400-4800.woff2 +0 -0
  80. package/dist/fonts/zh/400-4a00.woff2 +0 -0
  81. package/dist/fonts/zh/400-4c00.woff2 +0 -0
  82. package/dist/fonts/zh/400-4e00.woff2 +0 -0
  83. package/dist/fonts/zh/400-5000.woff2 +0 -0
  84. package/dist/fonts/zh/400-5200.woff2 +0 -0
  85. package/dist/fonts/zh/400-5400.woff2 +0 -0
  86. package/dist/fonts/zh/400-5600.woff2 +0 -0
  87. package/dist/fonts/zh/400-5800.woff2 +0 -0
  88. package/dist/fonts/zh/400-5a00.woff2 +0 -0
  89. package/dist/fonts/zh/400-5c00.woff2 +0 -0
  90. package/dist/fonts/zh/400-5e00.woff2 +0 -0
  91. package/dist/fonts/zh/400-6000.woff2 +0 -0
  92. package/dist/fonts/zh/400-6200.woff2 +0 -0
  93. package/dist/fonts/zh/400-6400.woff2 +0 -0
  94. package/dist/fonts/zh/400-6600.woff2 +0 -0
  95. package/dist/fonts/zh/400-6800.woff2 +0 -0
  96. package/dist/fonts/zh/400-6a00.woff2 +0 -0
  97. package/dist/fonts/zh/400-6c00.woff2 +0 -0
  98. package/dist/fonts/zh/400-6e00.woff2 +0 -0
  99. package/dist/fonts/zh/400-7000.woff2 +0 -0
  100. package/dist/fonts/zh/400-7200.woff2 +0 -0
  101. package/dist/fonts/zh/400-7400.woff2 +0 -0
  102. package/dist/fonts/zh/400-7600.woff2 +0 -0
  103. package/dist/fonts/zh/400-7800.woff2 +0 -0
  104. package/dist/fonts/zh/400-7a00.woff2 +0 -0
  105. package/dist/fonts/zh/400-7c00.woff2 +0 -0
  106. package/dist/fonts/zh/400-7e00.woff2 +0 -0
  107. package/dist/fonts/zh/400-8000.woff2 +0 -0
  108. package/dist/fonts/zh/400-8200.woff2 +0 -0
  109. package/dist/fonts/zh/400-8400.woff2 +0 -0
  110. package/dist/fonts/zh/400-8600.woff2 +0 -0
  111. package/dist/fonts/zh/400-8800.woff2 +0 -0
  112. package/dist/fonts/zh/400-8a00.woff2 +0 -0
  113. package/dist/fonts/zh/400-8c00.woff2 +0 -0
  114. package/dist/fonts/zh/400-8e00.woff2 +0 -0
  115. package/dist/fonts/zh/400-9000.woff2 +0 -0
  116. package/dist/fonts/zh/400-9200.woff2 +0 -0
  117. package/dist/fonts/zh/400-9400.woff2 +0 -0
  118. package/dist/fonts/zh/400-9600.woff2 +0 -0
  119. package/dist/fonts/zh/400-9800.woff2 +0 -0
  120. package/dist/fonts/zh/400-9a00.woff2 +0 -0
  121. package/dist/fonts/zh/400-9c00.woff2 +0 -0
  122. package/dist/fonts/zh/400-9e00.woff2 +0 -0
  123. package/dist/fonts/zh/400-f800.woff2 +0 -0
  124. package/dist/fonts/zh/400-fa00.woff2 +0 -0
  125. package/dist/fonts/zh/400-fe00.woff2 +0 -0
  126. package/dist/fonts/zh/500-1f000.woff2 +0 -0
  127. package/dist/fonts/zh/500-1f200.woff2 +0 -0
  128. package/dist/fonts/zh/500-20000.woff2 +0 -0
  129. package/dist/fonts/zh/500-20600.woff2 +0 -0
  130. package/dist/fonts/zh/500-20c00.woff2 +0 -0
  131. package/dist/fonts/zh/500-21200.woff2 +0 -0
  132. package/dist/fonts/zh/500-21400.woff2 +0 -0
  133. package/dist/fonts/zh/500-22800.woff2 +0 -0
  134. package/dist/fonts/zh/500-23400.woff2 +0 -0
  135. package/dist/fonts/zh/500-23c00.woff2 +0 -0
  136. package/dist/fonts/zh/500-23e00.woff2 +0 -0
  137. package/dist/fonts/zh/500-24000.woff2 +0 -0
  138. package/dist/fonts/zh/500-24200.woff2 +0 -0
  139. package/dist/fonts/zh/500-24800.woff2 +0 -0
  140. package/dist/fonts/zh/500-24a00.woff2 +0 -0
  141. package/dist/fonts/zh/500-25400.woff2 +0 -0
  142. package/dist/fonts/zh/500-25a00.woff2 +0 -0
  143. package/dist/fonts/zh/500-25e00.woff2 +0 -0
  144. package/dist/fonts/zh/500-26200.woff2 +0 -0
  145. package/dist/fonts/zh/500-26400.woff2 +0 -0
  146. package/dist/fonts/zh/500-26600.woff2 +0 -0
  147. package/dist/fonts/zh/500-26800.woff2 +0 -0
  148. package/dist/fonts/zh/500-26a00.woff2 +0 -0
  149. package/dist/fonts/zh/500-26c00.woff2 +0 -0
  150. package/dist/fonts/zh/500-27800.woff2 +0 -0
  151. package/dist/fonts/zh/500-27e00.woff2 +0 -0
  152. package/dist/fonts/zh/500-28400.woff2 +0 -0
  153. package/dist/fonts/zh/500-28600.woff2 +0 -0
  154. package/dist/fonts/zh/500-28a00.woff2 +0 -0
  155. package/dist/fonts/zh/500-28c00.woff2 +0 -0
  156. package/dist/fonts/zh/500-28e00.woff2 +0 -0
  157. package/dist/fonts/zh/500-29600.woff2 +0 -0
  158. package/dist/fonts/zh/500-29800.woff2 +0 -0
  159. package/dist/fonts/zh/500-29e00.woff2 +0 -0
  160. package/dist/fonts/zh/500-2a600.woff2 +0 -0
  161. package/dist/fonts/zh/500-2a800.woff2 +0 -0
  162. package/dist/fonts/zh/500-2aa00.woff2 +0 -0
  163. package/dist/fonts/zh/500-2ae00.woff2 +0 -0
  164. package/dist/fonts/zh/500-2b000.woff2 +0 -0
  165. package/dist/fonts/zh/500-2b200.woff2 +0 -0
  166. package/dist/fonts/zh/500-2b400.woff2 +0 -0
  167. package/dist/fonts/zh/500-2b600.woff2 +0 -0
  168. package/dist/fonts/zh/500-2b800.woff2 +0 -0
  169. package/dist/fonts/zh/500-2ba00.woff2 +0 -0
  170. package/dist/fonts/zh/500-2bc00.woff2 +0 -0
  171. package/dist/fonts/zh/500-2be00.woff2 +0 -0
  172. package/dist/fonts/zh/500-2c000.woff2 +0 -0
  173. package/dist/fonts/zh/500-2c200.woff2 +0 -0
  174. package/dist/fonts/zh/500-2c400.woff2 +0 -0
  175. package/dist/fonts/zh/500-2c600.woff2 +0 -0
  176. package/dist/fonts/zh/500-2c800.woff2 +0 -0
  177. package/dist/fonts/zh/500-2ca00.woff2 +0 -0
  178. package/dist/fonts/zh/500-2cc00.woff2 +0 -0
  179. package/dist/fonts/zh/500-2ce00.woff2 +0 -0
  180. package/dist/fonts/zh/500-2d400.woff2 +0 -0
  181. package/dist/fonts/zh/500-2e00.woff2 +0 -0
  182. package/dist/fonts/zh/500-2f800.woff2 +0 -0
  183. package/dist/fonts/zh/500-3000.woff2 +0 -0
  184. package/dist/fonts/zh/500-3200.woff2 +0 -0
  185. package/dist/fonts/zh/500-3400.woff2 +0 -0
  186. package/dist/fonts/zh/500-3600.woff2 +0 -0
  187. package/dist/fonts/zh/500-3800.woff2 +0 -0
  188. package/dist/fonts/zh/500-3a00.woff2 +0 -0
  189. package/dist/fonts/zh/500-3c00.woff2 +0 -0
  190. package/dist/fonts/zh/500-3e00.woff2 +0 -0
  191. package/dist/fonts/zh/500-4000.woff2 +0 -0
  192. package/dist/fonts/zh/500-4200.woff2 +0 -0
  193. package/dist/fonts/zh/500-4400.woff2 +0 -0
  194. package/dist/fonts/zh/500-4600.woff2 +0 -0
  195. package/dist/fonts/zh/500-4800.woff2 +0 -0
  196. package/dist/fonts/zh/500-4a00.woff2 +0 -0
  197. package/dist/fonts/zh/500-4c00.woff2 +0 -0
  198. package/dist/fonts/zh/500-4e00.woff2 +0 -0
  199. package/dist/fonts/zh/500-5000.woff2 +0 -0
  200. package/dist/fonts/zh/500-5200.woff2 +0 -0
  201. package/dist/fonts/zh/500-5400.woff2 +0 -0
  202. package/dist/fonts/zh/500-5600.woff2 +0 -0
  203. package/dist/fonts/zh/500-5800.woff2 +0 -0
  204. package/dist/fonts/zh/500-5a00.woff2 +0 -0
  205. package/dist/fonts/zh/500-5c00.woff2 +0 -0
  206. package/dist/fonts/zh/500-5e00.woff2 +0 -0
  207. package/dist/fonts/zh/500-6000.woff2 +0 -0
  208. package/dist/fonts/zh/500-6200.woff2 +0 -0
  209. package/dist/fonts/zh/500-6400.woff2 +0 -0
  210. package/dist/fonts/zh/500-6600.woff2 +0 -0
  211. package/dist/fonts/zh/500-6800.woff2 +0 -0
  212. package/dist/fonts/zh/500-6a00.woff2 +0 -0
  213. package/dist/fonts/zh/500-6c00.woff2 +0 -0
  214. package/dist/fonts/zh/500-6e00.woff2 +0 -0
  215. package/dist/fonts/zh/500-7000.woff2 +0 -0
  216. package/dist/fonts/zh/500-7200.woff2 +0 -0
  217. package/dist/fonts/zh/500-7400.woff2 +0 -0
  218. package/dist/fonts/zh/500-7600.woff2 +0 -0
  219. package/dist/fonts/zh/500-7800.woff2 +0 -0
  220. package/dist/fonts/zh/500-7a00.woff2 +0 -0
  221. package/dist/fonts/zh/500-7c00.woff2 +0 -0
  222. package/dist/fonts/zh/500-7e00.woff2 +0 -0
  223. package/dist/fonts/zh/500-8000.woff2 +0 -0
  224. package/dist/fonts/zh/500-8200.woff2 +0 -0
  225. package/dist/fonts/zh/500-8400.woff2 +0 -0
  226. package/dist/fonts/zh/500-8600.woff2 +0 -0
  227. package/dist/fonts/zh/500-8800.woff2 +0 -0
  228. package/dist/fonts/zh/500-8a00.woff2 +0 -0
  229. package/dist/fonts/zh/500-8c00.woff2 +0 -0
  230. package/dist/fonts/zh/500-8e00.woff2 +0 -0
  231. package/dist/fonts/zh/500-9000.woff2 +0 -0
  232. package/dist/fonts/zh/500-9200.woff2 +0 -0
  233. package/dist/fonts/zh/500-9400.woff2 +0 -0
  234. package/dist/fonts/zh/500-9600.woff2 +0 -0
  235. package/dist/fonts/zh/500-9800.woff2 +0 -0
  236. package/dist/fonts/zh/500-9a00.woff2 +0 -0
  237. package/dist/fonts/zh/500-9c00.woff2 +0 -0
  238. package/dist/fonts/zh/500-9e00.woff2 +0 -0
  239. package/dist/fonts/zh/500-f800.woff2 +0 -0
  240. package/dist/fonts/zh/500-fa00.woff2 +0 -0
  241. package/dist/fonts/zh/500-fe00.woff2 +0 -0
  242. package/dist/fonts/zh/700-1f000.woff2 +0 -0
  243. package/dist/fonts/zh/700-1f200.woff2 +0 -0
  244. package/dist/fonts/zh/700-20000.woff2 +0 -0
  245. package/dist/fonts/zh/700-20600.woff2 +0 -0
  246. package/dist/fonts/zh/700-20c00.woff2 +0 -0
  247. package/dist/fonts/zh/700-21200.woff2 +0 -0
  248. package/dist/fonts/zh/700-21400.woff2 +0 -0
  249. package/dist/fonts/zh/700-22800.woff2 +0 -0
  250. package/dist/fonts/zh/700-23400.woff2 +0 -0
  251. package/dist/fonts/zh/700-23c00.woff2 +0 -0
  252. package/dist/fonts/zh/700-23e00.woff2 +0 -0
  253. package/dist/fonts/zh/700-24000.woff2 +0 -0
  254. package/dist/fonts/zh/700-24200.woff2 +0 -0
  255. package/dist/fonts/zh/700-24800.woff2 +0 -0
  256. package/dist/fonts/zh/700-24a00.woff2 +0 -0
  257. package/dist/fonts/zh/700-25400.woff2 +0 -0
  258. package/dist/fonts/zh/700-25a00.woff2 +0 -0
  259. package/dist/fonts/zh/700-25e00.woff2 +0 -0
  260. package/dist/fonts/zh/700-26200.woff2 +0 -0
  261. package/dist/fonts/zh/700-26400.woff2 +0 -0
  262. package/dist/fonts/zh/700-26600.woff2 +0 -0
  263. package/dist/fonts/zh/700-26800.woff2 +0 -0
  264. package/dist/fonts/zh/700-26a00.woff2 +0 -0
  265. package/dist/fonts/zh/700-26c00.woff2 +0 -0
  266. package/dist/fonts/zh/700-27800.woff2 +0 -0
  267. package/dist/fonts/zh/700-27e00.woff2 +0 -0
  268. package/dist/fonts/zh/700-28400.woff2 +0 -0
  269. package/dist/fonts/zh/700-28600.woff2 +0 -0
  270. package/dist/fonts/zh/700-28a00.woff2 +0 -0
  271. package/dist/fonts/zh/700-28c00.woff2 +0 -0
  272. package/dist/fonts/zh/700-28e00.woff2 +0 -0
  273. package/dist/fonts/zh/700-29600.woff2 +0 -0
  274. package/dist/fonts/zh/700-29800.woff2 +0 -0
  275. package/dist/fonts/zh/700-29e00.woff2 +0 -0
  276. package/dist/fonts/zh/700-2a600.woff2 +0 -0
  277. package/dist/fonts/zh/700-2a800.woff2 +0 -0
  278. package/dist/fonts/zh/700-2aa00.woff2 +0 -0
  279. package/dist/fonts/zh/700-2ae00.woff2 +0 -0
  280. package/dist/fonts/zh/700-2b000.woff2 +0 -0
  281. package/dist/fonts/zh/700-2b200.woff2 +0 -0
  282. package/dist/fonts/zh/700-2b400.woff2 +0 -0
  283. package/dist/fonts/zh/700-2b600.woff2 +0 -0
  284. package/dist/fonts/zh/700-2b800.woff2 +0 -0
  285. package/dist/fonts/zh/700-2ba00.woff2 +0 -0
  286. package/dist/fonts/zh/700-2bc00.woff2 +0 -0
  287. package/dist/fonts/zh/700-2be00.woff2 +0 -0
  288. package/dist/fonts/zh/700-2c000.woff2 +0 -0
  289. package/dist/fonts/zh/700-2c200.woff2 +0 -0
  290. package/dist/fonts/zh/700-2c400.woff2 +0 -0
  291. package/dist/fonts/zh/700-2c600.woff2 +0 -0
  292. package/dist/fonts/zh/700-2c800.woff2 +0 -0
  293. package/dist/fonts/zh/700-2ca00.woff2 +0 -0
  294. package/dist/fonts/zh/700-2cc00.woff2 +0 -0
  295. package/dist/fonts/zh/700-2ce00.woff2 +0 -0
  296. package/dist/fonts/zh/700-2d400.woff2 +0 -0
  297. package/dist/fonts/zh/700-2e00.woff2 +0 -0
  298. package/dist/fonts/zh/700-2f800.woff2 +0 -0
  299. package/dist/fonts/zh/700-3000.woff2 +0 -0
  300. package/dist/fonts/zh/700-3200.woff2 +0 -0
  301. package/dist/fonts/zh/700-3400.woff2 +0 -0
  302. package/dist/fonts/zh/700-3600.woff2 +0 -0
  303. package/dist/fonts/zh/700-3800.woff2 +0 -0
  304. package/dist/fonts/zh/700-3a00.woff2 +0 -0
  305. package/dist/fonts/zh/700-3c00.woff2 +0 -0
  306. package/dist/fonts/zh/700-3e00.woff2 +0 -0
  307. package/dist/fonts/zh/700-4000.woff2 +0 -0
  308. package/dist/fonts/zh/700-4200.woff2 +0 -0
  309. package/dist/fonts/zh/700-4400.woff2 +0 -0
  310. package/dist/fonts/zh/700-4600.woff2 +0 -0
  311. package/dist/fonts/zh/700-4800.woff2 +0 -0
  312. package/dist/fonts/zh/700-4a00.woff2 +0 -0
  313. package/dist/fonts/zh/700-4c00.woff2 +0 -0
  314. package/dist/fonts/zh/700-4e00.woff2 +0 -0
  315. package/dist/fonts/zh/700-5000.woff2 +0 -0
  316. package/dist/fonts/zh/700-5200.woff2 +0 -0
  317. package/dist/fonts/zh/700-5400.woff2 +0 -0
  318. package/dist/fonts/zh/700-5600.woff2 +0 -0
  319. package/dist/fonts/zh/700-5800.woff2 +0 -0
  320. package/dist/fonts/zh/700-5a00.woff2 +0 -0
  321. package/dist/fonts/zh/700-5c00.woff2 +0 -0
  322. package/dist/fonts/zh/700-5e00.woff2 +0 -0
  323. package/dist/fonts/zh/700-6000.woff2 +0 -0
  324. package/dist/fonts/zh/700-6200.woff2 +0 -0
  325. package/dist/fonts/zh/700-6400.woff2 +0 -0
  326. package/dist/fonts/zh/700-6600.woff2 +0 -0
  327. package/dist/fonts/zh/700-6800.woff2 +0 -0
  328. package/dist/fonts/zh/700-6a00.woff2 +0 -0
  329. package/dist/fonts/zh/700-6c00.woff2 +0 -0
  330. package/dist/fonts/zh/700-6e00.woff2 +0 -0
  331. package/dist/fonts/zh/700-7000.woff2 +0 -0
  332. package/dist/fonts/zh/700-7200.woff2 +0 -0
  333. package/dist/fonts/zh/700-7400.woff2 +0 -0
  334. package/dist/fonts/zh/700-7600.woff2 +0 -0
  335. package/dist/fonts/zh/700-7800.woff2 +0 -0
  336. package/dist/fonts/zh/700-7a00.woff2 +0 -0
  337. package/dist/fonts/zh/700-7c00.woff2 +0 -0
  338. package/dist/fonts/zh/700-7e00.woff2 +0 -0
  339. package/dist/fonts/zh/700-8000.woff2 +0 -0
  340. package/dist/fonts/zh/700-8200.woff2 +0 -0
  341. package/dist/fonts/zh/700-8400.woff2 +0 -0
  342. package/dist/fonts/zh/700-8600.woff2 +0 -0
  343. package/dist/fonts/zh/700-8800.woff2 +0 -0
  344. package/dist/fonts/zh/700-8a00.woff2 +0 -0
  345. package/dist/fonts/zh/700-8c00.woff2 +0 -0
  346. package/dist/fonts/zh/700-8e00.woff2 +0 -0
  347. package/dist/fonts/zh/700-9000.woff2 +0 -0
  348. package/dist/fonts/zh/700-9200.woff2 +0 -0
  349. package/dist/fonts/zh/700-9400.woff2 +0 -0
  350. package/dist/fonts/zh/700-9600.woff2 +0 -0
  351. package/dist/fonts/zh/700-9800.woff2 +0 -0
  352. package/dist/fonts/zh/700-9a00.woff2 +0 -0
  353. package/dist/fonts/zh/700-9c00.woff2 +0 -0
  354. package/dist/fonts/zh/700-9e00.woff2 +0 -0
  355. package/dist/fonts/zh/700-f800.woff2 +0 -0
  356. package/dist/fonts/zh/700-fa00.woff2 +0 -0
  357. package/dist/fonts/zh/700-fe00.woff2 +0 -0
  358. package/dist/fonts/zh/900-1f000.woff2 +0 -0
  359. package/dist/fonts/zh/900-1f200.woff2 +0 -0
  360. package/dist/fonts/zh/900-20000.woff2 +0 -0
  361. package/dist/fonts/zh/900-20600.woff2 +0 -0
  362. package/dist/fonts/zh/900-20c00.woff2 +0 -0
  363. package/dist/fonts/zh/900-21200.woff2 +0 -0
  364. package/dist/fonts/zh/900-21400.woff2 +0 -0
  365. package/dist/fonts/zh/900-22800.woff2 +0 -0
  366. package/dist/fonts/zh/900-23400.woff2 +0 -0
  367. package/dist/fonts/zh/900-23c00.woff2 +0 -0
  368. package/dist/fonts/zh/900-23e00.woff2 +0 -0
  369. package/dist/fonts/zh/900-24000.woff2 +0 -0
  370. package/dist/fonts/zh/900-24200.woff2 +0 -0
  371. package/dist/fonts/zh/900-24800.woff2 +0 -0
  372. package/dist/fonts/zh/900-24a00.woff2 +0 -0
  373. package/dist/fonts/zh/900-25400.woff2 +0 -0
  374. package/dist/fonts/zh/900-25a00.woff2 +0 -0
  375. package/dist/fonts/zh/900-25e00.woff2 +0 -0
  376. package/dist/fonts/zh/900-26200.woff2 +0 -0
  377. package/dist/fonts/zh/900-26400.woff2 +0 -0
  378. package/dist/fonts/zh/900-26600.woff2 +0 -0
  379. package/dist/fonts/zh/900-26800.woff2 +0 -0
  380. package/dist/fonts/zh/900-26a00.woff2 +0 -0
  381. package/dist/fonts/zh/900-26c00.woff2 +0 -0
  382. package/dist/fonts/zh/900-27800.woff2 +0 -0
  383. package/dist/fonts/zh/900-27e00.woff2 +0 -0
  384. package/dist/fonts/zh/900-28400.woff2 +0 -0
  385. package/dist/fonts/zh/900-28600.woff2 +0 -0
  386. package/dist/fonts/zh/900-28a00.woff2 +0 -0
  387. package/dist/fonts/zh/900-28c00.woff2 +0 -0
  388. package/dist/fonts/zh/900-28e00.woff2 +0 -0
  389. package/dist/fonts/zh/900-29600.woff2 +0 -0
  390. package/dist/fonts/zh/900-29800.woff2 +0 -0
  391. package/dist/fonts/zh/900-29e00.woff2 +0 -0
  392. package/dist/fonts/zh/900-2a600.woff2 +0 -0
  393. package/dist/fonts/zh/900-2a800.woff2 +0 -0
  394. package/dist/fonts/zh/900-2aa00.woff2 +0 -0
  395. package/dist/fonts/zh/900-2ae00.woff2 +0 -0
  396. package/dist/fonts/zh/900-2b000.woff2 +0 -0
  397. package/dist/fonts/zh/900-2b200.woff2 +0 -0
  398. package/dist/fonts/zh/900-2b400.woff2 +0 -0
  399. package/dist/fonts/zh/900-2b600.woff2 +0 -0
  400. package/dist/fonts/zh/900-2b800.woff2 +0 -0
  401. package/dist/fonts/zh/900-2ba00.woff2 +0 -0
  402. package/dist/fonts/zh/900-2bc00.woff2 +0 -0
  403. package/dist/fonts/zh/900-2be00.woff2 +0 -0
  404. package/dist/fonts/zh/900-2c000.woff2 +0 -0
  405. package/dist/fonts/zh/900-2c200.woff2 +0 -0
  406. package/dist/fonts/zh/900-2c400.woff2 +0 -0
  407. package/dist/fonts/zh/900-2c600.woff2 +0 -0
  408. package/dist/fonts/zh/900-2c800.woff2 +0 -0
  409. package/dist/fonts/zh/900-2ca00.woff2 +0 -0
  410. package/dist/fonts/zh/900-2cc00.woff2 +0 -0
  411. package/dist/fonts/zh/900-2ce00.woff2 +0 -0
  412. package/dist/fonts/zh/900-2d400.woff2 +0 -0
  413. package/dist/fonts/zh/900-2e00.woff2 +0 -0
  414. package/dist/fonts/zh/900-2f800.woff2 +0 -0
  415. package/dist/fonts/zh/900-3000.woff2 +0 -0
  416. package/dist/fonts/zh/900-3200.woff2 +0 -0
  417. package/dist/fonts/zh/900-3400.woff2 +0 -0
  418. package/dist/fonts/zh/900-3600.woff2 +0 -0
  419. package/dist/fonts/zh/900-3800.woff2 +0 -0
  420. package/dist/fonts/zh/900-3a00.woff2 +0 -0
  421. package/dist/fonts/zh/900-3c00.woff2 +0 -0
  422. package/dist/fonts/zh/900-3e00.woff2 +0 -0
  423. package/dist/fonts/zh/900-4000.woff2 +0 -0
  424. package/dist/fonts/zh/900-4200.woff2 +0 -0
  425. package/dist/fonts/zh/900-4400.woff2 +0 -0
  426. package/dist/fonts/zh/900-4600.woff2 +0 -0
  427. package/dist/fonts/zh/900-4800.woff2 +0 -0
  428. package/dist/fonts/zh/900-4a00.woff2 +0 -0
  429. package/dist/fonts/zh/900-4c00.woff2 +0 -0
  430. package/dist/fonts/zh/900-4e00.woff2 +0 -0
  431. package/dist/fonts/zh/900-5000.woff2 +0 -0
  432. package/dist/fonts/zh/900-5200.woff2 +0 -0
  433. package/dist/fonts/zh/900-5400.woff2 +0 -0
  434. package/dist/fonts/zh/900-5600.woff2 +0 -0
  435. package/dist/fonts/zh/900-5800.woff2 +0 -0
  436. package/dist/fonts/zh/900-5a00.woff2 +0 -0
  437. package/dist/fonts/zh/900-5c00.woff2 +0 -0
  438. package/dist/fonts/zh/900-5e00.woff2 +0 -0
  439. package/dist/fonts/zh/900-6000.woff2 +0 -0
  440. package/dist/fonts/zh/900-6200.woff2 +0 -0
  441. package/dist/fonts/zh/900-6400.woff2 +0 -0
  442. package/dist/fonts/zh/900-6600.woff2 +0 -0
  443. package/dist/fonts/zh/900-6800.woff2 +0 -0
  444. package/dist/fonts/zh/900-6a00.woff2 +0 -0
  445. package/dist/fonts/zh/900-6c00.woff2 +0 -0
  446. package/dist/fonts/zh/900-6e00.woff2 +0 -0
  447. package/dist/fonts/zh/900-7000.woff2 +0 -0
  448. package/dist/fonts/zh/900-7200.woff2 +0 -0
  449. package/dist/fonts/zh/900-7400.woff2 +0 -0
  450. package/dist/fonts/zh/900-7600.woff2 +0 -0
  451. package/dist/fonts/zh/900-7800.woff2 +0 -0
  452. package/dist/fonts/zh/900-7a00.woff2 +0 -0
  453. package/dist/fonts/zh/900-7c00.woff2 +0 -0
  454. package/dist/fonts/zh/900-7e00.woff2 +0 -0
  455. package/dist/fonts/zh/900-8000.woff2 +0 -0
  456. package/dist/fonts/zh/900-8200.woff2 +0 -0
  457. package/dist/fonts/zh/900-8400.woff2 +0 -0
  458. package/dist/fonts/zh/900-8600.woff2 +0 -0
  459. package/dist/fonts/zh/900-8800.woff2 +0 -0
  460. package/dist/fonts/zh/900-8a00.woff2 +0 -0
  461. package/dist/fonts/zh/900-8c00.woff2 +0 -0
  462. package/dist/fonts/zh/900-8e00.woff2 +0 -0
  463. package/dist/fonts/zh/900-9000.woff2 +0 -0
  464. package/dist/fonts/zh/900-9200.woff2 +0 -0
  465. package/dist/fonts/zh/900-9400.woff2 +0 -0
  466. package/dist/fonts/zh/900-9600.woff2 +0 -0
  467. package/dist/fonts/zh/900-9800.woff2 +0 -0
  468. package/dist/fonts/zh/900-9a00.woff2 +0 -0
  469. package/dist/fonts/zh/900-9c00.woff2 +0 -0
  470. package/dist/fonts/zh/900-9e00.woff2 +0 -0
  471. package/dist/fonts/zh/900-f800.woff2 +0 -0
  472. package/dist/fonts/zh/900-fa00.woff2 +0 -0
  473. package/dist/fonts/zh/900-fe00.woff2 +0 -0
  474. package/dist/fonts/zh/OFL.txt +98 -0
  475. package/dist/fonts/zh/font-faces.css +4176 -0
  476. package/dist/fonts/zh/manifest.json +3728 -0
  477. package/dist/fonts.css +1 -1
  478. package/dist/icon-paths.d.ts +247 -0
  479. package/dist/icon-paths.js +2 -0
  480. package/dist/index.d.ts +353 -1941
  481. package/dist/index.js +839 -9147
  482. package/dist/liquid-effects.d.ts +350 -0
  483. package/dist/liquid-effects.js +1318 -0
  484. package/dist/liquid-presence.css +1 -1
  485. package/dist/liquid-presence.d.ts +15 -3
  486. package/dist/liquid-presence.js +694 -662
  487. package/dist/paths-B7D0h7Mh.js +255 -0
  488. package/dist/preview.css +1 -1
  489. package/dist/preview.d.ts +24 -0
  490. package/dist/preview.js +1993 -0
  491. package/dist/reducedMotion-B8kv-v64.js +473 -0
  492. package/dist/styles.css +1 -1
  493. package/dist/tailwind.css +5 -3
  494. package/donors-individual.md +21 -2
  495. package/package.json +25 -9
  496. package/bin/swimmer-ui-assets.mjs +0 -83
  497. package/dist/assets/game/ui/clay/asset-manifest.json +0 -2823
  498. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-blue-large-v1.png +0 -0
  499. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-blue-large-v2.png +0 -0
  500. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-brown-large-v1.png +0 -0
  501. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-brown-large-v2.png +0 -0
  502. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-green-large-v1.png +0 -0
  503. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-green-large-v2.png +0 -0
  504. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-purple-large-v1.png +0 -0
  505. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-purple-large-v2.png +0 -0
  506. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-red-large-v1.png +0 -0
  507. package/dist/assets/game/ui/clay/phase03-clay-kit/buttons/button-red-large-v2.png +0 -0
  508. package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/common-icons-contact-sheet-v1.png +0 -0
  509. package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/component-candidates-contact-sheet-v1.png +0 -0
  510. package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/function-icons-contact-sheet-v1.png +0 -0
  511. package/dist/assets/game/ui/clay/phase03-clay-kit/catalog/phase03-clay-ui-catalog.json +0 -3476
  512. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/alert-v1.png +0 -0
  513. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/bar-v1.png +0 -0
  514. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/best-v1.png +0 -0
  515. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/check-off-v1.png +0 -0
  516. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/check-on-v1.png +0 -0
  517. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/count-v1.png +0 -0
  518. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/direction-v1.png +0 -0
  519. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/gauge-v1.png +0 -0
  520. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/hot-v1.png +0 -0
  521. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/label-2-v1.png +0 -0
  522. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/label-v1.png +0 -0
  523. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/loading-v1.png +0 -0
  524. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/mission-badge-v1.png +0 -0
  525. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/new-v1.png +0 -0
  526. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/page-arrow-next-v1.png +0 -0
  527. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/page-arrow-prev-v1.png +0 -0
  528. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/pagenavigation-v1.png +0 -0
  529. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/radiobtn-off-v1.png +0 -0
  530. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/radiobtn-on-v1.png +0 -0
  531. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/ribbon-2-v1.png +0 -0
  532. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/ribbon-v1.png +0 -0
  533. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/slidebar-dim-v1.png +0 -0
  534. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/stage-v1.png +0 -0
  535. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/switch-off-v1.png +0 -0
  536. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/switch-on-v1.png +0 -0
  537. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/tab-n-v1.png +0 -0
  538. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/tab-s-v1.png +0 -0
  539. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/top-v1.png +0 -0
  540. package/dist/assets/game/ui/clay/phase03-clay-kit/components/common/user-info-v1.png +0 -0
  541. package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/button-close-v1.png +0 -0
  542. package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/check-v1.png +0 -0
  543. package/dist/assets/game/ui/clay/phase03-clay-kit/components/language/language-v1.png +0 -0
  544. package/dist/assets/game/ui/clay/phase03-clay-kit/components/popup/popup-v1.png +0 -0
  545. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-blue-v1.png +0 -0
  546. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-brown-2-v1.png +0 -0
  547. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-brown-v1.png +0 -0
  548. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-facebook-v1.png +0 -0
  549. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/btn-green-v1.png +0 -0
  550. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/button-close-v1.png +0 -0
  551. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/common-popup-title-v1.png +0 -0
  552. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/language-v1.png +0 -0
  553. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/radio-btn-v1.png +0 -0
  554. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/slidebar-v1.png +0 -0
  555. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/switch-2-v1.png +0 -0
  556. package/dist/assets/game/ui/clay/phase03-clay-kit/components/settings/switch-v1.png +0 -0
  557. package/dist/assets/game/ui/clay/phase03-clay-kit/components/stage-lock/stage-lock-badge-v1.png +0 -0
  558. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/checkbox-checked-v1.png +0 -0
  559. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/anvil-v1.png +0 -0
  560. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/arrow-v1.png +0 -0
  561. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/bomb-v1.png +0 -0
  562. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/candle-v1.png +0 -0
  563. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/chicken-v1.png +0 -0
  564. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/crown-v1.png +0 -0
  565. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/energy-v1.png +0 -0
  566. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/envelope-v1.png +0 -0
  567. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gem-v1.png +0 -0
  568. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gift-blue-v1.png +0 -0
  569. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gift-red-v1.png +0 -0
  570. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/gold-v1.png +0 -0
  571. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/hammer-v1.png +0 -0
  572. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/horner-v1.png +0 -0
  573. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/horseshoes-v1.png +0 -0
  574. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/key-v1.png +0 -0
  575. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/laurel-v1.png +0 -0
  576. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/letter-v1.png +0 -0
  577. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/lock-v1.png +0 -0
  578. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/lucky-v1.png +0 -0
  579. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-bronze-v1.png +0 -0
  580. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-gold-v1.png +0 -0
  581. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/medal-silver-v1.png +0 -0
  582. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/mission-v1.png +0 -0
  583. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/pickax-v1.png +0 -0
  584. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/poition-red-v1.png +0 -0
  585. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/poiton-purple-v1.png +0 -0
  586. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/purplegem-v1.png +0 -0
  587. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sandglass-v1.png +0 -0
  588. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/scroll-v1.png +0 -0
  589. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/setting-v1.png +0 -0
  590. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-a-v1.png +0 -0
  591. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-b-v1.png +0 -0
  592. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-c-v1.png +0 -0
  593. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shield-d-v1.png +0 -0
  594. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/shop-v1.png +0 -0
  595. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/skull-v1.png +0 -0
  596. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/soulgem-v1.png +0 -0
  597. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sword-a-v1.png +0 -0
  598. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/sword-b-v1.png +0 -0
  599. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/talaria-v1.png +0 -0
  600. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/target-v1.png +0 -0
  601. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/timer-v1.png +0 -0
  602. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/treasure-v1.png +0 -0
  603. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/common/trophy-v1.png +0 -0
  604. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/account-v1.png +0 -0
  605. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/add-friend-v1.png +0 -0
  606. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/add-v1.png +0 -0
  607. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/align-v1.png +0 -0
  608. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/alram-v1.png +0 -0
  609. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/appstore-v1.png +0 -0
  610. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-down-v1.png +0 -0
  611. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-next-v1.png +0 -0
  612. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-prev-v1.png +0 -0
  613. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-up-v1.png +0 -0
  614. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/arrow-v1.png +0 -0
  615. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/asterisk-v1.png +0 -0
  616. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/attachment-v1.png +0 -0
  617. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ax-v1.png +0 -0
  618. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/back-v1.png +0 -0
  619. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bad-v1.png +0 -0
  620. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/badge-v1.png +0 -0
  621. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bank-v1.png +0 -0
  622. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/basket-v1.png +0 -0
  623. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/battle-v1.png +0 -0
  624. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bin-v1.png +0 -0
  625. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/binoculars-v1.png +0 -0
  626. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bitcoin-v1.png +0 -0
  627. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/block-v1.png +0 -0
  628. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bluetooth-v1.png +0 -0
  629. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bomb-v1.png +0 -0
  630. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/book-v1.png +0 -0
  631. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bookmark-add-v1.png +0 -0
  632. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bookmark-v1.png +0 -0
  633. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bottom-v1.png +0 -0
  634. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/brain-v1.png +0 -0
  635. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bug-v1.png +0 -0
  636. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/bulb-v1.png +0 -0
  637. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/calendar-v1.png +0 -0
  638. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/call-reject-v1.png +0 -0
  639. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/call-v1.png +0 -0
  640. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/camera-v1.png +0 -0
  641. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cancel-v1.png +0 -0
  642. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/card-v1.png +0 -0
  643. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cart-v1.png +0 -0
  644. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/category-v1.png +0 -0
  645. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/chat-v1.png +0 -0
  646. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/check-v1.png +0 -0
  647. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cloud-v1.png +0 -0
  648. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/cny-v1.png +0 -0
  649. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/coffee-v1.png +0 -0
  650. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/compass-v1.png +0 -0
  651. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/confirm-v1.png +0 -0
  652. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/contact-v1.png +0 -0
  653. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-next-v1.png +0 -0
  654. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-pause-v1.png +0 -0
  655. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-play-v1.png +0 -0
  656. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-prev-v1.png +0 -0
  657. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-stop-v1.png +0 -0
  658. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/control-v1.png +0 -0
  659. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/copy-v1.png +0 -0
  660. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/coupon-v1.png +0 -0
  661. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/crop-v1.png +0 -0
  662. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/crown-v1.png +0 -0
  663. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/defense-v1.png +0 -0
  664. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/delete-v1.png +0 -0
  665. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dislike-v1.png +0 -0
  666. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/document-v1.png +0 -0
  667. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dollar-v1.png +0 -0
  668. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/down-v1.png +0 -0
  669. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/download-v1.png +0 -0
  670. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/dynamite-v1.png +0 -0
  671. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/earth-v1.png +0 -0
  672. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/eat-v1.png +0 -0
  673. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/emoji-good-v1.png +0 -0
  674. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/emoji-soso-v1.png +0 -0
  675. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/energy-v1.png +0 -0
  676. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/exit-v1.png +0 -0
  677. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/expand-v1.png +0 -0
  678. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/export-v1.png +0 -0
  679. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/facebook-v1.png +0 -0
  680. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/feather-v1.png +0 -0
  681. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/filter-v1.png +0 -0
  682. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fingerprint-v1.png +0 -0
  683. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fire-v1.png +0 -0
  684. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/firm-v1.png +0 -0
  685. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/fix-v1.png +0 -0
  686. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flag-v1.png +0 -0
  687. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-01-v1.png +0 -0
  688. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-02-v1.png +0 -0
  689. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/flask-03-v1.png +0 -0
  690. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/folder-open-v1.png +0 -0
  691. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/folder-v1.png +0 -0
  692. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/game-v1.png +0 -0
  693. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gem-v1.png +0 -0
  694. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gender-fale-v1.png +0 -0
  695. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gender-female-v1.png +0 -0
  696. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gift-v1.png +0 -0
  697. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/globe-v1.png +0 -0
  698. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gmail-v1.png +0 -0
  699. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/gold-v1.png +0 -0
  700. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/googleplay-v1.png +0 -0
  701. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/graduation-v1.png +0 -0
  702. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/graph-v1.png +0 -0
  703. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hammer-v1.png +0 -0
  704. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hand-v1.png +0 -0
  705. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hashtag-v1.png +0 -0
  706. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/headset-v1.png +0 -0
  707. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/heart-empty-v1.png +0 -0
  708. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/heart-v1.png +0 -0
  709. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/helmet-v1.png +0 -0
  710. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/hide-v1.png +0 -0
  711. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/home-v1.png +0 -0
  712. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/key-v1.png +0 -0
  713. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/knowledge-v1.png +0 -0
  714. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/left-v1.png +0 -0
  715. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/like-v1.png +0 -0
  716. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/link-v1.png +0 -0
  717. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/list-v1.png +0 -0
  718. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/location-v1.png +0 -0
  719. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/lock-v1.png +0 -0
  720. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/magnetic-v1.png +0 -0
  721. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mail-read-v1.png +0 -0
  722. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mail-unread-v1.png +0 -0
  723. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/map-v1.png +0 -0
  724. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-caution-1-v1.png +0 -0
  725. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-caution-2-v1.png +0 -0
  726. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-info-1-v1.png +0 -0
  727. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-info-2-v1.png +0 -0
  728. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-question-1-v1.png +0 -0
  729. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mark-question-2-v1.png +0 -0
  730. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/medal-v1.png +0 -0
  731. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/media-v1.png +0 -0
  732. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/megaphone-v1.png +0 -0
  733. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/menu-v1.png +0 -0
  734. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/message-v1.png +0 -0
  735. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/minus-v1.png +0 -0
  736. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/mobile-v1.png +0 -0
  737. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/money-v1.png +0 -0
  738. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/more-v1.png +0 -0
  739. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/music-1-v1.png +0 -0
  740. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/music-2-v1.png +0 -0
  741. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/newpaper-v1.png +0 -0
  742. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/next-v1.png +0 -0
  743. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/notification-off-v1.png +0 -0
  744. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/notification-v1.png +0 -0
  745. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/paper-v1.png +0 -0
  746. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pc-v1.png +0 -0
  747. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pen-v1.png +0 -0
  748. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pencil-v1.png +0 -0
  749. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/percent-v1.png +0 -0
  750. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/photo-v1.png +0 -0
  751. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pick-v1.png +0 -0
  752. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/piechart-v1.png +0 -0
  753. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pinterest-v1.png +0 -0
  754. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/pinwheel-v1.png +0 -0
  755. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/planet-v1.png +0 -0
  756. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/player-v1.png +0 -0
  757. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/plus-v1.png +0 -0
  758. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/preferense-v1.png +0 -0
  759. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/prev-v1.png +0 -0
  760. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/printer-v1.png +0 -0
  761. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/quit-v1.png +0 -0
  762. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/random-v1.png +0 -0
  763. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ranking-v1.png +0 -0
  764. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/record-off-v1.png +0 -0
  765. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/record-v1.png +0 -0
  766. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/refresh-v1.png +0 -0
  767. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/reload-v1.png +0 -0
  768. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/remove-v1.png +0 -0
  769. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/reset-v1.png +0 -0
  770. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/right-v1.png +0 -0
  771. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ring-v1.png +0 -0
  772. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/safe-v1.png +0 -0
  773. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sandglass-v1.png +0 -0
  774. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/scan-v1.png +0 -0
  775. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/screwdriver-v1.png +0 -0
  776. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/search-v1.png +0 -0
  777. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/send-1-v1.png +0 -0
  778. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/send-2-v1.png +0 -0
  779. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/service-v1.png +0 -0
  780. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/setting-1-v1.png +0 -0
  781. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/setting-2-v1.png +0 -0
  782. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/share-v1.png +0 -0
  783. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/shop-v1.png +0 -0
  784. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/shopping-v1.png +0 -0
  785. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/show-v1.png +0 -0
  786. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sign-v1.png +0 -0
  787. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/siren-v1.png +0 -0
  788. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/skull-v1.png +0 -0
  789. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/skype-v1.png +0 -0
  790. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sort-v1.png +0 -0
  791. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sparkle-v1.png +0 -0
  792. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/speedmeter-v1.png +0 -0
  793. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/star-circle-v1.png +0 -0
  794. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/star-v1.png +0 -0
  795. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/stopwatch-v1.png +0 -0
  796. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/support-v1.png +0 -0
  797. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/sword-v1.png +0 -0
  798. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/tag-v1.png +0 -0
  799. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/target-v1.png +0 -0
  800. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/tent-v1.png +0 -0
  801. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/text-v1.png +0 -0
  802. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/thumbnails-v1.png +0 -0
  803. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/thunder-v1.png +0 -0
  804. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/time-v1.png +0 -0
  805. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/toolbox-v1.png +0 -0
  806. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/top-v1.png +0 -0
  807. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/treasure-v1.png +0 -0
  808. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/trophy-v1.png +0 -0
  809. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/twitter-v1.png +0 -0
  810. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/ufo-v1.png +0 -0
  811. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/unlock-v1.png +0 -0
  812. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/up-v1.png +0 -0
  813. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/upload-v1.png +0 -0
  814. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/user-v1.png +0 -0
  815. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/video-v1.png +0 -0
  816. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/volume-mute-v1.png +0 -0
  817. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/volume-v1.png +0 -0
  818. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/wallet-v1.png +0 -0
  819. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/warning-v1.png +0 -0
  820. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/water-v1.png +0 -0
  821. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/wifi-v1.png +0 -0
  822. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/youtube-v1.png +0 -0
  823. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/zoom-in-v1.png +0 -0
  824. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/function/zoom-out-v1.png +0 -0
  825. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-add-friend-v1.png +0 -0
  826. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-card-v1.png +0 -0
  827. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-check-v1.png +0 -0
  828. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-game-v1.png +0 -0
  829. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-refresh-v1.png +0 -0
  830. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-target-v1.png +0 -0
  831. package/dist/assets/game/ui/clay/phase03-clay-kit/icons/icon-user-v1.png +0 -0
  832. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-entered-v1.png +0 -0
  833. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-entered-v2.png +0 -0
  834. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-error-v1.png +0 -0
  835. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-error-v2.png +0 -0
  836. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-required-v1.png +0 -0
  837. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-required-v2.png +0 -0
  838. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-typing-v1.png +0 -0
  839. package/dist/assets/game/ui/clay/phase03-clay-kit/inputs/input-typing-v2.png +0 -0
  840. package/dist/assets/game/ui/clay/phase03-clay-kit/panels/popup-frame-v1.png +0 -0
  841. package/dist/assets/game/ui/clay/phase03-clay-kit/panels/settings-frame-v1.png +0 -0
  842. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/00_title-v1.png +0 -0
  843. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/01_login-v1.png +0 -0
  844. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/03_stage-v1.png +0 -0
  845. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/04_stageready-v1.png +0 -0
  846. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/05_complete-v1.png +0 -0
  847. package/dist/assets/game/ui/clay/phase03-clay-kit/screens/06_lose-v1.png +0 -0
  848. package/dist/liquidGooeySpring-r7c1S2ZB.js +0 -461
@@ -0,0 +1,1993 @@
1
+ "use client";
2
+ import { _ as e, b as t, d as n, f as r, g as i, h as a, i as o, l as s, m as c, p as l, t as u, u as d, v as ee, y as te } from "./LiquidGroup-BXw1tv9H.js";
3
+ import { C as f, D as p, E as ne, F as m, I as h, L as g, P as _, R as re, S as ie, T as v, _ as ae, a as y, b, c as oe, d as x, f as S, g as se, h as ce, i as le, l as ue, m as C, n as de, o as w, p as fe, r as T, s as pe, t as E, u as D, v as me, w as O, x as k, y as he, z as A } from "./GameStageTile-BcFCu22b.js";
4
+ import { f as j, i as M, m as N } from "./reducedMotion-B8kv-v64.js";
5
+ import { createContext as P, createElement as F, useContext as I, useEffect as L, useRef as R, useState as z } from "react";
6
+ import { Fragment as B, jsx as V, jsxs as H } from "react/jsx-runtime";
7
+ //#region src/preview/GameUiPreview/previewStates.ts
8
+ var U = [
9
+ {
10
+ id: "history-human-long",
11
+ kind: "human",
12
+ meta: "Round 2 · public table",
13
+ speaker: "Mika",
14
+ text: "This answer feels rehearsed because it names every possibility but never risks a real preference."
15
+ },
16
+ {
17
+ id: "history-zh-long",
18
+ kind: "mystery",
19
+ meta: "第 2 局 · 桌边发言",
20
+ speaker: "Noa",
21
+ text: "这段回答太顺了,像是在把所有安全选项都摆出来,却故意不留下能被追问的破绽。"
22
+ },
23
+ {
24
+ id: "history-system",
25
+ kind: "system",
26
+ meta: "Reveal soon",
27
+ speaker: "Table",
28
+ text: "Three votes are locked. One more read can still change the pact."
29
+ }
30
+ ], W = {
31
+ en: {
32
+ triggerLabel: "EN",
33
+ langMenuLabel: "Preview language",
34
+ heroTitle: "Flat game UI kit",
35
+ heroBody: "React 19 + TypeScript UI with standard CSS. Flat droplet controls, one liquid main action, and inline line icons. Product state and language remain host-owned.",
36
+ sections: {
37
+ tokens: "Tokens",
38
+ icons: "Line icons",
39
+ typography: "Typography scale",
40
+ components: "Component surface",
41
+ forms: "Forms, inputs and status",
42
+ overlayGlass: "Overlay glass HUD",
43
+ liquid: "Liquid surface",
44
+ liquidMetal: "Liquid metal CTA",
45
+ firstSession: "First-session shell",
46
+ responsive: "Responsive proof targets"
47
+ },
48
+ tokenGroups: {
49
+ colors: "colors",
50
+ semantic: "semantic",
51
+ typography: "typography",
52
+ spacing: "spacing",
53
+ radius: "radius",
54
+ scrollbars: "scrollbars",
55
+ elevation: "elevation",
56
+ motion: "motion",
57
+ overlayGlass: "overlay glass",
58
+ liquidMetal: "liquid metal",
59
+ liquidGooey: "liquid gooey Move",
60
+ layers: "layers",
61
+ targets: "targets",
62
+ assetSizing: "asset sizing"
63
+ },
64
+ iconsIntro: "48 semantic names, one inline SVG line family. Icons inherit text colour; sizes are 16, 20 and 24 pixels. No image requests or initialization.",
65
+ tiles: {
66
+ daily: {
67
+ badge: "solo",
68
+ kicker: "Daily",
69
+ title: "Daily Turing Challenge",
70
+ summary: "Read one case, pick the AI, share the result."
71
+ },
72
+ portal: {
73
+ badge: "free guests",
74
+ kicker: "Portal",
75
+ title: "Tavern Portal",
76
+ summary: "Enter a code, resume a table, or open your own."
77
+ },
78
+ host: {
79
+ kicker: "Host Gate",
80
+ title: "Open my own table",
81
+ summary: "Only hosts see account and battery checks. Guests never do."
82
+ }
83
+ },
84
+ forms: {
85
+ formsTitle: "Join a table",
86
+ roomCodeLabel: "Room code",
87
+ roomCodeHint: "Ask the host for the 6-character code.",
88
+ roomCodePlaceholder: "74X8VB",
89
+ nameLabel: "Display name",
90
+ namePlaceholder: "How should the table see you?",
91
+ readLabel: "Your read",
92
+ readPlaceholder: "Type why this one feels human…",
93
+ readError: "A read needs at least a few words.",
94
+ rememberLabel: "Remember me on this device",
95
+ displayTitle: "Players and status",
96
+ revealLabel: "Reveal countdown",
97
+ batteryLabel: "Batteries",
98
+ emptyTitle: "No open tables yet",
99
+ emptyBody: "Be the first to host. Guests join free through your invite.",
100
+ emptyCta: "Open my own table",
101
+ guestName: "Guest 74"
102
+ },
103
+ type: {
104
+ kicker: "Round status",
105
+ h1: "One of us isn’t.",
106
+ h2: "Read the table, vote, reveal.",
107
+ body: "Flat UI text remains DOM-rendered for localization and accessibility while the game world stays visible underneath.",
108
+ small: "Reduced-motion keeps texture, shadow, and hierarchy but removes non-essential movement."
109
+ },
110
+ buttons: {
111
+ panelTitle: "Buttons and controls",
112
+ openTable: "Open my own table",
113
+ useCode: "Use room code",
114
+ continueHost: "Continue as host",
115
+ readyUp: "Ready up",
116
+ leaveTable: "Leave table",
117
+ waiting: "Waiting",
118
+ settingsTip: "Compact settings affordance",
119
+ copyInvite: "Copy invite",
120
+ aiBadge: "AI?",
121
+ readyBadge: "Ready",
122
+ hostGateBadge: "Host gate",
123
+ segmentedLabel: "Preview mode",
124
+ segDaily: "Daily",
125
+ segLive: "Live room",
126
+ segTokens: "Tokens",
127
+ tabsPortal: "Portal",
128
+ tabsVote: "Vote",
129
+ tabsHistory: "History",
130
+ radialLabel: "Emote wheel",
131
+ wave: "Wave",
132
+ think: "Think",
133
+ doubt: "Doubt",
134
+ sliderLabel: "Effects volume",
135
+ toggleLabel: "Sound on"
136
+ },
137
+ liquid: {
138
+ body: "The brand’s own surface. `surface=\"liquid\"` is a second axis on GameButton, not a variant — tone still says what the action means, so a destructive action can be liquid too. The silhouette behind is what deforms; the real button never does, so the hit target, the focus ring and the text stay exactly where they were. Press one.",
139
+ surfacesTitle: "Flat and liquid, same tone",
140
+ disabledTitle: "Disabled",
141
+ disabledBody: "A disabled control drops the liquid entirely. Liquid is how this kit says “press me”, and putting that on something that cannot be pressed is a lie told loudly.",
142
+ moreTitle: "The rest of the vocabulary",
143
+ moreBody: "Twelve named forms, each a measured bundle of blur, contrast, outline, spring and shadow — a behaviour to pick rather than a physics configuration to tune. They live on their own page now, with every form live at two sizes, on every tone, and its knobs written out beside it.",
144
+ moreLink: "Open the Liquid page",
145
+ press: "hold to press"
146
+ },
147
+ liquidMetal: {
148
+ body: "For the few screens that take money or a yes: checkout, sign-up, badge unlock, landing CTA. Not for reading, queues, or the map — a moving rim is a tax you pay every glance, and the aesthetic-usability effect is strongest in the first seconds. More than two of these on a page means the page is the wrong place.",
149
+ cssTitle: "CSS renderer · zero WebGL context",
150
+ webglTitle: "WebGL renderer · when the budget allows",
151
+ cta: "Become a member"
152
+ },
153
+ hud: {
154
+ label: "Persistent HUD cluster",
155
+ youAre: "You are",
156
+ roleValue: "Resistance",
157
+ rolePrivate: "private",
158
+ room: "Room",
159
+ reveal: "Reveal",
160
+ tools: "HUD tools",
161
+ history: "History",
162
+ settings: "Settings",
163
+ calloutA: "Too perfect.",
164
+ calloutB: "Maybe.",
165
+ emote: "😀 Emote",
166
+ sendRead: "Send read"
167
+ },
168
+ modals: {
169
+ dialogTitle: "Host Gate",
170
+ dialogBody: "Open your own table as host. Guests join free through your invite link or code.",
171
+ actionsLabel: "Host gate actions",
172
+ confirm: "Confirm host table",
173
+ back: "Back to Portal",
174
+ panelTitle: "Toast / loading / error",
175
+ toastOk: "Seat confirmed. Waiting for the table host.",
176
+ toastErr: "That room code expired. Ask for a fresh Portal link.",
177
+ loading: "Opening the tavern portal…",
178
+ loadingErr: "The portal could not reach the tavern."
179
+ },
180
+ firstSession: {
181
+ controls: "First session controls",
182
+ emote: "Emote",
183
+ goalLabel: "Goal",
184
+ goalValue: "Find the AI",
185
+ streak: "Daily",
186
+ guest: "guest",
187
+ history: "History",
188
+ hud: "First session HUD",
189
+ input: "Type a read",
190
+ moveBadge: "Move",
191
+ move: "Drag to inspect the table",
192
+ roomLabel: "Room",
193
+ roomValue: "Portal",
194
+ roleLabel: "Role",
195
+ roleValue: "Guest",
196
+ settings: "Settings",
197
+ shell: "First session shell",
198
+ timerLabel: "Timer",
199
+ tools: "Player tools",
200
+ wardrobe: "Wardrobe",
201
+ playerName: "Guest 74",
202
+ obBadge: "First table",
203
+ obBody: "The package keeps onboarding copy injectable so the host app owns product language and routing.",
204
+ obSkip: "Skip",
205
+ obStart: "Start playing",
206
+ obTitle: "Learn the table in 30 seconds",
207
+ obMoveT: "Move",
208
+ obMoveB: "Look around the flat table.",
209
+ obReadT: "Read",
210
+ obReadB: "Notice who sounds too clean.",
211
+ obVoteT: "Vote",
212
+ obVoteB: "Lock your guess before reveal."
213
+ },
214
+ responsive: {
215
+ desktop: "desktop",
216
+ mobileLandscape: "mobile landscape"
217
+ },
218
+ historyLabel: "Round history",
219
+ history: U
220
+ },
221
+ "zh-CN": {
222
+ triggerLabel: "中",
223
+ langMenuLabel: "预览语言",
224
+ heroTitle: "平面水滴游戏 UI 套件",
225
+ heroBody: "React 19 + TypeScript 组件与标准 CSS。普通控件是平面水滴,主操作是液体,图标是内联线条;产品状态和语言仍由宿主负责。",
226
+ sections: {
227
+ tokens: "设计令牌",
228
+ icons: "线条图标",
229
+ typography: "字号层级",
230
+ components: "组件总览",
231
+ forms: "表单、输入与状态",
232
+ overlayGlass: "叠加玻璃 HUD",
233
+ liquid: "液体表面",
234
+ liquidMetal: "液态金属 CTA",
235
+ firstSession: "首次会话外壳",
236
+ responsive: "响应式验证目标"
237
+ },
238
+ tokenGroups: {
239
+ colors: "颜色",
240
+ semantic: "语义",
241
+ typography: "字体",
242
+ spacing: "间距",
243
+ radius: "圆角",
244
+ scrollbars: "滚动条",
245
+ elevation: "阴影",
246
+ motion: "动效",
247
+ overlayGlass: "叠加玻璃",
248
+ liquidMetal: "液态金属",
249
+ liquidGooey: "液态胶 Move",
250
+ layers: "层级",
251
+ targets: "触控目标",
252
+ assetSizing: "资源尺寸"
253
+ },
254
+ iconsIntro: "48 个语义名字,一套内联 SVG 线条。颜色跟随文字,尺寸为 16、20、24 像素,不加载图片,也不需要初始化。",
255
+ tiles: {
256
+ daily: {
257
+ badge: "单人",
258
+ kicker: "每日",
259
+ title: "每日图灵挑战",
260
+ summary: "读一个案例,指认 AI,分享结果。"
261
+ },
262
+ portal: {
263
+ badge: "免费加入",
264
+ kicker: "传送门",
265
+ title: "酒馆传送门",
266
+ summary: "输入房号、恢复牌桌,或自己开一桌。"
267
+ },
268
+ host: {
269
+ kicker: "房主门槛",
270
+ title: "开我自己的牌桌",
271
+ summary: "只有房主看到账号与电量校验,客人永远看不到。"
272
+ }
273
+ },
274
+ forms: {
275
+ formsTitle: "加入牌桌",
276
+ roomCodeLabel: "房间号",
277
+ roomCodeHint: "向房主要 6 位房间号。",
278
+ roomCodePlaceholder: "74X8VB",
279
+ nameLabel: "显示昵称",
280
+ namePlaceholder: "牌桌上别人怎么称呼你?",
281
+ readLabel: "你的判断",
282
+ readPlaceholder: "说说为什么觉得这个是真人…",
283
+ readError: "判断至少要写几个字。",
284
+ rememberLabel: "在此设备上记住我",
285
+ displayTitle: "玩家与状态",
286
+ revealLabel: "揭晓倒计时",
287
+ batteryLabel: "电量",
288
+ emptyTitle: "还没有开放的牌桌",
289
+ emptyBody: "来当第一个房主吧。客人通过你的邀请免费加入。",
290
+ emptyCta: "开我自己的牌桌",
291
+ guestName: "访客 74"
292
+ },
293
+ type: {
294
+ kicker: "回合状态",
295
+ h1: "我们之中有\"假\"的。",
296
+ h2: "读牌桌、投票、揭晓。",
297
+ body: "平面水滴 UI 文字始终由 DOM 渲染,方便本地化与无障碍,而游戏世界仍透在下方可见。",
298
+ small: "降低动效会保留质感、阴影与层次,只去掉非必要的运动。"
299
+ },
300
+ buttons: {
301
+ panelTitle: "按钮与控件",
302
+ openTable: "开我自己的牌桌",
303
+ useCode: "用房间号",
304
+ continueHost: "以房主继续",
305
+ readyUp: "准备就绪",
306
+ leaveTable: "离开牌桌",
307
+ waiting: "等待中",
308
+ settingsTip: "紧凑的设置入口",
309
+ copyInvite: "复制邀请",
310
+ aiBadge: "AI?",
311
+ readyBadge: "就绪",
312
+ hostGateBadge: "房主门槛",
313
+ segmentedLabel: "预览模式",
314
+ segDaily: "每日",
315
+ segLive: "在线房",
316
+ segTokens: "令牌",
317
+ tabsPortal: "传送门",
318
+ tabsVote: "投票",
319
+ tabsHistory: "历史",
320
+ radialLabel: "表情轮盘",
321
+ wave: "挥手",
322
+ think: "思考",
323
+ doubt: "怀疑",
324
+ sliderLabel: "音效音量",
325
+ toggleLabel: "声音开"
326
+ },
327
+ liquid: {
328
+ body: "品牌自己的表面。`surface=\"liquid\"` 是 GameButton 上的第二个轴,不是一种 variant——色调仍然负责说明这个动作是什么意思,所以危险动作也可以是液体的。变形的是后面那层轮廓,真正的按钮从不变形,点击区、焦点环和文字都停在原地。按一下试试。",
329
+ surfacesTitle: "同一色调,扁平与液体",
330
+ disabledTitle: "禁用",
331
+ disabledBody: "禁用的控件完全不穿液体。液体是这套 UI 说「按我」的方式,把这句话放在按不动的东西上,是大声说一句假话。",
332
+ moreTitle: "词汇表的其余部分",
333
+ moreBody: "十二个命名形态,每一个都是一组实测过的 blur / contrast / 外形 / 弹簧 / 阴影——挑的是一种行为,不是一组物理参数。它们现在有自己的页面:每个形态都是活的,两种尺寸、每一种色调,旋钮就写在旁边。",
334
+ moreLink: "打开液体页",
335
+ press: "按住看看"
336
+ },
337
+ liquidMetal: {
338
+ body: "只用在掏钱或拍板的那几屏:付款、注册、徽章解锁、落地页主按钮。阅读、复习队列、3D 地图一个都不要加——会流动的边框在干活面上是每一次都要付的税。美观可用性效应在第一印象最强、随使用次数衰减。一页出现两个以上,就是用错了地方。",
339
+ cssTitle: "CSS 渲染器 · 零 WebGL 上下文",
340
+ webglTitle: "WebGL 渲染器 · 预算允许时",
341
+ cta: "成为会员"
342
+ },
343
+ hud: {
344
+ label: "常驻 HUD 集群",
345
+ youAre: "你的身份",
346
+ roleValue: "反抗军",
347
+ rolePrivate: "私密",
348
+ room: "房间",
349
+ reveal: "揭晓",
350
+ tools: "HUD 工具",
351
+ history: "历史",
352
+ settings: "设置",
353
+ calloutA: "太完美了。",
354
+ calloutB: "也许吧。",
355
+ emote: "😀 表情",
356
+ sendRead: "发送判断"
357
+ },
358
+ modals: {
359
+ dialogTitle: "房主门槛",
360
+ dialogBody: "以房主身份开自己的牌桌。客人通过你的邀请链接或房号免费加入。",
361
+ actionsLabel: "房主门槛操作",
362
+ confirm: "确认开桌",
363
+ back: "返回传送门",
364
+ panelTitle: "提示 / 加载 / 错误",
365
+ toastOk: "座位已确认,正在等待房主。",
366
+ toastErr: "该房号已过期,请向房主要新的传送门链接。",
367
+ loading: "正在开启酒馆传送门…",
368
+ loadingErr: "传送门无法连到酒馆。"
369
+ },
370
+ firstSession: {
371
+ controls: "首次会话控件",
372
+ emote: "表情",
373
+ goalLabel: "目标",
374
+ goalValue: "找出 AI",
375
+ streak: "连续",
376
+ guest: "访客",
377
+ history: "历史",
378
+ hud: "首次会话 HUD",
379
+ input: "输入判断",
380
+ moveBadge: "移动",
381
+ move: "拖动以查看牌桌",
382
+ roomLabel: "房间",
383
+ roomValue: "传送门",
384
+ roleLabel: "身份",
385
+ roleValue: "客人",
386
+ settings: "设置",
387
+ shell: "首次会话外壳",
388
+ timerLabel: "计时",
389
+ tools: "玩家工具",
390
+ wardrobe: "衣橱",
391
+ playerName: "访客 74",
392
+ obBadge: "第一桌",
393
+ obBody: "套件让引导文案可注入,所以由宿主 App 掌管产品语言与路由。",
394
+ obSkip: "跳过",
395
+ obStart: "开始游戏",
396
+ obTitle: "30 秒学会这一桌",
397
+ obMoveT: "移动",
398
+ obMoveB: "环顾这张平面水滴牌桌。",
399
+ obReadT: "研判",
400
+ obReadB: "留意谁说得太干净。",
401
+ obVoteT: "投票",
402
+ obVoteB: "揭晓前锁定你的判断。"
403
+ },
404
+ responsive: {
405
+ desktop: "桌面",
406
+ mobileLandscape: "手机横屏"
407
+ },
408
+ historyLabel: "回合历史",
409
+ history: [
410
+ {
411
+ id: "history-human-long",
412
+ kind: "human",
413
+ meta: "第 2 局 · 公开桌",
414
+ speaker: "Mika",
415
+ text: "这个回答像背稿——把每种可能都点了一遍,却从不押一个真实的偏好。"
416
+ },
417
+ {
418
+ id: "history-zh-long",
419
+ kind: "mystery",
420
+ meta: "第 2 局 · 桌边发言",
421
+ speaker: "Noa",
422
+ text: "这段回答太顺了,像是在把所有安全选项都摆出来,却故意不留下能被追问的破绽。"
423
+ },
424
+ {
425
+ id: "history-system",
426
+ kind: "system",
427
+ meta: "即将揭晓",
428
+ speaker: "牌桌",
429
+ text: "三票已锁定。再读一轮,仍可能改写这份密约。"
430
+ }
431
+ ]
432
+ }
433
+ }, G = P(W.en), K = () => I(G);
434
+ //#endregion
435
+ //#region src/preview/GameUiPreview/sections/ButtonStates.tsx
436
+ function ge() {
437
+ let { buttons: e } = K();
438
+ return /* @__PURE__ */ H(y, {
439
+ title: e.panelTitle,
440
+ tone: "strong",
441
+ children: [
442
+ /* @__PURE__ */ H("div", {
443
+ className: "game-ui-component-row",
444
+ children: [
445
+ /* @__PURE__ */ V(p, {
446
+ variant: "primary",
447
+ children: e.openTable
448
+ }),
449
+ /* @__PURE__ */ V(p, {
450
+ variant: "secondary",
451
+ children: e.useCode
452
+ }),
453
+ /* @__PURE__ */ V(p, {
454
+ variant: "ghost",
455
+ children: e.continueHost
456
+ }),
457
+ /* @__PURE__ */ V(p, {
458
+ variant: "success",
459
+ children: e.readyUp
460
+ }),
461
+ /* @__PURE__ */ V(p, {
462
+ variant: "danger",
463
+ children: e.leaveTable
464
+ }),
465
+ /* @__PURE__ */ V(p, {
466
+ disabled: !0,
467
+ variant: "secondary",
468
+ children: e.waiting
469
+ })
470
+ ]
471
+ }),
472
+ /* @__PURE__ */ H("div", {
473
+ className: "game-ui-component-row",
474
+ children: [
475
+ /* @__PURE__ */ V(ue, {
476
+ label: e.settingsTip,
477
+ children: /* @__PURE__ */ V(O, {
478
+ label: e.settingsTip,
479
+ children: /* @__PURE__ */ V(k, {
480
+ icon: "settings",
481
+ size: "sm"
482
+ })
483
+ })
484
+ }),
485
+ /* @__PURE__ */ V(O, {
486
+ label: e.copyInvite,
487
+ children: /* @__PURE__ */ V(k, {
488
+ icon: "copy",
489
+ size: "sm"
490
+ })
491
+ }),
492
+ /* @__PURE__ */ V(C, {
493
+ tone: "ai",
494
+ children: e.aiBadge
495
+ }),
496
+ /* @__PURE__ */ V(C, {
497
+ tone: "success",
498
+ children: e.readyBadge
499
+ }),
500
+ /* @__PURE__ */ V(C, {
501
+ tone: "warning",
502
+ children: e.hostGateBadge
503
+ })
504
+ ]
505
+ }),
506
+ /* @__PURE__ */ V(he, {
507
+ activeId: "live",
508
+ label: e.segmentedLabel,
509
+ options: [
510
+ {
511
+ id: "daily",
512
+ label: e.segDaily
513
+ },
514
+ {
515
+ id: "live",
516
+ label: e.segLive
517
+ },
518
+ {
519
+ id: "tokens",
520
+ label: e.segTokens
521
+ }
522
+ ]
523
+ }),
524
+ /* @__PURE__ */ V(ae, {
525
+ activeId: "portal",
526
+ tabs: [
527
+ {
528
+ id: "portal",
529
+ label: e.tabsPortal
530
+ },
531
+ {
532
+ id: "vote",
533
+ label: e.tabsVote
534
+ },
535
+ {
536
+ id: "history",
537
+ label: e.tabsHistory
538
+ }
539
+ ]
540
+ }),
541
+ /* @__PURE__ */ V(de, {
542
+ items: [
543
+ {
544
+ id: "wave",
545
+ label: e.wave
546
+ },
547
+ {
548
+ id: "think",
549
+ label: e.think
550
+ },
551
+ {
552
+ id: "doubt",
553
+ label: e.doubt
554
+ }
555
+ ],
556
+ label: e.radialLabel
557
+ }),
558
+ /* @__PURE__ */ V(me, {
559
+ label: e.sliderLabel,
560
+ max: 100,
561
+ min: 0,
562
+ value: 68
563
+ }),
564
+ /* @__PURE__ */ V(ce, {
565
+ checked: !0,
566
+ label: e.toggleLabel
567
+ })
568
+ ]
569
+ });
570
+ }
571
+ //#endregion
572
+ //#region src/preview/GameUiPreview/sections/FirstSessionSamples.tsx
573
+ function _e() {
574
+ let { firstSession: e } = K();
575
+ return /* @__PURE__ */ H("div", {
576
+ className: "game-ui-first-session-preview",
577
+ children: [/* @__PURE__ */ V("div", { className: "game-ui-first-session-world" }), /* @__PURE__ */ V("div", {
578
+ className: "game-ui-first-session-modal-slot",
579
+ children: /* @__PURE__ */ V(le, {
580
+ open: !0,
581
+ onDismiss: () => void 0,
582
+ labels: {
583
+ badge: e.obBadge,
584
+ body: e.obBody,
585
+ skip: e.obSkip,
586
+ start: e.obStart,
587
+ title: e.obTitle,
588
+ steps: [
589
+ {
590
+ title: e.obMoveT,
591
+ body: e.obMoveB
592
+ },
593
+ {
594
+ title: e.obReadT,
595
+ body: e.obReadB
596
+ },
597
+ {
598
+ title: e.obVoteT,
599
+ body: e.obVoteB
600
+ }
601
+ ]
602
+ }
603
+ })
604
+ })]
605
+ });
606
+ }
607
+ //#endregion
608
+ //#region src/preview/GameUiPreview/sections/FormsAndDisplay.tsx
609
+ function ve() {
610
+ let { forms: e } = K();
611
+ return /* @__PURE__ */ H("div", {
612
+ className: "game-ui-preview-two-up",
613
+ children: [/* @__PURE__ */ H(y, {
614
+ title: e.formsTitle,
615
+ tone: "strong",
616
+ children: [
617
+ /* @__PURE__ */ V(v, {
618
+ hint: e.roomCodeHint,
619
+ label: e.roomCodeLabel,
620
+ children: /* @__PURE__ */ V(f, { placeholder: e.roomCodePlaceholder })
621
+ }),
622
+ /* @__PURE__ */ V(v, {
623
+ label: e.nameLabel,
624
+ required: !0,
625
+ children: /* @__PURE__ */ V(f, { placeholder: e.namePlaceholder })
626
+ }),
627
+ /* @__PURE__ */ V(v, {
628
+ error: e.readError,
629
+ label: e.readLabel,
630
+ children: /* @__PURE__ */ V(se, {
631
+ invalid: !0,
632
+ placeholder: e.readPlaceholder
633
+ })
634
+ }),
635
+ /* @__PURE__ */ V(ne, {
636
+ defaultChecked: !0,
637
+ label: e.rememberLabel
638
+ })
639
+ ]
640
+ }), /* @__PURE__ */ H(y, {
641
+ title: e.displayTitle,
642
+ tone: "strong",
643
+ children: [
644
+ /* @__PURE__ */ H("div", {
645
+ className: "game-ui-component-row",
646
+ children: [
647
+ /* @__PURE__ */ V(T, {
648
+ name: "Mika Ono",
649
+ status: "online"
650
+ }),
651
+ /* @__PURE__ */ V(T, {
652
+ name: "River",
653
+ size: "lg",
654
+ status: "busy"
655
+ }),
656
+ /* @__PURE__ */ V(T, {
657
+ name: "Noa",
658
+ status: "away"
659
+ }),
660
+ /* @__PURE__ */ V(T, {
661
+ name: e.guestName,
662
+ size: "sm"
663
+ })
664
+ ]
665
+ }),
666
+ /* @__PURE__ */ V(x, {
667
+ label: e.revealLabel,
668
+ showValue: !0,
669
+ value: 64
670
+ }),
671
+ /* @__PURE__ */ V(x, {
672
+ label: e.batteryLabel,
673
+ max: 20,
674
+ showValue: !0,
675
+ value: 14
676
+ }),
677
+ /* @__PURE__ */ V(fe, {
678
+ action: /* @__PURE__ */ V(p, {
679
+ variant: "primary",
680
+ children: e.emptyCta
681
+ }),
682
+ description: e.emptyBody,
683
+ icon: "scroll",
684
+ title: e.emptyTitle
685
+ })
686
+ ]
687
+ })]
688
+ });
689
+ }
690
+ //#endregion
691
+ //#region src/preview/GameUiPreview/sections/HudAndStage.tsx
692
+ function q() {
693
+ let { hud: e, tiles: t } = K();
694
+ return /* @__PURE__ */ H("div", {
695
+ className: "game-ui-stage-demo",
696
+ children: [/* @__PURE__ */ H("div", {
697
+ "aria-label": "Flat world HUD preview",
698
+ className: "game-ui-stage-world",
699
+ children: [
700
+ /* @__PURE__ */ H(w, {
701
+ label: e.tools,
702
+ children: [/* @__PURE__ */ V(O, {
703
+ label: e.history,
704
+ children: /* @__PURE__ */ V(k, {
705
+ icon: "scroll",
706
+ size: "sm"
707
+ })
708
+ }), /* @__PURE__ */ V(O, {
709
+ label: e.settings,
710
+ children: /* @__PURE__ */ V(k, {
711
+ icon: "settings",
712
+ size: "sm"
713
+ })
714
+ })]
715
+ }),
716
+ /* @__PURE__ */ H("div", {
717
+ "aria-hidden": "true",
718
+ className: "game-ui-table-prop",
719
+ children: [
720
+ /* @__PURE__ */ V("span", { className: "game-ui-seat is-host" }),
721
+ /* @__PURE__ */ V("span", { className: "game-ui-seat is-guest-a" }),
722
+ /* @__PURE__ */ V("span", { className: "game-ui-seat is-guest-b" }),
723
+ /* @__PURE__ */ V("span", {
724
+ className: "game-ui-seat-callout is-a",
725
+ children: e.calloutA
726
+ }),
727
+ /* @__PURE__ */ V("span", {
728
+ className: "game-ui-seat-callout is-b",
729
+ children: e.calloutB
730
+ })
731
+ ]
732
+ }),
733
+ /* @__PURE__ */ H("div", {
734
+ className: "game-ui-input-strip",
735
+ children: [/* @__PURE__ */ V(p, {
736
+ variant: "secondary",
737
+ children: e.emote
738
+ }), /* @__PURE__ */ V(p, {
739
+ variant: "primary",
740
+ children: e.sendRead
741
+ })]
742
+ })
743
+ ]
744
+ }), /* @__PURE__ */ H("div", {
745
+ className: "game-ui-stage-sidecar",
746
+ children: [
747
+ /* @__PURE__ */ V(E, {
748
+ badge: t.daily.badge,
749
+ icon: "scroll",
750
+ kicker: t.daily.kicker,
751
+ selected: !0,
752
+ summary: t.daily.summary,
753
+ title: t.daily.title,
754
+ tone: "daily"
755
+ }),
756
+ /* @__PURE__ */ V(E, {
757
+ badge: t.portal.badge,
758
+ icon: "portal",
759
+ kicker: t.portal.kicker,
760
+ summary: t.portal.summary,
761
+ title: t.portal.title,
762
+ tone: "portal"
763
+ }),
764
+ /* @__PURE__ */ V(E, {
765
+ icon: "energy",
766
+ kicker: t.host.kicker,
767
+ summary: t.host.summary,
768
+ title: t.host.title,
769
+ tone: "host"
770
+ })
771
+ ]
772
+ })]
773
+ });
774
+ }
775
+ //#endregion
776
+ //#region src/preview/GameUiPreview/sections/IconGallery.tsx
777
+ function ye() {
778
+ return /* @__PURE__ */ V("div", {
779
+ className: "game-ui-icon-grid",
780
+ "aria-label": "全部线条图标",
781
+ children: ie.map((e) => /* @__PURE__ */ H("figure", {
782
+ className: "game-ui-icon-cell",
783
+ children: [/* @__PURE__ */ V(k, {
784
+ icon: e,
785
+ size: "lg"
786
+ }), /* @__PURE__ */ V("figcaption", { children: e })]
787
+ }, e))
788
+ });
789
+ }
790
+ //#endregion
791
+ //#region src/preview/GameUiPreview/sections/LiquidSurfaceShowcase.tsx
792
+ function be() {
793
+ let { liquid: e } = K();
794
+ return /* @__PURE__ */ H("div", {
795
+ className: "game-ui-liquid-showcase",
796
+ children: [
797
+ /* @__PURE__ */ V(y, {
798
+ title: e.surfacesTitle,
799
+ tone: "strong",
800
+ children: /* @__PURE__ */ V("div", {
801
+ className: "game-ui-liquid-showcase__grid",
802
+ children: [
803
+ "primary",
804
+ "secondary",
805
+ "success",
806
+ "danger"
807
+ ].map((t) => /* @__PURE__ */ H("div", {
808
+ className: "game-ui-liquid-showcase__pair",
809
+ children: [
810
+ /* @__PURE__ */ V(p, {
811
+ variant: t,
812
+ children: t
813
+ }),
814
+ /* @__PURE__ */ V(p, {
815
+ variant: t,
816
+ children: t
817
+ }),
818
+ /* @__PURE__ */ V("small", { children: e.press })
819
+ ]
820
+ }, t))
821
+ })
822
+ }),
823
+ /* @__PURE__ */ H(y, {
824
+ title: e.disabledTitle,
825
+ tone: "strong",
826
+ children: [/* @__PURE__ */ V("p", {
827
+ className: "game-ui-small-copy",
828
+ children: e.disabledBody
829
+ }), /* @__PURE__ */ V("div", {
830
+ className: "game-ui-liquid-showcase__grid",
831
+ children: /* @__PURE__ */ H("div", {
832
+ className: "game-ui-liquid-showcase__pair",
833
+ children: [/* @__PURE__ */ V(p, {
834
+ disabled: !0,
835
+ variant: "primary",
836
+ children: "flat"
837
+ }), /* @__PURE__ */ V(p, {
838
+ disabled: !0,
839
+ variant: "primary",
840
+ children: "liquid"
841
+ })]
842
+ })
843
+ })]
844
+ }),
845
+ /* @__PURE__ */ H(y, {
846
+ title: e.moreTitle,
847
+ tone: "strong",
848
+ children: [/* @__PURE__ */ V("p", {
849
+ className: "game-ui-small-copy",
850
+ children: e.moreBody
851
+ }), /* @__PURE__ */ V("p", { children: /* @__PURE__ */ H("a", {
852
+ className: "game-ui-liquid-showcase__link",
853
+ href: "liquid.html",
854
+ children: [e.moreLink, " →"]
855
+ }) })]
856
+ })
857
+ ]
858
+ });
859
+ }
860
+ //#endregion
861
+ //#region src/preview/GameUiPreview/sections/ModalAndStates.tsx
862
+ function xe() {
863
+ let { modals: e } = K();
864
+ return /* @__PURE__ */ H("div", {
865
+ className: "game-ui-preview-two-up",
866
+ children: [/* @__PURE__ */ H(oe, {
867
+ title: e.dialogTitle,
868
+ children: [/* @__PURE__ */ V("p", { children: e.dialogBody }), /* @__PURE__ */ H(w, {
869
+ label: e.actionsLabel,
870
+ children: [/* @__PURE__ */ V(p, {
871
+ variant: "primary",
872
+ children: e.confirm
873
+ }), /* @__PURE__ */ V(p, {
874
+ variant: "ghost",
875
+ children: e.back
876
+ })]
877
+ })]
878
+ }), /* @__PURE__ */ H(y, {
879
+ title: e.panelTitle,
880
+ tone: "strong",
881
+ children: [
882
+ /* @__PURE__ */ V(D, {
883
+ tone: "success",
884
+ children: e.toastOk
885
+ }),
886
+ /* @__PURE__ */ V(D, {
887
+ tone: "danger",
888
+ children: e.toastErr
889
+ }),
890
+ /* @__PURE__ */ V(S, { label: e.loading }),
891
+ /* @__PURE__ */ V(S, {
892
+ label: e.loadingErr,
893
+ tone: "error"
894
+ })
895
+ ]
896
+ })]
897
+ });
898
+ }
899
+ //#endregion
900
+ //#region src/preview/GameUiPreview/sections/OverlayGlassCompare.tsx
901
+ function Se() {
902
+ let { hud: e, buttons: t } = K(), n = (n) => {
903
+ let r = n === "glass";
904
+ return /* @__PURE__ */ H("div", {
905
+ "aria-label": r ? "Overlay glass HUD" : "Default flat HUD",
906
+ className: [
907
+ "game-ui-stage-world",
908
+ "game-ui-overlay-glass-proof",
909
+ r ? A.scopeClass : void 0
910
+ ].filter(Boolean).join(" "),
911
+ ...r ? {
912
+ [A.toneAttr]: A.toneGlass,
913
+ [A.densityAttr]: A.densityCompact
914
+ } : {},
915
+ children: [/* @__PURE__ */ H(w, {
916
+ label: e.tools,
917
+ children: [/* @__PURE__ */ V(O, {
918
+ label: e.history,
919
+ children: /* @__PURE__ */ V(k, {
920
+ icon: "scroll",
921
+ size: "sm"
922
+ })
923
+ }), /* @__PURE__ */ V(O, {
924
+ label: e.settings,
925
+ children: /* @__PURE__ */ V(k, {
926
+ icon: "settings",
927
+ size: "sm"
928
+ })
929
+ })]
930
+ }), /* @__PURE__ */ H(y, {
931
+ title: t.panelTitle,
932
+ children: [/* @__PURE__ */ H("div", {
933
+ className: "game-ui-preview-actions",
934
+ children: [
935
+ /* @__PURE__ */ V(C, {
936
+ tone: "ai",
937
+ children: t.aiBadge
938
+ }),
939
+ /* @__PURE__ */ V(C, {
940
+ tone: "success",
941
+ children: t.readyBadge
942
+ }),
943
+ /* @__PURE__ */ V(x, {
944
+ label: e.reveal,
945
+ value: 68
946
+ })
947
+ ]
948
+ }), /* @__PURE__ */ H("div", {
949
+ className: "game-ui-input-strip",
950
+ children: [
951
+ /* @__PURE__ */ V(p, {
952
+ variant: "secondary",
953
+ children: e.emote
954
+ }),
955
+ /* @__PURE__ */ V(p, {
956
+ variant: "primary",
957
+ children: e.sendRead
958
+ }),
959
+ /* @__PURE__ */ V(p, {
960
+ variant: "ghost",
961
+ children: t.leaveTable
962
+ })
963
+ ]
964
+ })]
965
+ })]
966
+ });
967
+ };
968
+ return /* @__PURE__ */ H("div", {
969
+ className: "game-ui-overlay-glass-compare",
970
+ children: [/* @__PURE__ */ H("article", {
971
+ className: "game-ui-overlay-glass-column",
972
+ children: [/* @__PURE__ */ H("header", { children: [/* @__PURE__ */ V("strong", { children: "Default flat" }), /* @__PURE__ */ V("span", {
973
+ className: "game-ui-small-copy",
974
+ children: "parchment surfaces · 44px floor"
975
+ })] }), n("flat")]
976
+ }), /* @__PURE__ */ H("article", {
977
+ className: "game-ui-overlay-glass-column",
978
+ children: [/* @__PURE__ */ H("header", { children: [/* @__PURE__ */ V("strong", { children: "Overlay glass + compact" }), /* @__PURE__ */ H("span", {
979
+ className: "game-ui-small-copy",
980
+ children: [
981
+ A.toneAttr,
982
+ "=\"",
983
+ A.toneGlass,
984
+ "\" ·",
985
+ " ",
986
+ A.densityAttr,
987
+ "=\"",
988
+ A.densityCompact,
989
+ "\""
990
+ ]
991
+ })] }), n("glass")]
992
+ })]
993
+ });
994
+ }
995
+ //#endregion
996
+ //#region src/preview/GameUiPreview/sections/ResponsiveProofFrames.tsx
997
+ function Ce() {
998
+ let { responsive: e } = K();
999
+ return /* @__PURE__ */ H("div", {
1000
+ className: "game-ui-proof-frames",
1001
+ children: [/* @__PURE__ */ H("article", {
1002
+ className: "game-ui-proof-frame is-desktop",
1003
+ children: [/* @__PURE__ */ H("header", { children: [/* @__PURE__ */ V(C, { children: e.desktop }), /* @__PURE__ */ V("strong", { children: "1440×900" })] }), /* @__PURE__ */ V(q, {})]
1004
+ }), /* @__PURE__ */ H("article", {
1005
+ className: "game-ui-proof-frame is-mobile-landscape",
1006
+ children: [/* @__PURE__ */ H("header", { children: [/* @__PURE__ */ V(C, { children: e.mobileLandscape }), /* @__PURE__ */ V("strong", { children: "844×390" })] }), /* @__PURE__ */ V(q, {})]
1007
+ })]
1008
+ });
1009
+ }
1010
+ //#endregion
1011
+ //#region src/preview/GameUiPreview/sections/TokenGroup.tsx
1012
+ var we = [
1013
+ {
1014
+ id: "semantic",
1015
+ tokens: e
1016
+ },
1017
+ {
1018
+ id: "typography",
1019
+ tokens: t
1020
+ },
1021
+ {
1022
+ id: "spacing",
1023
+ tokens: ee
1024
+ },
1025
+ {
1026
+ id: "radius",
1027
+ tokens: a
1028
+ },
1029
+ {
1030
+ id: "scrollbars",
1031
+ tokens: i
1032
+ },
1033
+ {
1034
+ id: "elevation",
1035
+ tokens: d
1036
+ },
1037
+ {
1038
+ id: "motion",
1039
+ tokens: l
1040
+ },
1041
+ {
1042
+ id: "overlayGlass",
1043
+ tokens: c
1044
+ },
1045
+ {
1046
+ id: "liquidGooey",
1047
+ tokens: r
1048
+ },
1049
+ {
1050
+ id: "layers",
1051
+ tokens: n
1052
+ },
1053
+ {
1054
+ id: "targets",
1055
+ tokens: te
1056
+ },
1057
+ {
1058
+ id: "assetSizing",
1059
+ tokens: s
1060
+ }
1061
+ ];
1062
+ function Te({ id: e, label: t, tokens: n }) {
1063
+ return /* @__PURE__ */ H("article", {
1064
+ className: "game-ui-token-card",
1065
+ children: [/* @__PURE__ */ V("h3", { children: t }), /* @__PURE__ */ V("div", {
1066
+ className: "game-ui-token-grid",
1067
+ children: Object.entries(n).map(([t, n]) => /* @__PURE__ */ H("div", {
1068
+ className: "game-ui-token-row",
1069
+ children: [/* @__PURE__ */ V("span", { children: t }), /* @__PURE__ */ V("code", { children: String(n) })]
1070
+ }, `${e}-${t}`))
1071
+ })]
1072
+ });
1073
+ }
1074
+ //#endregion
1075
+ //#region src/preview/GameUiPreview/sections/TokenSwatches.tsx
1076
+ function Ee() {
1077
+ return /* @__PURE__ */ V("div", {
1078
+ "aria-label": "Flat color swatches",
1079
+ className: "game-ui-swatch-grid",
1080
+ children: Object.entries(e).map(([e, t]) => /* @__PURE__ */ H("figure", {
1081
+ className: "game-ui-swatch",
1082
+ children: [/* @__PURE__ */ V("span", { style: { background: t } }), /* @__PURE__ */ H("figcaption", { children: [/* @__PURE__ */ V("strong", { children: e }), /* @__PURE__ */ V("code", { children: t })] })]
1083
+ }, e))
1084
+ });
1085
+ }
1086
+ //#endregion
1087
+ //#region src/preview/GameUiPreview/sections/TypographyScale.tsx
1088
+ function De() {
1089
+ let { type: e } = K();
1090
+ return /* @__PURE__ */ H("div", {
1091
+ className: "game-ui-type-scale",
1092
+ children: [
1093
+ /* @__PURE__ */ V("p", {
1094
+ className: "game-ui-type-kicker",
1095
+ children: e.kicker
1096
+ }),
1097
+ /* @__PURE__ */ V("h1", { children: e.h1 }),
1098
+ /* @__PURE__ */ V("h2", { children: e.h2 }),
1099
+ /* @__PURE__ */ V("p", { children: e.body }),
1100
+ /* @__PURE__ */ V("small", { children: e.small })
1101
+ ]
1102
+ });
1103
+ }
1104
+ //#endregion
1105
+ //#region src/preview/GameUiPreview/GameUiPreview.tsx
1106
+ function Oe({ title: e, body: t }) {
1107
+ let [n, r] = z("en"), i = W[n], a = e && n === "en" ? e : i.heroTitle, o = t && n === "en" ? t : i.heroBody;
1108
+ return L(() => (document.documentElement.dataset.gameUiPreview = "reference", () => {
1109
+ delete document.documentElement.dataset.gameUiPreview;
1110
+ }), []), /* @__PURE__ */ V(G.Provider, {
1111
+ value: i,
1112
+ children: /* @__PURE__ */ H("main", {
1113
+ "aria-label": "Swimmer UI Kit preview",
1114
+ className: "game-ui-preview game-ui-preview-canvas",
1115
+ children: [
1116
+ /* @__PURE__ */ H("header", {
1117
+ className: "game-ui-preview-hero",
1118
+ children: [
1119
+ /* @__PURE__ */ V(C, {
1120
+ tone: "ai",
1121
+ children: "@pieai/swimmer-ui-kit"
1122
+ }),
1123
+ /* @__PURE__ */ V(b, {
1124
+ currentLabel: i.triggerLabel,
1125
+ label: i.langMenuLabel,
1126
+ onSelect: (e) => r(e),
1127
+ options: [{
1128
+ id: "en",
1129
+ label: "English",
1130
+ meta: "DOM UI labels"
1131
+ }, {
1132
+ id: "zh-CN",
1133
+ label: "简体中文",
1134
+ meta: "Host app owned copy"
1135
+ }],
1136
+ value: n
1137
+ }),
1138
+ /* @__PURE__ */ V("h1", { children: a }),
1139
+ /* @__PURE__ */ V("p", { children: o })
1140
+ ]
1141
+ }),
1142
+ /* @__PURE__ */ H("section", {
1143
+ "aria-labelledby": "game-ui-preview-start-title",
1144
+ className: "game-ui-preview-section game-ui-preview-start",
1145
+ children: [
1146
+ /* @__PURE__ */ V("h2", {
1147
+ id: "game-ui-preview-start-title",
1148
+ children: n === "zh-CN" ? "从这里开始:选组件" : "Start here: choose a component"
1149
+ }),
1150
+ /* @__PURE__ */ H("nav", {
1151
+ "aria-label": n === "zh-CN" ? "按用途找组件" : "Find a component by task",
1152
+ className: "game-ui-preview-two-up",
1153
+ children: [
1154
+ /* @__PURE__ */ V("a", {
1155
+ className: "game-ui-liquid-showcase__link",
1156
+ href: "#game-ui-preview-cta-title",
1157
+ children: n === "zh-CN" ? "主按钮 / 液体 CTA" : "Primary button / liquid CTA"
1158
+ }),
1159
+ /* @__PURE__ */ V("a", {
1160
+ className: "game-ui-liquid-showcase__link",
1161
+ href: "#game-ui-preview-forms-title",
1162
+ children: n === "zh-CN" ? "表单与输入" : "Forms and inputs"
1163
+ }),
1164
+ /* @__PURE__ */ V("a", {
1165
+ className: "game-ui-liquid-showcase__link",
1166
+ href: "#game-ui-preview-components-title",
1167
+ children: n === "zh-CN" ? "控件与面板" : "Controls and panels"
1168
+ }),
1169
+ /* @__PURE__ */ V("a", {
1170
+ className: "game-ui-liquid-showcase__link",
1171
+ href: "#game-ui-preview-liquid-title",
1172
+ children: n === "zh-CN" ? "液体表面与形态入口" : "Liquid surfaces and forms"
1173
+ })
1174
+ ]
1175
+ }),
1176
+ /* @__PURE__ */ H("h3", {
1177
+ id: "game-ui-preview-cta-title",
1178
+ children: ["GameButton · ", n === "zh-CN" ? "主操作按钮" : "Primary action"]
1179
+ }),
1180
+ /* @__PURE__ */ V("p", {
1181
+ className: "game-ui-small-copy",
1182
+ children: n === "zh-CN" ? "variant 说用途,surface 说表面。开始、继续、进入课程不需要先学物理参数。点击示例只展示交互,不会导航。" : "variant chooses the tone; surface chooses the material. Start, continue or enter a course without learning physics knobs. These examples do not navigate."
1183
+ }),
1184
+ /* @__PURE__ */ H("div", {
1185
+ className: "game-ui-preview-two-up",
1186
+ children: [/* @__PURE__ */ H(y, {
1187
+ title: n === "zh-CN" ? "普通主按钮" : "Ordinary primary action",
1188
+ children: [/* @__PURE__ */ V(p, {
1189
+ variant: "primary",
1190
+ children: n === "zh-CN" ? "开始学习" : "Start learning"
1191
+ }), /* @__PURE__ */ V("pre", { children: /* @__PURE__ */ V("code", { children: "<GameButton variant=\"primary\">Start learning</GameButton>" }) })]
1192
+ }), /* @__PURE__ */ H(y, {
1193
+ title: n === "zh-CN" ? "全宽液体主按钮" : "Full-width liquid CTA",
1194
+ children: [/* @__PURE__ */ V(p, {
1195
+ fullWidth: !0,
1196
+ variant: "primary",
1197
+ children: n === "zh-CN" ? "进入课程" : "Enter course"
1198
+ }), /* @__PURE__ */ V("pre", { children: /* @__PURE__ */ V("code", { children: "<GameButton variant=\"primary\"\n surface=\"liquid\" fullWidth>\n Enter course\n</GameButton>" }) })]
1199
+ })]
1200
+ })
1201
+ ]
1202
+ }),
1203
+ /* @__PURE__ */ H("section", {
1204
+ "aria-labelledby": "game-ui-preview-token-title",
1205
+ className: "game-ui-preview-section",
1206
+ children: [
1207
+ /* @__PURE__ */ V("h2", {
1208
+ id: "game-ui-preview-token-title",
1209
+ children: i.sections.tokens
1210
+ }),
1211
+ /* @__PURE__ */ V(Ee, {}),
1212
+ /* @__PURE__ */ V("div", {
1213
+ className: "game-ui-token-ledger",
1214
+ children: we.map((e) => /* @__PURE__ */ V(Te, {
1215
+ id: e.id,
1216
+ label: i.tokenGroups[e.id] ?? e.id,
1217
+ tokens: e.tokens
1218
+ }, e.id))
1219
+ })
1220
+ ]
1221
+ }),
1222
+ /* @__PURE__ */ H("section", {
1223
+ "aria-labelledby": "game-ui-preview-icons-title",
1224
+ className: "game-ui-preview-section",
1225
+ children: [
1226
+ /* @__PURE__ */ V("h2", {
1227
+ id: "game-ui-preview-icons-title",
1228
+ children: i.sections.icons
1229
+ }),
1230
+ /* @__PURE__ */ V("p", {
1231
+ className: "game-ui-small-copy",
1232
+ children: i.iconsIntro
1233
+ }),
1234
+ /* @__PURE__ */ V(ye, {})
1235
+ ]
1236
+ }),
1237
+ /* @__PURE__ */ H("section", {
1238
+ "aria-labelledby": "game-ui-preview-type-title",
1239
+ className: "game-ui-preview-section",
1240
+ children: [/* @__PURE__ */ V("h2", {
1241
+ id: "game-ui-preview-type-title",
1242
+ children: i.sections.typography
1243
+ }), /* @__PURE__ */ V(De, {})]
1244
+ }),
1245
+ /* @__PURE__ */ H("section", {
1246
+ "aria-labelledby": "game-ui-preview-components-title",
1247
+ className: "game-ui-preview-section",
1248
+ children: [
1249
+ /* @__PURE__ */ V("h2", {
1250
+ id: "game-ui-preview-components-title",
1251
+ children: i.sections.components
1252
+ }),
1253
+ /* @__PURE__ */ V(ge, {}),
1254
+ /* @__PURE__ */ V(q, {}),
1255
+ /* @__PURE__ */ V(xe, {}),
1256
+ /* @__PURE__ */ V(pe, {
1257
+ entries: i.history,
1258
+ label: i.historyLabel
1259
+ })
1260
+ ]
1261
+ }),
1262
+ /* @__PURE__ */ H("section", {
1263
+ "aria-labelledby": "game-ui-preview-forms-title",
1264
+ className: "game-ui-preview-section",
1265
+ children: [/* @__PURE__ */ V("h2", {
1266
+ id: "game-ui-preview-forms-title",
1267
+ children: i.sections.forms
1268
+ }), /* @__PURE__ */ V(ve, {})]
1269
+ }),
1270
+ /* @__PURE__ */ H("section", {
1271
+ "aria-labelledby": "game-ui-preview-overlay-glass-title",
1272
+ className: "game-ui-preview-section",
1273
+ children: [
1274
+ /* @__PURE__ */ V("h2", {
1275
+ id: "game-ui-preview-overlay-glass-title",
1276
+ children: i.sections.overlayGlass
1277
+ }),
1278
+ /* @__PURE__ */ V("p", {
1279
+ className: "game-ui-small-copy",
1280
+ children: "Official HUD-on-scene tone: dark translucent glass, thin light border, no flat cast shadow, compact density. Use on any container that wraps scene-overlay chrome (3D tavern, cinematic stage). Nest inside light or dark theme."
1281
+ }),
1282
+ /* @__PURE__ */ V(Se, {})
1283
+ ]
1284
+ }),
1285
+ /* @__PURE__ */ H("section", {
1286
+ "aria-labelledby": "game-ui-preview-liquid-title",
1287
+ className: "game-ui-preview-section",
1288
+ children: [
1289
+ /* @__PURE__ */ V("h2", {
1290
+ id: "game-ui-preview-liquid-title",
1291
+ children: i.sections.liquid
1292
+ }),
1293
+ /* @__PURE__ */ V("p", {
1294
+ className: "game-ui-small-copy",
1295
+ children: i.liquid.body
1296
+ }),
1297
+ /* @__PURE__ */ V(be, {})
1298
+ ]
1299
+ }),
1300
+ /* @__PURE__ */ H("section", {
1301
+ "aria-labelledby": "game-ui-preview-first-session-title",
1302
+ className: "game-ui-preview-section",
1303
+ children: [/* @__PURE__ */ V("h2", {
1304
+ id: "game-ui-preview-first-session-title",
1305
+ children: i.sections.firstSession
1306
+ }), /* @__PURE__ */ V(_e, {})]
1307
+ }),
1308
+ /* @__PURE__ */ H("section", {
1309
+ "aria-labelledby": "game-ui-preview-responsive-title",
1310
+ className: "game-ui-preview-section",
1311
+ children: [/* @__PURE__ */ V("h2", {
1312
+ id: "game-ui-preview-responsive-title",
1313
+ children: i.sections.responsive
1314
+ }), /* @__PURE__ */ V(Ce, {})]
1315
+ })
1316
+ ]
1317
+ })
1318
+ });
1319
+ }
1320
+ //#endregion
1321
+ //#region src/preview/LiquidPreview/copy.ts
1322
+ var ke = {
1323
+ en: {
1324
+ triggerLabel: "English",
1325
+ langMenuLabel: "Page language",
1326
+ heroTitle: "Liquid",
1327
+ heroBody: "A named look is a tested bundle of physics under a word that says what it means, so picking one is choosing a behaviour instead of configuring a filter. Every form below is live — trigger it.",
1328
+ heroRule: "One liquid element per screen, carrying one layer of intent. Liquid appears on a state change the user caused; there is no ambient, idle or decorative liquid, and gooey on a static solid block reads as damage rather than as material.",
1329
+ sections: {
1330
+ shelf: "The vocabulary",
1331
+ sizes: "The same form at two sizes",
1332
+ tones: "The material on every fill",
1333
+ states: "Rest, engaged, disabled — against the flat control",
1334
+ knobs: "What the knobs actually do"
1335
+ },
1336
+ shelfBody: "Choose one body and one relationship to inspect. A body form goes into LiquidSurface; a relationship describes the space between siblings and needs LiquidGroup. The tone and finish pickers update the selected experiments, without mounting all twelve and exhausting the animation budget.",
1337
+ bodies: "Bodies",
1338
+ groups: "Relationships",
1339
+ bodiesHint: "One silhouette. LiquidSurface draws these.",
1340
+ groupsHint: "Two or more. The caller arranges the items; the goo does the neck.",
1341
+ trigger: "Trigger",
1342
+ reset: "Reset",
1343
+ pulse: "Pulse",
1344
+ sizesBody: "A form fixes its amplitude once, and then lands on a 56px button and a 14px meter. It survives that because the pour is clamped to a share of the shorter side — without the clamp the same bold number that gives a button its shape dissolves a meter into a worm.",
1345
+ control: "Control · 132×56",
1346
+ meter: "Meter · 200×14",
1347
+ clamped: "poured",
1348
+ tonesBody: "The material is lit, not painted, so it reads differently against a dark accent and a pale tint. Both have to work: tone says what an action means, and a destructive action is allowed to be liquid. Flip the theme in the bar above to check the other half — a shadow that is correct on cream is not automatically correct on brown.",
1349
+ flat: "flat",
1350
+ liquid: "liquid",
1351
+ statesBody: "The flat control is the reference the liquid one has to stand next to. Both carry weight: the flat button has a solid lip and a cast shadow, the liquid body has a seat and a cast that follow its poured outline and tighten when it is pressed.",
1352
+ rest: "Rest",
1353
+ engaged: "Engaged",
1354
+ disabled: "Disabled",
1355
+ disabledNote: "A disabled control drops the liquid entirely rather than muting it. Liquid is how this kit says “press me”, and putting that on something that cannot be pressed is a lie told loudly.",
1356
+ knobsBody: "Four numbers and a shadow. None of them is a look on its own, which is why forms exist — but a form you are about to override is a form you need these for.",
1357
+ knobRows: [
1358
+ ["blur", "The merge radius: how far apart two silhouettes can be and still see each other as one body. A form about joining wants it large; a form about one crisp control wants it small."],
1359
+ ["contrast", "Not a look. The alpha crossing is pinned at 5/12 of the ramp, so contrast sets the edge WIDTH in pixels and nothing else: 2.5628 × blur ÷ contrast. Below about 1.3px the edge is thinner than the pixel drawing it, and the kit quietly lowers the contrast rather than letting that ship."],
1360
+ ["blob", "How far the outline pours outward, in px. Outward-only by construction, so the silhouette always contains the control’s own box and no amplitude can eat a label’s padding. This is path data, not a filter — exact at every device ratio."],
1361
+ ["lobes", "How many swells go round the outline. 2 is lazy, 5 is busy."],
1362
+ ["gloss", "Volume. The edge says “liquid” as an outline; this is what makes the inside of the body look like a material instead of a flat sticker."],
1363
+ ["shadow", "The ground. A tight, barely-offset seat says the body is touching; a wide low cast gives it height. A body with weight and no shadow is the one thing the eye refuses."]
1364
+ ],
1365
+ tonePicker: "Tone",
1366
+ edgeNote: "edge",
1367
+ lobesNote: "lobes",
1368
+ engagedKnob: "engaged",
1369
+ noShadow: "none — the caller owns the ground"
1370
+ },
1371
+ "zh-CN": {
1372
+ triggerLabel: "简体中文",
1373
+ langMenuLabel: "页面语言",
1374
+ heroTitle: "液体",
1375
+ heroBody: "一个命名的形态,是一整套已经调好的物理参数,外面套一个能说清它是什么意思的词。所以选形态是在选一种行为,而不是在配一组滤镜。下面每一个都是活的——点一下试试。",
1376
+ heroRule: "一屏只放一个液体元素,只承载一层意图。液体只在用户造成的状态变化上出现;没有环境液体、待机液体或者装饰性液体。把胶质效果放在一块不动的实心方块上,看起来是坏了,不是材质。",
1377
+ sections: {
1378
+ shelf: "词汇表",
1379
+ sizes: "同一个形态,两个尺寸",
1380
+ tones: "每一种填色下的材质",
1381
+ states: "静止、触发、禁用——和扁平控件并排",
1382
+ knobs: "这些旋钮到底在控制什么"
1383
+ },
1384
+ shelfBody: "先选一个单体和一个多体关系查看。单体交给 LiquidSurface;关系描述兄弟元素之间的空隙,需要用 LiquidGroup 自己排布。色调与材质选择器改变当前实验,不把十二个同时挂载而耗尽动效预算。",
1385
+ bodies: "单体",
1386
+ groups: "关系",
1387
+ bodiesHint: "一个轮廓。LiquidSurface 画的就是这些。",
1388
+ groupsHint: "两个或更多。元素由调用方排布,胶质负责它们之间的颈。",
1389
+ trigger: "触发",
1390
+ reset: "复位",
1391
+ pulse: "弹一下",
1392
+ sizesBody: "一个形态只定一次振幅,然后它要同时落在 56px 的按钮和 14px 的进度条上。它扛得住,是因为外溢被夹在短边的一个比例内——没有这个夹子,同一个让按钮有形状的大数字,会把进度条化成一条虫。",
1393
+ control: "控件 · 132×56",
1394
+ meter: "进度条 · 200×14",
1395
+ clamped: "实际外溢",
1396
+ tonesBody: "材质是打光打出来的,不是涂出来的,所以它在深色主色和浅色淡彩上读起来不一样。两边都得成立:色调负责说明这个动作是什么意思,而危险动作也可以是液体的。用上面那栏切主题看另一半——在米色上对的阴影,在棕色上不会自动也对。",
1397
+ flat: "扁平",
1398
+ liquid: "液体",
1399
+ statesBody: "扁平控件是液体控件必须并排站着接受比较的那个参照。两边都有重量:扁平按钮有一道实心的唇和一层投影,液体身体有一道贴地的接触影和一层扩散影,都跟着它自己倒出来的轮廓走,被按下时会收紧。",
1400
+ rest: "静止",
1401
+ engaged: "触发",
1402
+ disabled: "禁用",
1403
+ disabledNote: "禁用的控件完全不穿液体,而不是把它调暗。液体是这套 UI 说「按我」的方式,把这句话放在按不动的东西上,是大声说一句假话。",
1404
+ knobsBody: "四个数字加一层阴影。单看每一个都不是一种「样子」,这正是形态存在的理由——但如果你正打算覆写某个形态,你就需要看懂它们。",
1405
+ knobRows: [
1406
+ ["blur", "融合半径:两个轮廓离多远还能互相认作同一个身体。讲「合并」的形态要大,讲「一个清晰控件」的形态要小。"],
1407
+ ["contrast", "它不是一种样子。alpha 的跨越点被钉在斜坡的 5/12 处,所以 contrast 决定的只有边缘的宽度,单位是像素:2.5628 × blur ÷ contrast。低于约 1.3px,边缘就比画它的那个像素还细,这时 kit 会悄悄把 contrast 压下来,而不是让它这样发出去。"],
1408
+ ["blob", "轮廓向外倒出去多远,单位 px。构造上只向外,所以轮廓永远包住控件自己的盒子,再大的振幅也吃不到文字的内边距。这是路径数据,不是滤镜——在任何设备像素比下都是精确的。"],
1409
+ ["lobes", "轮廓上有几个鼓包。2 是懒散,5 是热闹。"],
1410
+ ["gloss", "体积。边缘用轮廓说「液体」;这个数负责让身体内部看起来是一种材质,而不是一张压平的贴纸。"],
1411
+ ["shadow", "地面。一层几乎没有偏移的紧贴影说明它正接触着地面;一层又宽又低的扩散影给它高度。一个有重量却没有影子的身体,是眼睛唯一不肯接受的东西。"]
1412
+ ],
1413
+ tonePicker: "色调",
1414
+ edgeNote: "边缘",
1415
+ lobesNote: "个鼓包",
1416
+ engagedKnob: "触发时",
1417
+ noShadow: "无 —— 地面由调用方决定"
1418
+ }
1419
+ }, J = [
1420
+ "primary",
1421
+ "secondary",
1422
+ "success",
1423
+ "danger"
1424
+ ], Ae = {
1425
+ width: 132,
1426
+ height: 56
1427
+ };
1428
+ //#endregion
1429
+ //#region src/preview/LiquidPreview/useFormEngagement.ts
1430
+ function Y() {
1431
+ let [e, t] = z(/* @__PURE__ */ new Set()), n = R(/* @__PURE__ */ new Map());
1432
+ return L(() => {
1433
+ let e = n.current;
1434
+ return () => {
1435
+ for (let t of e.values()) clearTimeout(t);
1436
+ e.clear();
1437
+ };
1438
+ }, []), [e, (e) => {
1439
+ let r = e === "ripple";
1440
+ t((t) => {
1441
+ let n = new Set(t);
1442
+ return n.has(e) ? n.delete(e) : n.add(e), n;
1443
+ }), r && (clearTimeout(n.current.get(e)), n.current.set(e, setTimeout(() => {
1444
+ t((t) => {
1445
+ let n = new Set(t);
1446
+ return n.delete(e), n;
1447
+ });
1448
+ }, 520)));
1449
+ }];
1450
+ }
1451
+ //#endregion
1452
+ //#region src/preview/LiquidPreview/BodyStage.tsx
1453
+ var X = {
1454
+ primary: "var(--game-ui-accent)",
1455
+ secondary: "var(--game-ui-accent-pale)",
1456
+ success: "var(--game-ui-success)",
1457
+ danger: "var(--game-ui-danger)",
1458
+ ghost: "var(--game-ui-accent-pale)"
1459
+ };
1460
+ function Z({ form: e, engaged: t, fill: n = "var(--game-ui-accent)", style: r = Ae, radius: i = 999 }) {
1461
+ return /* @__PURE__ */ V(_, {
1462
+ active: t,
1463
+ fill: n,
1464
+ form: e,
1465
+ radius: i,
1466
+ children: /* @__PURE__ */ V("span", {
1467
+ className: "game-ui-liquid-page__body",
1468
+ style: r
1469
+ })
1470
+ });
1471
+ }
1472
+ //#endregion
1473
+ //#region src/preview/LiquidPreview/GroupStage.tsx
1474
+ function je({ form: e, engaged: t, fill: n }) {
1475
+ let r = g(e), i = re(e), a = {
1476
+ blur: r.blur,
1477
+ contrast: r.contrast,
1478
+ filterPadding: r.filterPadding,
1479
+ fill: n,
1480
+ gloss: r.gloss
1481
+ }, o = {
1482
+ ...i.effect === void 0 ? {} : { effect: i.effect },
1483
+ ...i.morph === void 0 ? {} : { morph: i.morph },
1484
+ ...i.transition === void 0 ? {} : { transition: i.transition },
1485
+ ...r.blob > 0 ? { blob: {
1486
+ amplitude: r.blob,
1487
+ lobes: r.lobes
1488
+ } } : {}
1489
+ }, s = (e) => ({
1490
+ width: e,
1491
+ height: e,
1492
+ display: "block"
1493
+ });
1494
+ if (e === "merge" || e === "split") {
1495
+ let n = e === "merge" ? t ? 0 : 30 : t ? 32 : 0;
1496
+ return /* @__PURE__ */ H(u, {
1497
+ ...a,
1498
+ "aria-hidden": "true",
1499
+ className: "game-ui-liquid-page__stage",
1500
+ children: [/* @__PURE__ */ V(u.Item, {
1501
+ ...o,
1502
+ radius: 999,
1503
+ x: -n,
1504
+ children: /* @__PURE__ */ V("span", { style: s(46) })
1505
+ }), /* @__PURE__ */ V(u.Item, {
1506
+ ...o,
1507
+ radius: 999,
1508
+ x: n,
1509
+ children: /* @__PURE__ */ V("span", { style: s(46) })
1510
+ })]
1511
+ });
1512
+ }
1513
+ if (e === "follow") return /* @__PURE__ */ H("span", {
1514
+ className: "game-ui-liquid-page__rail",
1515
+ children: [/* @__PURE__ */ V(u, {
1516
+ ...a,
1517
+ "aria-hidden": "true",
1518
+ className: "game-ui-liquid-page__stage",
1519
+ children: /* @__PURE__ */ V(u.Item, {
1520
+ ...o,
1521
+ radius: 14,
1522
+ x: t ? 62 : -62,
1523
+ children: /* @__PURE__ */ V("span", { style: {
1524
+ width: 62,
1525
+ height: 34,
1526
+ display: "block"
1527
+ } })
1528
+ })
1529
+ }), /* @__PURE__ */ H("span", {
1530
+ "aria-hidden": "true",
1531
+ className: "game-ui-liquid-page__rail-slots",
1532
+ children: [
1533
+ /* @__PURE__ */ V("span", {
1534
+ "data-on": t ? void 0 : "true",
1535
+ children: "one"
1536
+ }),
1537
+ /* @__PURE__ */ V("span", { children: "two" }),
1538
+ /* @__PURE__ */ V("span", {
1539
+ "data-on": t ? "true" : void 0,
1540
+ children: "three"
1541
+ })
1542
+ ]
1543
+ })]
1544
+ });
1545
+ let c = [
1546
+ [-46, -13],
1547
+ [-19, 11],
1548
+ [5, -15],
1549
+ [29, 9],
1550
+ [50, -7]
1551
+ ], l = .24;
1552
+ return /* @__PURE__ */ V(u, {
1553
+ ...a,
1554
+ "aria-hidden": "true",
1555
+ className: "game-ui-liquid-page__stage",
1556
+ children: c.map(([e, n], r) => /* @__PURE__ */ F(u.Item, {
1557
+ ...o,
1558
+ key: r,
1559
+ delay: r * 40,
1560
+ radius: 999,
1561
+ x: t ? e * l : e,
1562
+ y: t ? n * l : n
1563
+ }, /* @__PURE__ */ V("span", { style: s(22) })))
1564
+ });
1565
+ }
1566
+ //#endregion
1567
+ //#region src/preview/LiquidPreview/FormStage.tsx
1568
+ function Me({ form: e, engaged: t, fill: n }) {
1569
+ return m[e].kind === "body" ? /* @__PURE__ */ V(Z, {
1570
+ engaged: t,
1571
+ fill: n,
1572
+ form: e
1573
+ }) : /* @__PURE__ */ V(je, {
1574
+ engaged: t,
1575
+ fill: n,
1576
+ form: e
1577
+ });
1578
+ }
1579
+ //#endregion
1580
+ //#region src/preview/LiquidPreview/Knobs.tsx
1581
+ function Q(e) {
1582
+ return e === void 0 ? null : o(e).map((e) => {
1583
+ let t = /(\d+(?:\.\d+)?)%/.exec(e.color)?.[1];
1584
+ return `${e.y}/${e.blur}${t === void 0 ? "" : ` · ${t}%`}`;
1585
+ }).join(" + ");
1586
+ }
1587
+ function Ne({ form: e, copy: t }) {
1588
+ let { blur: n, contrast: r, blob: i, lobes: a, gloss: o, shadow: s } = m[e].group, c = N(n, r), l = 2.5628 * n / c, u = Q(s), d = Q(s);
1589
+ return /* @__PURE__ */ H("dl", {
1590
+ className: "game-ui-liquid-page__knobs",
1591
+ children: [
1592
+ /* @__PURE__ */ V("dt", { children: "blur" }),
1593
+ /* @__PURE__ */ V("dd", { children: n }),
1594
+ /* @__PURE__ */ V("dt", { children: "contrast" }),
1595
+ /* @__PURE__ */ H("dd", { children: [r, /* @__PURE__ */ H("span", {
1596
+ className: "game-ui-liquid-page__derived",
1597
+ children: [
1598
+ " ",
1599
+ "· ",
1600
+ t.edgeNote,
1601
+ " ",
1602
+ l.toFixed(2),
1603
+ "px",
1604
+ c < r ? ` → ${j}px` : ""
1605
+ ]
1606
+ })] }),
1607
+ /* @__PURE__ */ V("dt", { children: "blob" }),
1608
+ /* @__PURE__ */ H("dd", { children: [i, i > 0 ? /* @__PURE__ */ H("span", {
1609
+ className: "game-ui-liquid-page__derived",
1610
+ children: [
1611
+ " ",
1612
+ "· ",
1613
+ a,
1614
+ " ",
1615
+ t.lobesNote
1616
+ ]
1617
+ }) : null] }),
1618
+ /* @__PURE__ */ V("dt", { children: "gloss" }),
1619
+ /* @__PURE__ */ V("dd", { children: o }),
1620
+ /* @__PURE__ */ V("dt", { children: "shadow" }),
1621
+ /* @__PURE__ */ H("dd", { children: [u ?? t.noShadow, u === null ? null : /* @__PURE__ */ V("span", {
1622
+ className: "game-ui-liquid-page__derived",
1623
+ children: " · y/blur"
1624
+ })] }),
1625
+ d === null ? null : /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("dt", { children: t.engagedKnob }), /* @__PURE__ */ V("dd", { children: d })] })
1626
+ ]
1627
+ });
1628
+ }
1629
+ //#endregion
1630
+ //#region src/preview/LiquidPreview/Shelf.tsx
1631
+ function $({ kind: e, copy: t, tone: n }) {
1632
+ let [r, i] = Y(), a = h.filter((t) => m[t].kind === e), [o, s] = z(() => a[0]);
1633
+ return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("div", {
1634
+ className: "game-ui-liquid-demo-controls",
1635
+ role: "group",
1636
+ "aria-label": e === "body" ? "单体形态" : "多体形态",
1637
+ children: a.map((e) => /* @__PURE__ */ V(p, {
1638
+ "aria-pressed": o === e,
1639
+ onClick: () => s(e),
1640
+ children: e
1641
+ }, e))
1642
+ }), /* @__PURE__ */ V("div", {
1643
+ className: "game-ui-liquid-page__shelf",
1644
+ children: a.filter((e) => e === o).map((e) => {
1645
+ let a = r.has(e);
1646
+ return /* @__PURE__ */ H(y, {
1647
+ className: "game-ui-liquid-page__tile",
1648
+ tone: "strong",
1649
+ children: [
1650
+ /* @__PURE__ */ V("div", {
1651
+ className: "game-ui-liquid-page__stage-slot",
1652
+ children: /* @__PURE__ */ V(Me, {
1653
+ engaged: a,
1654
+ fill: X[n],
1655
+ form: e
1656
+ })
1657
+ }),
1658
+ /* @__PURE__ */ V("h4", { children: e }),
1659
+ /* @__PURE__ */ V("p", {
1660
+ className: "game-ui-liquid-page__prose",
1661
+ children: m[e].summary
1662
+ }),
1663
+ /* @__PURE__ */ V(p, {
1664
+ onClick: () => i(e),
1665
+ variant: "ghost",
1666
+ children: e === "ripple" ? t.pulse : a ? t.reset : t.trigger
1667
+ }),
1668
+ /* @__PURE__ */ V(Ne, {
1669
+ copy: t,
1670
+ form: e
1671
+ })
1672
+ ]
1673
+ }, e);
1674
+ })
1675
+ })] });
1676
+ }
1677
+ //#endregion
1678
+ //#region src/preview/LiquidPreview/Sizes.tsx
1679
+ function Pe({ copy: e }) {
1680
+ let [t, n] = Y(), r = h.filter((e) => m[e].kind === "body"), [i, a] = z("press"), o = (e, t) => Math.min(e, t * M).toFixed(2);
1681
+ return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("div", {
1682
+ className: "game-ui-liquid-demo-controls",
1683
+ role: "group",
1684
+ "aria-label": "尺寸对照的形态",
1685
+ children: r.map((e) => /* @__PURE__ */ V(p, {
1686
+ "aria-pressed": i === e,
1687
+ onClick: () => a(e),
1688
+ children: e
1689
+ }, e))
1690
+ }), /* @__PURE__ */ V("div", {
1691
+ className: "game-ui-liquid-page__sizes",
1692
+ children: r.filter((e) => e === i).map((r) => {
1693
+ let i = t.has(r), { blob: a } = m[r].group;
1694
+ return /* @__PURE__ */ H(y, {
1695
+ className: "game-ui-liquid-page__size-row",
1696
+ tone: "strong",
1697
+ children: [/* @__PURE__ */ H("header", { children: [/* @__PURE__ */ V("h4", { children: r }), /* @__PURE__ */ V(p, {
1698
+ onClick: () => n(r),
1699
+ variant: "ghost",
1700
+ children: r === "ripple" ? e.pulse : i ? e.reset : e.trigger
1701
+ })] }), /* @__PURE__ */ H("div", {
1702
+ className: "game-ui-liquid-page__size-pair",
1703
+ children: [/* @__PURE__ */ H("div", { children: [/* @__PURE__ */ V("div", {
1704
+ className: "game-ui-liquid-page__stage-slot",
1705
+ children: /* @__PURE__ */ V(Z, {
1706
+ engaged: i,
1707
+ form: r
1708
+ })
1709
+ }), /* @__PURE__ */ H("small", { children: [
1710
+ e.control,
1711
+ " · ",
1712
+ e.clamped,
1713
+ " ",
1714
+ o(a, 56),
1715
+ "px"
1716
+ ] })] }), /* @__PURE__ */ H("div", { children: [/* @__PURE__ */ V("div", {
1717
+ className: "game-ui-liquid-page__stage-slot game-ui-liquid-page__stage-slot--thin",
1718
+ children: /* @__PURE__ */ V(Z, {
1719
+ engaged: i,
1720
+ form: r,
1721
+ style: {
1722
+ width: 200,
1723
+ height: 14
1724
+ }
1725
+ })
1726
+ }), /* @__PURE__ */ H("small", { children: [
1727
+ e.meter,
1728
+ " · ",
1729
+ e.clamped,
1730
+ " ",
1731
+ o(a, 14),
1732
+ "px"
1733
+ ] })] })]
1734
+ })]
1735
+ }, r);
1736
+ })
1737
+ })] });
1738
+ }
1739
+ //#endregion
1740
+ //#region src/preview/LiquidPreview/Tones.tsx
1741
+ function Fe({ copy: e }) {
1742
+ let [t, n] = z("primary"), [r, i] = z(null);
1743
+ return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("div", {
1744
+ className: "game-ui-liquid-demo-controls",
1745
+ role: "group",
1746
+ "aria-label": "颜色对照",
1747
+ children: J.map((e) => /* @__PURE__ */ V(p, {
1748
+ "aria-pressed": t === e,
1749
+ onClick: () => n(e),
1750
+ children: e
1751
+ }, e))
1752
+ }), /* @__PURE__ */ V("div", {
1753
+ className: "game-ui-liquid-page__tones",
1754
+ children: J.filter((e) => e === t).map((t) => /* @__PURE__ */ H(y, {
1755
+ className: "game-ui-liquid-page__tone",
1756
+ tone: "strong",
1757
+ children: [
1758
+ /* @__PURE__ */ V("h4", { children: t }),
1759
+ /* @__PURE__ */ V(p, {
1760
+ variant: t,
1761
+ children: e.flat
1762
+ }),
1763
+ /* @__PURE__ */ V("span", {
1764
+ onPointerCancel: () => i(null),
1765
+ onPointerDown: () => i(t),
1766
+ onPointerLeave: () => i(null),
1767
+ onPointerUp: () => i(null),
1768
+ children: /* @__PURE__ */ V(p, {
1769
+ variant: t,
1770
+ children: e.liquid
1771
+ })
1772
+ }),
1773
+ /* @__PURE__ */ V("small", { children: r === t ? e.engaged : e.rest })
1774
+ ]
1775
+ }, t))
1776
+ })] });
1777
+ }
1778
+ //#endregion
1779
+ //#region src/preview/LiquidPreview/States.tsx
1780
+ function Ie({ copy: e }) {
1781
+ let [t, n] = z(!1), [r, i] = z(0);
1782
+ return /* @__PURE__ */ H(y, {
1783
+ className: "game-ui-liquid-page__states",
1784
+ title: e.rest,
1785
+ children: [
1786
+ /* @__PURE__ */ V("p", { children: "按住观察轮廓,松开回弹;文字和点击位置保持不动。" }),
1787
+ /* @__PURE__ */ V(p, {
1788
+ variant: "primary",
1789
+ disabled: t,
1790
+ onClick: () => i((e) => e + 1),
1791
+ children: e.liquid
1792
+ }),
1793
+ /* @__PURE__ */ V(p, {
1794
+ "aria-pressed": t,
1795
+ onClick: () => n((e) => !e),
1796
+ children: e.disabled
1797
+ }),
1798
+ /* @__PURE__ */ V("output", {
1799
+ "aria-live": "polite",
1800
+ children: r
1801
+ })
1802
+ ]
1803
+ });
1804
+ }
1805
+ //#endregion
1806
+ //#region src/preview/LiquidPreview/LiquidPreview.tsx
1807
+ function Le() {
1808
+ let [e, t] = z("zh-CN"), [n, r] = z(() => typeof window > "u" ? "shelf" : /liquid-(sizes|tones|states|knobs)-title/.exec(window.location.hash)?.[1] ?? "shelf"), [i, a] = z("primary"), o = ke[e];
1809
+ return L(() => (document.documentElement.dataset.gameUiPreview = "reference", () => {
1810
+ delete document.documentElement.dataset.gameUiPreview;
1811
+ }), []), /* @__PURE__ */ V(B, { children: /* @__PURE__ */ H("main", {
1812
+ "aria-label": "Swimmer UI Kit liquid surface",
1813
+ className: "game-ui-preview game-ui-preview-canvas game-ui-liquid-page",
1814
+ children: [
1815
+ /* @__PURE__ */ H("header", {
1816
+ className: "game-ui-preview-hero",
1817
+ children: [
1818
+ /* @__PURE__ */ V(C, {
1819
+ tone: "ai",
1820
+ children: "@pieai/swimmer-ui-kit"
1821
+ }),
1822
+ /* @__PURE__ */ V(b, {
1823
+ currentLabel: o.triggerLabel,
1824
+ label: o.langMenuLabel,
1825
+ onSelect: (e) => t(e),
1826
+ options: [{
1827
+ id: "en",
1828
+ label: "English",
1829
+ meta: "Page copy"
1830
+ }, {
1831
+ id: "zh-CN",
1832
+ label: "简体中文",
1833
+ meta: "页面文案"
1834
+ }],
1835
+ value: e
1836
+ }),
1837
+ /* @__PURE__ */ V("h1", { children: o.heroTitle }),
1838
+ /* @__PURE__ */ V("p", { children: o.heroBody }),
1839
+ /* @__PURE__ */ V("p", {
1840
+ className: "game-ui-liquid-page__rule",
1841
+ children: o.heroRule
1842
+ }),
1843
+ /* @__PURE__ */ V("p", { children: /* @__PURE__ */ V("a", {
1844
+ href: "/",
1845
+ children: "先选成品控件:按钮、开关、进度、下拉 →"
1846
+ }) })
1847
+ ]
1848
+ }),
1849
+ /* @__PURE__ */ H("section", {
1850
+ className: "game-ui-preview-section",
1851
+ "aria-label": "材料实验选择",
1852
+ children: [
1853
+ /* @__PURE__ */ V("p", { children: "这里展示的是动作形态,不是成品控件。只挂载当前实验,保留两组共享动效预算,不把其余示例静默降级。" }),
1854
+ /* @__PURE__ */ V("p", { children: "同一套涟的薄液体材质;这里只比较动作,不再选择不同厚度或高光皮肤。" }),
1855
+ /* @__PURE__ */ V("div", {
1856
+ className: "game-ui-liquid-demo-controls",
1857
+ role: "group",
1858
+ "aria-label": "材料实验类别",
1859
+ children: [
1860
+ "shelf",
1861
+ "sizes",
1862
+ "tones",
1863
+ "states",
1864
+ "knobs"
1865
+ ].map((e) => /* @__PURE__ */ V(p, {
1866
+ "aria-pressed": n === e,
1867
+ onClick: () => {
1868
+ r(e), window.history.replaceState(null, "", `#liquid-${e}-title`);
1869
+ },
1870
+ children: o.sections[e]
1871
+ }, e))
1872
+ })
1873
+ ]
1874
+ }),
1875
+ n === "shelf" && /* @__PURE__ */ H("section", {
1876
+ "aria-labelledby": "liquid-shelf-title",
1877
+ className: "game-ui-preview-section",
1878
+ children: [
1879
+ /* @__PURE__ */ V("h2", {
1880
+ id: "liquid-shelf-title",
1881
+ children: o.sections.shelf
1882
+ }),
1883
+ /* @__PURE__ */ V("p", {
1884
+ className: "game-ui-liquid-page__prose",
1885
+ children: o.shelfBody
1886
+ }),
1887
+ /* @__PURE__ */ H("div", {
1888
+ className: "game-ui-liquid-page__tone-picker",
1889
+ role: "group",
1890
+ "aria-label": o.tonePicker,
1891
+ children: [/* @__PURE__ */ V("span", { children: o.tonePicker }), J.map((e) => /* @__PURE__ */ V(p, {
1892
+ "aria-pressed": i === e,
1893
+ onClick: () => a(e),
1894
+ variant: "secondary",
1895
+ children: e
1896
+ }, e))]
1897
+ }),
1898
+ /* @__PURE__ */ H("h3", { children: [
1899
+ o.bodies,
1900
+ " ",
1901
+ /* @__PURE__ */ V("small", {
1902
+ className: "game-ui-liquid-page__hint",
1903
+ children: o.bodiesHint
1904
+ })
1905
+ ] }),
1906
+ /* @__PURE__ */ V($, {
1907
+ copy: o,
1908
+ kind: "body",
1909
+ tone: i
1910
+ }),
1911
+ /* @__PURE__ */ H("h3", { children: [
1912
+ o.groups,
1913
+ " ",
1914
+ /* @__PURE__ */ V("small", {
1915
+ className: "game-ui-liquid-page__hint",
1916
+ children: o.groupsHint
1917
+ })
1918
+ ] }),
1919
+ /* @__PURE__ */ V($, {
1920
+ copy: o,
1921
+ kind: "group",
1922
+ tone: i
1923
+ })
1924
+ ]
1925
+ }),
1926
+ n === "sizes" && /* @__PURE__ */ H("section", {
1927
+ "aria-labelledby": "liquid-sizes-title",
1928
+ className: "game-ui-preview-section",
1929
+ children: [
1930
+ /* @__PURE__ */ V("h2", {
1931
+ id: "liquid-sizes-title",
1932
+ children: o.sections.sizes
1933
+ }),
1934
+ /* @__PURE__ */ V("p", {
1935
+ className: "game-ui-liquid-page__prose",
1936
+ children: o.sizesBody
1937
+ }),
1938
+ /* @__PURE__ */ V(Pe, { copy: o })
1939
+ ]
1940
+ }),
1941
+ n === "tones" && /* @__PURE__ */ H("section", {
1942
+ "aria-labelledby": "liquid-tones-title",
1943
+ className: "game-ui-preview-section",
1944
+ children: [
1945
+ /* @__PURE__ */ V("h2", {
1946
+ id: "liquid-tones-title",
1947
+ children: o.sections.tones
1948
+ }),
1949
+ /* @__PURE__ */ V("p", {
1950
+ className: "game-ui-liquid-page__prose",
1951
+ children: o.tonesBody
1952
+ }),
1953
+ /* @__PURE__ */ V(Fe, { copy: o })
1954
+ ]
1955
+ }),
1956
+ n === "states" && /* @__PURE__ */ H("section", {
1957
+ "aria-labelledby": "liquid-states-title",
1958
+ className: "game-ui-preview-section",
1959
+ children: [
1960
+ /* @__PURE__ */ V("h2", {
1961
+ id: "liquid-states-title",
1962
+ children: o.sections.states
1963
+ }),
1964
+ /* @__PURE__ */ V("p", {
1965
+ className: "game-ui-liquid-page__prose",
1966
+ children: o.statesBody
1967
+ }),
1968
+ /* @__PURE__ */ V(Ie, { copy: o })
1969
+ ]
1970
+ }),
1971
+ n === "knobs" && /* @__PURE__ */ H("section", {
1972
+ "aria-labelledby": "liquid-knobs-title",
1973
+ className: "game-ui-preview-section",
1974
+ children: [
1975
+ /* @__PURE__ */ V("h2", {
1976
+ id: "liquid-knobs-title",
1977
+ children: o.sections.knobs
1978
+ }),
1979
+ /* @__PURE__ */ V("p", {
1980
+ className: "game-ui-liquid-page__prose",
1981
+ children: o.knobsBody
1982
+ }),
1983
+ /* @__PURE__ */ V("dl", {
1984
+ className: "game-ui-liquid-page__glossary",
1985
+ children: o.knobRows.map(([e, t]) => /* @__PURE__ */ H("div", { children: [/* @__PURE__ */ V("dt", { children: e }), /* @__PURE__ */ V("dd", { children: t })] }, e))
1986
+ })
1987
+ ]
1988
+ })
1989
+ ]
1990
+ }) });
1991
+ }
1992
+ //#endregion
1993
+ export { U as GAME_UI_PREVIEW_MESSAGES, Oe as GameUiPreview, Le as LiquidPreview };