@popcraft/kit 0.26.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3071) hide show
  1. package/dist/chunks/agent-FXAQKU67.js +44 -0
  2. package/dist/chunks/api-4L2MWQD6.js +29 -0
  3. package/dist/chunks/apply-SUBGDFJR.js +46 -0
  4. package/dist/chunks/audio-decode-ZMRZXQVD.js +54 -0
  5. package/dist/chunks/audio-import-565M6T3Y.js +126 -0
  6. package/dist/chunks/audio-plan-VZWXU3LZ.js +46 -0
  7. package/dist/chunks/board-export-CVKVWAZN.js +180 -0
  8. package/dist/chunks/browser-2TRJFGKI.js +179 -0
  9. package/dist/chunks/build-4MSJUNGW.js +55 -0
  10. package/dist/chunks/builtin-RDXZ3VKJ.js +114 -0
  11. package/dist/chunks/check-TOUPHHMH.js +56 -0
  12. package/dist/chunks/check-template-SDNZ7FRK.js +2272 -0
  13. package/dist/chunks/chunk-22GTRC7O.js +28 -0
  14. package/dist/chunks/chunk-22OGBPCZ.js +360 -0
  15. package/dist/chunks/chunk-23VWJAHF.js +36 -0
  16. package/dist/chunks/chunk-26XYYBAW.js +220 -0
  17. package/dist/chunks/chunk-2BALGH5K.js +422 -0
  18. package/dist/chunks/chunk-2BI45Z6G.js +202 -0
  19. package/dist/chunks/chunk-2BRUCU5U.js +98 -0
  20. package/dist/chunks/chunk-2BUIEJDY.js +260 -0
  21. package/dist/chunks/chunk-2C3L5LVY.js +248 -0
  22. package/dist/chunks/chunk-2DIUPOKV.js +83 -0
  23. package/dist/chunks/chunk-2DYZWFLX.js +191 -0
  24. package/dist/chunks/chunk-2EYOEOXD.js +368 -0
  25. package/dist/chunks/chunk-2FHRHPFL.js +187 -0
  26. package/dist/chunks/chunk-2GKJJQ73.js +877 -0
  27. package/dist/chunks/chunk-2GMTUCUJ.js +184 -0
  28. package/dist/chunks/chunk-2GVF7IGE.js +118 -0
  29. package/dist/chunks/chunk-2IUO36W6.js +258 -0
  30. package/dist/chunks/chunk-2K2L4XDB.js +94 -0
  31. package/dist/chunks/chunk-2K3ISVYQ.js +46 -0
  32. package/dist/chunks/chunk-2M7AO4LW.js +229 -0
  33. package/dist/chunks/chunk-2M7TWDRX.js +95 -0
  34. package/dist/chunks/chunk-2NZRISRD.js +121 -0
  35. package/dist/chunks/chunk-2OBB7PRF.js +97 -0
  36. package/dist/chunks/chunk-2OHBHE3L.js +208 -0
  37. package/dist/chunks/chunk-2OMDWYKY.js +127 -0
  38. package/dist/chunks/chunk-2OU7FO3L.js +200 -0
  39. package/dist/chunks/chunk-2SL4ZSV3.js +204 -0
  40. package/dist/chunks/chunk-2SUC2WRD.js +362 -0
  41. package/dist/chunks/chunk-2TJQJ45J.js +33 -0
  42. package/dist/chunks/chunk-2WNVHMJ4.js +109 -0
  43. package/dist/chunks/chunk-2ZMOGRI6.js +77 -0
  44. package/dist/chunks/chunk-33D6OUHA.js +23 -0
  45. package/dist/chunks/chunk-33NSCTJ3.js +110 -0
  46. package/dist/chunks/chunk-33V7H2KM.js +210 -0
  47. package/dist/chunks/chunk-3423GLUJ.js +180 -0
  48. package/dist/chunks/chunk-34OTJ2Z2.js +108 -0
  49. package/dist/chunks/chunk-35K7AIYU.js +251 -0
  50. package/dist/chunks/chunk-35Z6GZMD.js +289 -0
  51. package/dist/chunks/chunk-37QJ5VS5.js +415 -0
  52. package/dist/chunks/chunk-37SP4EL7.js +200 -0
  53. package/dist/chunks/chunk-37WN7N3C.js +574 -0
  54. package/dist/chunks/chunk-3CZMDPY7.js +375 -0
  55. package/dist/chunks/chunk-3F73XXLO.js +174 -0
  56. package/dist/chunks/chunk-3GBE6JT6.js +133 -0
  57. package/dist/chunks/chunk-3GYHAAIM.js +165 -0
  58. package/dist/chunks/chunk-3GZSEUZJ.js +45 -0
  59. package/dist/chunks/chunk-3HDTUGYD.js +130 -0
  60. package/dist/chunks/chunk-3IAIPC3T.js +114 -0
  61. package/dist/chunks/chunk-3J62XABV.js +386 -0
  62. package/dist/chunks/chunk-3JKWADSZ.js +175 -0
  63. package/dist/chunks/chunk-3LE6EFI5.js +1403 -0
  64. package/dist/chunks/chunk-3O3UZV57.js +45 -0
  65. package/dist/chunks/chunk-3OS2POT6.js +257 -0
  66. package/dist/chunks/chunk-3PIDYDPF.js +27 -0
  67. package/dist/chunks/chunk-3PISNZSW.js +71 -0
  68. package/dist/chunks/chunk-3PQTPXTD.js +190 -0
  69. package/dist/chunks/chunk-3Q2A4VDM.js +178 -0
  70. package/dist/chunks/chunk-3RF2A2BM.js +89 -0
  71. package/dist/chunks/chunk-3SXCX5CX.js +340 -0
  72. package/dist/chunks/chunk-3TBNWHDN.js +177 -0
  73. package/dist/chunks/chunk-3TI6TH32.js +105 -0
  74. package/dist/chunks/chunk-3ZOB33EA.js +103 -0
  75. package/dist/chunks/chunk-3ZOOG55K.js +382 -0
  76. package/dist/chunks/chunk-42SSJNTE.js +209 -0
  77. package/dist/chunks/chunk-452V27S5.js +293 -0
  78. package/dist/chunks/chunk-45UIMDI7.js +47 -0
  79. package/dist/chunks/chunk-45XHFVGI.js +119 -0
  80. package/dist/chunks/chunk-463ECSVS.js +307 -0
  81. package/dist/chunks/chunk-46AZXELT.js +83 -0
  82. package/dist/chunks/chunk-46SBGZ2E.js +118 -0
  83. package/dist/chunks/chunk-46SD3IIV.js +109 -0
  84. package/dist/chunks/chunk-4ATC4PZM.js +218 -0
  85. package/dist/chunks/chunk-4CKOT4UL.js +414 -0
  86. package/dist/chunks/chunk-4CTCPEYN.js +115 -0
  87. package/dist/chunks/chunk-4DBLDQBD.js +23 -0
  88. package/dist/chunks/chunk-4HBUGRVB.js +126 -0
  89. package/dist/chunks/chunk-4JMMRCIR.js +214 -0
  90. package/dist/chunks/chunk-4NHKI4IM.js +263 -0
  91. package/dist/chunks/chunk-4P5TO6PF.js +173 -0
  92. package/dist/chunks/chunk-4PVKDLHJ.js +135 -0
  93. package/dist/chunks/chunk-4RMXC4WI.js +182 -0
  94. package/dist/chunks/chunk-4ROGR3T6.js +23 -0
  95. package/dist/chunks/chunk-4RXT7A2D.js +146 -0
  96. package/dist/chunks/chunk-4T5ZUQEA.js +122 -0
  97. package/dist/chunks/chunk-4TLGHFML.js +161 -0
  98. package/dist/chunks/chunk-4TXY7XOT.js +70 -0
  99. package/dist/chunks/chunk-4VGECIAR.js +179 -0
  100. package/dist/chunks/chunk-4XNA4TPD.js +127 -0
  101. package/dist/chunks/chunk-4Y5YFPKN.js +106 -0
  102. package/dist/chunks/chunk-4YCBTNIB.js +36 -0
  103. package/dist/chunks/chunk-4Z25DTKG.js +23 -0
  104. package/dist/chunks/chunk-52M2UFIL.js +33 -0
  105. package/dist/chunks/chunk-534HVQHQ.js +81 -0
  106. package/dist/chunks/chunk-54AACP3R.js +436 -0
  107. package/dist/chunks/chunk-54IJHQTM.js +104 -0
  108. package/dist/chunks/chunk-55IT24BE.js +135 -0
  109. package/dist/chunks/chunk-55QRKJDP.js +84 -0
  110. package/dist/chunks/chunk-55XINATM.js +192 -0
  111. package/dist/chunks/chunk-565NQUD2.js +338 -0
  112. package/dist/chunks/chunk-56BJ2OFH.js +728 -0
  113. package/dist/chunks/chunk-5754YXDH.js +333 -0
  114. package/dist/chunks/chunk-5AHPURP3.js +162 -0
  115. package/dist/chunks/chunk-5BQDBYWD.js +88 -0
  116. package/dist/chunks/chunk-5BUA5TYP.js +115 -0
  117. package/dist/chunks/chunk-5E7OJMTX.js +109 -0
  118. package/dist/chunks/chunk-5EHNTSDZ.js +339 -0
  119. package/dist/chunks/chunk-5ENW344P.js +115 -0
  120. package/dist/chunks/chunk-5EWTIPN3.js +123 -0
  121. package/dist/chunks/chunk-5F7WELAM.js +70 -0
  122. package/dist/chunks/chunk-5FNLPUHT.js +277 -0
  123. package/dist/chunks/chunk-5JYBLZ45.js +111 -0
  124. package/dist/chunks/chunk-5KJYCXG2.js +136 -0
  125. package/dist/chunks/chunk-5NR3YEQY.js +36 -0
  126. package/dist/chunks/chunk-5NWSKT62.js +107 -0
  127. package/dist/chunks/chunk-5TZW527P.js +33 -0
  128. package/dist/chunks/chunk-5UHEGNLC.js +152 -0
  129. package/dist/chunks/chunk-5UNT233A.js +84 -0
  130. package/dist/chunks/chunk-5W64LX77.js +23 -0
  131. package/dist/chunks/chunk-5WDTUTKS.js +303 -0
  132. package/dist/chunks/chunk-62I2BHYZ.js +101 -0
  133. package/dist/chunks/chunk-62NCRFT4.js +210 -0
  134. package/dist/chunks/chunk-63A2X4WF.js +23 -0
  135. package/dist/chunks/chunk-63ZDTCWX.js +135 -0
  136. package/dist/chunks/chunk-6732B54W.js +75 -0
  137. package/dist/chunks/chunk-67K3PVMM.js +166 -0
  138. package/dist/chunks/chunk-6B5HEMFW.js +79 -0
  139. package/dist/chunks/chunk-6CKUVNJV.js +301 -0
  140. package/dist/chunks/chunk-6DJKALQ4.js +172 -0
  141. package/dist/chunks/chunk-6DW47UUS.js +80 -0
  142. package/dist/chunks/chunk-6DXDRKSA.js +159 -0
  143. package/dist/chunks/chunk-6DXW3VII.js +33 -0
  144. package/dist/chunks/chunk-6ETJHHAZ.js +76 -0
  145. package/dist/chunks/chunk-6HEZUSRF.js +589 -0
  146. package/dist/chunks/chunk-6HFCPKOY.js +198 -0
  147. package/dist/chunks/chunk-6HT4ZRXW.js +293 -0
  148. package/dist/chunks/chunk-6IJBIRX7.js +213 -0
  149. package/dist/chunks/chunk-6IVZYYDV.js +95 -0
  150. package/dist/chunks/chunk-6KLF6QCU.js +30 -0
  151. package/dist/chunks/chunk-6MAAF5EX.js +345 -0
  152. package/dist/chunks/chunk-6P7GZXBJ.js +290 -0
  153. package/dist/chunks/chunk-6QHAQLJ4.js +1221 -0
  154. package/dist/chunks/chunk-6QPNEEBS.js +165 -0
  155. package/dist/chunks/chunk-6RDEF74A.js +290 -0
  156. package/dist/chunks/chunk-6S2FGUXV.js +114 -0
  157. package/dist/chunks/chunk-6S3M25CY.js +23 -0
  158. package/dist/chunks/chunk-6SRDXA7T.js +91 -0
  159. package/dist/chunks/chunk-6T7BTWMK.js +215 -0
  160. package/dist/chunks/chunk-6TU5EOB2.js +199 -0
  161. package/dist/chunks/chunk-6XW3FM64.js +250 -0
  162. package/dist/chunks/chunk-72Y6DLVI.js +97 -0
  163. package/dist/chunks/chunk-72ZEAS6D.js +147 -0
  164. package/dist/chunks/chunk-76JHVYMO.js +238 -0
  165. package/dist/chunks/chunk-76KSULKM.js +224 -0
  166. package/dist/chunks/chunk-772MSCGO.js +50 -0
  167. package/dist/chunks/chunk-7AB2BIMV.js +23 -0
  168. package/dist/chunks/chunk-7AQNONVH.js +147 -0
  169. package/dist/chunks/chunk-7CZELH57.js +105 -0
  170. package/dist/chunks/chunk-7FKWM6MZ.js +320 -0
  171. package/dist/chunks/chunk-7FPHDDSY.js +161 -0
  172. package/dist/chunks/chunk-7IJDMP7O.js +607 -0
  173. package/dist/chunks/chunk-7JMWKDE4.js +23 -0
  174. package/dist/chunks/chunk-7KB5VTJM.js +162 -0
  175. package/dist/chunks/chunk-7MXSR5CC.js +138 -0
  176. package/dist/chunks/chunk-7OS2VWUA.js +77 -0
  177. package/dist/chunks/chunk-7S5UVTPT.js +478 -0
  178. package/dist/chunks/chunk-7USFB6HS.js +62 -0
  179. package/dist/chunks/chunk-7WFWNN3B.js +349 -0
  180. package/dist/chunks/chunk-7WW34IBB.js +1417 -0
  181. package/dist/chunks/chunk-7YOOT7S2.js +55 -0
  182. package/dist/chunks/chunk-7Z2IZENW.js +237 -0
  183. package/dist/chunks/chunk-A266OXHI.js +133 -0
  184. package/dist/chunks/chunk-A3FZPKDN.js +111 -0
  185. package/dist/chunks/chunk-A4XVASWR.js +33 -0
  186. package/dist/chunks/chunk-A54EEE5P.js +23 -0
  187. package/dist/chunks/chunk-A5SSYKGK.js +102 -0
  188. package/dist/chunks/chunk-A6G3NLOQ.js +86 -0
  189. package/dist/chunks/chunk-ABGYLQSM.js +94 -0
  190. package/dist/chunks/chunk-AD3PLAPU.js +130 -0
  191. package/dist/chunks/chunk-AE2KNNNM.js +86 -0
  192. package/dist/chunks/chunk-AJKKIGTI.js +169 -0
  193. package/dist/chunks/chunk-AMQYSVV7.js +45 -0
  194. package/dist/chunks/chunk-ANX4H3O4.js +174 -0
  195. package/dist/chunks/chunk-AOBMCBYB.js +92 -0
  196. package/dist/chunks/chunk-APB5BUR6.js +78 -0
  197. package/dist/chunks/chunk-ARFLHX76.js +23 -0
  198. package/dist/chunks/chunk-ARVU5SYW.js +100 -0
  199. package/dist/chunks/chunk-AS3ZBWWD.js +33 -0
  200. package/dist/chunks/chunk-ASQLSWJW.js +957 -0
  201. package/dist/chunks/chunk-AX24VLAZ.js +104 -0
  202. package/dist/chunks/chunk-AYZLEEHB.js +95 -0
  203. package/dist/chunks/chunk-AZILNU5S.js +36 -0
  204. package/dist/chunks/chunk-AZLVGTTN.js +151 -0
  205. package/dist/chunks/chunk-AZTVKXCV.js +92 -0
  206. package/dist/chunks/chunk-B2BA2KQV.js +242 -0
  207. package/dist/chunks/chunk-B2F6XQDS.js +305 -0
  208. package/dist/chunks/chunk-B4V4FPRS.js +41 -0
  209. package/dist/chunks/chunk-B725OBTW.js +219 -0
  210. package/dist/chunks/chunk-BABNQ5TT.js +42 -0
  211. package/dist/chunks/chunk-BBIYVCQO.js +150 -0
  212. package/dist/chunks/chunk-BD2BHE7M.js +396 -0
  213. package/dist/chunks/chunk-BDU2OUVJ.js +2662 -0
  214. package/dist/chunks/chunk-BEPHEEMH.js +240 -0
  215. package/dist/chunks/chunk-BGYERCGL.js +224 -0
  216. package/dist/chunks/chunk-BKG7RZ4F.js +145 -0
  217. package/dist/chunks/chunk-BKQRHR3F.js +155 -0
  218. package/dist/chunks/chunk-BMJYYBHY.js +45 -0
  219. package/dist/chunks/chunk-BRKA7MCS.js +97 -0
  220. package/dist/chunks/chunk-BS4NQQCX.js +320 -0
  221. package/dist/chunks/chunk-BSRN7YRL.js +99 -0
  222. package/dist/chunks/chunk-BSSTHYOA.js +76 -0
  223. package/dist/chunks/chunk-BVKTIGGZ.js +112 -0
  224. package/dist/chunks/chunk-BVNEMAK6.js +447 -0
  225. package/dist/chunks/chunk-BYSBG2NJ.js +77 -0
  226. package/dist/chunks/chunk-BZAKET67.js +130 -0
  227. package/dist/chunks/chunk-BZAVHVGT.js +33 -0
  228. package/dist/chunks/chunk-BZW2VFFP.js +128 -0
  229. package/dist/chunks/chunk-C3FDXUDC.js +180 -0
  230. package/dist/chunks/chunk-C3OI7EOK.js +201 -0
  231. package/dist/chunks/chunk-C6TIZNKI.js +185 -0
  232. package/dist/chunks/chunk-C6YZMC3O.js +123 -0
  233. package/dist/chunks/chunk-C76PNDY5.js +23 -0
  234. package/dist/chunks/chunk-CACIHLA6.js +129 -0
  235. package/dist/chunks/chunk-CD4ZBM2O.js +108 -0
  236. package/dist/chunks/chunk-CDTD3QPR.js +104 -0
  237. package/dist/chunks/chunk-CE4Y24RT.js +134 -0
  238. package/dist/chunks/chunk-CEGLKKGE.js +313 -0
  239. package/dist/chunks/chunk-CFOGQB7S.js +112 -0
  240. package/dist/chunks/chunk-CFY777FO.js +251 -0
  241. package/dist/chunks/chunk-CHTIM34X.js +49 -0
  242. package/dist/chunks/chunk-CIK7WH4K.js +544 -0
  243. package/dist/chunks/chunk-CJCTVXHT.js +173 -0
  244. package/dist/chunks/chunk-CKE7WEVG.js +446 -0
  245. package/dist/chunks/chunk-CL3OA3NF.js +39 -0
  246. package/dist/chunks/chunk-CL3QWMKD.js +23 -0
  247. package/dist/chunks/chunk-CLZ4C2AP.js +41 -0
  248. package/dist/chunks/chunk-CNA4ENDY.js +145 -0
  249. package/dist/chunks/chunk-CR2PH2FG.js +206 -0
  250. package/dist/chunks/chunk-CSYNHIFK.js +312 -0
  251. package/dist/chunks/chunk-CUV2OTUF.js +186 -0
  252. package/dist/chunks/chunk-CVAXC2WF.js +120 -0
  253. package/dist/chunks/chunk-CWHNQJLR.js +110 -0
  254. package/dist/chunks/chunk-CWWBLX7J.js +317 -0
  255. package/dist/chunks/chunk-CZTI5GGL.js +197 -0
  256. package/dist/chunks/chunk-D2FTGWG6.js +286 -0
  257. package/dist/chunks/chunk-D4XXJ6NS.js +152 -0
  258. package/dist/chunks/chunk-D5P33HRU.js +45 -0
  259. package/dist/chunks/chunk-D7G2S55M.js +197 -0
  260. package/dist/chunks/chunk-D7G6KBZR.js +261 -0
  261. package/dist/chunks/chunk-D7IAH4XF.js +299 -0
  262. package/dist/chunks/chunk-DCUIVFEU.js +178 -0
  263. package/dist/chunks/chunk-DDEO3GDO.js +262 -0
  264. package/dist/chunks/chunk-DE4LRCYX.js +304 -0
  265. package/dist/chunks/chunk-DECP3A2X.js +81 -0
  266. package/dist/chunks/chunk-DEEIO54R.js +177 -0
  267. package/dist/chunks/chunk-DEFIDHH4.js +342 -0
  268. package/dist/chunks/chunk-DEZFUOPJ.js +82 -0
  269. package/dist/chunks/chunk-DFXTG6WK.js +94 -0
  270. package/dist/chunks/chunk-DGXYUOUK.js +82 -0
  271. package/dist/chunks/chunk-DH7N62C5.js +77 -0
  272. package/dist/chunks/chunk-DI7TLG42.js +45 -0
  273. package/dist/chunks/chunk-DIEIV56X.js +126 -0
  274. package/dist/chunks/chunk-DLLC25I4.js +171 -0
  275. package/dist/chunks/chunk-DLQRSLRX.js +269 -0
  276. package/dist/chunks/chunk-DNLHYUDE.js +1677 -0
  277. package/dist/chunks/chunk-DNX4QQPR.js +142 -0
  278. package/dist/chunks/chunk-DOQNYAO4.js +33 -0
  279. package/dist/chunks/chunk-DOSL3YCH.js +1136 -0
  280. package/dist/chunks/chunk-DP532NTI.js +358 -0
  281. package/dist/chunks/chunk-DPP3C3RR.js +292 -0
  282. package/dist/chunks/chunk-DR3V37PE.js +106 -0
  283. package/dist/chunks/chunk-DRF3WODB.js +133 -0
  284. package/dist/chunks/chunk-DSCIRAXT.js +130 -0
  285. package/dist/chunks/chunk-DU2HVXBT.js +156 -0
  286. package/dist/chunks/chunk-DUYXVO4K.js +179 -0
  287. package/dist/chunks/chunk-DWBUNPHN.js +164 -0
  288. package/dist/chunks/chunk-DWWRZELM.js +326 -0
  289. package/dist/chunks/chunk-DX3RJFX2.js +136 -0
  290. package/dist/chunks/chunk-E247N4MX.js +140 -0
  291. package/dist/chunks/chunk-E2WIBUND.js +81 -0
  292. package/dist/chunks/chunk-E3TBWICU.js +291 -0
  293. package/dist/chunks/chunk-E5DYSCXH.js +188 -0
  294. package/dist/chunks/chunk-E5LH5ORQ.js +91 -0
  295. package/dist/chunks/chunk-E5UJUXLU.js +425 -0
  296. package/dist/chunks/chunk-E7E7YEHN.js +84 -0
  297. package/dist/chunks/chunk-EDJ2MPSL.js +43 -0
  298. package/dist/chunks/chunk-EDSI4GCZ.js +80 -0
  299. package/dist/chunks/chunk-ELTV7HFK.js +159 -0
  300. package/dist/chunks/chunk-EMAFPS3U.js +80 -0
  301. package/dist/chunks/chunk-EMXFUF2G.js +48 -0
  302. package/dist/chunks/chunk-ENLJMQMY.js +55 -0
  303. package/dist/chunks/chunk-EO7PGXRU.js +59 -0
  304. package/dist/chunks/chunk-EOUWAOLN.js +147 -0
  305. package/dist/chunks/chunk-EQIQJRMS.js +23 -0
  306. package/dist/chunks/chunk-EQX6LUDW.js +90 -0
  307. package/dist/chunks/chunk-ESKHTEXT.js +298 -0
  308. package/dist/chunks/chunk-ETU3QMKY.js +119 -0
  309. package/dist/chunks/chunk-EUZP5W26.js +102 -0
  310. package/dist/chunks/chunk-EV4V3HMG.js +85 -0
  311. package/dist/chunks/chunk-EW2AGBZ7.js +362 -0
  312. package/dist/chunks/chunk-EWQJJWQQ.js +192 -0
  313. package/dist/chunks/chunk-EXHO4BV7.js +33 -0
  314. package/dist/chunks/chunk-EXLY42BO.js +72 -0
  315. package/dist/chunks/chunk-EYL7EVLT.js +83 -0
  316. package/dist/chunks/chunk-EZ5EHRXJ.js +30 -0
  317. package/dist/chunks/chunk-F24AI4XL.js +287 -0
  318. package/dist/chunks/chunk-F2LJK2RM.js +44 -0
  319. package/dist/chunks/chunk-F2NVREWI.js +110 -0
  320. package/dist/chunks/chunk-F3FZ7EHL.js +97 -0
  321. package/dist/chunks/chunk-F3WJO75K.js +119 -0
  322. package/dist/chunks/chunk-F4BKE6H4.js +94 -0
  323. package/dist/chunks/chunk-F4IEPTNU.js +106 -0
  324. package/dist/chunks/chunk-F6BZTRE2.js +96 -0
  325. package/dist/chunks/chunk-F74GKSQY.js +193 -0
  326. package/dist/chunks/chunk-F7KEBXGY.js +100 -0
  327. package/dist/chunks/chunk-FAJ7IUEN.js +131 -0
  328. package/dist/chunks/chunk-FALZFQIZ.js +146 -0
  329. package/dist/chunks/chunk-FCYWS6B6.js +221 -0
  330. package/dist/chunks/chunk-FDQ6655B.js +1469 -0
  331. package/dist/chunks/chunk-FEJYW55H.js +278 -0
  332. package/dist/chunks/chunk-FEXYF3BM.js +324 -0
  333. package/dist/chunks/chunk-FG5HN5G5.js +345 -0
  334. package/dist/chunks/chunk-FHP3JU2P.js +11742 -0
  335. package/dist/chunks/chunk-FHQTMDZW.js +33 -0
  336. package/dist/chunks/chunk-FIH5MBST.js +224 -0
  337. package/dist/chunks/chunk-FJDBEF4E.js +23 -0
  338. package/dist/chunks/chunk-FKTABUBT.js +180 -0
  339. package/dist/chunks/chunk-FLBQAGKK.js +30 -0
  340. package/dist/chunks/chunk-FLC2AW3S.js +363 -0
  341. package/dist/chunks/chunk-FM3TMFDW.js +232 -0
  342. package/dist/chunks/chunk-FM7KGCIY.js +342 -0
  343. package/dist/chunks/chunk-FNHTZXG2.js +165 -0
  344. package/dist/chunks/chunk-FPTSX43B.js +260 -0
  345. package/dist/chunks/chunk-FQMYMSEF.js +336 -0
  346. package/dist/chunks/chunk-FRF2AI5G.js +101 -0
  347. package/dist/chunks/chunk-FSRJRWUX.js +213 -0
  348. package/dist/chunks/chunk-FSVWBDEL.js +468 -0
  349. package/dist/chunks/chunk-FTYHYYLQ.js +128 -0
  350. package/dist/chunks/chunk-FU7HUS2Q.js +172 -0
  351. package/dist/chunks/chunk-FVFQRJMM.js +277 -0
  352. package/dist/chunks/chunk-FVNIEOE5.js +102 -0
  353. package/dist/chunks/chunk-FX2D3SJ7.js +41 -0
  354. package/dist/chunks/chunk-FXTHRGF7.js +78 -0
  355. package/dist/chunks/chunk-G2LKUTT4.js +163 -0
  356. package/dist/chunks/chunk-G3O3LAEV.js +52 -0
  357. package/dist/chunks/chunk-G46F3ZQ3.js +346 -0
  358. package/dist/chunks/chunk-G4ECXDD5.js +282 -0
  359. package/dist/chunks/chunk-G5QXGUIL.js +115 -0
  360. package/dist/chunks/chunk-G7GTWBG7.js +252 -0
  361. package/dist/chunks/chunk-G7SNGSTO.js +139 -0
  362. package/dist/chunks/chunk-GBDSMYJY.js +23 -0
  363. package/dist/chunks/chunk-GBPFCKQ5.js +73 -0
  364. package/dist/chunks/chunk-GC6YOCLA.js +108 -0
  365. package/dist/chunks/chunk-GD45G3CY.js +99 -0
  366. package/dist/chunks/chunk-GDRAU2V3.js +267 -0
  367. package/dist/chunks/chunk-GDUMY3VG.js +689 -0
  368. package/dist/chunks/chunk-GFKWCH3X.js +336 -0
  369. package/dist/chunks/chunk-GG5GJCJW.js +249 -0
  370. package/dist/chunks/chunk-GHHBB3HM.js +255 -0
  371. package/dist/chunks/chunk-GIVDB53J.js +33 -0
  372. package/dist/chunks/chunk-GJ7UE2VM.js +195 -0
  373. package/dist/chunks/chunk-GK5G53LH.js +97 -0
  374. package/dist/chunks/chunk-GLVMSG3Z.js +170 -0
  375. package/dist/chunks/chunk-GON4YIDO.js +147 -0
  376. package/dist/chunks/chunk-GQT7GENG.js +172 -0
  377. package/dist/chunks/chunk-GSTT4ZJV.js +99 -0
  378. package/dist/chunks/chunk-GTCLGM63.js +185 -0
  379. package/dist/chunks/chunk-GTGQTVBS.js +106 -0
  380. package/dist/chunks/chunk-GTM6WYJ5.js +98 -0
  381. package/dist/chunks/chunk-GTO4KWGT.js +156 -0
  382. package/dist/chunks/chunk-GX2XKKQW.js +390 -0
  383. package/dist/chunks/chunk-GXI2S4NX.js +335 -0
  384. package/dist/chunks/chunk-GYCS3VW4.js +399 -0
  385. package/dist/chunks/chunk-H4FWDRWB.js +23 -0
  386. package/dist/chunks/chunk-H4YKWLAI.js +45 -0
  387. package/dist/chunks/chunk-H4YNMTKK.js +40 -0
  388. package/dist/chunks/chunk-H5CB7PJR.js +33 -0
  389. package/dist/chunks/chunk-H5PWJYXS.js +272 -0
  390. package/dist/chunks/chunk-H5SCN5T6.js +117 -0
  391. package/dist/chunks/chunk-H6JMWTCJ.js +366 -0
  392. package/dist/chunks/chunk-H6WKO5QW.js +454 -0
  393. package/dist/chunks/chunk-H6YCYLYZ.js +110 -0
  394. package/dist/chunks/chunk-H727MKVS.js +33 -0
  395. package/dist/chunks/chunk-HBFKLUFA.js +135 -0
  396. package/dist/chunks/chunk-HBP3C6IQ.js +139 -0
  397. package/dist/chunks/chunk-HBVCWZJK.js +315 -0
  398. package/dist/chunks/chunk-HCTGJVYO.js +23 -0
  399. package/dist/chunks/chunk-HDJIX7KX.js +156 -0
  400. package/dist/chunks/chunk-HE3OVZGS.js +33 -0
  401. package/dist/chunks/chunk-HEKGYJTP.js +290 -0
  402. package/dist/chunks/chunk-HERRWIM6.js +52 -0
  403. package/dist/chunks/chunk-HFOPRXS2.js +235 -0
  404. package/dist/chunks/chunk-HGLB3YDV.js +50 -0
  405. package/dist/chunks/chunk-HHACNMOR.js +125 -0
  406. package/dist/chunks/chunk-HHQYOV6U.js +165 -0
  407. package/dist/chunks/chunk-HI6OGR7I.js +120 -0
  408. package/dist/chunks/chunk-HJHD43UA.js +123 -0
  409. package/dist/chunks/chunk-HKBTA5MM.js +89 -0
  410. package/dist/chunks/chunk-HMX7PNXM.js +242 -0
  411. package/dist/chunks/chunk-HNI6H3SO.js +179 -0
  412. package/dist/chunks/chunk-HNTIXOVT.js +104 -0
  413. package/dist/chunks/chunk-HRKAIVXW.js +153 -0
  414. package/dist/chunks/chunk-HRSTM5QE.js +82 -0
  415. package/dist/chunks/chunk-HSEZJEX2.js +55 -0
  416. package/dist/chunks/chunk-HUFJWJF3.js +140 -0
  417. package/dist/chunks/chunk-HUKONNGD.js +95 -0
  418. package/dist/chunks/chunk-HUPSBVNF.js +30 -0
  419. package/dist/chunks/chunk-HXDMGTRU.js +155 -0
  420. package/dist/chunks/chunk-HZA67W6J.js +685 -0
  421. package/dist/chunks/chunk-I3CK3A7O.js +225 -0
  422. package/dist/chunks/chunk-I3H35HAN.js +176 -0
  423. package/dist/chunks/chunk-I3IJQS6X.js +214 -0
  424. package/dist/chunks/chunk-I43XELLO.js +405 -0
  425. package/dist/chunks/chunk-I5QX5MLP.js +81 -0
  426. package/dist/chunks/chunk-I77LKR4D.js +33 -0
  427. package/dist/chunks/chunk-I7LZ6Z3I.js +123 -0
  428. package/dist/chunks/chunk-IAZ6ZZHG.js +149 -0
  429. package/dist/chunks/chunk-IC46SRYM.js +33 -0
  430. package/dist/chunks/chunk-ICDLRUOK.js +224 -0
  431. package/dist/chunks/chunk-IE2R747Y.js +304 -0
  432. package/dist/chunks/chunk-IEHHAKQQ.js +132 -0
  433. package/dist/chunks/chunk-IEO3PJKS.js +106 -0
  434. package/dist/chunks/chunk-IEU3YXYL.js +228 -0
  435. package/dist/chunks/chunk-IEVDSTOY.js +564 -0
  436. package/dist/chunks/chunk-IF7RJRCJ.js +166 -0
  437. package/dist/chunks/chunk-IIPHMA7G.js +263 -0
  438. package/dist/chunks/chunk-IIVWQKSU.js +160 -0
  439. package/dist/chunks/chunk-IMUKVHPX.js +60 -0
  440. package/dist/chunks/chunk-IN4YAXQR.js +23 -0
  441. package/dist/chunks/chunk-INKJRB7A.js +77 -0
  442. package/dist/chunks/chunk-IORRSM6U.js +221 -0
  443. package/dist/chunks/chunk-IOVXB42Y.js +122 -0
  444. package/dist/chunks/chunk-IPUXZ4MD.js +226 -0
  445. package/dist/chunks/chunk-IQ2RIDIQ.js +55 -0
  446. package/dist/chunks/chunk-ISC7EBTM.js +84 -0
  447. package/dist/chunks/chunk-ITDNDQB6.js +150 -0
  448. package/dist/chunks/chunk-IUBQTPZK.js +86 -0
  449. package/dist/chunks/chunk-IVIASNK7.js +172 -0
  450. package/dist/chunks/chunk-IVNS7OYN.js +23 -0
  451. package/dist/chunks/chunk-IW2NETIQ.js +155 -0
  452. package/dist/chunks/chunk-IWVUOPR7.js +172 -0
  453. package/dist/chunks/chunk-J2DAGUJZ.js +82 -0
  454. package/dist/chunks/chunk-J4RN4ZYM.js +33 -0
  455. package/dist/chunks/chunk-J7AZM6H3.js +181 -0
  456. package/dist/chunks/chunk-JA7TRIN5.js +97 -0
  457. package/dist/chunks/chunk-JADFKYOD.js +129 -0
  458. package/dist/chunks/chunk-JD3X6LV4.js +23 -0
  459. package/dist/chunks/chunk-JD3YSMGH.js +90 -0
  460. package/dist/chunks/chunk-JDI6T3QN.js +197 -0
  461. package/dist/chunks/chunk-JF5USU5E.js +330 -0
  462. package/dist/chunks/chunk-JFZ6TYLB.js +422 -0
  463. package/dist/chunks/chunk-JHPYRB2W.js +158 -0
  464. package/dist/chunks/chunk-JIYKSSTX.js +344 -0
  465. package/dist/chunks/chunk-JJGGRAQI.js +651 -0
  466. package/dist/chunks/chunk-JL7F7MGF.js +366 -0
  467. package/dist/chunks/chunk-JLAOG3LE.js +209 -0
  468. package/dist/chunks/chunk-JMR7IEM7.js +202 -0
  469. package/dist/chunks/chunk-JNQ35ROB.js +93 -0
  470. package/dist/chunks/chunk-JP2WVBBI.js +118 -0
  471. package/dist/chunks/chunk-JQRICLMZ.js +239 -0
  472. package/dist/chunks/chunk-JRJ6QMTK.js +93 -0
  473. package/dist/chunks/chunk-JRWHRC62.js +78 -0
  474. package/dist/chunks/chunk-JSSKZ3G2.js +411 -0
  475. package/dist/chunks/chunk-JSUHQBUX.js +163 -0
  476. package/dist/chunks/chunk-JT7IIMKX.js +183 -0
  477. package/dist/chunks/chunk-JTDGUWL7.js +134 -0
  478. package/dist/chunks/chunk-JU3P5EMV.js +142 -0
  479. package/dist/chunks/chunk-JU3RQO2E.js +209 -0
  480. package/dist/chunks/chunk-JU52JYOO.js +78 -0
  481. package/dist/chunks/chunk-JUHRBSJL.js +176 -0
  482. package/dist/chunks/chunk-JV5GEMWH.js +329 -0
  483. package/dist/chunks/chunk-JV7BHTHG.js +150 -0
  484. package/dist/chunks/chunk-JVGIEI37.js +90 -0
  485. package/dist/chunks/chunk-JX3POSFD.js +283 -0
  486. package/dist/chunks/chunk-JYHZEIKU.js +23 -0
  487. package/dist/chunks/chunk-JYMWMLBW.js +147 -0
  488. package/dist/chunks/chunk-JZS7PJZ6.js +86 -0
  489. package/dist/chunks/chunk-K2HUEWY5.js +152 -0
  490. package/dist/chunks/chunk-K2TXXWJG.js +153 -0
  491. package/dist/chunks/chunk-K2XSE7PL.js +105 -0
  492. package/dist/chunks/chunk-K4LGWP7D.js +304 -0
  493. package/dist/chunks/chunk-K5TJUDZF.js +23 -0
  494. package/dist/chunks/chunk-K7LZ3NCN.js +130 -0
  495. package/dist/chunks/chunk-KCECJPVX.js +149 -0
  496. package/dist/chunks/chunk-KCGQF6RC.js +50 -0
  497. package/dist/chunks/chunk-KCVX77FZ.js +104 -0
  498. package/dist/chunks/chunk-KD3DG7OQ.js +144 -0
  499. package/dist/chunks/chunk-KFHZUY3Y.js +336 -0
  500. package/dist/chunks/chunk-KGITCDXP.js +65 -0
  501. package/dist/chunks/chunk-KGWGYVY4.js +103 -0
  502. package/dist/chunks/chunk-KIRGOCTH.js +93 -0
  503. package/dist/chunks/chunk-KISDATKJ.js +163 -0
  504. package/dist/chunks/chunk-KJCQNSJQ.js +33 -0
  505. package/dist/chunks/chunk-KKJRZKRP.js +87 -0
  506. package/dist/chunks/chunk-KKTKRH7A.js +740 -0
  507. package/dist/chunks/chunk-KLWQOR2L.js +303 -0
  508. package/dist/chunks/chunk-KM6BSJGJ.js +139 -0
  509. package/dist/chunks/chunk-KPCSMJ26.js +209 -0
  510. package/dist/chunks/chunk-KPTABNJZ.js +128 -0
  511. package/dist/chunks/chunk-KPXVFVVR.js +168 -0
  512. package/dist/chunks/chunk-KQT2UCKL.js +49 -0
  513. package/dist/chunks/chunk-KRHC4YYL.js +95 -0
  514. package/dist/chunks/chunk-KSDVJCSI.js +120 -0
  515. package/dist/chunks/chunk-KSP7OPPU.js +97 -0
  516. package/dist/chunks/chunk-KUO2LZLS.js +141 -0
  517. package/dist/chunks/chunk-KVQ7R7FV.js +52 -0
  518. package/dist/chunks/chunk-KW2ZDLLT.js +198 -0
  519. package/dist/chunks/chunk-KW5ALU56.js +217 -0
  520. package/dist/chunks/chunk-KWGZ2B3G.js +110 -0
  521. package/dist/chunks/chunk-KXBJKFQW.js +192 -0
  522. package/dist/chunks/chunk-KXEZ6XU4.js +270 -0
  523. package/dist/chunks/chunk-KYD64ACB.js +165 -0
  524. package/dist/chunks/chunk-L254V7PK.js +215 -0
  525. package/dist/chunks/chunk-L3KPZJRO.js +33 -0
  526. package/dist/chunks/chunk-L4R45CY6.js +113 -0
  527. package/dist/chunks/chunk-L4VNBPA2.js +37 -0
  528. package/dist/chunks/chunk-L5NBJX5G.js +36 -0
  529. package/dist/chunks/chunk-L6636QML.js +33 -0
  530. package/dist/chunks/chunk-L6NMZDUT.js +120 -0
  531. package/dist/chunks/chunk-LAHAEDVW.js +331 -0
  532. package/dist/chunks/chunk-LAHSBNS4.js +97 -0
  533. package/dist/chunks/chunk-LDJV74T6.js +103 -0
  534. package/dist/chunks/chunk-LDUVMQY7.js +56 -0
  535. package/dist/chunks/chunk-LEJD2XV2.js +45 -0
  536. package/dist/chunks/chunk-LFVW2A7W.js +217 -0
  537. package/dist/chunks/chunk-LHFP2R63.js +87 -0
  538. package/dist/chunks/chunk-LHQZV6BD.js +282 -0
  539. package/dist/chunks/chunk-LIRHNG4B.js +626 -0
  540. package/dist/chunks/chunk-LIWVQKFF.js +181 -0
  541. package/dist/chunks/chunk-LJP56PXB.js +84 -0
  542. package/dist/chunks/chunk-LKLUJYEY.js +137 -0
  543. package/dist/chunks/chunk-LKQYGONY.js +23 -0
  544. package/dist/chunks/chunk-LL54J6WR.js +443 -0
  545. package/dist/chunks/chunk-LLIF6562.js +163 -0
  546. package/dist/chunks/chunk-LNBYZM4Q.js +102 -0
  547. package/dist/chunks/chunk-LNTOLNPZ.js +226 -0
  548. package/dist/chunks/chunk-LQED652V.js +33 -0
  549. package/dist/chunks/chunk-LQO3XEPZ.js +887 -0
  550. package/dist/chunks/chunk-LRQNULTZ.js +138 -0
  551. package/dist/chunks/chunk-LTRFSREO.js +161 -0
  552. package/dist/chunks/chunk-LVOFB6WX.js +23 -0
  553. package/dist/chunks/chunk-LVPVIGUM.js +407 -0
  554. package/dist/chunks/chunk-LWGHTMB2.js +149 -0
  555. package/dist/chunks/chunk-M3IOQYHL.js +146 -0
  556. package/dist/chunks/chunk-M3YJZRJP.js +167 -0
  557. package/dist/chunks/chunk-M4RTFMPV.js +104 -0
  558. package/dist/chunks/chunk-M5LCGN3P.js +147 -0
  559. package/dist/chunks/chunk-M5XCZEGW.js +273 -0
  560. package/dist/chunks/chunk-M6LUAHCH.js +122 -0
  561. package/dist/chunks/chunk-MAMMRWVE.js +23 -0
  562. package/dist/chunks/chunk-MBP2HYT3.js +358 -0
  563. package/dist/chunks/chunk-MCC4SXYB.js +45 -0
  564. package/dist/chunks/chunk-MDU2XGW5.js +930 -0
  565. package/dist/chunks/chunk-MEOAVLYQ.js +152 -0
  566. package/dist/chunks/chunk-MFKQVC7Y.js +183 -0
  567. package/dist/chunks/chunk-MFN6I2SS.js +45 -0
  568. package/dist/chunks/chunk-MGZKOT5T.js +105 -0
  569. package/dist/chunks/chunk-MH2RBMHQ.js +23 -0
  570. package/dist/chunks/chunk-MH7A4LKQ.js +1309 -0
  571. package/dist/chunks/chunk-MHA7I2IT.js +400 -0
  572. package/dist/chunks/chunk-MHMHBKDD.js +23 -0
  573. package/dist/chunks/chunk-MNXDQ5JD.js +167 -0
  574. package/dist/chunks/chunk-MOREWWL5.js +33 -0
  575. package/dist/chunks/chunk-MP7ASX2Q.js +103 -0
  576. package/dist/chunks/chunk-MPFSNDXP.js +225 -0
  577. package/dist/chunks/chunk-MQ5CLP6Y.js +100 -0
  578. package/dist/chunks/chunk-MQA5NVCI.js +146 -0
  579. package/dist/chunks/chunk-MSN26MAC.js +36 -0
  580. package/dist/chunks/chunk-MTAXOUTV.js +151 -0
  581. package/dist/chunks/chunk-MTG6STOB.js +99 -0
  582. package/dist/chunks/chunk-MU2EHNIH.js +178 -0
  583. package/dist/chunks/chunk-MUXBO7R5.js +131 -0
  584. package/dist/chunks/chunk-MV64ENH6.js +45 -0
  585. package/dist/chunks/chunk-MW6AUMIJ.js +87 -0
  586. package/dist/chunks/chunk-MY2GUA3Z.js +194 -0
  587. package/dist/chunks/chunk-N2UZF6MV.js +23 -0
  588. package/dist/chunks/chunk-N32DET4Y.js +141 -0
  589. package/dist/chunks/chunk-N3CQYI3B.js +304 -0
  590. package/dist/chunks/chunk-N45J7SVZ.js +41 -0
  591. package/dist/chunks/chunk-N5JKJXJX.js +260 -0
  592. package/dist/chunks/chunk-NA7TBGMD.js +108 -0
  593. package/dist/chunks/chunk-NAQTUC2A.js +140 -0
  594. package/dist/chunks/chunk-NAUEKVAH.js +108 -0
  595. package/dist/chunks/chunk-NBG5MRCW.js +738 -0
  596. package/dist/chunks/chunk-NBTUSMXF.js +270 -0
  597. package/dist/chunks/chunk-NF5JBQJW.js +234 -0
  598. package/dist/chunks/chunk-NI2BJVG6.js +118 -0
  599. package/dist/chunks/chunk-NIHPNDDJ.js +238 -0
  600. package/dist/chunks/chunk-NINUBA7T.js +201 -0
  601. package/dist/chunks/chunk-NITUBY6C.js +462 -0
  602. package/dist/chunks/chunk-NLHX7SAK.js +105 -0
  603. package/dist/chunks/chunk-NML6QG3V.js +123 -0
  604. package/dist/chunks/chunk-NNNWNAKR.js +173 -0
  605. package/dist/chunks/chunk-NQYAOOEL.js +157 -0
  606. package/dist/chunks/chunk-NTLJYZ64.js +77 -0
  607. package/dist/chunks/chunk-NUCIOZDY.js +113 -0
  608. package/dist/chunks/chunk-NURSPTT3.js +250 -0
  609. package/dist/chunks/chunk-NUXUM3QO.js +283 -0
  610. package/dist/chunks/chunk-NY6NJWZH.js +79 -0
  611. package/dist/chunks/chunk-NYBLIBKK.js +149 -0
  612. package/dist/chunks/chunk-O33POMOM.js +45 -0
  613. package/dist/chunks/chunk-O3D4O5KZ.js +122 -0
  614. package/dist/chunks/chunk-O3I46LK2.js +168 -0
  615. package/dist/chunks/chunk-O3YWP3C4.js +174 -0
  616. package/dist/chunks/chunk-O7APDMKU.js +162 -0
  617. package/dist/chunks/chunk-OAFO76BH.js +199 -0
  618. package/dist/chunks/chunk-OBMUU4LV.js +237 -0
  619. package/dist/chunks/chunk-OBSGEBEQ.js +93 -0
  620. package/dist/chunks/chunk-OCPB42WX.js +84 -0
  621. package/dist/chunks/chunk-ODS7J5ZT.js +146 -0
  622. package/dist/chunks/chunk-ODT4QS6Z.js +327 -0
  623. package/dist/chunks/chunk-OFAGEISK.js +157 -0
  624. package/dist/chunks/chunk-OFNGUJJY.js +112 -0
  625. package/dist/chunks/chunk-OGH5F4RT.js +80 -0
  626. package/dist/chunks/chunk-OGTA7MSU.js +80 -0
  627. package/dist/chunks/chunk-OGWEIRJE.js +96 -0
  628. package/dist/chunks/chunk-OHWEXH56.js +80 -0
  629. package/dist/chunks/chunk-OKSYESUC.js +190 -0
  630. package/dist/chunks/chunk-OLSOJ5GT.js +36 -0
  631. package/dist/chunks/chunk-OMSXEPRG.js +94 -0
  632. package/dist/chunks/chunk-ONTEUDRJ.js +231 -0
  633. package/dist/chunks/chunk-OOGYRLMA.js +177 -0
  634. package/dist/chunks/chunk-OOXGET6Y.js +191 -0
  635. package/dist/chunks/chunk-OQSAQTZ4.js +170 -0
  636. package/dist/chunks/chunk-OSPZV4ZI.js +44 -0
  637. package/dist/chunks/chunk-OT6OZQMJ.js +145 -0
  638. package/dist/chunks/chunk-OTAJ2WFF.js +117 -0
  639. package/dist/chunks/chunk-OTHMSE5E.js +164 -0
  640. package/dist/chunks/chunk-OUEUIBYB.js +265 -0
  641. package/dist/chunks/chunk-OVFOE4K4.js +169 -0
  642. package/dist/chunks/chunk-OVL6WOFA.js +206 -0
  643. package/dist/chunks/chunk-OVRZZL4T.js +231 -0
  644. package/dist/chunks/chunk-OWIO3C5E.js +94 -0
  645. package/dist/chunks/chunk-P3KIWKZJ.js +898 -0
  646. package/dist/chunks/chunk-P5QEUQ2R.js +158 -0
  647. package/dist/chunks/chunk-P5YFWNFD.js +207 -0
  648. package/dist/chunks/chunk-P6A4DMFP.js +109 -0
  649. package/dist/chunks/chunk-P6IQL6TU.js +152 -0
  650. package/dist/chunks/chunk-P7IKFM3I.js +91 -0
  651. package/dist/chunks/chunk-P7NRYPQN.js +391 -0
  652. package/dist/chunks/chunk-P7YVY4OM.js +100 -0
  653. package/dist/chunks/chunk-PAAI5GK5.js +160 -0
  654. package/dist/chunks/chunk-PBPVNQ6C.js +311 -0
  655. package/dist/chunks/chunk-PDRP3MFT.js +1393 -0
  656. package/dist/chunks/chunk-PEDXBG6V.js +103 -0
  657. package/dist/chunks/chunk-PGEWL5VQ.js +183 -0
  658. package/dist/chunks/chunk-PHLSGDZO.js +412 -0
  659. package/dist/chunks/chunk-PHMIM7KL.js +23 -0
  660. package/dist/chunks/chunk-PI6LBMNQ.js +215 -0
  661. package/dist/chunks/chunk-PJ42H4M7.js +166 -0
  662. package/dist/chunks/chunk-PL2JHOAX.js +154 -0
  663. package/dist/chunks/chunk-PLMFRRPV.js +74 -0
  664. package/dist/chunks/chunk-POFOI7NO.js +23 -0
  665. package/dist/chunks/chunk-PPNY57IP.js +169 -0
  666. package/dist/chunks/chunk-PPOZXGES.js +110 -0
  667. package/dist/chunks/chunk-PS5RV42A.js +100 -0
  668. package/dist/chunks/chunk-PTXYK6OH.js +160 -0
  669. package/dist/chunks/chunk-PV5XGV4R.js +1132 -0
  670. package/dist/chunks/chunk-PXIJTYFP.js +23 -0
  671. package/dist/chunks/chunk-PXU5BZ5Q.js +163 -0
  672. package/dist/chunks/chunk-PXXNO37G.js +278 -0
  673. package/dist/chunks/chunk-PZXBOQZN.js +124 -0
  674. package/dist/chunks/chunk-Q2KKD6ZJ.js +81 -0
  675. package/dist/chunks/chunk-Q4CXHJGI.js +378 -0
  676. package/dist/chunks/chunk-Q4XGUTJ6.js +95 -0
  677. package/dist/chunks/chunk-Q53R7LSS.js +165 -0
  678. package/dist/chunks/chunk-Q7Z7SSGS.js +118 -0
  679. package/dist/chunks/chunk-QB6YRK3L.js +163 -0
  680. package/dist/chunks/chunk-QCDYH3HO.js +90 -0
  681. package/dist/chunks/chunk-QCHB42M2.js +366 -0
  682. package/dist/chunks/chunk-QFFXZQH5.js +203 -0
  683. package/dist/chunks/chunk-QFHBBUYD.js +177 -0
  684. package/dist/chunks/chunk-QFKHAMJT.js +54 -0
  685. package/dist/chunks/chunk-QFO73T6R.js +30 -0
  686. package/dist/chunks/chunk-QGQ5WBFV.js +88 -0
  687. package/dist/chunks/chunk-QJ3IVD6I.js +122 -0
  688. package/dist/chunks/chunk-QJFFKYDX.js +107 -0
  689. package/dist/chunks/chunk-QJYW4TDU.js +220 -0
  690. package/dist/chunks/chunk-QK7KCBKG.js +261 -0
  691. package/dist/chunks/chunk-QKCUV6KR.js +163 -0
  692. package/dist/chunks/chunk-QLECHYCJ.js +153 -0
  693. package/dist/chunks/chunk-QN3BFID6.js +127 -0
  694. package/dist/chunks/chunk-QN5YGANO.js +130 -0
  695. package/dist/chunks/chunk-QN6B2GIZ.js +133 -0
  696. package/dist/chunks/chunk-QO36H4KI.js +78 -0
  697. package/dist/chunks/chunk-QOI27VGG.js +244 -0
  698. package/dist/chunks/chunk-QORYWNNT.js +138 -0
  699. package/dist/chunks/chunk-QPA4DBIP.js +53 -0
  700. package/dist/chunks/chunk-QSHK6PII.js +111 -0
  701. package/dist/chunks/chunk-QUSSG2ZK.js +169 -0
  702. package/dist/chunks/chunk-QX7BYX2M.js +11047 -0
  703. package/dist/chunks/chunk-QXQNRAPH.js +139 -0
  704. package/dist/chunks/chunk-QZEOSULK.js +41 -0
  705. package/dist/chunks/chunk-QZQZGVYO.js +144 -0
  706. package/dist/chunks/chunk-R2HH6LHS.js +1845 -0
  707. package/dist/chunks/chunk-R3RPQEL2.js +317 -0
  708. package/dist/chunks/chunk-R7QF6R3N.js +261 -0
  709. package/dist/chunks/chunk-RAOCFOTR.js +55 -0
  710. package/dist/chunks/chunk-RBGMDAOV.js +166 -0
  711. package/dist/chunks/chunk-RBZB4MT3.js +382 -0
  712. package/dist/chunks/chunk-RDQXFRUQ.js +125 -0
  713. package/dist/chunks/chunk-REID2NPP.js +119 -0
  714. package/dist/chunks/chunk-RF7F33MU.js +279 -0
  715. package/dist/chunks/chunk-RFPT4JQQ.js +60 -0
  716. package/dist/chunks/chunk-RJVW2OTT.js +115 -0
  717. package/dist/chunks/chunk-RKKOMZO6.js +33 -0
  718. package/dist/chunks/chunk-RKYIRB7C.js +39 -0
  719. package/dist/chunks/chunk-RMDC4ZOI.js +122 -0
  720. package/dist/chunks/chunk-RO4FESUC.js +282 -0
  721. package/dist/chunks/chunk-ROZDIKU2.js +36 -0
  722. package/dist/chunks/chunk-RPNX3W37.js +93 -0
  723. package/dist/chunks/chunk-RTLHQOM3.js +78 -0
  724. package/dist/chunks/chunk-RUI7USG5.js +85 -0
  725. package/dist/chunks/chunk-RX4M6KST.js +287 -0
  726. package/dist/chunks/chunk-RXDPCSLD.js +390 -0
  727. package/dist/chunks/chunk-RXG7T7TH.js +51 -0
  728. package/dist/chunks/chunk-RYCXNOJY.js +100 -0
  729. package/dist/chunks/chunk-RZ6BQ24D.js +121 -0
  730. package/dist/chunks/chunk-S2NXTQYX.js +135 -0
  731. package/dist/chunks/chunk-S2PW3D5R.js +185 -0
  732. package/dist/chunks/chunk-S37F4WD5.js +262 -0
  733. package/dist/chunks/chunk-S3XKFDBM.js +140 -0
  734. package/dist/chunks/chunk-S4K6WYPE.js +116 -0
  735. package/dist/chunks/chunk-S7BGSBZS.js +33 -0
  736. package/dist/chunks/chunk-S7V2MJIH.js +90 -0
  737. package/dist/chunks/chunk-SAEVORI3.js +78 -0
  738. package/dist/chunks/chunk-SAVABDVA.js +198 -0
  739. package/dist/chunks/chunk-SC3KJUK4.js +61 -0
  740. package/dist/chunks/chunk-SCECZ7O2.js +131 -0
  741. package/dist/chunks/chunk-SCREZMKA.js +143 -0
  742. package/dist/chunks/chunk-SEGMYWT5.js +204 -0
  743. package/dist/chunks/chunk-SFTN3236.js +155 -0
  744. package/dist/chunks/chunk-SHB7PSPV.js +93 -0
  745. package/dist/chunks/chunk-SJIJXDZF.js +79 -0
  746. package/dist/chunks/chunk-SK7C77RP.js +230 -0
  747. package/dist/chunks/chunk-SKDZZLVY.js +23 -0
  748. package/dist/chunks/chunk-SLQKGCIA.js +86 -0
  749. package/dist/chunks/chunk-SOBXZNTD.js +162 -0
  750. package/dist/chunks/chunk-SPRPUZ3H.js +112 -0
  751. package/dist/chunks/chunk-SQG4G3PA.js +336 -0
  752. package/dist/chunks/chunk-SQMEMBWT.js +777 -0
  753. package/dist/chunks/chunk-SQTZKZ4G.js +23 -0
  754. package/dist/chunks/chunk-SR4TP75H.js +98 -0
  755. package/dist/chunks/chunk-SRAJ5PNX.js +106 -0
  756. package/dist/chunks/chunk-SRROMFBW.js +315 -0
  757. package/dist/chunks/chunk-ST677U2P.js +198 -0
  758. package/dist/chunks/chunk-STD7SM5H.js +137 -0
  759. package/dist/chunks/chunk-SUMRUI7X.js +412 -0
  760. package/dist/chunks/chunk-SUOFNWHY.js +89 -0
  761. package/dist/chunks/chunk-SWKYIIDD.js +48 -0
  762. package/dist/chunks/chunk-SWZHIH46.js +115 -0
  763. package/dist/chunks/chunk-SXDEXQBW.js +68 -0
  764. package/dist/chunks/chunk-SXK76ZOH.js +331 -0
  765. package/dist/chunks/chunk-SXUNSSRJ.js +33 -0
  766. package/dist/chunks/chunk-T26BMAIP.js +297 -0
  767. package/dist/chunks/chunk-T3HQZPPR.js +77 -0
  768. package/dist/chunks/chunk-TAGXQCXV.js +62 -0
  769. package/dist/chunks/chunk-TARJUWS6.js +170 -0
  770. package/dist/chunks/chunk-TBOT7VW7.js +45 -0
  771. package/dist/chunks/chunk-TCDV5UY2.js +170 -0
  772. package/dist/chunks/chunk-TCKVH2X6.js +176 -0
  773. package/dist/chunks/chunk-TDE7TW2F.js +154 -0
  774. package/dist/chunks/chunk-TEFJW4NZ.js +85 -0
  775. package/dist/chunks/chunk-TGSO26VR.js +340 -0
  776. package/dist/chunks/chunk-TH56ELBN.js +156 -0
  777. package/dist/chunks/chunk-TH62QPUN.js +112 -0
  778. package/dist/chunks/chunk-THO74VRS.js +298 -0
  779. package/dist/chunks/chunk-THQQDD4D.js +92 -0
  780. package/dist/chunks/chunk-THSQSLZ2.js +262 -0
  781. package/dist/chunks/chunk-TIC26HFV.js +122 -0
  782. package/dist/chunks/chunk-TJCXGMBS.js +209 -0
  783. package/dist/chunks/chunk-TKFFIQV4.js +23 -0
  784. package/dist/chunks/chunk-TM4LPOUZ.js +1649 -0
  785. package/dist/chunks/chunk-TNE5Z6IB.js +95 -0
  786. package/dist/chunks/chunk-TOG2O2P2.js +104 -0
  787. package/dist/chunks/chunk-TORA6ZBF.js +92 -0
  788. package/dist/chunks/chunk-TQ3U7WSC.js +145 -0
  789. package/dist/chunks/chunk-TRKY4KBA.js +41 -0
  790. package/dist/chunks/chunk-TSETHLMX.js +512 -0
  791. package/dist/chunks/chunk-TSZLSYVJ.js +75 -0
  792. package/dist/chunks/chunk-TTYZYD3I.js +558 -0
  793. package/dist/chunks/chunk-TUJKLV6B.js +261 -0
  794. package/dist/chunks/chunk-TVHRTJZQ.js +150 -0
  795. package/dist/chunks/chunk-TVR72SGP.js +117 -0
  796. package/dist/chunks/chunk-TWSGXSNX.js +479 -0
  797. package/dist/chunks/chunk-TX2GRMVH.js +632 -0
  798. package/dist/chunks/chunk-TXR7ODD5.js +23 -0
  799. package/dist/chunks/chunk-TXS6YZU7.js +94 -0
  800. package/dist/chunks/chunk-TY3HO5DD.js +196 -0
  801. package/dist/chunks/chunk-TZHWIVE5.js +1188 -0
  802. package/dist/chunks/chunk-U2YFUJ7J.js +106 -0
  803. package/dist/chunks/chunk-U4DTMXZV.js +33 -0
  804. package/dist/chunks/chunk-U4U7QJ4C.js +75 -0
  805. package/dist/chunks/chunk-U5CWENRS.js +361 -0
  806. package/dist/chunks/chunk-U66C744L.js +141 -0
  807. package/dist/chunks/chunk-U7KFCH5U.js +23 -0
  808. package/dist/chunks/chunk-U7KVOBXZ.js +157 -0
  809. package/dist/chunks/chunk-UAIFVQOA.js +156 -0
  810. package/dist/chunks/chunk-UBCYP6QI.js +260 -0
  811. package/dist/chunks/chunk-UEPHAAVS.js +83 -0
  812. package/dist/chunks/chunk-UEWGZ7ZN.js +106 -0
  813. package/dist/chunks/chunk-UHA23T2C.js +1574 -0
  814. package/dist/chunks/chunk-UHQDLMCA.js +182 -0
  815. package/dist/chunks/chunk-UJS5YPK4.js +484 -0
  816. package/dist/chunks/chunk-UK34EPJD.js +138 -0
  817. package/dist/chunks/chunk-UKEUGRG4.js +194 -0
  818. package/dist/chunks/chunk-UL2VPV72.js +247 -0
  819. package/dist/chunks/chunk-UL47XQC4.js +90 -0
  820. package/dist/chunks/chunk-UMHPXVRM.js +457 -0
  821. package/dist/chunks/chunk-UQCMMG7O.js +161 -0
  822. package/dist/chunks/chunk-UQXM4EU6.js +84 -0
  823. package/dist/chunks/chunk-URAYGWW3.js +153 -0
  824. package/dist/chunks/chunk-USJFXSQX.js +172 -0
  825. package/dist/chunks/chunk-UTMEN2SL.js +88 -0
  826. package/dist/chunks/chunk-UUOJPCLB.js +102 -0
  827. package/dist/chunks/chunk-UVRRQDSC.js +187 -0
  828. package/dist/chunks/chunk-UXMVCEV6.js +139 -0
  829. package/dist/chunks/chunk-UXTRBMKW.js +146 -0
  830. package/dist/chunks/chunk-V25RKIHS.js +136 -0
  831. package/dist/chunks/chunk-V3D27EBS.js +23 -0
  832. package/dist/chunks/chunk-V4QT5TNS.js +97 -0
  833. package/dist/chunks/chunk-V5YL5VIW.js +111 -0
  834. package/dist/chunks/chunk-V5Z7HEWL.js +23 -0
  835. package/dist/chunks/chunk-V7XHUGX5.js +226 -0
  836. package/dist/chunks/chunk-VB2QT3P7.js +10425 -0
  837. package/dist/chunks/chunk-VB3JCUHE.js +106 -0
  838. package/dist/chunks/chunk-VB3UA2ZJ.js +112 -0
  839. package/dist/chunks/chunk-VCA2FKMF.js +464 -0
  840. package/dist/chunks/chunk-VCH5W7EW.js +487 -0
  841. package/dist/chunks/chunk-VDAZRVVL.js +117 -0
  842. package/dist/chunks/chunk-VDNB6BVC.js +83 -0
  843. package/dist/chunks/chunk-VEEHHRGB.js +84 -0
  844. package/dist/chunks/chunk-VELAO7KY.js +95 -0
  845. package/dist/chunks/chunk-VETL4UOP.js +124 -0
  846. package/dist/chunks/chunk-VF2CGZGQ.js +428 -0
  847. package/dist/chunks/chunk-VHB3NN3N.js +206 -0
  848. package/dist/chunks/chunk-VHNJSBLQ.js +305 -0
  849. package/dist/chunks/chunk-VI4XLCBB.js +196 -0
  850. package/dist/chunks/chunk-VIDOT3BT.js +803 -0
  851. package/dist/chunks/chunk-VJ65B6XT.js +116 -0
  852. package/dist/chunks/chunk-VJKFEJPG.js +112 -0
  853. package/dist/chunks/chunk-VJTMGZIF.js +159 -0
  854. package/dist/chunks/chunk-VKMQPITY.js +86 -0
  855. package/dist/chunks/chunk-VKZ2VJZJ.js +105 -0
  856. package/dist/chunks/chunk-VLB4KIHU.js +10182 -0
  857. package/dist/chunks/chunk-VMP4CDDC.js +33 -0
  858. package/dist/chunks/chunk-VNOEAP4Z.js +1307 -0
  859. package/dist/chunks/chunk-VQ3P562E.js +480 -0
  860. package/dist/chunks/chunk-VQFCNLSU.js +157 -0
  861. package/dist/chunks/chunk-VRMOABZB.js +170 -0
  862. package/dist/chunks/chunk-VSCIKRIG.js +385 -0
  863. package/dist/chunks/chunk-VVMN2PBM.js +97 -0
  864. package/dist/chunks/chunk-VW3PMAH4.js +100 -0
  865. package/dist/chunks/chunk-VYPACEAR.js +256 -0
  866. package/dist/chunks/chunk-VZRR2GPU.js +194 -0
  867. package/dist/chunks/chunk-W2UFHFDJ.js +45 -0
  868. package/dist/chunks/chunk-W3G3WOBH.js +81 -0
  869. package/dist/chunks/chunk-W5N2TFEA.js +149 -0
  870. package/dist/chunks/chunk-W5NE37NW.js +141 -0
  871. package/dist/chunks/chunk-W6DLY4HH.js +60 -0
  872. package/dist/chunks/chunk-W7KBVCTT.js +103 -0
  873. package/dist/chunks/chunk-WABAIWOA.js +101 -0
  874. package/dist/chunks/chunk-WBFFALRV.js +246 -0
  875. package/dist/chunks/chunk-WF4LNUA3.js +212 -0
  876. package/dist/chunks/chunk-WHJTTP23.js +33 -0
  877. package/dist/chunks/chunk-WHNMFGHU.js +182 -0
  878. package/dist/chunks/chunk-WIPYOZHQ.js +45 -0
  879. package/dist/chunks/chunk-WIV4BZGQ.js +112 -0
  880. package/dist/chunks/chunk-WJVPTFHW.js +274 -0
  881. package/dist/chunks/chunk-WKRGGLHZ.js +74 -0
  882. package/dist/chunks/chunk-WLLBZZXO.js +185 -0
  883. package/dist/chunks/chunk-WLMST5SL.js +276 -0
  884. package/dist/chunks/chunk-WMKIEPED.js +358 -0
  885. package/dist/chunks/chunk-WMRGILUM.js +79 -0
  886. package/dist/chunks/chunk-WTDOX47Q.js +100 -0
  887. package/dist/chunks/chunk-WUZXZD2D.js +497 -0
  888. package/dist/chunks/chunk-WYZC5IPY.js +624 -0
  889. package/dist/chunks/chunk-WZG7BJQ2.js +93 -0
  890. package/dist/chunks/chunk-X3LPS3PL.js +330 -0
  891. package/dist/chunks/chunk-X4YMXKKS.js +23 -0
  892. package/dist/chunks/chunk-X6SXY6RV.js +102 -0
  893. package/dist/chunks/chunk-X6UZTNWO.js +255 -0
  894. package/dist/chunks/chunk-XADSA6WW.js +503 -0
  895. package/dist/chunks/chunk-XAFCPB5K.js +181 -0
  896. package/dist/chunks/chunk-XBTWL72L.js +33 -0
  897. package/dist/chunks/chunk-XCAEZS56.js +351 -0
  898. package/dist/chunks/chunk-XDGH7XJ2.js +150 -0
  899. package/dist/chunks/chunk-XDGHQLMH.js +150 -0
  900. package/dist/chunks/chunk-XESYDWO7.js +175 -0
  901. package/dist/chunks/chunk-XET6DOYD.js +71 -0
  902. package/dist/chunks/chunk-XEYLCUTG.js +198 -0
  903. package/dist/chunks/chunk-XFJ4FYVP.js +87 -0
  904. package/dist/chunks/chunk-XFTO6R7G.js +261 -0
  905. package/dist/chunks/chunk-XG6DFZPR.js +361 -0
  906. package/dist/chunks/chunk-XGCZEVSE.js +95 -0
  907. package/dist/chunks/chunk-XGMZFZLX.js +368 -0
  908. package/dist/chunks/chunk-XJCR63LR.js +283 -0
  909. package/dist/chunks/chunk-XJLAC2XI.js +80 -0
  910. package/dist/chunks/chunk-XM6DIAFX.js +204 -0
  911. package/dist/chunks/chunk-XNUUN63I.js +108 -0
  912. package/dist/chunks/chunk-XNZ23ICS.js +151 -0
  913. package/dist/chunks/chunk-XOWCJUZX.js +104 -0
  914. package/dist/chunks/chunk-XVM6A5DD.js +251 -0
  915. package/dist/chunks/chunk-XVZVE7VD.js +514 -0
  916. package/dist/chunks/chunk-XYY2NQK6.js +327 -0
  917. package/dist/chunks/chunk-XZ6FGNG5.js +105 -0
  918. package/dist/chunks/chunk-XZC37K4Q.js +284 -0
  919. package/dist/chunks/chunk-Y2GSCCDX.js +23 -0
  920. package/dist/chunks/chunk-Y34IK6FH.js +1804 -0
  921. package/dist/chunks/chunk-Y3JRZECN.js +189 -0
  922. package/dist/chunks/chunk-Y3NU24MO.js +172 -0
  923. package/dist/chunks/chunk-Y5O7OZA6.js +222 -0
  924. package/dist/chunks/chunk-Y66RYOXD.js +163 -0
  925. package/dist/chunks/chunk-Y7RIDQCI.js +79 -0
  926. package/dist/chunks/chunk-YAAK4UP3.js +97 -0
  927. package/dist/chunks/chunk-YAMPOT4S.js +122 -0
  928. package/dist/chunks/chunk-YBMFHVGV.js +152 -0
  929. package/dist/chunks/chunk-YD4VVZCN.js +47 -0
  930. package/dist/chunks/chunk-YD7SOI6Q.js +177 -0
  931. package/dist/chunks/chunk-YEBP2C5D.js +266 -0
  932. package/dist/chunks/chunk-YENQRE5H.js +100 -0
  933. package/dist/chunks/chunk-YGFUDVW6.js +152 -0
  934. package/dist/chunks/chunk-YGVGBYZU.js +181 -0
  935. package/dist/chunks/chunk-YH5Q2ZLB.js +166 -0
  936. package/dist/chunks/chunk-YHIH4NOY.js +149 -0
  937. package/dist/chunks/chunk-YHJ2I4YG.js +164 -0
  938. package/dist/chunks/chunk-YHP27F72.js +53 -0
  939. package/dist/chunks/chunk-YHWRHA6C.js +53 -0
  940. package/dist/chunks/chunk-YI7AYYKO.js +77 -0
  941. package/dist/chunks/chunk-YIVOJEIX.js +66 -0
  942. package/dist/chunks/chunk-YOII6SJF.js +197 -0
  943. package/dist/chunks/chunk-YPESQICC.js +38 -0
  944. package/dist/chunks/chunk-YPFVTYA2.js +192 -0
  945. package/dist/chunks/chunk-YTJRWEJA.js +471 -0
  946. package/dist/chunks/chunk-YTSZJ5GS.js +91 -0
  947. package/dist/chunks/chunk-YVUYNEKE.js +200 -0
  948. package/dist/chunks/chunk-YXEKA5PU.js +33 -0
  949. package/dist/chunks/chunk-YYIFIWE7.js +195 -0
  950. package/dist/chunks/chunk-YZB4M5WN.js +151 -0
  951. package/dist/chunks/chunk-Z2J4D33F.js +231 -0
  952. package/dist/chunks/chunk-Z46TW6X2.js +184 -0
  953. package/dist/chunks/chunk-Z7TZTRPQ.js +45 -0
  954. package/dist/chunks/chunk-ZALRNSW5.js +107 -0
  955. package/dist/chunks/chunk-ZAO3BCZ4.js +42 -0
  956. package/dist/chunks/chunk-ZAO4CXUV.js +23 -0
  957. package/dist/chunks/chunk-ZC635HJD.js +361 -0
  958. package/dist/chunks/chunk-ZD42XWVU.js +160 -0
  959. package/dist/chunks/chunk-ZI7GDM35.js +161 -0
  960. package/dist/chunks/chunk-ZIHKLSPG.js +171 -0
  961. package/dist/chunks/chunk-ZKZ5QU5V.js +33 -0
  962. package/dist/chunks/chunk-ZMDDFSDE.js +187 -0
  963. package/dist/chunks/chunk-ZMVSPG6H.js +82 -0
  964. package/dist/chunks/chunk-ZPEGEDPD.js +33 -0
  965. package/dist/chunks/chunk-ZTXZVDQO.js +196 -0
  966. package/dist/chunks/chunk-ZU3VB6IG.js +266 -0
  967. package/dist/chunks/chunk-ZUYAAMGW.js +121 -0
  968. package/dist/chunks/chunk-ZV2V2KK5.js +141 -0
  969. package/dist/chunks/chunk-ZV5CIVTN.js +98 -0
  970. package/dist/chunks/chunk-ZWQL5ND2.js +85 -0
  971. package/dist/chunks/chunk-ZWSJXS2P.js +101 -0
  972. package/dist/chunks/chunk-ZWYDL5WG.js +137 -0
  973. package/dist/chunks/chunk-ZXO6X6TJ.js +130 -0
  974. package/dist/chunks/chunk-ZXT7BHFK.js +567 -0
  975. package/dist/chunks/client-GXOJ2SK7.js +167 -0
  976. package/dist/chunks/client-JNBB55EX.js +44 -0
  977. package/dist/chunks/client-VLRSGSMT.js +31 -0
  978. package/dist/chunks/client-actions-MLXNUGSS.js +156 -0
  979. package/dist/chunks/client-store-AFPAZKZE.js +33 -0
  980. package/dist/chunks/components-X4JLTAOS.js +71 -0
  981. package/dist/chunks/dangerous-SETMYTN3.js +116 -0
  982. package/dist/chunks/document-library-2UNJ53LK.js +62 -0
  983. package/dist/chunks/editor-seams-OQAFOJI4.js +157 -0
  984. package/dist/chunks/editor-store-NJ4MRUTP.js +135 -0
  985. package/dist/chunks/export-2ZFGGPUM.js +67 -0
  986. package/dist/chunks/export-fills-VS4VV6C4.js +35 -0
  987. package/dist/chunks/export-watermark-5LBWAZ3S.js +142 -0
  988. package/dist/chunks/eyedropper-PUDJWNPC.js +345 -0
  989. package/dist/chunks/fonts-6AMHDLOR.js +39 -0
  990. package/dist/chunks/generate-media-UGEZAXCP.js +253 -0
  991. package/dist/chunks/headless-F7NGN6XS.js +186 -0
  992. package/dist/chunks/host-PYXRSU3A.js +239 -0
  993. package/dist/chunks/host-XQG4NNEM.js +167 -0
  994. package/dist/chunks/import-M3S5YSER.js +702 -0
  995. package/dist/chunks/import-merge-GMGMRNJH.js +35 -0
  996. package/dist/chunks/instances-44O2OKTS.js +79 -0
  997. package/dist/chunks/integrations-VDSIL3YY.js +115 -0
  998. package/dist/chunks/invariants-Y4REIFB4.js +61 -0
  999. package/dist/chunks/kit-modules-IMP2JUFH.js +18 -0
  1000. package/dist/chunks/libraries-6THB6H5C.js +298 -0
  1001. package/dist/chunks/library-previews-3IG5DPMU.js +199 -0
  1002. package/dist/chunks/live-LQ4LJE5T.js +308 -0
  1003. package/dist/chunks/lottie-FVEYORWJ.js +85 -0
  1004. package/dist/chunks/media-tool-O5HQES6N.js +328 -0
  1005. package/dist/chunks/new-file-IXRI5FF2.js +125 -0
  1006. package/dist/chunks/next-commerce-RQ2DGR26.js +66 -0
  1007. package/dist/chunks/page-thumbnails-M24U3JAO.js +133 -0
  1008. package/dist/chunks/pdf-GMZAPMRD.js +1216 -0
  1009. package/dist/chunks/pdf-import-B6EZYYQC.js +370 -0
  1010. package/dist/chunks/plan-GRXCHH66.js +82 -0
  1011. package/dist/chunks/player-check-WN2GR2PK.js +113 -0
  1012. package/dist/chunks/plugin-KEBRTQTN.js +123 -0
  1013. package/dist/chunks/plugin-import-EA7N6PND.js +660 -0
  1014. package/dist/chunks/pptx-EAWSIPT4.js +309 -0
  1015. package/dist/chunks/presence-OL4OBWO7.js +123 -0
  1016. package/dist/chunks/preview-media-YVIYCXA6.js +121 -0
  1017. package/dist/chunks/project-UVM2AYVW.js +1648 -0
  1018. package/dist/chunks/publish-site-RXV2YI2W.js +154 -0
  1019. package/dist/chunks/publish-store-EUI6UU5O.js +93 -0
  1020. package/dist/chunks/raster-actions-HRPA4JHC.js +225 -0
  1021. package/dist/chunks/reference-images-MA3YCEO6.js +62 -0
  1022. package/dist/chunks/resolvers-XK3LPQEY.js +138 -0
  1023. package/dist/chunks/review-kits-6HMTH4T4.js +41 -0
  1024. package/dist/chunks/runner-CLMKK5RT.js +1229 -0
  1025. package/dist/chunks/runtime-G3ZENLKG.js +32 -0
  1026. package/dist/chunks/shader-preview-4VQPTGDS.js +518 -0
  1027. package/dist/chunks/shaper-5ZNY5DTX.js +64 -0
  1028. package/dist/chunks/sites-3JKAKXQN.js +33 -0
  1029. package/dist/chunks/store-VTBBTRHZ.js +220 -0
  1030. package/dist/chunks/storefront-IHRHTJKS.js +327 -0
  1031. package/dist/chunks/storefront-prepare-3NO4J3C5.js +33 -0
  1032. package/dist/chunks/stress-document-VC4CJ2LR.js +126 -0
  1033. package/dist/chunks/svg-export-NYENZCJL.js +80 -0
  1034. package/dist/chunks/svg-place-ABKQLXWN.js +39 -0
  1035. package/dist/chunks/sync-C75YXPKS.js +149 -0
  1036. package/dist/chunks/tabs-T2JJYBAR.js +307 -0
  1037. package/dist/chunks/team-P5YGDX25.js +44 -0
  1038. package/dist/chunks/templates-E2RSOQGW.js +181 -0
  1039. package/dist/chunks/tools-UIBU4UDE.js +35 -0
  1040. package/dist/chunks/tree-CXIRATHO.js +72 -0
  1041. package/dist/chunks/ui-commands-BHPGYGOX.js +265 -0
  1042. package/dist/chunks/use-ZU574W54.js +45 -0
  1043. package/dist/chunks/versions-ZH26XLWN.js +307 -0
  1044. package/dist/chunks/video-EKB3VOPB.js +75 -0
  1045. package/dist/chunks/web-CRD2WZ6X.js +170 -0
  1046. package/dist/fonts/chars.txt +1 -1
  1047. package/dist/index.js +64 -63
  1048. package/dist/lib/document/instances.js +3 -3
  1049. package/dist/lib/document/libraries.js +7 -6
  1050. package/dist/lib/document/photo-frames.js +7 -6
  1051. package/dist/lib/document/print-pages.js +6 -5
  1052. package/dist/lib/document/scene-graph.js +6 -5
  1053. package/dist/lib/editor/prototype-connect.js +7 -6
  1054. package/dist/lib/engine/text/fallback-fonts.js +4 -4
  1055. package/dist/lib/engine/text/measure.js +5 -5
  1056. package/dist/lib/extensions/qr/encoder.js +28 -0
  1057. package/dist/lib/marketplace/motion.js +11 -10
  1058. package/dist/lib/motion/audio-clips.js +5 -5
  1059. package/dist/lib/motion/author.js +12 -11
  1060. package/dist/lib/motion/key-selection.js +6 -6
  1061. package/dist/lib/motion/pose.js +13 -12
  1062. package/dist/lib/motion/present.js +19 -18
  1063. package/dist/lib/motion/presets.js +13 -12
  1064. package/dist/lib/motion/properties.js +2 -2
  1065. package/dist/lib/motion/shader-audio.js +4 -4
  1066. package/dist/lib/motion/spatial.js +6 -6
  1067. package/dist/lib/motion/text-animators.js +6 -6
  1068. package/dist/lib/presets/page-presets.js +2 -1
  1069. package/dist/lib/slides/slides.js +7 -6
  1070. package/dist/lib/templates/apply.js +8 -7
  1071. package/dist/lib/templates/capabilities.js +14 -13
  1072. package/dist/lib/templates/capture.js +9 -8
  1073. package/dist/lib/templates/finish.js +25 -24
  1074. package/dist/lib/templates/layout.js +13 -12
  1075. package/dist/lib/templates/resize.js +8 -7
  1076. package/dist/lib/templates/text-measurer.js +6 -6
  1077. package/dist/lib/templates/upload.js +7 -6
  1078. package/dist/lib/templates/vocabulary.js +6 -5
  1079. package/dist/lib/units/units.js +34 -0
  1080. package/dist/migrations/board-meta.js +10 -9
  1081. package/dist/migrations/brand-media.js +29 -28
  1082. package/dist/migrations/brand-slots.js +7 -6
  1083. package/dist/migrations/categories.js +7 -6
  1084. package/dist/migrations/hug-content.js +14 -13
  1085. package/dist/migrations/index.js +56 -55
  1086. package/dist/migrations/min-type.js +17 -16
  1087. package/dist/migrations/text-on-dark.js +10 -9
  1088. package/dist/migrations/timeline-facets.js +28 -27
  1089. package/dist/migrations/violet-ink.js +10 -9
  1090. package/dist/seed/files.json +1 -1
  1091. package/dist/seed/popcraft.comic-cover-pulp.json.gz +0 -0
  1092. package/dist/seed/popcraft.comic-radial.json.gz +0 -0
  1093. package/dist/templates/anime/character.js +44 -43
  1094. package/dist/templates/anime/duel.js +47 -46
  1095. package/dist/templates/anime/morning.js +47 -46
  1096. package/dist/templates/anime/rain.js +47 -46
  1097. package/dist/templates/anime/shared.js +45 -44
  1098. package/dist/templates/anime/starlight.js +47 -46
  1099. package/dist/templates/anime/titan.js +47 -46
  1100. package/dist/templates/app/festival-presale-electronic-ticket.js +49 -48
  1101. package/dist/templates/app/festival-presale-family-ticket.js +49 -48
  1102. package/dist/templates/app/festival-presale-folk-ticket.js +49 -48
  1103. package/dist/templates/app/festival-presale-food-ticket.js +49 -48
  1104. package/dist/templates/app/festival-presale-jazz-ticket.js +49 -48
  1105. package/dist/templates/app/festival-presale-street-ticket.js +50 -49
  1106. package/dist/templates/app/music/build.js +30 -29
  1107. package/dist/templates/app/music/world.js +13 -12
  1108. package/dist/templates/app/music-grove.js +45 -44
  1109. package/dist/templates/app/music-nightline.js +45 -44
  1110. package/dist/templates/app/music-orbit.js +45 -44
  1111. package/dist/templates/app/music-undertow.js +45 -44
  1112. package/dist/templates/app/onboarding-carousel.js +43 -42
  1113. package/dist/templates/app/saas-store-paywall.js +43 -42
  1114. package/dist/templates/app/splash.js +43 -42
  1115. package/dist/templates/app/success-confetti.js +43 -42
  1116. package/dist/templates/app/tour-tickets-june-ticket.js +43 -42
  1117. package/dist/templates/app/tour-tickets-tide-ticket.js +43 -42
  1118. package/dist/templates/app/tour-tickets-wreck-ticket.js +43 -42
  1119. package/dist/templates/build.js +27 -26
  1120. package/dist/templates/cards/index.js +45 -44
  1121. package/dist/templates/cards/shared.js +43 -42
  1122. package/dist/templates/cards/themes.js +44 -43
  1123. package/dist/templates/count.js +18 -17
  1124. package/dist/templates/data/bars.js +43 -42
  1125. package/dist/templates/data/countdown-story.js +43 -42
  1126. package/dist/templates/data/counters.js +43 -42
  1127. package/dist/templates/data/donut.js +43 -42
  1128. package/dist/templates/data/line.js +43 -42
  1129. package/dist/templates/data/year-in-review.js +43 -42
  1130. package/dist/templates/effects/glass-intro.js +43 -42
  1131. package/dist/templates/effects/glass-promo.js +43 -42
  1132. package/dist/templates/effects/grain-story.js +43 -42
  1133. package/dist/templates/effects/grid-intro.js +43 -42
  1134. package/dist/templates/effects/halftone-story.js +43 -42
  1135. package/dist/templates/effects/mesh-story.js +43 -42
  1136. package/dist/templates/effects/shader-title.js +43 -42
  1137. package/dist/templates/email/april-fools-header.js +45 -44
  1138. package/dist/templates/email/art-deco-invitation.js +45 -44
  1139. package/dist/templates/email/autumn-harvest-header.js +45 -44
  1140. package/dist/templates/email/back-to-school-header.js +45 -44
  1141. package/dist/templates/email/black-friday-coupons-header.js +45 -44
  1142. package/dist/templates/email/black-friday-header.js +44 -43
  1143. package/dist/templates/email/black-friday-neon-header.js +47 -46
  1144. package/dist/templates/email/black-friday-scratch-header.js +45 -44
  1145. package/dist/templates/email/black-friday-ticker-header.js +45 -44
  1146. package/dist/templates/email/broadsheet-weekly-edition-header.js +44 -43
  1147. package/dist/templates/email/claymation-header.js +46 -45
  1148. package/dist/templates/email/countdown-gif.js +44 -43
  1149. package/dist/templates/email/cyberpunk-header.js +47 -46
  1150. package/dist/templates/email/diwali-header.js +46 -45
  1151. package/dist/templates/email/earth-day-header.js +46 -45
  1152. package/dist/templates/email/festival-presale-electronic-header.js +49 -48
  1153. package/dist/templates/email/festival-presale-family-header.js +49 -48
  1154. package/dist/templates/email/festival-presale-folk-header.js +49 -48
  1155. package/dist/templates/email/festival-presale-food-header.js +49 -48
  1156. package/dist/templates/email/festival-presale-jazz-header.js +49 -48
  1157. package/dist/templates/email/festival-presale-street-header.js +50 -49
  1158. package/dist/templates/email/gothic-header.js +44 -43
  1159. package/dist/templates/email/halloween-header.js +46 -45
  1160. package/dist/templates/email/header-launch.js +44 -43
  1161. package/dist/templates/email/header-newsletter.js +44 -43
  1162. package/dist/templates/email/header-sale.js +44 -43
  1163. package/dist/templates/email/lunar-new-year-header.js +46 -45
  1164. package/dist/templates/email/manuscript-chronicle-header.js +45 -44
  1165. package/dist/templates/email/new-year-header.js +46 -45
  1166. package/dist/templates/email/noir-header.js +47 -46
  1167. package/dist/templates/email/psychedelic-header.js +46 -45
  1168. package/dist/templates/email/riso-zine-changelog-header.js +47 -46
  1169. package/dist/templates/email/saas-mail-changelog.js +46 -45
  1170. package/dist/templates/email/saas-mail-day-one.js +46 -45
  1171. package/dist/templates/email/saas-mail-day-three.js +45 -44
  1172. package/dist/templates/email/saas-mail-launch.js +45 -44
  1173. package/dist/templates/email/saas-mail-payment-failed.js +45 -44
  1174. package/dist/templates/email/saas-mail-sign-in-code.js +45 -44
  1175. package/dist/templates/email/saas-mail-trial-ending.js +45 -44
  1176. package/dist/templates/email/saas-mail-waitlist.js +45 -44
  1177. package/dist/templates/email/shared.js +29 -28
  1178. package/dist/templates/email/singles-day-header.js +46 -45
  1179. package/dist/templates/email/solarpunk-header.js +46 -45
  1180. package/dist/templates/email/space-opera-header.js +46 -45
  1181. package/dist/templates/email/spring-bloom-header.js +46 -45
  1182. package/dist/templates/email/style-bento-header.js +45 -44
  1183. package/dist/templates/email/style-brutalist-header.js +45 -44
  1184. package/dist/templates/email/style-dark-header.js +45 -44
  1185. package/dist/templates/email/style-data-header.js +45 -44
  1186. package/dist/templates/email/style-editorial-header.js +45 -44
  1187. package/dist/templates/email/style-glass-header.js +46 -45
  1188. package/dist/templates/email/style-gradient-header.js +45 -44
  1189. package/dist/templates/email/style-maximal-header.js +45 -44
  1190. package/dist/templates/email/style-pastel-header.js +46 -45
  1191. package/dist/templates/email/style-sketch-header.js +46 -45
  1192. package/dist/templates/email/style-swiss-header.js +45 -44
  1193. package/dist/templates/email/style-terminal-header.js +47 -46
  1194. package/dist/templates/email/summer-heatwave-header.js +46 -45
  1195. package/dist/templates/email/tour-tickets-june-header.js +44 -43
  1196. package/dist/templates/email/tour-tickets-tide-header.js +44 -43
  1197. package/dist/templates/email/tour-tickets-wreck-header.js +44 -43
  1198. package/dist/templates/email/transit-map-service-update.js +46 -45
  1199. package/dist/templates/email/ukiyo-e-greeting-header.js +46 -45
  1200. package/dist/templates/email/valentines-header.js +46 -45
  1201. package/dist/templates/email/winter-cosy-header.js +47 -46
  1202. package/dist/templates/email/winter-holidays-header.js +47 -46
  1203. package/dist/templates/fonts.js +6 -6
  1204. package/dist/templates/game/blossom-bash-puzzle.js +44 -43
  1205. package/dist/templates/game/deckbound-roguelike.js +44 -43
  1206. package/dist/templates/game/emberfall-rpg.js +44 -43
  1207. package/dist/templates/game/hearthmoor-farm.js +44 -43
  1208. package/dist/templates/game/index.js +57 -56
  1209. package/dist/templates/game/iron-lotus-fighter.js +44 -43
  1210. package/dist/templates/game/ironroot-rts.js +44 -43
  1211. package/dist/templates/game/mossy-hollow-platformer.js +46 -45
  1212. package/dist/templates/game/neon-apex-racing.js +44 -43
  1213. package/dist/templates/game/platformer.js +45 -44
  1214. package/dist/templates/game/pulse-riot-rhythm.js +44 -43
  1215. package/dist/templates/game/shared.js +29 -28
  1216. package/dist/templates/game/sprout-quest-pixel-platformer.js +46 -45
  1217. package/dist/templates/game/vanta-fps.js +44 -43
  1218. package/dist/templates/index.js +900 -885
  1219. package/dist/templates/index.json +742 -248
  1220. package/dist/templates/kinetic/letters.js +43 -42
  1221. package/dist/templates/kinetic/lines.js +43 -42
  1222. package/dist/templates/kinetic/typewriter.js +43 -42
  1223. package/dist/templates/kinetic/word-swap.js +43 -42
  1224. package/dist/templates/kinetic/words.js +43 -42
  1225. package/dist/templates/kit.js +28 -27
  1226. package/dist/templates/libraries/audio-reactive.js +45 -44
  1227. package/dist/templates/libraries/loaders.js +43 -42
  1228. package/dist/templates/libraries/micro-interactions.js +43 -42
  1229. package/dist/templates/libraries/motion-essentials.js +43 -42
  1230. package/dist/templates/libraries/toasts.js +43 -42
  1231. package/dist/templates/lottie/ai.js +44 -43
  1232. package/dist/templates/lottie/climate.js +44 -43
  1233. package/dist/templates/lottie/commerce.js +44 -43
  1234. package/dist/templates/lottie/education.js +44 -43
  1235. package/dist/templates/lottie/fintech.js +44 -43
  1236. package/dist/templates/lottie/food.js +44 -43
  1237. package/dist/templates/lottie/health.js +44 -43
  1238. package/dist/templates/lottie/index.js +68 -67
  1239. package/dist/templates/lottie/lottie-kit.js +43 -42
  1240. package/dist/templates/lottie/realestate.js +44 -43
  1241. package/dist/templates/lottie/saas-ui-checklist.js +45 -44
  1242. package/dist/templates/lottie/saas-ui-dashboard-hero.js +45 -44
  1243. package/dist/templates/lottie/saas-ui-empty-data.js +45 -44
  1244. package/dist/templates/lottie/saas-ui-empty-search.js +45 -44
  1245. package/dist/templates/lottie/saas-ui-error-retry.js +45 -44
  1246. package/dist/templates/lottie/saas-ui-file-upload.js +45 -44
  1247. package/dist/templates/lottie/saas-ui-streaming-answer.js +45 -44
  1248. package/dist/templates/lottie/saas-ui-sync-connected.js +45 -44
  1249. package/dist/templates/lottie/saas-ui-trial-timeline.js +45 -44
  1250. package/dist/templates/lottie/saas-ui-upgrade-unlocked.js +45 -44
  1251. package/dist/templates/lottie/saas-ui.js +55 -54
  1252. package/dist/templates/lottie/saas.js +44 -43
  1253. package/dist/templates/lottie/security.js +44 -43
  1254. package/dist/templates/lottie/techniques.js +44 -43
  1255. package/dist/templates/lottie/travel.js +44 -43
  1256. package/dist/templates/motion/ambient-loop.js +43 -42
  1257. package/dist/templates/motion/app-icon-sting.js +43 -42
  1258. package/dist/templates/motion/april-fools-infomercial-reel.js +45 -44
  1259. package/dist/templates/motion/arcade-high-score.js +46 -45
  1260. package/dist/templates/motion/art-deco-grand-opening.js +44 -43
  1261. package/dist/templates/motion/autumn-harvest-year-reel.js +44 -43
  1262. package/dist/templates/motion/back-to-school-timetable-reel.js +44 -43
  1263. package/dist/templates/motion/bauhaus-launch-reel.js +44 -43
  1264. package/dist/templates/motion/black-friday-coupons-deal-reel.js +45 -44
  1265. package/dist/templates/motion/black-friday-coupons-last-day.js +45 -44
  1266. package/dist/templates/motion/black-friday-deal-drop.js +43 -42
  1267. package/dist/templates/motion/black-friday-neon-deal-reel.js +46 -45
  1268. package/dist/templates/motion/black-friday-neon-last-day.js +46 -45
  1269. package/dist/templates/motion/black-friday-scratch-countdown.js +44 -43
  1270. package/dist/templates/motion/black-friday-scratch-deal-reel.js +44 -43
  1271. package/dist/templates/motion/black-friday-scratch-last-day.js +44 -43
  1272. package/dist/templates/motion/black-friday-ticker-deal-drop.js +44 -43
  1273. package/dist/templates/motion/black-friday-ticker-last-call.js +45 -44
  1274. package/dist/templates/motion/blueprint-rev-b-reel.js +45 -44
  1275. package/dist/templates/motion/broadsheet-launch-reel.js +43 -42
  1276. package/dist/templates/motion/broadsheet-milestone-post.js +44 -43
  1277. package/dist/templates/motion/claymation-launch-reel.js +45 -44
  1278. package/dist/templates/motion/comic-book-issue-reel.js +46 -45
  1279. package/dist/templates/motion/countdown.js +43 -42
  1280. package/dist/templates/motion/cyberpunk-lock-on-reel.js +46 -45
  1281. package/dist/templates/motion/departure-board-reel.js +44 -43
  1282. package/dist/templates/motion/diwali-lamps-reel.js +45 -44
  1283. package/dist/templates/motion/earth-day-footprint-reel.js +45 -44
  1284. package/dist/templates/motion/earth-day-pledge-post.js +45 -44
  1285. package/dist/templates/motion/festival-presale-electronic-countdown.js +49 -48
  1286. package/dist/templates/motion/festival-presale-electronic-lineup.js +49 -48
  1287. package/dist/templates/motion/festival-presale-electronic-reel.js +49 -48
  1288. package/dist/templates/motion/festival-presale-electronic-tier.js +49 -48
  1289. package/dist/templates/motion/festival-presale-family-countdown.js +49 -48
  1290. package/dist/templates/motion/festival-presale-family-lineup.js +49 -48
  1291. package/dist/templates/motion/festival-presale-family-reel.js +49 -48
  1292. package/dist/templates/motion/festival-presale-family-tier.js +49 -48
  1293. package/dist/templates/motion/festival-presale-folk-countdown.js +49 -48
  1294. package/dist/templates/motion/festival-presale-folk-lineup.js +49 -48
  1295. package/dist/templates/motion/festival-presale-folk-reel.js +49 -48
  1296. package/dist/templates/motion/festival-presale-folk-tier.js +49 -48
  1297. package/dist/templates/motion/festival-presale-food-countdown.js +49 -48
  1298. package/dist/templates/motion/festival-presale-food-lineup.js +49 -48
  1299. package/dist/templates/motion/festival-presale-food-reel.js +49 -48
  1300. package/dist/templates/motion/festival-presale-food-tier.js +49 -48
  1301. package/dist/templates/motion/festival-presale-jazz-countdown.js +49 -48
  1302. package/dist/templates/motion/festival-presale-jazz-lineup.js +49 -48
  1303. package/dist/templates/motion/festival-presale-jazz-reel.js +49 -48
  1304. package/dist/templates/motion/festival-presale-jazz-tier.js +49 -48
  1305. package/dist/templates/motion/festival-presale-street-countdown.js +50 -49
  1306. package/dist/templates/motion/festival-presale-street-lineup.js +50 -49
  1307. package/dist/templates/motion/festival-presale-street-reel.js +50 -49
  1308. package/dist/templates/motion/festival-presale-street-tier.js +50 -49
  1309. package/dist/templates/motion/gothic-launch-reel.js +43 -42
  1310. package/dist/templates/motion/halloween-graveyard-reel.js +45 -44
  1311. package/dist/templates/motion/instagram-promo.js +43 -42
  1312. package/dist/templates/motion/kinetic-headline.js +43 -42
  1313. package/dist/templates/motion/landing-hero/index.js +47 -46
  1314. package/dist/templates/motion/launch-trailer/document.js +900 -885
  1315. package/dist/templates/motion/launch-trailer/index.js +47 -46
  1316. package/dist/templates/motion/launch-trailer/scenes.js +46 -45
  1317. package/dist/templates/motion/logo-reveal.js +43 -42
  1318. package/dist/templates/motion/lower-third.js +43 -42
  1319. package/dist/templates/motion/lunar-new-year-envelope-reel.js +45 -44
  1320. package/dist/templates/motion/machined-trailer.js +45 -44
  1321. package/dist/templates/motion/manuscript-launch-reel.js +44 -43
  1322. package/dist/templates/motion/new-year-ball-drop-reel.js +45 -44
  1323. package/dist/templates/motion/noir-case-reel.js +46 -45
  1324. package/dist/templates/motion/pitch-title.js +43 -42
  1325. package/dist/templates/motion/psychedelic-gig-reel.js +45 -44
  1326. package/dist/templates/motion/riso-zine-launch-reel.js +46 -45
  1327. package/dist/templates/motion/saas-ai-prompt.js +44 -43
  1328. package/dist/templates/motion/saas-before-after.js +44 -43
  1329. package/dist/templates/motion/saas-changelog-drop.js +44 -43
  1330. package/dist/templates/motion/saas-film-webinar-opener.js +44 -43
  1331. package/dist/templates/motion/saas-hook-features.js +44 -43
  1332. package/dist/templates/motion/saas-mrr-milestone.js +44 -43
  1333. package/dist/templates/motion/saas-screen-demo.js +45 -44
  1334. package/dist/templates/motion/saas-store-install-ad.js +44 -43
  1335. package/dist/templates/motion/saas-testimonial.js +44 -43
  1336. package/dist/templates/motion/saas-vs-comparison.js +44 -43
  1337. package/dist/templates/motion/singles-day-flash-post.js +45 -44
  1338. package/dist/templates/motion/singles-day-live-reel.js +45 -44
  1339. package/dist/templates/motion/smooth-loop.js +43 -42
  1340. package/dist/templates/motion/solarpunk-rooftop-reel.js +45 -44
  1341. package/dist/templates/motion/space-opera-countdown-reel.js +45 -44
  1342. package/dist/templates/motion/spring-bloom-first-hundred-post.js +45 -44
  1343. package/dist/templates/motion/spring-bloom-first-shoots-reel.js +45 -44
  1344. package/dist/templates/motion/stat-pop.js +43 -42
  1345. package/dist/templates/motion/style-bento-feature-demo.js +46 -45
  1346. package/dist/templates/motion/style-bento-launch-reel.js +45 -44
  1347. package/dist/templates/motion/style-brutalist-feature-demo.js +47 -46
  1348. package/dist/templates/motion/style-brutalist-launch-reel.js +46 -45
  1349. package/dist/templates/motion/style-dark-feature-demo.js +45 -44
  1350. package/dist/templates/motion/style-dark-launch-reel.js +46 -45
  1351. package/dist/templates/motion/style-data-feature-demo.js +46 -45
  1352. package/dist/templates/motion/style-data-launch-reel.js +46 -45
  1353. package/dist/templates/motion/style-editorial-feature-demo.js +46 -45
  1354. package/dist/templates/motion/style-editorial-launch-reel.js +45 -44
  1355. package/dist/templates/motion/style-glass-feature-demo.js +47 -46
  1356. package/dist/templates/motion/style-glass-launch-reel.js +46 -45
  1357. package/dist/templates/motion/style-gradient-feature-demo.js +46 -45
  1358. package/dist/templates/motion/style-gradient-launch-reel.js +45 -44
  1359. package/dist/templates/motion/style-maximal-feature-demo.js +46 -45
  1360. package/dist/templates/motion/style-maximal-launch-reel.js +45 -44
  1361. package/dist/templates/motion/style-pastel-feature-demo.js +47 -46
  1362. package/dist/templates/motion/style-pastel-launch-reel.js +47 -46
  1363. package/dist/templates/motion/style-sketch-feature-demo.js +47 -46
  1364. package/dist/templates/motion/style-sketch-launch-reel.js +47 -46
  1365. package/dist/templates/motion/style-swiss-feature-demo.js +47 -46
  1366. package/dist/templates/motion/style-swiss-launch-reel.js +46 -45
  1367. package/dist/templates/motion/style-terminal-feature-demo.js +48 -47
  1368. package/dist/templates/motion/style-terminal-launch-reel.js +48 -47
  1369. package/dist/templates/motion/summer-heatwave-lido-reel.js +45 -44
  1370. package/dist/templates/motion/template-wall.js +45 -44
  1371. package/dist/templates/motion/title-card-3d.js +43 -42
  1372. package/dist/templates/motion/tour-tickets-june-city.js +43 -42
  1373. package/dist/templates/motion/tour-tickets-june-dates.js +43 -42
  1374. package/dist/templates/motion/tour-tickets-june-final.js +44 -43
  1375. package/dist/templates/motion/tour-tickets-june-reel.js +43 -42
  1376. package/dist/templates/motion/tour-tickets-tide-city.js +43 -42
  1377. package/dist/templates/motion/tour-tickets-tide-dates.js +43 -42
  1378. package/dist/templates/motion/tour-tickets-tide-final.js +44 -43
  1379. package/dist/templates/motion/tour-tickets-tide-reel.js +43 -42
  1380. package/dist/templates/motion/tour-tickets-wreck-city.js +43 -42
  1381. package/dist/templates/motion/tour-tickets-wreck-dates.js +43 -42
  1382. package/dist/templates/motion/tour-tickets-wreck-final.js +44 -43
  1383. package/dist/templates/motion/tour-tickets-wreck-reel.js +43 -42
  1384. package/dist/templates/motion/transit-map-line-opening.js +45 -44
  1385. package/dist/templates/motion/transit-map-milestone-post.js +45 -44
  1386. package/dist/templates/motion/ukiyo-e-launch-reel.js +45 -44
  1387. package/dist/templates/motion/valentines-breakup-reel.js +45 -44
  1388. package/dist/templates/motion/vaporwave-launch-reel.js +45 -44
  1389. package/dist/templates/motion/winter-cosy-heads-down-post.js +46 -45
  1390. package/dist/templates/motion/winter-cosy-hibernation-reel.js +46 -45
  1391. package/dist/templates/motion/winter-holidays-advent-reel.js +46 -45
  1392. package/dist/templates/motion-qa.js +36 -35
  1393. package/dist/templates/motion3d/app-store-preview.js +44 -43
  1394. package/dist/templates/motion3d/before-after-swing.js +44 -43
  1395. package/dist/templates/motion3d/burger-reveal.js +44 -43
  1396. package/dist/templates/motion3d/coverflow.js +44 -43
  1397. package/dist/templates/motion3d/exploded-ui.js +44 -43
  1398. package/dist/templates/motion3d/feature-flip.js +44 -43
  1399. package/dist/templates/motion3d/kinetic-reveal.js +44 -43
  1400. package/dist/templates/motion3d/laptop-reveal.js +44 -43
  1401. package/dist/templates/motion3d/logo-extrude.js +44 -43
  1402. package/dist/templates/motion3d/parallax-cascade.js +44 -43
  1403. package/dist/templates/motion3d/phone-orbit.js +44 -43
  1404. package/dist/templates/motion3d/pricing-fan.js +44 -43
  1405. package/dist/templates/motion3d/product-turntable.js +44 -43
  1406. package/dist/templates/motion3d/saas-film-cinematic-trailer.js +45 -44
  1407. package/dist/templates/motion3d/screen-wall.js +44 -43
  1408. package/dist/templates/motion3d/stage.js +29 -28
  1409. package/dist/templates/motion3d/vertical-promo.js +44 -43
  1410. package/dist/templates/music/edm-drop.js +46 -45
  1411. package/dist/templates/music/festival-lineup.js +46 -45
  1412. package/dist/templates/music/hiphop-lyrics.js +46 -45
  1413. package/dist/templates/music/indie-poster.js +46 -45
  1414. package/dist/templates/music/lofi-loop.js +46 -45
  1415. package/dist/templates/music/parts.js +5 -5
  1416. package/dist/templates/music/podcast-audiogram.js +46 -45
  1417. package/dist/templates/music/shared.js +29 -28
  1418. package/dist/templates/music/synthwave-tunnel.js +46 -45
  1419. package/dist/templates/print/everyday-save-the-date.js +45 -44
  1420. package/dist/templates/print/everyday-specials-board.js +45 -44
  1421. package/dist/templates/print/holidays-christmas-church-newsletter.js +43 -42
  1422. package/dist/templates/print/holidays-christmas-eve-invitation.js +43 -42
  1423. package/dist/templates/print/holidays-christmas-gift-tags.js +43 -42
  1424. package/dist/templates/print/holidays-diwali-party-invitation.js +43 -42
  1425. package/dist/templates/print/holidays-easter-activity-sheet.js +43 -42
  1426. package/dist/templates/print/holidays-easter-egg-hunt-flyer.js +43 -42
  1427. package/dist/templates/print/holidays-eid-dinner-invitation.js +43 -42
  1428. package/dist/templates/print/holidays-eid-gift-tags.js +43 -42
  1429. package/dist/templates/print/holidays-halloween-party-invitation.js +43 -42
  1430. package/dist/templates/print/holidays-halloween-treat-labels.js +43 -42
  1431. package/dist/templates/print/holidays-halloween-trunk-or-treat-poster.js +43 -42
  1432. package/dist/templates/print/holidays-hanukkah-activity-sheet.js +43 -42
  1433. package/dist/templates/print/holidays-hanukkah-party-invitation.js +43 -42
  1434. package/dist/templates/print/holidays-lunar-new-year-banquet-menu.js +43 -42
  1435. package/dist/templates/print/holidays-new-years-eve-poster.js +43 -42
  1436. package/dist/templates/print/holidays-thanksgiving-dinner-menu.js +43 -42
  1437. package/dist/templates/print/holidays-thanksgiving-place-cards.js +43 -42
  1438. package/dist/templates/print/holidays-valentines-dinner-menu.js +43 -42
  1439. package/dist/templates/print/printshop-booklet-open-day.js +98 -0
  1440. package/dist/templates/print/printshop-brochure-community.js +96 -0
  1441. package/dist/templates/print/printshop-brochure-dental.js +96 -0
  1442. package/dist/templates/print/printshop-brochure-gym.js +95 -0
  1443. package/dist/templates/print/printshop-brochure-landscaping.js +96 -0
  1444. package/dist/templates/print/printshop-brochure-travel.js +97 -0
  1445. package/dist/templates/print/printshop-card-architect.js +96 -0
  1446. package/dist/templates/print/printshop-card-barber.js +96 -0
  1447. package/dist/templates/print/printshop-card-cafe.js +96 -0
  1448. package/dist/templates/print/printshop-card-developer.js +96 -0
  1449. package/dist/templates/print/printshop-card-florist.js +96 -0
  1450. package/dist/templates/print/printshop-card-lawyer.js +96 -0
  1451. package/dist/templates/print/printshop-card-photographer.js +97 -0
  1452. package/dist/templates/print/printshop-card-plumber.js +97 -0
  1453. package/dist/templates/print/printshop-card-realtor.js +96 -0
  1454. package/dist/templates/print/printshop-card-yoga.js +96 -0
  1455. package/dist/templates/print/printshop-flyer-charity-run.js +95 -0
  1456. package/dist/templates/print/printshop-flyer-farmers-market.js +96 -0
  1457. package/dist/templates/print/printshop-flyer-garage-sale.js +96 -0
  1458. package/dist/templates/print/printshop-flyer-grand-opening.js +98 -0
  1459. package/dist/templates/print/printshop-flyer-lost-pet.js +95 -0
  1460. package/dist/templates/print/printshop-flyer-tutoring.js +98 -0
  1461. package/dist/templates/print/printshop-flyer-yard-work.js +96 -0
  1462. package/dist/templates/print/printshop-poster-live-music.js +96 -0
  1463. package/dist/templates/print/studio-class-timetable-poster.js +43 -42
  1464. package/dist/templates/print/studio-portfolio-booklet.js +43 -42
  1465. package/dist/templates/saas/email-decks-shared.js +44 -43
  1466. package/dist/templates/saas/email-decks.js +57 -56
  1467. package/dist/templates/saas/index.js +245 -244
  1468. package/dist/templates/saas/launch-kit.js +53 -52
  1469. package/dist/templates/saas/launch-video.js +53 -52
  1470. package/dist/templates/saas/lottie-shared.js +44 -43
  1471. package/dist/templates/saas/stores-shared.js +29 -28
  1472. package/dist/templates/saas/stores.js +54 -53
  1473. package/dist/templates/saas/style-bento-shared.js +13 -12
  1474. package/dist/templates/saas/style-bento.js +57 -56
  1475. package/dist/templates/saas/style-brutalist-shared.js +13 -12
  1476. package/dist/templates/saas/style-brutalist.js +58 -57
  1477. package/dist/templates/saas/style-dark.js +57 -56
  1478. package/dist/templates/saas/style-data-shared.js +13 -12
  1479. package/dist/templates/saas/style-data.js +58 -57
  1480. package/dist/templates/saas/style-editorial-shared.js +13 -12
  1481. package/dist/templates/saas/style-editorial.js +58 -57
  1482. package/dist/templates/saas/style-glass-shared.js +14 -13
  1483. package/dist/templates/saas/style-glass.js +58 -57
  1484. package/dist/templates/saas/style-gradient-shared.js +13 -12
  1485. package/dist/templates/saas/style-gradient.js +58 -57
  1486. package/dist/templates/saas/style-maximal-shared.js +13 -12
  1487. package/dist/templates/saas/style-maximal.js +57 -56
  1488. package/dist/templates/saas/style-pastel-shared.js +14 -13
  1489. package/dist/templates/saas/style-pastel.js +58 -57
  1490. package/dist/templates/saas/style-sketch-shared.js +13 -12
  1491. package/dist/templates/saas/style-sketch.js +58 -57
  1492. package/dist/templates/saas/style-swiss-shared.js +13 -12
  1493. package/dist/templates/saas/style-swiss.js +58 -57
  1494. package/dist/templates/saas/style-terminal-shared.js +15 -14
  1495. package/dist/templates/saas/style-terminal.js +59 -58
  1496. package/dist/templates/saas/video-shared.js +13 -12
  1497. package/dist/templates/saas/video.js +53 -52
  1498. package/dist/templates/saas/web-shared.js +18 -17
  1499. package/dist/templates/saas/web.js +56 -55
  1500. package/dist/templates/scenes/before-after.js +43 -42
  1501. package/dist/templates/scenes/carousel-video.js +44 -43
  1502. package/dist/templates/scenes/saas-film-app-preview.js +45 -44
  1503. package/dist/templates/scenes/saas-film-bright-trailer.js +44 -43
  1504. package/dist/templates/scenes/saas-film-product-hunt-launch.js +44 -43
  1505. package/dist/templates/scenes/saas-film-youtube-demo-kit.js +45 -44
  1506. package/dist/templates/scenes/shared.js +29 -28
  1507. package/dist/templates/scenes/story-ad.js +47 -46
  1508. package/dist/templates/scenes/story-bakery.js +44 -43
  1509. package/dist/templates/scenes/story-fitness.js +44 -43
  1510. package/dist/templates/scenes/story-hotel.js +44 -43
  1511. package/dist/templates/scenes/transitions-pack.js +44 -43
  1512. package/dist/templates/scenes/web-scroll.js +44 -43
  1513. package/dist/templates/shared/motion.js +13 -12
  1514. package/dist/templates/shared/overlays.js +14 -13
  1515. package/dist/templates/shared/pointer.js +13 -12
  1516. package/dist/templates/slides/agenda.js +44 -43
  1517. package/dist/templates/slides/deck.js +43 -42
  1518. package/dist/templates/slides/education.js +44 -43
  1519. package/dist/templates/slides/launch.js +44 -43
  1520. package/dist/templates/slides/layouts.js +44 -43
  1521. package/dist/templates/slides/pitch.js +44 -43
  1522. package/dist/templates/slides/report.js +44 -43
  1523. package/dist/templates/slides/saas-mail-investor-update.js +45 -44
  1524. package/dist/templates/slides/saas-mail-seed-pitch.js +45 -44
  1525. package/dist/templates/slides/sales.js +44 -43
  1526. package/dist/templates/slides/section-divider.js +44 -43
  1527. package/dist/templates/slides/title-card.js +44 -43
  1528. package/dist/templates/slides/training.js +44 -43
  1529. package/dist/templates/slides/webinar.js +44 -43
  1530. package/dist/templates/slideshow/baby.js +45 -44
  1531. package/dist/templates/slideshow/birthday.js +45 -44
  1532. package/dist/templates/slideshow/holiday.js +45 -44
  1533. package/dist/templates/slideshow/home.js +45 -44
  1534. package/dist/templates/slideshow/index.js +52 -51
  1535. package/dist/templates/slideshow/memorial.js +45 -44
  1536. package/dist/templates/slideshow/shared.js +44 -43
  1537. package/dist/templates/slideshow/travel.js +45 -44
  1538. package/dist/templates/slideshow/wedding.js +45 -44
  1539. package/dist/templates/social/april-fools-link-preview.js +45 -44
  1540. package/dist/templates/social/april-fools-price-slash-post.js +45 -44
  1541. package/dist/templates/social/arcade-boss-fight.js +46 -45
  1542. package/dist/templates/social/arcade-level-up.js +46 -45
  1543. package/dist/templates/social/art-deco-link-preview.js +44 -43
  1544. package/dist/templates/social/art-deco-premiere-post.js +44 -43
  1545. package/dist/templates/social/autumn-harvest-link-preview.js +44 -43
  1546. package/dist/templates/social/autumn-harvest-thanks-post.js +44 -43
  1547. package/dist/templates/social/back-to-school-link-preview.js +44 -43
  1548. package/dist/templates/social/back-to-school-report-card-post.js +44 -43
  1549. package/dist/templates/social/bauhaus-drift-post.js +44 -43
  1550. package/dist/templates/social/bauhaus-link-preview.js +44 -43
  1551. package/dist/templates/social/bauhaus-pricing-post.js +44 -43
  1552. package/dist/templates/social/black-friday-ads.js +43 -42
  1553. package/dist/templates/social/black-friday-countdown.js +43 -42
  1554. package/dist/templates/social/black-friday-coupons-ads.js +44 -43
  1555. package/dist/templates/social/black-friday-coupons-countdown.js +45 -44
  1556. package/dist/templates/social/black-friday-neon-ads.js +46 -45
  1557. package/dist/templates/social/black-friday-neon-countdown.js +46 -45
  1558. package/dist/templates/social/black-friday-scratch-ads.js +44 -43
  1559. package/dist/templates/social/black-friday-ticker-ads.js +44 -43
  1560. package/dist/templates/social/black-friday-ticker-countdown.js +44 -43
  1561. package/dist/templates/social/blueprint-dimension-post.js +45 -44
  1562. package/dist/templates/social/blueprint-link-preview.js +45 -44
  1563. package/dist/templates/social/blueprint-parts-list-post.js +45 -44
  1564. package/dist/templates/social/broadsheet-hiring-classifieds.js +43 -42
  1565. package/dist/templates/social/broadsheet-link-preview.js +43 -42
  1566. package/dist/templates/social/claymation-link-preview.js +45 -44
  1567. package/dist/templates/social/claymation-streak-post.js +45 -44
  1568. package/dist/templates/social/comic-book-cover-preview.js +46 -45
  1569. package/dist/templates/social/comic-book-strip-post.js +46 -45
  1570. package/dist/templates/social/cyberpunk-implant-post.js +46 -45
  1571. package/dist/templates/social/cyberpunk-link-preview.js +46 -45
  1572. package/dist/templates/social/departure-board-pass-ad.js +44 -43
  1573. package/dist/templates/social/departure-board-store-set.js +44 -43
  1574. package/dist/templates/social/departure-board-thanks-post.js +44 -43
  1575. package/dist/templates/social/diwali-link-preview.js +45 -44
  1576. package/dist/templates/social/diwali-thanks-post.js +45 -44
  1577. package/dist/templates/social/earth-day-link-preview.js +45 -44
  1578. package/dist/templates/social/everyday-save-the-date-post.js +45 -44
  1579. package/dist/templates/social/festival-presale-electronic-ads.js +49 -48
  1580. package/dist/templates/social/festival-presale-family-ads.js +49 -48
  1581. package/dist/templates/social/festival-presale-folk-ads.js +49 -48
  1582. package/dist/templates/social/festival-presale-food-ads.js +49 -48
  1583. package/dist/templates/social/festival-presale-jazz-ads.js +49 -48
  1584. package/dist/templates/social/festival-presale-street-ads.js +50 -49
  1585. package/dist/templates/social/gothic-feature-post.js +43 -42
  1586. package/dist/templates/social/gothic-link-preview.js +43 -42
  1587. package/dist/templates/social/halloween-link-preview.js +45 -44
  1588. package/dist/templates/social/halloween-offer-post.js +45 -44
  1589. package/dist/templates/social/holidays-diwali-sweet-shop-post.js +43 -42
  1590. package/dist/templates/social/holidays-lunar-new-year-bakery-post.js +43 -42
  1591. package/dist/templates/social/holidays-new-years-eve-shop-hours.js +43 -42
  1592. package/dist/templates/social/holidays-thanksgiving-pie-orders-post.js +43 -42
  1593. package/dist/templates/social/holidays-valentines-florist-post.js +43 -42
  1594. package/dist/templates/social/lunar-new-year-greeting-post.js +45 -44
  1595. package/dist/templates/social/lunar-new-year-link-preview.js +45 -44
  1596. package/dist/templates/social/machined-link-preview.js +45 -44
  1597. package/dist/templates/social/machined-plate-post.js +45 -44
  1598. package/dist/templates/social/manuscript-chapter-post.js +44 -43
  1599. package/dist/templates/social/manuscript-link-preview.js +44 -43
  1600. package/dist/templates/social/new-year-link-preview.js +45 -44
  1601. package/dist/templates/social/new-year-resolutions-post.js +45 -44
  1602. package/dist/templates/social/noir-case-file.js +46 -45
  1603. package/dist/templates/social/noir-feature-post.js +46 -45
  1604. package/dist/templates/social/post-announcement.js +43 -42
  1605. package/dist/templates/social/post-event.js +43 -42
  1606. package/dist/templates/social/post-podcast.js +43 -42
  1607. package/dist/templates/social/post-quote.js +43 -42
  1608. package/dist/templates/social/post-sale.js +43 -42
  1609. package/dist/templates/social/post-stat.js +43 -42
  1610. package/dist/templates/social/post-testimonial.js +43 -42
  1611. package/dist/templates/social/promo-announcement.js +43 -42
  1612. package/dist/templates/social/promo-beat-drop.js +43 -42
  1613. package/dist/templates/social/promo-event.js +43 -42
  1614. package/dist/templates/social/promo-new-product.js +43 -42
  1615. package/dist/templates/social/promo-quote-reveal.js +43 -42
  1616. package/dist/templates/social/promo-sale-drop.js +43 -42
  1617. package/dist/templates/social/promo-tip-list.js +43 -42
  1618. package/dist/templates/social/psychedelic-lineup-post.js +45 -44
  1619. package/dist/templates/social/psychedelic-link-preview.js +45 -44
  1620. package/dist/templates/social/riso-zine-link-preview.js +46 -45
  1621. package/dist/templates/social/riso-zine-mrr-poster.js +46 -45
  1622. package/dist/templates/social/saas-kit-carousel.js +43 -42
  1623. package/dist/templates/social/saas-kit-countdown-post.js +43 -42
  1624. package/dist/templates/social/saas-kit-feature-drop.js +44 -43
  1625. package/dist/templates/social/saas-kit-link-preview.js +43 -42
  1626. package/dist/templates/social/saas-kit-live-post.js +43 -42
  1627. package/dist/templates/social/saas-kit-mrr-card.js +43 -42
  1628. package/dist/templates/social/saas-kit-ph-gallery.js +43 -42
  1629. package/dist/templates/social/saas-kit-ph-thumb.js +43 -42
  1630. package/dist/templates/social/saas-kit-youtube-thumbs.js +43 -42
  1631. package/dist/templates/social/saas-store-b2b-ads.js +44 -43
  1632. package/dist/templates/social/saas-store-caption-set.js +44 -43
  1633. package/dist/templates/social/saas-store-chrome-kit.js +44 -43
  1634. package/dist/templates/social/saas-store-ipad-set.js +44 -43
  1635. package/dist/templates/social/saas-store-panorama.js +45 -44
  1636. package/dist/templates/social/saas-store-play-kit.js +43 -42
  1637. package/dist/templates/social/saas-store-story.js +44 -43
  1638. package/dist/templates/social/singles-day-link-preview.js +45 -44
  1639. package/dist/templates/social/solarpunk-impact-post.js +45 -44
  1640. package/dist/templates/social/solarpunk-link-preview.js +45 -44
  1641. package/dist/templates/social/space-opera-link-preview.js +45 -44
  1642. package/dist/templates/social/space-opera-mission-patch-post.js +45 -44
  1643. package/dist/templates/social/spring-bloom-link-preview.js +45 -44
  1644. package/dist/templates/social/studio-class-timetable.js +43 -42
  1645. package/dist/templates/social/studio-podcast-cover.js +43 -42
  1646. package/dist/templates/social/style-bento-announcement.js +44 -43
  1647. package/dist/templates/social/style-bento-link-preview.js +44 -43
  1648. package/dist/templates/social/style-bento-milestone.js +44 -43
  1649. package/dist/templates/social/style-bento-testimonial.js +45 -44
  1650. package/dist/templates/social/style-brutalist-announcement.js +44 -43
  1651. package/dist/templates/social/style-brutalist-link-preview.js +44 -43
  1652. package/dist/templates/social/style-brutalist-milestone.js +45 -44
  1653. package/dist/templates/social/style-brutalist-testimonial.js +44 -43
  1654. package/dist/templates/social/style-dark-announcement.js +44 -43
  1655. package/dist/templates/social/style-dark-link-preview.js +43 -42
  1656. package/dist/templates/social/style-dark-milestone.js +44 -43
  1657. package/dist/templates/social/style-dark-testimonial.js +45 -44
  1658. package/dist/templates/social/style-data-announcement.js +44 -43
  1659. package/dist/templates/social/style-data-link-preview.js +44 -43
  1660. package/dist/templates/social/style-data-milestone.js +45 -44
  1661. package/dist/templates/social/style-data-testimonial.js +45 -44
  1662. package/dist/templates/social/style-editorial-announcement.js +44 -43
  1663. package/dist/templates/social/style-editorial-link-preview.js +44 -43
  1664. package/dist/templates/social/style-editorial-milestone.js +44 -43
  1665. package/dist/templates/social/style-editorial-testimonial.js +45 -44
  1666. package/dist/templates/social/style-glass-announcement.js +45 -44
  1667. package/dist/templates/social/style-glass-link-preview.js +45 -44
  1668. package/dist/templates/social/style-glass-milestone.js +45 -44
  1669. package/dist/templates/social/style-glass-testimonial.js +46 -45
  1670. package/dist/templates/social/style-gradient-announcement.js +44 -43
  1671. package/dist/templates/social/style-gradient-link-preview.js +44 -43
  1672. package/dist/templates/social/style-gradient-milestone.js +45 -44
  1673. package/dist/templates/social/style-gradient-testimonial.js +45 -44
  1674. package/dist/templates/social/style-maximal-announcement.js +44 -43
  1675. package/dist/templates/social/style-maximal-link-preview.js +44 -43
  1676. package/dist/templates/social/style-maximal-milestone.js +44 -43
  1677. package/dist/templates/social/style-maximal-testimonial.js +45 -44
  1678. package/dist/templates/social/style-pastel-announcement.js +45 -44
  1679. package/dist/templates/social/style-pastel-link-preview.js +45 -44
  1680. package/dist/templates/social/style-pastel-milestone.js +45 -44
  1681. package/dist/templates/social/style-pastel-testimonial.js +46 -45
  1682. package/dist/templates/social/style-sketch-announcement.js +45 -44
  1683. package/dist/templates/social/style-sketch-link-preview.js +44 -43
  1684. package/dist/templates/social/style-sketch-milestone.js +44 -43
  1685. package/dist/templates/social/style-sketch-testimonial.js +45 -44
  1686. package/dist/templates/social/style-swiss-announcement.js +44 -43
  1687. package/dist/templates/social/style-swiss-link-preview.js +44 -43
  1688. package/dist/templates/social/style-swiss-milestone.js +44 -43
  1689. package/dist/templates/social/style-swiss-testimonial.js +45 -44
  1690. package/dist/templates/social/style-terminal-announcement.js +46 -45
  1691. package/dist/templates/social/style-terminal-link-preview.js +46 -45
  1692. package/dist/templates/social/style-terminal-milestone.js +46 -45
  1693. package/dist/templates/social/style-terminal-testimonial.js +47 -46
  1694. package/dist/templates/social/summer-heatwave-link-preview.js +45 -44
  1695. package/dist/templates/social/summer-heatwave-lolly-post.js +45 -44
  1696. package/dist/templates/social/tour-tickets-june-ads.js +43 -42
  1697. package/dist/templates/social/tour-tickets-tide-ads.js +43 -42
  1698. package/dist/templates/social/tour-tickets-wreck-ads.js +43 -42
  1699. package/dist/templates/social/transit-map-link-preview.js +45 -44
  1700. package/dist/templates/social/ukiyo-e-link-preview.js +45 -44
  1701. package/dist/templates/social/ukiyo-e-spike-post.js +45 -44
  1702. package/dist/templates/social/valentines-link-preview.js +45 -44
  1703. package/dist/templates/social/valentines-poem-post.js +45 -44
  1704. package/dist/templates/social/vaporwave-feature-drop.js +44 -43
  1705. package/dist/templates/social/vaporwave-link-preview.js +44 -43
  1706. package/dist/templates/social/winter-cosy-link-preview.js +46 -45
  1707. package/dist/templates/social/winter-holidays-link-preview.js +46 -45
  1708. package/dist/templates/social/winter-holidays-thanks-post.js +46 -45
  1709. package/dist/templates/stings/line-reveal.js +43 -42
  1710. package/dist/templates/stings/sting-blur.js +43 -42
  1711. package/dist/templates/stings/sting-pop.js +43 -42
  1712. package/dist/templates/stings/sting-rise.js +43 -42
  1713. package/dist/templates/stings/sting-shimmer.js +43 -42
  1714. package/dist/templates/stings/word-swap.js +43 -42
  1715. package/dist/templates/text/stat-counter.js +43 -42
  1716. package/dist/templates/text/word-quote.js +43 -42
  1717. package/dist/templates/themes/april-fools-shared.js +30 -29
  1718. package/dist/templates/themes/april-fools.js +50 -49
  1719. package/dist/templates/themes/arcade-shared.js +15 -14
  1720. package/dist/templates/themes/arcade.js +50 -49
  1721. package/dist/templates/themes/art-deco-shared.js +13 -12
  1722. package/dist/templates/themes/art-deco.js +50 -49
  1723. package/dist/templates/themes/autumn-harvest-shared.js +13 -12
  1724. package/dist/templates/themes/autumn-harvest.js +50 -49
  1725. package/dist/templates/themes/back-to-school-shared.js +13 -12
  1726. package/dist/templates/themes/back-to-school.js +50 -49
  1727. package/dist/templates/themes/bauhaus-shared.js +13 -12
  1728. package/dist/templates/themes/bauhaus.js +49 -48
  1729. package/dist/templates/themes/black-friday-coupons-shared.js +13 -12
  1730. package/dist/templates/themes/black-friday-coupons.js +52 -51
  1731. package/dist/templates/themes/black-friday-neon-shared.js +14 -13
  1732. package/dist/templates/themes/black-friday-neon.js +53 -52
  1733. package/dist/templates/themes/black-friday-scratch-shared.js +13 -12
  1734. package/dist/templates/themes/black-friday-scratch.js +51 -50
  1735. package/dist/templates/themes/black-friday-ticker-shared.js +13 -12
  1736. package/dist/templates/themes/black-friday-ticker.js +52 -51
  1737. package/dist/templates/themes/black-friday.js +49 -48
  1738. package/dist/templates/themes/blueprint-shared.js +14 -13
  1739. package/dist/templates/themes/blueprint.js +50 -49
  1740. package/dist/templates/themes/broadsheet.js +50 -49
  1741. package/dist/templates/themes/claymation-shared.js +14 -13
  1742. package/dist/templates/themes/claymation.js +51 -50
  1743. package/dist/templates/themes/comic-book-shared.js +15 -14
  1744. package/dist/templates/themes/comic-book.js +50 -61
  1745. package/dist/templates/themes/cyberpunk-shared.js +15 -14
  1746. package/dist/templates/themes/cyberpunk.js +52 -51
  1747. package/dist/templates/themes/departure-board-shared.js +13 -12
  1748. package/dist/templates/themes/departure-board.js +49 -48
  1749. package/dist/templates/themes/diwali-shared.js +14 -13
  1750. package/dist/templates/themes/diwali.js +51 -50
  1751. package/dist/templates/themes/earth-day-shared.js +14 -13
  1752. package/dist/templates/themes/earth-day.js +51 -50
  1753. package/dist/templates/themes/everyday-shared.js +14 -13
  1754. package/dist/templates/themes/everyday.js +53 -52
  1755. package/dist/templates/themes/festival-presale-electronic-kit.js +48 -47
  1756. package/dist/templates/themes/festival-presale-family-a-shared.js +47 -46
  1757. package/dist/templates/themes/festival-presale-family-a.js +72 -71
  1758. package/dist/templates/themes/festival-presale-family-b-shared.js +47 -46
  1759. package/dist/templates/themes/festival-presale-family-b.js +73 -72
  1760. package/dist/templates/themes/festival-presale-family-kit.js +48 -47
  1761. package/dist/templates/themes/festival-presale-folk-kit.js +48 -47
  1762. package/dist/templates/themes/festival-presale-food-kit.js +48 -47
  1763. package/dist/templates/themes/festival-presale-jazz-kit.js +48 -47
  1764. package/dist/templates/themes/festival-presale-shared.js +20 -19
  1765. package/dist/templates/themes/festival-presale-street-kit.js +49 -48
  1766. package/dist/templates/themes/festival-presale.js +53 -52
  1767. package/dist/templates/themes/gothic.js +49 -48
  1768. package/dist/templates/themes/halloween-shared.js +14 -13
  1769. package/dist/templates/themes/halloween.js +51 -50
  1770. package/dist/templates/themes/holidays.js +66 -65
  1771. package/dist/templates/themes/index.js +473 -458
  1772. package/dist/templates/themes/lunar-new-year-shared.js +14 -13
  1773. package/dist/templates/themes/lunar-new-year.js +51 -50
  1774. package/dist/templates/themes/machined-shared.js +30 -29
  1775. package/dist/templates/themes/machined.js +49 -48
  1776. package/dist/templates/themes/manuscript-shared.js +13 -12
  1777. package/dist/templates/themes/manuscript.js +50 -49
  1778. package/dist/templates/themes/new-year-shared.js +14 -13
  1779. package/dist/templates/themes/new-year.js +51 -50
  1780. package/dist/templates/themes/noir-shared.js +15 -14
  1781. package/dist/templates/themes/noir.js +52 -51
  1782. package/dist/templates/themes/printshop-shared.js +116 -0
  1783. package/dist/templates/themes/printshop.js +110 -1
  1784. package/dist/templates/themes/psychedelic-shared.js +14 -13
  1785. package/dist/templates/themes/psychedelic.js +51 -50
  1786. package/dist/templates/themes/riso-zine-shared.js +15 -14
  1787. package/dist/templates/themes/riso-zine.js +52 -51
  1788. package/dist/templates/themes/singles-day-shared.js +14 -13
  1789. package/dist/templates/themes/singles-day.js +51 -50
  1790. package/dist/templates/themes/solarpunk-shared.js +14 -13
  1791. package/dist/templates/themes/solarpunk.js +51 -50
  1792. package/dist/templates/themes/space-opera-shared.js +14 -13
  1793. package/dist/templates/themes/space-opera.js +51 -50
  1794. package/dist/templates/themes/spring-bloom-shared.js +14 -13
  1795. package/dist/templates/themes/spring-bloom.js +51 -50
  1796. package/dist/templates/themes/studio.js +49 -48
  1797. package/dist/templates/themes/summer-heatwave-shared.js +14 -13
  1798. package/dist/templates/themes/summer-heatwave.js +51 -50
  1799. package/dist/templates/themes/tour-tickets-page-shared.js +19 -18
  1800. package/dist/templates/themes/tour-tickets.js +71 -70
  1801. package/dist/templates/themes/transit-map-shared.js +14 -13
  1802. package/dist/templates/themes/transit-map.js +51 -50
  1803. package/dist/templates/themes/ukiyo-e-shared.js +14 -13
  1804. package/dist/templates/themes/ukiyo-e.js +51 -50
  1805. package/dist/templates/themes/valentines-shared.js +14 -13
  1806. package/dist/templates/themes/valentines.js +51 -50
  1807. package/dist/templates/themes/vaporwave-shared.js +13 -12
  1808. package/dist/templates/themes/vaporwave.js +49 -48
  1809. package/dist/templates/themes/winter-cosy-shared.js +14 -13
  1810. package/dist/templates/themes/winter-cosy.js +52 -51
  1811. package/dist/templates/themes/winter-holidays-shared.js +14 -13
  1812. package/dist/templates/themes/winter-holidays.js +52 -51
  1813. package/dist/templates/video/youtube-chapter.js +43 -42
  1814. package/dist/templates/video/youtube-end-screen.js +43 -42
  1815. package/dist/templates/video/youtube-intro.js +43 -42
  1816. package/dist/templates/video/youtube-subscribe.js +43 -42
  1817. package/dist/templates/web/app-ui.js +30 -29
  1818. package/dist/templates/web/april-fools-landing.js +45 -44
  1819. package/dist/templates/web/arcade-landing.js +46 -45
  1820. package/dist/templates/web/art-deco-landing.js +44 -43
  1821. package/dist/templates/web/autumn-harvest-landing.js +44 -43
  1822. package/dist/templates/web/back-to-school-landing.js +44 -43
  1823. package/dist/templates/web/bauhaus-landing.js +44 -43
  1824. package/dist/templates/web/black-friday-coupons-landing.js +45 -44
  1825. package/dist/templates/web/black-friday-landing.js +43 -42
  1826. package/dist/templates/web/black-friday-neon-landing.js +45 -44
  1827. package/dist/templates/web/black-friday-scratch-landing.js +44 -43
  1828. package/dist/templates/web/black-friday-ticker-landing.js +44 -43
  1829. package/dist/templates/web/blog-post.js +43 -42
  1830. package/dist/templates/web/blueprint-landing.js +45 -44
  1831. package/dist/templates/web/broadsheet-landing.js +43 -42
  1832. package/dist/templates/web/claymation-landing.js +45 -44
  1833. package/dist/templates/web/comic-book-landing.js +46 -45
  1834. package/dist/templates/web/coming-soon-page.js +44 -43
  1835. package/dist/templates/web/coming-soon.js +43 -42
  1836. package/dist/templates/web/contact.js +44 -43
  1837. package/dist/templates/web/cyberpunk-landing.js +46 -45
  1838. package/dist/templates/web/daybreak-app.js +45 -44
  1839. package/dist/templates/web/departure-board-download.js +44 -43
  1840. package/dist/templates/web/diwali-landing.js +45 -44
  1841. package/dist/templates/web/earth-day-landing.js +45 -44
  1842. package/dist/templates/web/everyday-cafe.js +46 -45
  1843. package/dist/templates/web/everyday-hotel.js +46 -45
  1844. package/dist/templates/web/everyday-wedding.js +47 -46
  1845. package/dist/templates/web/festival-presale-electronic.js +46 -45
  1846. package/dist/templates/web/festival-presale-family.js +46 -45
  1847. package/dist/templates/web/festival-presale-folk.js +46 -45
  1848. package/dist/templates/web/festival-presale-food.js +46 -45
  1849. package/dist/templates/web/festival-presale-jazz.js +46 -45
  1850. package/dist/templates/web/festival-presale-street.js +47 -46
  1851. package/dist/templates/web/forms.js +29 -28
  1852. package/dist/templates/web/gothic-landing.js +43 -42
  1853. package/dist/templates/web/halloween-landing.js +45 -44
  1854. package/dist/templates/web/hero-animated.js +43 -42
  1855. package/dist/templates/web/kindling-app.js +45 -44
  1856. package/dist/templates/web/launch-waitlist.js +44 -43
  1857. package/dist/templates/web/lunar-new-year-landing.js +45 -44
  1858. package/dist/templates/web/machined-hero.js +45 -44
  1859. package/dist/templates/web/manuscript-landing.js +44 -43
  1860. package/dist/templates/web/marginalia-app.js +45 -44
  1861. package/dist/templates/web/new-year-landing.js +45 -44
  1862. package/dist/templates/web/noir-landing.js +46 -45
  1863. package/dist/templates/web/page-404.js +43 -42
  1864. package/dist/templates/web/portfolio-architect.js +44 -43
  1865. package/dist/templates/web/portfolio-card-deck.js +44 -43
  1866. package/dist/templates/web/portfolio-case-folio.js +44 -43
  1867. package/dist/templates/web/portfolio-cube-gallery.js +44 -43
  1868. package/dist/templates/web/portfolio-depth-tunnel.js +44 -43
  1869. package/dist/templates/web/portfolio-editorial.js +44 -43
  1870. package/dist/templates/web/portfolio-flip-wall.js +44 -43
  1871. package/dist/templates/web/portfolio-index-list.js +44 -43
  1872. package/dist/templates/web/portfolio-photographer.js +44 -43
  1873. package/dist/templates/web/portfolio-reel-carousel.js +44 -43
  1874. package/dist/templates/web/portfolio-shared.js +29 -28
  1875. package/dist/templates/web/portfolio-sketchbook.js +44 -43
  1876. package/dist/templates/web/portfolio-studio-grid.js +44 -43
  1877. package/dist/templates/web/portfolio.js +43 -42
  1878. package/dist/templates/web/portfolios.js +56 -55
  1879. package/dist/templates/web/potluck-app.js +45 -44
  1880. package/dist/templates/web/pricing-toggle.js +43 -42
  1881. package/dist/templates/web/product-page.js +43 -42
  1882. package/dist/templates/web/psychedelic-landing.js +45 -44
  1883. package/dist/templates/web/riso-zine-landing.js +46 -45
  1884. package/dist/templates/web/rsvp-invite.js +44 -43
  1885. package/dist/templates/web/saas-ai-landing.js +44 -43
  1886. package/dist/templates/web/saas-app-download.js +44 -43
  1887. package/dist/templates/web/saas-case-study.js +44 -43
  1888. package/dist/templates/web/saas-changelog.js +44 -43
  1889. package/dist/templates/web/saas-comparison.js +44 -43
  1890. package/dist/templates/web/saas-data-landing.js +44 -43
  1891. package/dist/templates/web/saas-dev-landing.js +44 -43
  1892. package/dist/templates/web/saas-indie-landing.js +44 -43
  1893. package/dist/templates/web/saas-integrations.js +44 -43
  1894. package/dist/templates/web/saas-security.js +44 -43
  1895. package/dist/templates/web/saas-signup.js +44 -43
  1896. package/dist/templates/web/saas-waitlist.js +44 -43
  1897. package/dist/templates/web/saffron-app.js +45 -44
  1898. package/dist/templates/web/shop-bloom.js +46 -45
  1899. package/dist/templates/web/shop-circuit.js +46 -45
  1900. package/dist/templates/web/shop-fieldwork.js +46 -45
  1901. package/dist/templates/web/shop-greenhouse.js +46 -45
  1902. package/dist/templates/web/shop-kiln.js +46 -45
  1903. package/dist/templates/web/shop-marginalia.js +46 -45
  1904. package/dist/templates/web/shop-ode.js +46 -45
  1905. package/dist/templates/web/shop-shared.js +31 -30
  1906. package/dist/templates/web/shop-static.js +46 -45
  1907. package/dist/templates/web/shop-summit.js +46 -45
  1908. package/dist/templates/web/shops.js +55 -54
  1909. package/dist/templates/web/singles-day-landing.js +45 -44
  1910. package/dist/templates/web/solarpunk-landing.js +45 -44
  1911. package/dist/templates/web/space-opera-landing.js +45 -44
  1912. package/dist/templates/web/spring-bloom-landing.js +45 -44
  1913. package/dist/templates/web/studio-careers.js +43 -42
  1914. package/dist/templates/web/style-bento-landing.js +46 -45
  1915. package/dist/templates/web/style-bento-pricing.js +45 -44
  1916. package/dist/templates/web/style-brutalist-landing.js +45 -44
  1917. package/dist/templates/web/style-brutalist-pricing.js +45 -44
  1918. package/dist/templates/web/style-dark-landing.js +46 -45
  1919. package/dist/templates/web/style-dark-pricing.js +45 -44
  1920. package/dist/templates/web/style-data-landing.js +47 -46
  1921. package/dist/templates/web/style-data-pricing.js +45 -44
  1922. package/dist/templates/web/style-editorial-landing.js +45 -44
  1923. package/dist/templates/web/style-editorial-pricing.js +46 -45
  1924. package/dist/templates/web/style-glass-landing.js +47 -46
  1925. package/dist/templates/web/style-glass-pricing.js +46 -45
  1926. package/dist/templates/web/style-gradient-landing.js +47 -46
  1927. package/dist/templates/web/style-gradient-pricing.js +45 -44
  1928. package/dist/templates/web/style-maximal-landing.js +46 -45
  1929. package/dist/templates/web/style-maximal-pricing.js +45 -44
  1930. package/dist/templates/web/style-pastel-landing.js +47 -46
  1931. package/dist/templates/web/style-pastel-pricing.js +46 -45
  1932. package/dist/templates/web/style-sketch-landing.js +47 -46
  1933. package/dist/templates/web/style-sketch-pricing.js +45 -44
  1934. package/dist/templates/web/style-swiss-landing.js +47 -46
  1935. package/dist/templates/web/style-swiss-pricing.js +45 -44
  1936. package/dist/templates/web/style-terminal-landing.js +48 -47
  1937. package/dist/templates/web/style-terminal-pricing.js +47 -46
  1938. package/dist/templates/web/summer-heatwave-landing.js +45 -44
  1939. package/dist/templates/web/tempo-app.js +45 -44
  1940. package/dist/templates/web/tour-tickets-june-landing.js +45 -44
  1941. package/dist/templates/web/tour-tickets-tide-landing.js +45 -44
  1942. package/dist/templates/web/tour-tickets-wreck-landing.js +45 -44
  1943. package/dist/templates/web/transit-map-landing.js +45 -44
  1944. package/dist/templates/web/ukiyo-e-landing.js +45 -44
  1945. package/dist/templates/web/valentines-landing.js +45 -44
  1946. package/dist/templates/web/vaporwave-landing.js +44 -43
  1947. package/dist/templates/web/wayfarer-app.js +45 -44
  1948. package/dist/templates/web/winter-cosy-landing.js +46 -45
  1949. package/dist/templates/web/winter-holidays-landing.js +46 -45
  1950. package/package.json +1 -1
  1951. package/src/templates/print/printshop-booklet-open-day.ts +170 -0
  1952. package/src/templates/print/printshop-brochure-community.ts +152 -0
  1953. package/src/templates/print/printshop-brochure-dental.ts +157 -0
  1954. package/src/templates/print/printshop-brochure-gym.ts +134 -0
  1955. package/src/templates/print/printshop-brochure-landscaping.ts +143 -0
  1956. package/src/templates/print/printshop-brochure-travel.ts +150 -0
  1957. package/src/templates/print/printshop-card-architect.ts +91 -0
  1958. package/src/templates/print/printshop-card-barber.ts +76 -0
  1959. package/src/templates/print/printshop-card-cafe.ts +81 -0
  1960. package/src/templates/print/printshop-card-developer.ts +78 -0
  1961. package/src/templates/print/printshop-card-florist.ts +95 -0
  1962. package/src/templates/print/printshop-card-lawyer.ts +68 -0
  1963. package/src/templates/print/printshop-card-photographer.ts +66 -0
  1964. package/src/templates/print/printshop-card-plumber.ts +85 -0
  1965. package/src/templates/print/printshop-card-realtor.ts +78 -0
  1966. package/src/templates/print/printshop-card-yoga.ts +72 -0
  1967. package/src/templates/print/printshop-flyer-charity-run.ts +81 -0
  1968. package/src/templates/print/printshop-flyer-farmers-market.ts +81 -0
  1969. package/src/templates/print/printshop-flyer-garage-sale.ts +75 -0
  1970. package/src/templates/print/printshop-flyer-grand-opening.ts +73 -0
  1971. package/src/templates/print/printshop-flyer-lost-pet.ts +92 -0
  1972. package/src/templates/print/printshop-flyer-tutoring.ts +89 -0
  1973. package/src/templates/print/printshop-flyer-yard-work.ts +66 -0
  1974. package/src/templates/print/printshop-poster-live-music.ts +85 -0
  1975. package/src/templates/themes/comic-book.ts +1 -15
  1976. package/src/templates/themes/printshop-shared.ts +289 -0
  1977. package/src/templates/themes/printshop.ts +29 -1
  1978. package/types/lib/extensions/qr/encoder.d.ts +22 -0
  1979. package/types/lib/units/units.d.ts +23 -0
  1980. package/types/templates/src/print/printshop-brochure-community.d.ts +2 -0
  1981. package/types/templates/src/print/printshop-brochure-dental.d.ts +2 -0
  1982. package/types/templates/src/print/printshop-brochure-gym.d.ts +2 -0
  1983. package/types/templates/src/print/printshop-brochure-landscaping.d.ts +2 -0
  1984. package/types/templates/src/print/printshop-brochure-travel.d.ts +2 -0
  1985. package/types/templates/src/print/printshop-card-architect.d.ts +2 -0
  1986. package/types/templates/src/print/printshop-card-barber.d.ts +2 -0
  1987. package/types/templates/src/print/printshop-card-cafe.d.ts +2 -0
  1988. package/types/templates/src/print/printshop-card-developer.d.ts +2 -0
  1989. package/types/templates/src/print/printshop-card-florist.d.ts +2 -0
  1990. package/types/templates/src/print/printshop-card-lawyer.d.ts +2 -0
  1991. package/types/templates/src/print/printshop-card-photographer.d.ts +2 -0
  1992. package/types/templates/src/print/printshop-card-plumber.d.ts +2 -0
  1993. package/types/templates/src/print/printshop-card-realtor.d.ts +2 -0
  1994. package/types/templates/src/print/printshop-card-yoga.d.ts +2 -0
  1995. package/types/templates/src/print/printshop-flyer-charity-run.d.ts +2 -0
  1996. package/types/templates/src/print/printshop-flyer-farmers-market.d.ts +2 -0
  1997. package/types/templates/src/print/printshop-flyer-garage-sale.d.ts +2 -0
  1998. package/types/templates/src/print/printshop-flyer-grand-opening.d.ts +2 -0
  1999. package/types/templates/src/print/printshop-flyer-lost-pet.d.ts +2 -0
  2000. package/types/templates/src/print/printshop-flyer-tutoring.d.ts +2 -0
  2001. package/types/templates/src/print/printshop-flyer-yard-work.d.ts +2 -0
  2002. package/types/templates/src/print/printshop-poster-live-music.d.ts +2 -0
  2003. package/types/templates/src/themes/printshop-shared.d.ts +145 -0
  2004. package/dist/chunks/agent-NTEAEZBN.js +0 -44
  2005. package/dist/chunks/api-GWG3RH2R.js +0 -29
  2006. package/dist/chunks/apply-O5TTXIOF.js +0 -45
  2007. package/dist/chunks/audio-decode-L5CNT5VW.js +0 -54
  2008. package/dist/chunks/audio-import-C5TWVND3.js +0 -126
  2009. package/dist/chunks/audio-plan-E4OGVQUS.js +0 -46
  2010. package/dist/chunks/board-export-OYFQB37V.js +0 -179
  2011. package/dist/chunks/browser-5I7JEF5Y.js +0 -178
  2012. package/dist/chunks/build-W5O2ZVN7.js +0 -54
  2013. package/dist/chunks/builtin-KX2SGDND.js +0 -113
  2014. package/dist/chunks/check-PDOSXTZS.js +0 -55
  2015. package/dist/chunks/check-template-B2KKE6BW.js +0 -2271
  2016. package/dist/chunks/chunk-22X32RVE.js +0 -304
  2017. package/dist/chunks/chunk-22ZQB56G.js +0 -83
  2018. package/dist/chunks/chunk-23CG5QSQ.js +0 -336
  2019. package/dist/chunks/chunk-24ODLUVG.js +0 -238
  2020. package/dist/chunks/chunk-256467CL.js +0 -80
  2021. package/dist/chunks/chunk-25EEF4UJ.js +0 -55
  2022. package/dist/chunks/chunk-26CY425H.js +0 -82
  2023. package/dist/chunks/chunk-26GTJDKR.js +0 -84
  2024. package/dist/chunks/chunk-2BJT7OHE.js +0 -106
  2025. package/dist/chunks/chunk-2CXMXFAW.js +0 -46
  2026. package/dist/chunks/chunk-2DVF7PPY.js +0 -256
  2027. package/dist/chunks/chunk-2DYV25E5.js +0 -179
  2028. package/dist/chunks/chunk-2ELQVHTV.js +0 -119
  2029. package/dist/chunks/chunk-2ESYJQRX.js +0 -330
  2030. package/dist/chunks/chunk-2F5X6FRA.js +0 -33
  2031. package/dist/chunks/chunk-2F7QJD6Q.js +0 -149
  2032. package/dist/chunks/chunk-2FNVNBED.js +0 -106
  2033. package/dist/chunks/chunk-2HG5MVF6.js +0 -102
  2034. package/dist/chunks/chunk-2IPINHWY.js +0 -242
  2035. package/dist/chunks/chunk-2IQICEEP.js +0 -98
  2036. package/dist/chunks/chunk-2JBFGO4J.js +0 -126
  2037. package/dist/chunks/chunk-2L6C5PWP.js +0 -468
  2038. package/dist/chunks/chunk-2LQGEK5W.js +0 -187
  2039. package/dist/chunks/chunk-2NOYW7U5.js +0 -110
  2040. package/dist/chunks/chunk-2O2RYIOB.js +0 -112
  2041. package/dist/chunks/chunk-2OFFK3MV.js +0 -107
  2042. package/dist/chunks/chunk-2OQJT3F6.js +0 -108
  2043. package/dist/chunks/chunk-2PLOMY6Q.js +0 -130
  2044. package/dist/chunks/chunk-2R3MZKA2.js +0 -45
  2045. package/dist/chunks/chunk-2TVQYCDW.js +0 -23
  2046. package/dist/chunks/chunk-2UTO5644.js +0 -740
  2047. package/dist/chunks/chunk-2VSWD2HJ.js +0 -146
  2048. package/dist/chunks/chunk-2WAL6YCH.js +0 -92
  2049. package/dist/chunks/chunk-2WQHUA67.js +0 -258
  2050. package/dist/chunks/chunk-2XZW35C4.js +0 -327
  2051. package/dist/chunks/chunk-2Y24BYTM.js +0 -149
  2052. package/dist/chunks/chunk-32E3YATK.js +0 -23
  2053. package/dist/chunks/chunk-36SDNHYF.js +0 -196
  2054. package/dist/chunks/chunk-36VXBMLU.js +0 -97
  2055. package/dist/chunks/chunk-37WES5PM.js +0 -118
  2056. package/dist/chunks/chunk-3B5AXYYL.js +0 -166
  2057. package/dist/chunks/chunk-3BOR5A2T.js +0 -436
  2058. package/dist/chunks/chunk-3BUB46T5.js +0 -122
  2059. package/dist/chunks/chunk-3DBNMCGN.js +0 -45
  2060. package/dist/chunks/chunk-3ENDXJW7.js +0 -100
  2061. package/dist/chunks/chunk-3FMRMDP6.js +0 -84
  2062. package/dist/chunks/chunk-3FOT7NVR.js +0 -194
  2063. package/dist/chunks/chunk-3HDJLLZM.js +0 -50
  2064. package/dist/chunks/chunk-3HXGYSL5.js +0 -261
  2065. package/dist/chunks/chunk-3LPEZVYI.js +0 -115
  2066. package/dist/chunks/chunk-3N5NAHPY.js +0 -110
  2067. package/dist/chunks/chunk-3NCU3RLR.js +0 -150
  2068. package/dist/chunks/chunk-3NYC62VG.js +0 -282
  2069. package/dist/chunks/chunk-3PL2BEUY.js +0 -331
  2070. package/dist/chunks/chunk-3RL4MRQT.js +0 -123
  2071. package/dist/chunks/chunk-3RWLFAIA.js +0 -197
  2072. package/dist/chunks/chunk-3SFLKXF3.js +0 -117
  2073. package/dist/chunks/chunk-3SRWECFL.js +0 -478
  2074. package/dist/chunks/chunk-3TCAZ447.js +0 -105
  2075. package/dist/chunks/chunk-3UIQQSHY.js +0 -362
  2076. package/dist/chunks/chunk-3VHOXVMF.js +0 -33
  2077. package/dist/chunks/chunk-3WKKUWEB.js +0 -68
  2078. package/dist/chunks/chunk-3WXLHZKU.js +0 -1132
  2079. package/dist/chunks/chunk-3XP3ON6M.js +0 -206
  2080. package/dist/chunks/chunk-3YFJ5CDS.js +0 -94
  2081. package/dist/chunks/chunk-43LSJUG4.js +0 -214
  2082. package/dist/chunks/chunk-44GLC6RY.js +0 -161
  2083. package/dist/chunks/chunk-44JKPK6Q.js +0 -270
  2084. package/dist/chunks/chunk-45437ZJN.js +0 -108
  2085. package/dist/chunks/chunk-45JABNLR.js +0 -161
  2086. package/dist/chunks/chunk-46YJQQLW.js +0 -544
  2087. package/dist/chunks/chunk-47HWZ6LP.js +0 -168
  2088. package/dist/chunks/chunk-4A5B7J2G.js +0 -172
  2089. package/dist/chunks/chunk-4BSNZ6JA.js +0 -77
  2090. package/dist/chunks/chunk-4BSSD4KD.js +0 -898
  2091. package/dist/chunks/chunk-4CKI3O4M.js +0 -269
  2092. package/dist/chunks/chunk-4CUMZUKO.js +0 -23
  2093. package/dist/chunks/chunk-4DTENBJJ.js +0 -136
  2094. package/dist/chunks/chunk-4FSACN3Q.js +0 -152
  2095. package/dist/chunks/chunk-4HW7YYWZ.js +0 -88
  2096. package/dist/chunks/chunk-4MP4PZTT.js +0 -303
  2097. package/dist/chunks/chunk-4N72M4CD.js +0 -150
  2098. package/dist/chunks/chunk-4O6DHCVV.js +0 -97
  2099. package/dist/chunks/chunk-4OFCQIRH.js +0 -206
  2100. package/dist/chunks/chunk-4OGILN7Y.js +0 -141
  2101. package/dist/chunks/chunk-4QF2DSIQ.js +0 -95
  2102. package/dist/chunks/chunk-4RFGUSNI.js +0 -104
  2103. package/dist/chunks/chunk-4RH2TPRU.js +0 -127
  2104. package/dist/chunks/chunk-4S64KGGB.js +0 -78
  2105. package/dist/chunks/chunk-4SGCHV6F.js +0 -77
  2106. package/dist/chunks/chunk-4SPXP5Z4.js +0 -114
  2107. package/dist/chunks/chunk-4T3VUR2E.js +0 -23
  2108. package/dist/chunks/chunk-4TPWXYGK.js +0 -263
  2109. package/dist/chunks/chunk-4UXEXYYZ.js +0 -239
  2110. package/dist/chunks/chunk-4Y7SXYC4.js +0 -172
  2111. package/dist/chunks/chunk-4YFMC6OS.js +0 -142
  2112. package/dist/chunks/chunk-4ZLRNUKR.js +0 -231
  2113. package/dist/chunks/chunk-55L54JVS.js +0 -78
  2114. package/dist/chunks/chunk-57MSU3KE.js +0 -161
  2115. package/dist/chunks/chunk-57PXFTSD.js +0 -132
  2116. package/dist/chunks/chunk-5F5ZFFCC.js +0 -126
  2117. package/dist/chunks/chunk-5FT63PG7.js +0 -89
  2118. package/dist/chunks/chunk-5GGBYBUJ.js +0 -279
  2119. package/dist/chunks/chunk-5IS5RIGV.js +0 -163
  2120. package/dist/chunks/chunk-5KABUIFE.js +0 -84
  2121. package/dist/chunks/chunk-5KHX4PDB.js +0 -154
  2122. package/dist/chunks/chunk-5LC4LLR4.js +0 -180
  2123. package/dist/chunks/chunk-5MUQTPV6.js +0 -84
  2124. package/dist/chunks/chunk-5NWVUAWR.js +0 -10182
  2125. package/dist/chunks/chunk-5O42E2RM.js +0 -123
  2126. package/dist/chunks/chunk-5P2EXDJP.js +0 -215
  2127. package/dist/chunks/chunk-5PSXZIHG.js +0 -152
  2128. package/dist/chunks/chunk-5RAHZBBI.js +0 -123
  2129. package/dist/chunks/chunk-5RW35U7H.js +0 -230
  2130. package/dist/chunks/chunk-5RWKRO3R.js +0 -290
  2131. package/dist/chunks/chunk-5SMOILSW.js +0 -180
  2132. package/dist/chunks/chunk-5SOQ25Y3.js +0 -23
  2133. package/dist/chunks/chunk-5THOAXJD.js +0 -70
  2134. package/dist/chunks/chunk-62AVP6QT.js +0 -1188
  2135. package/dist/chunks/chunk-63KB2ADE.js +0 -146
  2136. package/dist/chunks/chunk-64W72FBA.js +0 -149
  2137. package/dist/chunks/chunk-67SLLJJB.js +0 -11047
  2138. package/dist/chunks/chunk-6B5LGLOO.js +0 -83
  2139. package/dist/chunks/chunk-6DJXV5QV.js +0 -287
  2140. package/dist/chunks/chunk-6DSIW7GV.js +0 -82
  2141. package/dist/chunks/chunk-6DV5JZ5M.js +0 -121
  2142. package/dist/chunks/chunk-6DWY3DOQ.js +0 -203
  2143. package/dist/chunks/chunk-6EGC5MGK.js +0 -138
  2144. package/dist/chunks/chunk-6F26W53D.js +0 -77
  2145. package/dist/chunks/chunk-6GM3RIOH.js +0 -125
  2146. package/dist/chunks/chunk-6GOO2NM3.js +0 -226
  2147. package/dist/chunks/chunk-6HDJX7JF.js +0 -76
  2148. package/dist/chunks/chunk-6IYYE372.js +0 -272
  2149. package/dist/chunks/chunk-6M2KLG7B.js +0 -329
  2150. package/dist/chunks/chunk-6N6ATVYJ.js +0 -155
  2151. package/dist/chunks/chunk-6SJWEO74.js +0 -85
  2152. package/dist/chunks/chunk-6SZNU4JY.js +0 -106
  2153. package/dist/chunks/chunk-6UJOR3YF.js +0 -957
  2154. package/dist/chunks/chunk-6V2VBW6C.js +0 -159
  2155. package/dist/chunks/chunk-6XGGSKFB.js +0 -103
  2156. package/dist/chunks/chunk-6XTIWLHK.js +0 -240
  2157. package/dist/chunks/chunk-6Y46SDFE.js +0 -36
  2158. package/dist/chunks/chunk-6Z5GDKOE.js +0 -80
  2159. package/dist/chunks/chunk-724K6YSI.js +0 -23
  2160. package/dist/chunks/chunk-72LCYQBN.js +0 -182
  2161. package/dist/chunks/chunk-72QPCPDS.js +0 -131
  2162. package/dist/chunks/chunk-73HFERF5.js +0 -181
  2163. package/dist/chunks/chunk-74XEAEQZ.js +0 -171
  2164. package/dist/chunks/chunk-76KELGDG.js +0 -282
  2165. package/dist/chunks/chunk-77TKKLAS.js +0 -101
  2166. package/dist/chunks/chunk-77XDHDHG.js +0 -163
  2167. package/dist/chunks/chunk-7AKS6GMG.js +0 -159
  2168. package/dist/chunks/chunk-7AMD4YA7.js +0 -41
  2169. package/dist/chunks/chunk-7BDWH6IE.js +0 -100
  2170. package/dist/chunks/chunk-7DUVPXBP.js +0 -90
  2171. package/dist/chunks/chunk-7E2R7GYC.js +0 -193
  2172. package/dist/chunks/chunk-7EDFXCY7.js +0 -131
  2173. package/dist/chunks/chunk-7ENRTJY5.js +0 -209
  2174. package/dist/chunks/chunk-7EZFQO5N.js +0 -366
  2175. package/dist/chunks/chunk-7FRGENTQ.js +0 -157
  2176. package/dist/chunks/chunk-7HOSZARG.js +0 -190
  2177. package/dist/chunks/chunk-7JPHJKXZ.js +0 -368
  2178. package/dist/chunks/chunk-7M53WPLD.js +0 -155
  2179. package/dist/chunks/chunk-7N2K5NME.js +0 -626
  2180. package/dist/chunks/chunk-7N7GWTB5.js +0 -139
  2181. package/dist/chunks/chunk-7NSEEIMJ.js +0 -79
  2182. package/dist/chunks/chunk-7Q3XKXJP.js +0 -162
  2183. package/dist/chunks/chunk-7Q67MXXL.js +0 -140
  2184. package/dist/chunks/chunk-7QKHLQUO.js +0 -36
  2185. package/dist/chunks/chunk-7QKM7NQS.js +0 -23
  2186. package/dist/chunks/chunk-7SKWTK22.js +0 -262
  2187. package/dist/chunks/chunk-7SLCDCQ3.js +0 -297
  2188. package/dist/chunks/chunk-7UVHFYHJ.js +0 -204
  2189. package/dist/chunks/chunk-7VRAKURD.js +0 -121
  2190. package/dist/chunks/chunk-A44WEVKR.js +0 -185
  2191. package/dist/chunks/chunk-A4XS6G7W.js +0 -47
  2192. package/dist/chunks/chunk-A6GPFR5O.js +0 -422
  2193. package/dist/chunks/chunk-A7X53FKW.js +0 -304
  2194. package/dist/chunks/chunk-ACG64WFB.js +0 -412
  2195. package/dist/chunks/chunk-ACIHBI4R.js +0 -632
  2196. package/dist/chunks/chunk-ACMYWNPT.js +0 -111
  2197. package/dist/chunks/chunk-ACTNHKOC.js +0 -178
  2198. package/dist/chunks/chunk-AFARXTNQ.js +0 -103
  2199. package/dist/chunks/chunk-AFBTJOJP.js +0 -86
  2200. package/dist/chunks/chunk-AHX2V3K2.js +0 -47
  2201. package/dist/chunks/chunk-AKEFHBZF.js +0 -167
  2202. package/dist/chunks/chunk-AKVVLQZU.js +0 -262
  2203. package/dist/chunks/chunk-AM4QLGDM.js +0 -33
  2204. package/dist/chunks/chunk-AMOQLKAM.js +0 -105
  2205. package/dist/chunks/chunk-AN772BNF.js +0 -174
  2206. package/dist/chunks/chunk-AP7PHJ54.js +0 -312
  2207. package/dist/chunks/chunk-APM3D23V.js +0 -23
  2208. package/dist/chunks/chunk-AQGECTRJ.js +0 -90
  2209. package/dist/chunks/chunk-AQSN5T2U.js +0 -23
  2210. package/dist/chunks/chunk-AS3ZILTF.js +0 -224
  2211. package/dist/chunks/chunk-ASWWZNTY.js +0 -130
  2212. package/dist/chunks/chunk-ASXV6WER.js +0 -133
  2213. package/dist/chunks/chunk-AUK3VYPV.js +0 -172
  2214. package/dist/chunks/chunk-AV7BMDYY.js +0 -231
  2215. package/dist/chunks/chunk-AVCNIKVD.js +0 -305
  2216. package/dist/chunks/chunk-AXNE5CPD.js +0 -81
  2217. package/dist/chunks/chunk-AYJREN5K.js +0 -382
  2218. package/dist/chunks/chunk-AZJOPK75.js +0 -23
  2219. package/dist/chunks/chunk-AZKFF4A7.js +0 -165
  2220. package/dist/chunks/chunk-AZKWGJHU.js +0 -176
  2221. package/dist/chunks/chunk-AZMKBVZR.js +0 -368
  2222. package/dist/chunks/chunk-B53ZGR2D.js +0 -77
  2223. package/dist/chunks/chunk-B5AIXWRP.js +0 -338
  2224. package/dist/chunks/chunk-B6GIKFBY.js +0 -33
  2225. package/dist/chunks/chunk-BBGUFVH3.js +0 -176
  2226. package/dist/chunks/chunk-BDP4IUZA.js +0 -76
  2227. package/dist/chunks/chunk-BEH5PYCR.js +0 -23
  2228. package/dist/chunks/chunk-BH2NRUV6.js +0 -382
  2229. package/dist/chunks/chunk-BHIV4SVT.js +0 -110
  2230. package/dist/chunks/chunk-BHV6LKWO.js +0 -229
  2231. package/dist/chunks/chunk-BI3M4RUH.js +0 -48
  2232. package/dist/chunks/chunk-BKCV2KLZ.js +0 -133
  2233. package/dist/chunks/chunk-BLRRMMWM.js +0 -33
  2234. package/dist/chunks/chunk-BNEFANT2.js +0 -134
  2235. package/dist/chunks/chunk-BNQAMFPH.js +0 -153
  2236. package/dist/chunks/chunk-BOSFGFH5.js +0 -49
  2237. package/dist/chunks/chunk-BP5QXJ3Q.js +0 -261
  2238. package/dist/chunks/chunk-BP7CHO7K.js +0 -33
  2239. package/dist/chunks/chunk-BPWIA36F.js +0 -150
  2240. package/dist/chunks/chunk-BSLTAZD7.js +0 -358
  2241. package/dist/chunks/chunk-BT7BXCO6.js +0 -156
  2242. package/dist/chunks/chunk-BU67IXGP.js +0 -128
  2243. package/dist/chunks/chunk-BV3I5YS6.js +0 -226
  2244. package/dist/chunks/chunk-BYG77OM3.js +0 -70
  2245. package/dist/chunks/chunk-BYRALMQM.js +0 -83
  2246. package/dist/chunks/chunk-C22YM3DB.js +0 -77
  2247. package/dist/chunks/chunk-C2ZDZ44Y.js +0 -375
  2248. package/dist/chunks/chunk-C3RQ5SGY.js +0 -45
  2249. package/dist/chunks/chunk-C4FJZ76B.js +0 -260
  2250. package/dist/chunks/chunk-C5AANG72.js +0 -342
  2251. package/dist/chunks/chunk-C5VOY23E.js +0 -210
  2252. package/dist/chunks/chunk-C6ZEZXKS.js +0 -224
  2253. package/dist/chunks/chunk-C75JHOW3.js +0 -237
  2254. package/dist/chunks/chunk-CA2XT44T.js +0 -87
  2255. package/dist/chunks/chunk-CANJ4WFS.js +0 -255
  2256. package/dist/chunks/chunk-CB64COUY.js +0 -164
  2257. package/dist/chunks/chunk-CBR626SM.js +0 -204
  2258. package/dist/chunks/chunk-CBZPKKB3.js +0 -330
  2259. package/dist/chunks/chunk-CDZWU24V.js +0 -91
  2260. package/dist/chunks/chunk-CFCZFVQN.js +0 -23
  2261. package/dist/chunks/chunk-CFEKYNGQ.js +0 -157
  2262. package/dist/chunks/chunk-CFQF557I.js +0 -156
  2263. package/dist/chunks/chunk-CG3NLQKA.js +0 -138
  2264. package/dist/chunks/chunk-CGVEBU5T.js +0 -106
  2265. package/dist/chunks/chunk-CGVMRHEJ.js +0 -55
  2266. package/dist/chunks/chunk-CIYZFYTU.js +0 -262
  2267. package/dist/chunks/chunk-CLRKVDHX.js +0 -33
  2268. package/dist/chunks/chunk-CMA6K4JA.js +0 -411
  2269. package/dist/chunks/chunk-CMNLTO3U.js +0 -147
  2270. package/dist/chunks/chunk-CN6HEOMF.js +0 -81
  2271. package/dist/chunks/chunk-CNB5IKP2.js +0 -198
  2272. package/dist/chunks/chunk-CNKUEB3Y.js +0 -163
  2273. package/dist/chunks/chunk-CNTK4ONT.js +0 -139
  2274. package/dist/chunks/chunk-CQJCZAFT.js +0 -119
  2275. package/dist/chunks/chunk-CRGE3FVX.js +0 -104
  2276. package/dist/chunks/chunk-CS7KKWG4.js +0 -480
  2277. package/dist/chunks/chunk-CSIACK6R.js +0 -108
  2278. package/dist/chunks/chunk-CTKQX7PC.js +0 -225
  2279. package/dist/chunks/chunk-CW6AUVZG.js +0 -186
  2280. package/dist/chunks/chunk-CWIB2O47.js +0 -78
  2281. package/dist/chunks/chunk-CXUXO5UA.js +0 -151
  2282. package/dist/chunks/chunk-CYF4ZKFJ.js +0 -221
  2283. package/dist/chunks/chunk-CYMLYHO4.js +0 -121
  2284. package/dist/chunks/chunk-CYRHW6XG.js +0 -351
  2285. package/dist/chunks/chunk-CZP6ZUR4.js +0 -78
  2286. package/dist/chunks/chunk-D2UCKTWZ.js +0 -1845
  2287. package/dist/chunks/chunk-D374E5AW.js +0 -113
  2288. package/dist/chunks/chunk-D4HEDPVN.js +0 -11574
  2289. package/dist/chunks/chunk-D4W4BCRH.js +0 -391
  2290. package/dist/chunks/chunk-D5QN3Y5O.js +0 -82
  2291. package/dist/chunks/chunk-D7GKEYFB.js +0 -293
  2292. package/dist/chunks/chunk-DCP2C3W2.js +0 -104
  2293. package/dist/chunks/chunk-DDM4OFVP.js +0 -1469
  2294. package/dist/chunks/chunk-DEWOJ7FJ.js +0 -248
  2295. package/dist/chunks/chunk-DEZMWNNV.js +0 -304
  2296. package/dist/chunks/chunk-DF7VNOSI.js +0 -52
  2297. package/dist/chunks/chunk-DFWBCNW5.js +0 -213
  2298. package/dist/chunks/chunk-DHZBRKFZ.js +0 -1677
  2299. package/dist/chunks/chunk-DIBIREY3.js +0 -154
  2300. package/dist/chunks/chunk-DJNTNPZ7.js +0 -362
  2301. package/dist/chunks/chunk-DK4X3E45.js +0 -33
  2302. package/dist/chunks/chunk-DLMGCPW6.js +0 -52
  2303. package/dist/chunks/chunk-DNF4YSRZ.js +0 -208
  2304. package/dist/chunks/chunk-DNL4EXWP.js +0 -162
  2305. package/dist/chunks/chunk-DO3MEP2E.js +0 -171
  2306. package/dist/chunks/chunk-DPCVPV7J.js +0 -95
  2307. package/dist/chunks/chunk-DPTFZDOS.js +0 -45
  2308. package/dist/chunks/chunk-DQDLGCVI.js +0 -192
  2309. package/dist/chunks/chunk-DQHKV663.js +0 -189
  2310. package/dist/chunks/chunk-DQNVUAF5.js +0 -87
  2311. package/dist/chunks/chunk-DQQNEJYQ.js +0 -166
  2312. package/dist/chunks/chunk-DRESZDOP.js +0 -130
  2313. package/dist/chunks/chunk-DS5AWKBO.js +0 -27
  2314. package/dist/chunks/chunk-DSN4WQA2.js +0 -44
  2315. package/dist/chunks/chunk-DTFBGVE2.js +0 -36
  2316. package/dist/chunks/chunk-DTSZBMUF.js +0 -152
  2317. package/dist/chunks/chunk-DVP23MAI.js +0 -33
  2318. package/dist/chunks/chunk-DWJLDYGN.js +0 -177
  2319. package/dist/chunks/chunk-DY77NFNR.js +0 -93
  2320. package/dist/chunks/chunk-DYNJDZ4J.js +0 -62
  2321. package/dist/chunks/chunk-DZB4BJS5.js +0 -345
  2322. package/dist/chunks/chunk-E46INOES.js +0 -156
  2323. package/dist/chunks/chunk-E4SLYKH3.js +0 -273
  2324. package/dist/chunks/chunk-E4WPTUGN.js +0 -1804
  2325. package/dist/chunks/chunk-E5UBHJFU.js +0 -23
  2326. package/dist/chunks/chunk-E7A7FZN7.js +0 -41
  2327. package/dist/chunks/chunk-EAAUKDKB.js +0 -151
  2328. package/dist/chunks/chunk-EB663FLR.js +0 -624
  2329. package/dist/chunks/chunk-EBLHS2EG.js +0 -564
  2330. package/dist/chunks/chunk-ECHHT5KG.js +0 -237
  2331. package/dist/chunks/chunk-EDCBYEZA.js +0 -155
  2332. package/dist/chunks/chunk-EDOA5X6N.js +0 -147
  2333. package/dist/chunks/chunk-EFDBUY67.js +0 -33
  2334. package/dist/chunks/chunk-EHTLT6XJ.js +0 -131
  2335. package/dist/chunks/chunk-EKIQ77SE.js +0 -23
  2336. package/dist/chunks/chunk-EKV2YWKB.js +0 -235
  2337. package/dist/chunks/chunk-EMJBEROR.js +0 -195
  2338. package/dist/chunks/chunk-EN3ISMEG.js +0 -200
  2339. package/dist/chunks/chunk-ERHSB56N.js +0 -156
  2340. package/dist/chunks/chunk-ESTEDS6U.js +0 -50
  2341. package/dist/chunks/chunk-ESWKMEN4.js +0 -41
  2342. package/dist/chunks/chunk-EUJDMTCO.js +0 -75
  2343. package/dist/chunks/chunk-EVFG2K4L.js +0 -199
  2344. package/dist/chunks/chunk-EVWOOAWA.js +0 -105
  2345. package/dist/chunks/chunk-EYTQOWEI.js +0 -130
  2346. package/dist/chunks/chunk-EZSF53X5.js +0 -127
  2347. package/dist/chunks/chunk-EZYGPG5J.js +0 -100
  2348. package/dist/chunks/chunk-F472JWP3.js +0 -1136
  2349. package/dist/chunks/chunk-F4NTIOTT.js +0 -210
  2350. package/dist/chunks/chunk-F5O6RPON.js +0 -111
  2351. package/dist/chunks/chunk-F7MV2OYN.js +0 -93
  2352. package/dist/chunks/chunk-FAMBXRBM.js +0 -251
  2353. package/dist/chunks/chunk-FAVZ6IES.js +0 -104
  2354. package/dist/chunks/chunk-FB3SYMQT.js +0 -137
  2355. package/dist/chunks/chunk-FC7B22QS.js +0 -150
  2356. package/dist/chunks/chunk-FCK5SPO3.js +0 -23
  2357. package/dist/chunks/chunk-FDVGZXQC.js +0 -291
  2358. package/dist/chunks/chunk-FE5PINIC.js +0 -97
  2359. package/dist/chunks/chunk-FH57ELAA.js +0 -340
  2360. package/dist/chunks/chunk-FHM2ZUO2.js +0 -72
  2361. package/dist/chunks/chunk-FILU522C.js +0 -165
  2362. package/dist/chunks/chunk-FJ65KAV5.js +0 -283
  2363. package/dist/chunks/chunk-FLISMK7J.js +0 -153
  2364. package/dist/chunks/chunk-FNCSG23N.js +0 -122
  2365. package/dist/chunks/chunk-FNUM5W3W.js +0 -36
  2366. package/dist/chunks/chunk-FOH67YBV.js +0 -358
  2367. package/dist/chunks/chunk-FOHHZR6N.js +0 -257
  2368. package/dist/chunks/chunk-FOM33PRI.js +0 -33
  2369. package/dist/chunks/chunk-FP7A5CNE.js +0 -299
  2370. package/dist/chunks/chunk-FRTK4Z5G.js +0 -278
  2371. package/dist/chunks/chunk-FRXYC2BB.js +0 -39
  2372. package/dist/chunks/chunk-FSYAKL3Y.js +0 -307
  2373. package/dist/chunks/chunk-FTAE7ZPX.js +0 -86
  2374. package/dist/chunks/chunk-FV6XRGFE.js +0 -98
  2375. package/dist/chunks/chunk-FVHIDGQD.js +0 -385
  2376. package/dist/chunks/chunk-FXND5ZPI.js +0 -78
  2377. package/dist/chunks/chunk-FY3KUEGM.js +0 -166
  2378. package/dist/chunks/chunk-FYZYHQSN.js +0 -345
  2379. package/dist/chunks/chunk-G3UWLHYD.js +0 -179
  2380. package/dist/chunks/chunk-G3ZX4RJK.js +0 -149
  2381. package/dist/chunks/chunk-G4DYR4AR.js +0 -79
  2382. package/dist/chunks/chunk-G4XRS4WU.js +0 -30
  2383. package/dist/chunks/chunk-G5CURQ6H.js +0 -162
  2384. package/dist/chunks/chunk-G6MIC23V.js +0 -199
  2385. package/dist/chunks/chunk-GAQD6CN2.js +0 -206
  2386. package/dist/chunks/chunk-GBUMWUHN.js +0 -400
  2387. package/dist/chunks/chunk-GCRVK2FA.js +0 -178
  2388. package/dist/chunks/chunk-GCXA75PM.js +0 -23
  2389. package/dist/chunks/chunk-GCZNQTN6.js +0 -290
  2390. package/dist/chunks/chunk-GDLNXNTG.js +0 -84
  2391. package/dist/chunks/chunk-GFF5YWWB.js +0 -79
  2392. package/dist/chunks/chunk-GFTON6F3.js +0 -80
  2393. package/dist/chunks/chunk-GFVGMGY5.js +0 -75
  2394. package/dist/chunks/chunk-GGETP5LE.js +0 -194
  2395. package/dist/chunks/chunk-GGZ2QH2M.js +0 -104
  2396. package/dist/chunks/chunk-GIAW3KAV.js +0 -181
  2397. package/dist/chunks/chunk-GKAERJSI.js +0 -177
  2398. package/dist/chunks/chunk-GLEAW73L.js +0 -23
  2399. package/dist/chunks/chunk-GLIYS64Y.js +0 -87
  2400. package/dist/chunks/chunk-GLMZTQBN.js +0 -155
  2401. package/dist/chunks/chunk-GNMYTM2B.js +0 -77
  2402. package/dist/chunks/chunk-GO4HBL64.js +0 -336
  2403. package/dist/chunks/chunk-GODXMHO3.js +0 -1649
  2404. package/dist/chunks/chunk-GRL2GMU2.js +0 -109
  2405. package/dist/chunks/chunk-GT22XGDH.js +0 -152
  2406. package/dist/chunks/chunk-GTRURIIB.js +0 -124
  2407. package/dist/chunks/chunk-GXIBN73T.js +0 -109
  2408. package/dist/chunks/chunk-GYXGO45B.js +0 -97
  2409. package/dist/chunks/chunk-H35YLZV2.js +0 -102
  2410. package/dist/chunks/chunk-H6JBVJZI.js +0 -150
  2411. package/dist/chunks/chunk-HCJ4YARL.js +0 -125
  2412. package/dist/chunks/chunk-HCQULFUV.js +0 -84
  2413. package/dist/chunks/chunk-HD2ZBLFU.js +0 -90
  2414. package/dist/chunks/chunk-HEBHBZLM.js +0 -311
  2415. package/dist/chunks/chunk-HF4GSDL3.js +0 -425
  2416. package/dist/chunks/chunk-HGIWP5WW.js +0 -98
  2417. package/dist/chunks/chunk-HGRBGSYZ.js +0 -139
  2418. package/dist/chunks/chunk-HGTM2JVZ.js +0 -117
  2419. package/dist/chunks/chunk-HILEPJJO.js +0 -103
  2420. package/dist/chunks/chunk-HJQU5POV.js +0 -33
  2421. package/dist/chunks/chunk-HKFNGEB3.js +0 -123
  2422. package/dist/chunks/chunk-HKXNKW7E.js +0 -101
  2423. package/dist/chunks/chunk-HL4M53ZR.js +0 -143
  2424. package/dist/chunks/chunk-HMDWUWJW.js +0 -101
  2425. package/dist/chunks/chunk-HMGAJTTK.js +0 -74
  2426. package/dist/chunks/chunk-HN5S47VT.js +0 -74
  2427. package/dist/chunks/chunk-HOLXUB2D.js +0 -151
  2428. package/dist/chunks/chunk-HQGZZ2MK.js +0 -462
  2429. package/dist/chunks/chunk-HSNSEJ2A.js +0 -251
  2430. package/dist/chunks/chunk-HSUN34S3.js +0 -405
  2431. package/dist/chunks/chunk-HUI5HRI4.js +0 -150
  2432. package/dist/chunks/chunk-HV3V64AV.js +0 -360
  2433. package/dist/chunks/chunk-HVD6EQ67.js +0 -139
  2434. package/dist/chunks/chunk-HXWTRCDP.js +0 -92
  2435. package/dist/chunks/chunk-HY7VMP6F.js +0 -111
  2436. package/dist/chunks/chunk-HYBRRA6A.js +0 -221
  2437. package/dist/chunks/chunk-I3NUEMNB.js +0 -179
  2438. package/dist/chunks/chunk-I46G4PX2.js +0 -224
  2439. package/dist/chunks/chunk-I4B6OO22.js +0 -123
  2440. package/dist/chunks/chunk-I5KJ4RYI.js +0 -165
  2441. package/dist/chunks/chunk-I75EHXSL.js +0 -607
  2442. package/dist/chunks/chunk-I7FRR6IU.js +0 -484
  2443. package/dist/chunks/chunk-IAK4EGOW.js +0 -149
  2444. package/dist/chunks/chunk-IB36KOAE.js +0 -60
  2445. package/dist/chunks/chunk-IBBRZLEN.js +0 -447
  2446. package/dist/chunks/chunk-IC7274GH.js +0 -209
  2447. package/dist/chunks/chunk-ID6YV4QF.js +0 -184
  2448. package/dist/chunks/chunk-IDL5KKIC.js +0 -574
  2449. package/dist/chunks/chunk-IECJMYFV.js +0 -30
  2450. package/dist/chunks/chunk-IGDTOI5Y.js +0 -62
  2451. package/dist/chunks/chunk-IHCLOKGO.js +0 -346
  2452. package/dist/chunks/chunk-IJ65QZLL.js +0 -36
  2453. package/dist/chunks/chunk-IM6HORNC.js +0 -10425
  2454. package/dist/chunks/chunk-INFIFTBV.js +0 -1393
  2455. package/dist/chunks/chunk-INT2OPPY.js +0 -49
  2456. package/dist/chunks/chunk-IPFF7BV7.js +0 -153
  2457. package/dist/chunks/chunk-IPHFL5G7.js +0 -97
  2458. package/dist/chunks/chunk-IPJBL73R.js +0 -197
  2459. package/dist/chunks/chunk-IRAU45LR.js +0 -37
  2460. package/dist/chunks/chunk-ISAKZHVA.js +0 -83
  2461. package/dist/chunks/chunk-ISRWSG4R.js +0 -99
  2462. package/dist/chunks/chunk-IT6MNS4P.js +0 -220
  2463. package/dist/chunks/chunk-ITAEZYM3.js +0 -246
  2464. package/dist/chunks/chunk-ITCZTM2L.js +0 -93
  2465. package/dist/chunks/chunk-ITON5P7L.js +0 -457
  2466. package/dist/chunks/chunk-IUTLSBIH.js +0 -101
  2467. package/dist/chunks/chunk-IVBJ7MTY.js +0 -33
  2468. package/dist/chunks/chunk-IW4QEOOY.js +0 -127
  2469. package/dist/chunks/chunk-IWCZDFXL.js +0 -95
  2470. package/dist/chunks/chunk-IYCYJMDY.js +0 -260
  2471. package/dist/chunks/chunk-IYLSH7NQ.js +0 -23
  2472. package/dist/chunks/chunk-IYXO7S7X.js +0 -23
  2473. package/dist/chunks/chunk-J36GQWWD.js +0 -45
  2474. package/dist/chunks/chunk-J3D62BAC.js +0 -172
  2475. package/dist/chunks/chunk-J3MLEXQ6.js +0 -336
  2476. package/dist/chunks/chunk-J3R3YGHV.js +0 -152
  2477. package/dist/chunks/chunk-J45SHRHA.js +0 -158
  2478. package/dist/chunks/chunk-J4PFKKUW.js +0 -250
  2479. package/dist/chunks/chunk-J4QYIKWI.js +0 -165
  2480. package/dist/chunks/chunk-J57CGYSM.js +0 -18
  2481. package/dist/chunks/chunk-J7W7SQCY.js +0 -23
  2482. package/dist/chunks/chunk-JABQYQ3C.js +0 -163
  2483. package/dist/chunks/chunk-JAEO6PTM.js +0 -146
  2484. package/dist/chunks/chunk-JAQ6A2NG.js +0 -340
  2485. package/dist/chunks/chunk-JF2L6WGC.js +0 -287
  2486. package/dist/chunks/chunk-JG2LOE5P.js +0 -140
  2487. package/dist/chunks/chunk-JGEUCDS4.js +0 -134
  2488. package/dist/chunks/chunk-JHCUMBCF.js +0 -446
  2489. package/dist/chunks/chunk-JHHE6IFQ.js +0 -213
  2490. package/dist/chunks/chunk-JHLS7WVH.js +0 -108
  2491. package/dist/chunks/chunk-JL5YRMNU.js +0 -390
  2492. package/dist/chunks/chunk-JLACP7US.js +0 -1574
  2493. package/dist/chunks/chunk-JMMMOGAL.js +0 -42
  2494. package/dist/chunks/chunk-JN6KGF3X.js +0 -133
  2495. package/dist/chunks/chunk-JOTVTAJI.js +0 -214
  2496. package/dist/chunks/chunk-JPDFMQSK.js +0 -324
  2497. package/dist/chunks/chunk-JPMLUHZX.js +0 -30
  2498. package/dist/chunks/chunk-JTLIJUQC.js +0 -33
  2499. package/dist/chunks/chunk-JTOSIMQO.js +0 -45
  2500. package/dist/chunks/chunk-JTSHQ227.js +0 -95
  2501. package/dist/chunks/chunk-JVXBAZF5.js +0 -23
  2502. package/dist/chunks/chunk-JXAJ6OST.js +0 -200
  2503. package/dist/chunks/chunk-K3SIJ67O.js +0 -196
  2504. package/dist/chunks/chunk-K5JPN3KA.js +0 -331
  2505. package/dist/chunks/chunk-KBOQAVP2.js +0 -23
  2506. package/dist/chunks/chunk-KCZFJR2O.js +0 -23
  2507. package/dist/chunks/chunk-KF2J5RLA.js +0 -122
  2508. package/dist/chunks/chunk-KFGD6HPK.js +0 -104
  2509. package/dist/chunks/chunk-KFUB6AC4.js +0 -142
  2510. package/dist/chunks/chunk-KG6CLCGF.js +0 -33
  2511. package/dist/chunks/chunk-KJQMMKPO.js +0 -689
  2512. package/dist/chunks/chunk-KM2NXI5U.js +0 -283
  2513. package/dist/chunks/chunk-KO3O3ZPA.js +0 -292
  2514. package/dist/chunks/chunk-KOFUYOXO.js +0 -23
  2515. package/dist/chunks/chunk-KPGLCEH4.js +0 -100
  2516. package/dist/chunks/chunk-KQVK5ZZB.js +0 -118
  2517. package/dist/chunks/chunk-KS7DVWDB.js +0 -558
  2518. package/dist/chunks/chunk-KSSWISRP.js +0 -98
  2519. package/dist/chunks/chunk-KU6XT3MP.js +0 -146
  2520. package/dist/chunks/chunk-KZ4WXZP5.js +0 -255
  2521. package/dist/chunks/chunk-KZOULL5H.js +0 -66
  2522. package/dist/chunks/chunk-L2EAL33W.js +0 -152
  2523. package/dist/chunks/chunk-L5GYVSSI.js +0 -198
  2524. package/dist/chunks/chunk-L5WK53H5.js +0 -123
  2525. package/dist/chunks/chunk-L6ADBDJR.js +0 -738
  2526. package/dist/chunks/chunk-LEB5TCN5.js +0 -80
  2527. package/dist/chunks/chunk-LG4D3XGQ.js +0 -100
  2528. package/dist/chunks/chunk-LGZJHZFS.js +0 -303
  2529. package/dist/chunks/chunk-LHMKJ6EW.js +0 -115
  2530. package/dist/chunks/chunk-LJSDX4WU.js +0 -33
  2531. package/dist/chunks/chunk-LKCPVFHU.js +0 -80
  2532. package/dist/chunks/chunk-LKSMH2XN.js +0 -110
  2533. package/dist/chunks/chunk-LKWODNCS.js +0 -52
  2534. package/dist/chunks/chunk-LLCSM3VJ.js +0 -130
  2535. package/dist/chunks/chunk-LMRTRVPC.js +0 -36
  2536. package/dist/chunks/chunk-LMWBMMIP.js +0 -120
  2537. package/dist/chunks/chunk-LN562MQ2.js +0 -106
  2538. package/dist/chunks/chunk-LOZ3AMP2.js +0 -165
  2539. package/dist/chunks/chunk-LPDOTFUB.js +0 -122
  2540. package/dist/chunks/chunk-LQ4PKHSX.js +0 -361
  2541. package/dist/chunks/chunk-LQRDKA4Q.js +0 -99
  2542. package/dist/chunks/chunk-LS4GYIM5.js +0 -83
  2543. package/dist/chunks/chunk-LSBPW77M.js +0 -145
  2544. package/dist/chunks/chunk-LSGXX2Z6.js +0 -112
  2545. package/dist/chunks/chunk-LTJSNXAU.js +0 -152
  2546. package/dist/chunks/chunk-LUBK7P37.js +0 -135
  2547. package/dist/chunks/chunk-LUEPTDAU.js +0 -79
  2548. package/dist/chunks/chunk-LUFQLTSZ.js +0 -222
  2549. package/dist/chunks/chunk-LUJ7T65D.js +0 -497
  2550. package/dist/chunks/chunk-LXMGMNST.js +0 -317
  2551. package/dist/chunks/chunk-LYGJQA2W.js +0 -209
  2552. package/dist/chunks/chunk-M3LJESEK.js +0 -85
  2553. package/dist/chunks/chunk-M3P4VTFE.js +0 -160
  2554. package/dist/chunks/chunk-M4XV5HU2.js +0 -89
  2555. package/dist/chunks/chunk-M5Y63HCO.js +0 -23
  2556. package/dist/chunks/chunk-M6OJ6XUH.js +0 -119
  2557. package/dist/chunks/chunk-MBJ6CWMZ.js +0 -1309
  2558. package/dist/chunks/chunk-MCUL7OFO.js +0 -45
  2559. package/dist/chunks/chunk-ME5GU26W.js +0 -135
  2560. package/dist/chunks/chunk-MEQIP72O.js +0 -23
  2561. package/dist/chunks/chunk-MGSJUGYI.js +0 -94
  2562. package/dist/chunks/chunk-MMNAEEBH.js +0 -194
  2563. package/dist/chunks/chunk-MOXE2LVS.js +0 -102
  2564. package/dist/chunks/chunk-MQSAGHE4.js +0 -33
  2565. package/dist/chunks/chunk-MT3MXO75.js +0 -164
  2566. package/dist/chunks/chunk-MTP3EPX3.js +0 -141
  2567. package/dist/chunks/chunk-MVFTU7FR.js +0 -209
  2568. package/dist/chunks/chunk-MVXK7NGK.js +0 -54
  2569. package/dist/chunks/chunk-MW5F26D6.js +0 -85
  2570. package/dist/chunks/chunk-MWFJ6YVW.js +0 -366
  2571. package/dist/chunks/chunk-N2A7IYXU.js +0 -162
  2572. package/dist/chunks/chunk-N2FYMBGZ.js +0 -41
  2573. package/dist/chunks/chunk-N33LTG5A.js +0 -260
  2574. package/dist/chunks/chunk-N345MTET.js +0 -160
  2575. package/dist/chunks/chunk-N3KKWZKT.js +0 -156
  2576. package/dist/chunks/chunk-N43G5CHB.js +0 -209
  2577. package/dist/chunks/chunk-N63AM3TR.js +0 -147
  2578. package/dist/chunks/chunk-N6SUNRFK.js +0 -106
  2579. package/dist/chunks/chunk-N7BK7VCE.js +0 -94
  2580. package/dist/chunks/chunk-NA3X3BNK.js +0 -173
  2581. package/dist/chunks/chunk-NAKOHNB4.js +0 -185
  2582. package/dist/chunks/chunk-NBRDSCXS.js +0 -198
  2583. package/dist/chunks/chunk-NDLYUJLN.js +0 -183
  2584. package/dist/chunks/chunk-NDT2GAQB.js +0 -110
  2585. package/dist/chunks/chunk-NGMCQZA6.js +0 -90
  2586. package/dist/chunks/chunk-NHDBQ4G7.js +0 -137
  2587. package/dist/chunks/chunk-NHOHED2C.js +0 -170
  2588. package/dist/chunks/chunk-NKPU5TF2.js +0 -103
  2589. package/dist/chunks/chunk-NKS4IWYD.js +0 -68
  2590. package/dist/chunks/chunk-NKWAANLB.js +0 -85
  2591. package/dist/chunks/chunk-NL5MEACK.js +0 -70
  2592. package/dist/chunks/chunk-NLHAWQLO.js +0 -128
  2593. package/dist/chunks/chunk-NLXZ5RAL.js +0 -261
  2594. package/dist/chunks/chunk-NN73C6Y6.js +0 -86
  2595. package/dist/chunks/chunk-NN7PTVAW.js +0 -106
  2596. package/dist/chunks/chunk-NO734F3F.js +0 -146
  2597. package/dist/chunks/chunk-NOAAC27O.js +0 -335
  2598. package/dist/chunks/chunk-NR2SFSJU.js +0 -887
  2599. package/dist/chunks/chunk-NRCJJZBK.js +0 -60
  2600. package/dist/chunks/chunk-NRUR2FZE.js +0 -775
  2601. package/dist/chunks/chunk-NS75Z4Y5.js +0 -130
  2602. package/dist/chunks/chunk-NSF57CYY.js +0 -164
  2603. package/dist/chunks/chunk-NSLWQ5ZB.js +0 -278
  2604. package/dist/chunks/chunk-NU33AI32.js +0 -23
  2605. package/dist/chunks/chunk-NV2MVWWL.js +0 -157
  2606. package/dist/chunks/chunk-NWIUPME5.js +0 -91
  2607. package/dist/chunks/chunk-NYEE6XK7.js +0 -23
  2608. package/dist/chunks/chunk-NYYN7YE7.js +0 -78
  2609. package/dist/chunks/chunk-O24FY473.js +0 -43
  2610. package/dist/chunks/chunk-O2CAGN6R.js +0 -90
  2611. package/dist/chunks/chunk-O3BEBIDN.js +0 -219
  2612. package/dist/chunks/chunk-O5WFLCVU.js +0 -146
  2613. package/dist/chunks/chunk-O5WPFOA3.js +0 -169
  2614. package/dist/chunks/chunk-O7JDTUKF.js +0 -342
  2615. package/dist/chunks/chunk-OFBMLZOA.js +0 -226
  2616. package/dist/chunks/chunk-OFJ6KDD2.js +0 -263
  2617. package/dist/chunks/chunk-OG3LNFZ7.js +0 -1403
  2618. package/dist/chunks/chunk-OGTRYMBE.js +0 -66
  2619. package/dist/chunks/chunk-OINGSM6H.js +0 -36
  2620. package/dist/chunks/chunk-OKDZILNK.js +0 -407
  2621. package/dist/chunks/chunk-OLN4TCUX.js +0 -93
  2622. package/dist/chunks/chunk-OLPNNPPZ.js +0 -160
  2623. package/dist/chunks/chunk-ON4PFGF6.js +0 -163
  2624. package/dist/chunks/chunk-ON4TK76F.js +0 -175
  2625. package/dist/chunks/chunk-ONY2SIHS.js +0 -33
  2626. package/dist/chunks/chunk-OOGCRXNV.js +0 -184
  2627. package/dist/chunks/chunk-OPKUTIGE.js +0 -289
  2628. package/dist/chunks/chunk-OQOEFC2U.js +0 -86
  2629. package/dist/chunks/chunk-OQOSHZCI.js +0 -135
  2630. package/dist/chunks/chunk-OR6HMJRM.js +0 -173
  2631. package/dist/chunks/chunk-ORPIGG2F.js +0 -84
  2632. package/dist/chunks/chunk-OT26PQOK.js +0 -185
  2633. package/dist/chunks/chunk-OTICJQ4T.js +0 -267
  2634. package/dist/chunks/chunk-OWGUVGAV.js +0 -128
  2635. package/dist/chunks/chunk-OWIMSMOU.js +0 -428
  2636. package/dist/chunks/chunk-OXSVZKEG.js +0 -129
  2637. package/dist/chunks/chunk-OZG32TKE.js +0 -88
  2638. package/dist/chunks/chunk-OZZDETOU.js +0 -109
  2639. package/dist/chunks/chunk-P2KQFS5C.js +0 -167
  2640. package/dist/chunks/chunk-P3MJ3HNQ.js +0 -172
  2641. package/dist/chunks/chunk-P3VJIMYS.js +0 -266
  2642. package/dist/chunks/chunk-P43ECBT6.js +0 -122
  2643. package/dist/chunks/chunk-P65SXEXV.js +0 -183
  2644. package/dist/chunks/chunk-PCYIUONW.js +0 -79
  2645. package/dist/chunks/chunk-PD6VSH5W.js +0 -92
  2646. package/dist/chunks/chunk-PDT7Y2QY.js +0 -252
  2647. package/dist/chunks/chunk-PDWXGRT4.js +0 -215
  2648. package/dist/chunks/chunk-PFZZCO3F.js +0 -45
  2649. package/dist/chunks/chunk-PGQXRMF6.js +0 -23
  2650. package/dist/chunks/chunk-PGVZFKTB.js +0 -23
  2651. package/dist/chunks/chunk-PJLNZH45.js +0 -97
  2652. package/dist/chunks/chunk-PKUBSDKU.js +0 -192
  2653. package/dist/chunks/chunk-PKUR3SZA.js +0 -277
  2654. package/dist/chunks/chunk-PL5BB6TL.js +0 -454
  2655. package/dist/chunks/chunk-PLAZNOC6.js +0 -106
  2656. package/dist/chunks/chunk-PLBXHSJB.js +0 -422
  2657. package/dist/chunks/chunk-PLZOQXMQ.js +0 -2662
  2658. package/dist/chunks/chunk-PM7Y3GBJ.js +0 -479
  2659. package/dist/chunks/chunk-PMA4XJ2E.js +0 -93
  2660. package/dist/chunks/chunk-PMVMC75G.js +0 -51
  2661. package/dist/chunks/chunk-PPDSFHJU.js +0 -120
  2662. package/dist/chunks/chunk-PQBYL7AI.js +0 -33
  2663. package/dist/chunks/chunk-PR2R3EWX.js +0 -414
  2664. package/dist/chunks/chunk-PR5DHSB2.js +0 -204
  2665. package/dist/chunks/chunk-PRZT22AB.js +0 -84
  2666. package/dist/chunks/chunk-PU74GVOB.js +0 -159
  2667. package/dist/chunks/chunk-PV67ONKA.js +0 -232
  2668. package/dist/chunks/chunk-PWJUTCE3.js +0 -23
  2669. package/dist/chunks/chunk-PWZZRGWI.js +0 -141
  2670. package/dist/chunks/chunk-PXF25QYX.js +0 -344
  2671. package/dist/chunks/chunk-PXZJ5WB4.js +0 -170
  2672. package/dist/chunks/chunk-PZB7QVR2.js +0 -135
  2673. package/dist/chunks/chunk-Q2ML7IIN.js +0 -163
  2674. package/dist/chunks/chunk-Q463ARD6.js +0 -92
  2675. package/dist/chunks/chunk-Q67L2B7C.js +0 -166
  2676. package/dist/chunks/chunk-Q6VPPKMZ.js +0 -86
  2677. package/dist/chunks/chunk-Q7NND4P2.js +0 -147
  2678. package/dist/chunks/chunk-QAPCYOYS.js +0 -78
  2679. package/dist/chunks/chunk-QC3B7UVZ.js +0 -89
  2680. package/dist/chunks/chunk-QCFYG52R.js +0 -39
  2681. package/dist/chunks/chunk-QCWNDROJ.js +0 -215
  2682. package/dist/chunks/chunk-QD4QORNR.js +0 -45
  2683. package/dist/chunks/chunk-QE7FYJQY.js +0 -177
  2684. package/dist/chunks/chunk-QF7A3BCO.js +0 -100
  2685. package/dist/chunks/chunk-QH55ERQK.js +0 -97
  2686. package/dist/chunks/chunk-QJGFOGOO.js +0 -55
  2687. package/dist/chunks/chunk-QLADEGBH.js +0 -1417
  2688. package/dist/chunks/chunk-QPUYNCBZ.js +0 -141
  2689. package/dist/chunks/chunk-QQ4J5PBJ.js +0 -30
  2690. package/dist/chunks/chunk-QVGSH6Q6.js +0 -104
  2691. package/dist/chunks/chunk-QWXXQRYG.js +0 -40
  2692. package/dist/chunks/chunk-QX4U3VTU.js +0 -651
  2693. package/dist/chunks/chunk-QXEXHLVJ.js +0 -290
  2694. package/dist/chunks/chunk-QYFFG22S.js +0 -104
  2695. package/dist/chunks/chunk-QYKZWPA5.js +0 -202
  2696. package/dist/chunks/chunk-R3VT6DXH.js +0 -283
  2697. package/dist/chunks/chunk-R3YD6VL6.js +0 -201
  2698. package/dist/chunks/chunk-R4BMMEF3.js +0 -298
  2699. package/dist/chunks/chunk-R644FBZJ.js +0 -122
  2700. package/dist/chunks/chunk-R6YDAK34.js +0 -196
  2701. package/dist/chunks/chunk-R7AZUHH5.js +0 -191
  2702. package/dist/chunks/chunk-RHIIKLF7.js +0 -399
  2703. package/dist/chunks/chunk-RHXQOK7P.js +0 -80
  2704. package/dist/chunks/chunk-RITI3TIK.js +0 -96
  2705. package/dist/chunks/chunk-RIV22A5D.js +0 -201
  2706. package/dist/chunks/chunk-RKBKCKXS.js +0 -363
  2707. package/dist/chunks/chunk-RKGHMFRL.js +0 -327
  2708. package/dist/chunks/chunk-RKWPMQEL.js +0 -168
  2709. package/dist/chunks/chunk-RKYD57E6.js +0 -105
  2710. package/dist/chunks/chunk-ROV7ETIP.js +0 -53
  2711. package/dist/chunks/chunk-RQYFCN3D.js +0 -45
  2712. package/dist/chunks/chunk-RS5Q3VMA.js +0 -82
  2713. package/dist/chunks/chunk-RUVZAZ23.js +0 -75
  2714. package/dist/chunks/chunk-RVD7NQTR.js +0 -71
  2715. package/dist/chunks/chunk-RYJWIHJJ.js +0 -60
  2716. package/dist/chunks/chunk-RZOYTO7X.js +0 -33
  2717. package/dist/chunks/chunk-RZU4WDTG.js +0 -33
  2718. package/dist/chunks/chunk-S23IRIYF.js +0 -415
  2719. package/dist/chunks/chunk-S3C6L5KF.js +0 -45
  2720. package/dist/chunks/chunk-S3IBBQ6X.js +0 -178
  2721. package/dist/chunks/chunk-S427YWNZ.js +0 -97
  2722. package/dist/chunks/chunk-S4H6L5V7.js +0 -195
  2723. package/dist/chunks/chunk-S4WPYEAF.js +0 -284
  2724. package/dist/chunks/chunk-S4ZOZD6H.js +0 -117
  2725. package/dist/chunks/chunk-S56WE7YN.js +0 -298
  2726. package/dist/chunks/chunk-S7L2D7NH.js +0 -33
  2727. package/dist/chunks/chunk-SAQONTBF.js +0 -181
  2728. package/dist/chunks/chunk-SBYU2I6M.js +0 -386
  2729. package/dist/chunks/chunk-SCVMNUCW.js +0 -183
  2730. package/dist/chunks/chunk-SERAFAMT.js +0 -104
  2731. package/dist/chunks/chunk-SFPM3UJA.js +0 -471
  2732. package/dist/chunks/chunk-SH5K2PRM.js +0 -112
  2733. package/dist/chunks/chunk-SHBMEL5W.js +0 -282
  2734. package/dist/chunks/chunk-SJWSOIF4.js +0 -173
  2735. package/dist/chunks/chunk-SKDLN5H6.js +0 -358
  2736. package/dist/chunks/chunk-SKLNT65P.js +0 -102
  2737. package/dist/chunks/chunk-SMEILFKW.js +0 -73
  2738. package/dist/chunks/chunk-SMGOXFBP.js +0 -277
  2739. package/dist/chunks/chunk-SMGPOQLP.js +0 -366
  2740. package/dist/chunks/chunk-SMLB3NNB.js +0 -120
  2741. package/dist/chunks/chunk-SMU7E2YT.js +0 -80
  2742. package/dist/chunks/chunk-SNERZXMT.js +0 -116
  2743. package/dist/chunks/chunk-SNXQM4UO.js +0 -115
  2744. package/dist/chunks/chunk-SQZSFDY4.js +0 -728
  2745. package/dist/chunks/chunk-SRLQCKAN.js +0 -412
  2746. package/dist/chunks/chunk-SRUIVSNJ.js +0 -182
  2747. package/dist/chunks/chunk-STA2K7YR.js +0 -75
  2748. package/dist/chunks/chunk-STB3GK3P.js +0 -803
  2749. package/dist/chunks/chunk-STHOMFWN.js +0 -105
  2750. package/dist/chunks/chunk-SWMZWYSW.js +0 -74
  2751. package/dist/chunks/chunk-SY2AWH4M.js +0 -217
  2752. package/dist/chunks/chunk-T2VGYDNZ.js +0 -443
  2753. package/dist/chunks/chunk-T3LV66CQ.js +0 -139
  2754. package/dist/chunks/chunk-T3RDIEDU.js +0 -276
  2755. package/dist/chunks/chunk-T3SGRYUX.js +0 -1221
  2756. package/dist/chunks/chunk-T3VWGGHV.js +0 -147
  2757. package/dist/chunks/chunk-T6QGTQM5.js +0 -182
  2758. package/dist/chunks/chunk-TADKRSY5.js +0 -112
  2759. package/dist/chunks/chunk-TAUH2SVE.js +0 -108
  2760. package/dist/chunks/chunk-TCFV7CHN.js +0 -59
  2761. package/dist/chunks/chunk-TCJ7JLR5.js +0 -180
  2762. package/dist/chunks/chunk-TDGIO2S7.js +0 -145
  2763. package/dist/chunks/chunk-TEYJBXTO.js +0 -175
  2764. package/dist/chunks/chunk-TFNV2UP4.js +0 -87
  2765. package/dist/chunks/chunk-THQCAAVK.js +0 -320
  2766. package/dist/chunks/chunk-TI7LS72O.js +0 -71
  2767. package/dist/chunks/chunk-TJE2VJL6.js +0 -114
  2768. package/dist/chunks/chunk-TKMCPNQY.js +0 -361
  2769. package/dist/chunks/chunk-TKOIQDHT.js +0 -198
  2770. package/dist/chunks/chunk-TKY6CPTF.js +0 -77
  2771. package/dist/chunks/chunk-TMC7BPJE.js +0 -145
  2772. package/dist/chunks/chunk-TNFFT3O5.js +0 -349
  2773. package/dist/chunks/chunk-TNMSVKUF.js +0 -99
  2774. package/dist/chunks/chunk-TP5HRS44.js +0 -234
  2775. package/dist/chunks/chunk-TPT2NXIM.js +0 -685
  2776. package/dist/chunks/chunk-TQKUAF43.js +0 -304
  2777. package/dist/chunks/chunk-TWCEUTLH.js +0 -96
  2778. package/dist/chunks/chunk-TYOOL27R.js +0 -45
  2779. package/dist/chunks/chunk-TYW7EXV6.js +0 -103
  2780. package/dist/chunks/chunk-TZYTHG34.js +0 -390
  2781. package/dist/chunks/chunk-U3DDH7UC.js +0 -23
  2782. package/dist/chunks/chunk-UAAOYC7D.js +0 -141
  2783. package/dist/chunks/chunk-UBGQCHHL.js +0 -36
  2784. package/dist/chunks/chunk-UCGAWDC2.js +0 -23
  2785. package/dist/chunks/chunk-UCPQZ4K4.js +0 -202
  2786. package/dist/chunks/chunk-UD3JVCFG.js +0 -177
  2787. package/dist/chunks/chunk-UEJPIFFQ.js +0 -53
  2788. package/dist/chunks/chunk-UEQ3FS57.js +0 -41
  2789. package/dist/chunks/chunk-UGQ4QHOU.js +0 -144
  2790. package/dist/chunks/chunk-UH3V6M54.js +0 -23
  2791. package/dist/chunks/chunk-UI26XUIK.js +0 -115
  2792. package/dist/chunks/chunk-UI2O3BNM.js +0 -138
  2793. package/dist/chunks/chunk-UJZXKOTP.js +0 -136
  2794. package/dist/chunks/chunk-UKUBK2J5.js +0 -315
  2795. package/dist/chunks/chunk-UM5CR545.js +0 -181
  2796. package/dist/chunks/chunk-UO5JRF3V.js +0 -33
  2797. package/dist/chunks/chunk-UPA4HKPX.js +0 -320
  2798. package/dist/chunks/chunk-USECLL4V.js +0 -274
  2799. package/dist/chunks/chunk-USLYZW4Y.js +0 -91
  2800. package/dist/chunks/chunk-UTRCTUZY.js +0 -161
  2801. package/dist/chunks/chunk-UVBAU7WG.js +0 -95
  2802. package/dist/chunks/chunk-UVBDZF4G.js +0 -81
  2803. package/dist/chunks/chunk-UVZ4SI5A.js +0 -361
  2804. package/dist/chunks/chunk-UYQ2UFTT.js +0 -85
  2805. package/dist/chunks/chunk-UZ3MWGAC.js +0 -105
  2806. package/dist/chunks/chunk-UZ7MGUZ2.js +0 -23
  2807. package/dist/chunks/chunk-V3LOBUUJ.js +0 -97
  2808. package/dist/chunks/chunk-V4LT74TX.js +0 -116
  2809. package/dist/chunks/chunk-V57VMN77.js +0 -225
  2810. package/dist/chunks/chunk-V5AYSOB6.js +0 -185
  2811. package/dist/chunks/chunk-V5HI55XO.js +0 -877
  2812. package/dist/chunks/chunk-V6AJ6HTE.js +0 -149
  2813. package/dist/chunks/chunk-VCKAFPUH.js +0 -130
  2814. package/dist/chunks/chunk-VE7OL2SV.js +0 -33
  2815. package/dist/chunks/chunk-VG675MNI.js +0 -339
  2816. package/dist/chunks/chunk-VGKSMW54.js +0 -113
  2817. package/dist/chunks/chunk-VHCVD4FI.js +0 -301
  2818. package/dist/chunks/chunk-VJCVRYXY.js +0 -487
  2819. package/dist/chunks/chunk-VN6YFNOL.js +0 -191
  2820. package/dist/chunks/chunk-VOEAQIQT.js +0 -33
  2821. package/dist/chunks/chunk-VPJXZKTM.js +0 -38
  2822. package/dist/chunks/chunk-VPOIIJMA.js +0 -192
  2823. package/dist/chunks/chunk-VQBSXFZJ.js +0 -33
  2824. package/dist/chunks/chunk-VQCUSDKV.js +0 -129
  2825. package/dist/chunks/chunk-VREFP24C.js +0 -94
  2826. package/dist/chunks/chunk-VSNJ5WRX.js +0 -293
  2827. package/dist/chunks/chunk-VU6QMEJW.js +0 -23
  2828. package/dist/chunks/chunk-VV5XNSCZ.js +0 -172
  2829. package/dist/chunks/chunk-VVA2GHJU.js +0 -188
  2830. package/dist/chunks/chunk-VVBGHH62.js +0 -231
  2831. package/dist/chunks/chunk-VVNPBBPL.js +0 -174
  2832. package/dist/chunks/chunk-VVTSSGFF.js +0 -172
  2833. package/dist/chunks/chunk-VVUQG4ME.js +0 -33
  2834. package/dist/chunks/chunk-VXVBVJVN.js +0 -170
  2835. package/dist/chunks/chunk-VYEHEIHO.js +0 -396
  2836. package/dist/chunks/chunk-VYLNO5SJ.js +0 -217
  2837. package/dist/chunks/chunk-W2576PVF.js +0 -95
  2838. package/dist/chunks/chunk-W2ACVAU6.js +0 -99
  2839. package/dist/chunks/chunk-W2AKEHRS.js +0 -326
  2840. package/dist/chunks/chunk-W2TTQU5L.js +0 -145
  2841. package/dist/chunks/chunk-W3AHRWGJ.js +0 -108
  2842. package/dist/chunks/chunk-W3H6MQ7S.js +0 -270
  2843. package/dist/chunks/chunk-W64T6NE5.js +0 -190
  2844. package/dist/chunks/chunk-WAOOSZZW.js +0 -464
  2845. package/dist/chunks/chunk-WBM4N4JM.js +0 -166
  2846. package/dist/chunks/chunk-WBOMALBS.js +0 -198
  2847. package/dist/chunks/chunk-WDH4AQIL.js +0 -55
  2848. package/dist/chunks/chunk-WFDMO3WE.js +0 -169
  2849. package/dist/chunks/chunk-WFTJKOXH.js +0 -53
  2850. package/dist/chunks/chunk-WGTIUIIW.js +0 -120
  2851. package/dist/chunks/chunk-WH264KIG.js +0 -192
  2852. package/dist/chunks/chunk-WKI5SN52.js +0 -102
  2853. package/dist/chunks/chunk-WL4ZYNBA.js +0 -33
  2854. package/dist/chunks/chunk-WLF7ODLN.js +0 -177
  2855. package/dist/chunks/chunk-WM7TGYRJ.js +0 -336
  2856. package/dist/chunks/chunk-WMISSA5V.js +0 -144
  2857. package/dist/chunks/chunk-WN54DD42.js +0 -292
  2858. package/dist/chunks/chunk-WNEPSM3I.js +0 -23
  2859. package/dist/chunks/chunk-WNEWEPJ2.js +0 -102
  2860. package/dist/chunks/chunk-WNNI4AGC.js +0 -41
  2861. package/dist/chunks/chunk-WNTKCDJF.js +0 -174
  2862. package/dist/chunks/chunk-WQ4QBUIX.js +0 -42
  2863. package/dist/chunks/chunk-WQCRPOG7.js +0 -137
  2864. package/dist/chunks/chunk-WQQY6YDV.js +0 -197
  2865. package/dist/chunks/chunk-WRSQJNOU.js +0 -147
  2866. package/dist/chunks/chunk-WSBLYY6H.js +0 -266
  2867. package/dist/chunks/chunk-WTSIBQT2.js +0 -160
  2868. package/dist/chunks/chunk-WV4ZSLQE.js +0 -94
  2869. package/dist/chunks/chunk-WW5JIPMG.js +0 -118
  2870. package/dist/chunks/chunk-X2UQGV5X.js +0 -333
  2871. package/dist/chunks/chunk-X4JTSSMF.js +0 -106
  2872. package/dist/chunks/chunk-X5RPTBKJ.js +0 -200
  2873. package/dist/chunks/chunk-X7KWYGKN.js +0 -218
  2874. package/dist/chunks/chunk-X7YZKLRT.js +0 -589
  2875. package/dist/chunks/chunk-XAJBRDFV.js +0 -133
  2876. package/dist/chunks/chunk-XBRXS3BT.js +0 -79
  2877. package/dist/chunks/chunk-XFB6EZVY.js +0 -56
  2878. package/dist/chunks/chunk-XGZDLVMB.js +0 -135
  2879. package/dist/chunks/chunk-XHUS3EOR.js +0 -94
  2880. package/dist/chunks/chunk-XIBDDL4O.js +0 -77
  2881. package/dist/chunks/chunk-XIZRA35Y.js +0 -930
  2882. package/dist/chunks/chunk-XJN2YNQT.js +0 -261
  2883. package/dist/chunks/chunk-XKSIWVQ6.js +0 -45
  2884. package/dist/chunks/chunk-XNHQMKHP.js +0 -187
  2885. package/dist/chunks/chunk-XONMRKVE.js +0 -140
  2886. package/dist/chunks/chunk-XPS27MST.js +0 -112
  2887. package/dist/chunks/chunk-XSQ5M65B.js +0 -23
  2888. package/dist/chunks/chunk-XTWKSMJC.js +0 -45
  2889. package/dist/chunks/chunk-XTXT3DO7.js +0 -158
  2890. package/dist/chunks/chunk-XUUXJMZZ.js +0 -81
  2891. package/dist/chunks/chunk-XV2SMOPQ.js +0 -305
  2892. package/dist/chunks/chunk-XVPG2DPR.js +0 -251
  2893. package/dist/chunks/chunk-XVZN2DZI.js +0 -224
  2894. package/dist/chunks/chunk-XWBX2V3S.js +0 -65
  2895. package/dist/chunks/chunk-XWFCSIP2.js +0 -97
  2896. package/dist/chunks/chunk-XWZMO4J3.js +0 -33
  2897. package/dist/chunks/chunk-XXCOX7T4.js +0 -118
  2898. package/dist/chunks/chunk-XZ6POAQB.js +0 -23
  2899. package/dist/chunks/chunk-XZGXQTFC.js +0 -81
  2900. package/dist/chunks/chunk-XZHVYOAA.js +0 -250
  2901. package/dist/chunks/chunk-XZQLIU72.js +0 -238
  2902. package/dist/chunks/chunk-Y2GXOSSG.js +0 -124
  2903. package/dist/chunks/chunk-Y2XS3ACD.js +0 -93
  2904. package/dist/chunks/chunk-Y3BYY6XO.js +0 -61
  2905. package/dist/chunks/chunk-Y45334OM.js +0 -55
  2906. package/dist/chunks/chunk-Y4F2ZAZG.js +0 -50
  2907. package/dist/chunks/chunk-Y4QH77GT.js +0 -100
  2908. package/dist/chunks/chunk-Y5CRJQX2.js +0 -179
  2909. package/dist/chunks/chunk-Y5QJWQE7.js +0 -119
  2910. package/dist/chunks/chunk-YANDIWSA.js +0 -187
  2911. package/dist/chunks/chunk-YAWBFDMN.js +0 -503
  2912. package/dist/chunks/chunk-YFCLVUFS.js +0 -33
  2913. package/dist/chunks/chunk-YFCXPJQS.js +0 -567
  2914. package/dist/chunks/chunk-YHA45NK5.js +0 -88
  2915. package/dist/chunks/chunk-YHEMML5Q.js +0 -33
  2916. package/dist/chunks/chunk-YIOL4CS5.js +0 -247
  2917. package/dist/chunks/chunk-YJSNCWAO.js +0 -512
  2918. package/dist/chunks/chunk-YK5Y73N2.js +0 -1307
  2919. package/dist/chunks/chunk-YMRA5R7L.js +0 -151
  2920. package/dist/chunks/chunk-YNA6R7YX.js +0 -117
  2921. package/dist/chunks/chunk-YO2EUFXG.js +0 -23
  2922. package/dist/chunks/chunk-YPCDWWMP.js +0 -228
  2923. package/dist/chunks/chunk-YPMT4Y4N.js +0 -260
  2924. package/dist/chunks/chunk-YPNAZF3U.js +0 -313
  2925. package/dist/chunks/chunk-YRSDFRCX.js +0 -122
  2926. package/dist/chunks/chunk-YRT4D4UR.js +0 -95
  2927. package/dist/chunks/chunk-YS5ZC6P5.js +0 -315
  2928. package/dist/chunks/chunk-YS6UCFLF.js +0 -86
  2929. package/dist/chunks/chunk-YSCTUFIQ.js +0 -220
  2930. package/dist/chunks/chunk-YTT3ZBQJ.js +0 -242
  2931. package/dist/chunks/chunk-YUSTFJS2.js +0 -82
  2932. package/dist/chunks/chunk-YVF7YIXD.js +0 -48
  2933. package/dist/chunks/chunk-YW3XELGA.js +0 -317
  2934. package/dist/chunks/chunk-YWNYSW4P.js +0 -112
  2935. package/dist/chunks/chunk-YWV3Q5GQ.js +0 -378
  2936. package/dist/chunks/chunk-YXLVDFMQ.js +0 -514
  2937. package/dist/chunks/chunk-YYY4WMY3.js +0 -23
  2938. package/dist/chunks/chunk-Z4T7V2CZ.js +0 -44
  2939. package/dist/chunks/chunk-Z5WLRKWC.js +0 -33
  2940. package/dist/chunks/chunk-ZAHVKXS7.js +0 -115
  2941. package/dist/chunks/chunk-ZDJT66UO.js +0 -111
  2942. package/dist/chunks/chunk-ZEJL3G3T.js +0 -244
  2943. package/dist/chunks/chunk-ZEYSCO6I.js +0 -249
  2944. package/dist/chunks/chunk-ZJYKLFG3.js +0 -138
  2945. package/dist/chunks/chunk-ZJZ6HKBP.js +0 -777
  2946. package/dist/chunks/chunk-ZKRSVNY4.js +0 -45
  2947. package/dist/chunks/chunk-ZNARVSMD.js +0 -140
  2948. package/dist/chunks/chunk-ZNAVR6M7.js +0 -163
  2949. package/dist/chunks/chunk-ZNZRRYBB.js +0 -110
  2950. package/dist/chunks/chunk-ZPD2FN7R.js +0 -90
  2951. package/dist/chunks/chunk-ZPQYHYFA.js +0 -170
  2952. package/dist/chunks/chunk-ZRUP2URT.js +0 -136
  2953. package/dist/chunks/chunk-ZTBKAGBN.js +0 -28
  2954. package/dist/chunks/chunk-ZUIKYAQ2.js +0 -197
  2955. package/dist/chunks/chunk-ZVE42YQM.js +0 -169
  2956. package/dist/chunks/chunk-ZVMY6CV7.js +0 -212
  2957. package/dist/chunks/chunk-ZVTHRMU3.js +0 -157
  2958. package/dist/chunks/chunk-ZWDPMVSU.js +0 -23
  2959. package/dist/chunks/chunk-ZXKLNDKW.js +0 -118
  2960. package/dist/chunks/chunk-ZXLRLH5A.js +0 -265
  2961. package/dist/chunks/chunk-ZXMOVNBS.js +0 -161
  2962. package/dist/chunks/chunk-ZZMCAZHY.js +0 -45
  2963. package/dist/chunks/client-25NJXQWL.js +0 -31
  2964. package/dist/chunks/client-7AQTKZHV.js +0 -44
  2965. package/dist/chunks/client-LWBTUXQK.js +0 -167
  2966. package/dist/chunks/client-actions-3HIRRSOL.js +0 -155
  2967. package/dist/chunks/client-store-V6YXN7XC.js +0 -33
  2968. package/dist/chunks/components-LPKM7Z7G.js +0 -70
  2969. package/dist/chunks/dangerous-XJOHEWL6.js +0 -115
  2970. package/dist/chunks/document-library-DF4D7QQ2.js +0 -61
  2971. package/dist/chunks/editor-seams-4DREZRTT.js +0 -156
  2972. package/dist/chunks/editor-store-C4VWC23J.js +0 -134
  2973. package/dist/chunks/export-JXIYZ2EN.js +0 -66
  2974. package/dist/chunks/export-fills-QVBT27RN.js +0 -35
  2975. package/dist/chunks/export-watermark-OKGRZNOU.js +0 -141
  2976. package/dist/chunks/eyedropper-WZYSTUTM.js +0 -344
  2977. package/dist/chunks/fonts-C5LF4OCG.js +0 -39
  2978. package/dist/chunks/generate-media-DFSHOPOI.js +0 -252
  2979. package/dist/chunks/headless-RADIHAKO.js +0 -185
  2980. package/dist/chunks/host-4ZE7SIWR.js +0 -166
  2981. package/dist/chunks/host-NMWTKJJP.js +0 -238
  2982. package/dist/chunks/import-FXWCRPI2.js +0 -701
  2983. package/dist/chunks/import-merge-KVTO4W42.js +0 -34
  2984. package/dist/chunks/instances-OUFDLX42.js +0 -78
  2985. package/dist/chunks/integrations-LPC35FKX.js +0 -115
  2986. package/dist/chunks/invariants-LR5PBAM3.js +0 -60
  2987. package/dist/chunks/kit-modules-BAKTDLOZ.js +0 -18
  2988. package/dist/chunks/libraries-ACERXG2O.js +0 -297
  2989. package/dist/chunks/library-previews-MF5NU2WH.js +0 -198
  2990. package/dist/chunks/live-ZIVBFX3G.js +0 -307
  2991. package/dist/chunks/lottie-JTKX6CQY.js +0 -84
  2992. package/dist/chunks/media-tool-2ZPIQKJD.js +0 -327
  2993. package/dist/chunks/new-file-XS3KCMGM.js +0 -124
  2994. package/dist/chunks/next-commerce-VOBWFSX6.js +0 -65
  2995. package/dist/chunks/page-thumbnails-KSP6E2FO.js +0 -132
  2996. package/dist/chunks/pdf-COTQQJDE.js +0 -1215
  2997. package/dist/chunks/pdf-import-I6CSWY6S.js +0 -369
  2998. package/dist/chunks/plan-G62XQV3G.js +0 -81
  2999. package/dist/chunks/player-check-H73LHEIR.js +0 -112
  3000. package/dist/chunks/plugin-6RNMUP5I.js +0 -122
  3001. package/dist/chunks/plugin-import-UC5BHZFE.js +0 -659
  3002. package/dist/chunks/pptx-RCPY6AZ4.js +0 -308
  3003. package/dist/chunks/presence-TLDOMBPD.js +0 -122
  3004. package/dist/chunks/preview-media-DHSULYNO.js +0 -120
  3005. package/dist/chunks/project-NMPK4R5M.js +0 -1647
  3006. package/dist/chunks/publish-site-R46ZILSS.js +0 -153
  3007. package/dist/chunks/publish-store-MIPHEDLV.js +0 -92
  3008. package/dist/chunks/raster-actions-7EI5THLB.js +0 -224
  3009. package/dist/chunks/reference-images-ZYTEZKW6.js +0 -61
  3010. package/dist/chunks/resolvers-LUWPUCST.js +0 -137
  3011. package/dist/chunks/review-kits-FHQFRLB3.js +0 -40
  3012. package/dist/chunks/runner-I66TTKKZ.js +0 -1228
  3013. package/dist/chunks/runtime-KBXEF3ON.js +0 -32
  3014. package/dist/chunks/shader-preview-WWGGU6RD.js +0 -517
  3015. package/dist/chunks/shaper-6FLVHO5C.js +0 -64
  3016. package/dist/chunks/sites-W7OTY7KH.js +0 -33
  3017. package/dist/chunks/store-7WMR3JKP.js +0 -219
  3018. package/dist/chunks/storefront-QILVHEM6.js +0 -326
  3019. package/dist/chunks/storefront-prepare-N6SPU7SQ.js +0 -33
  3020. package/dist/chunks/stress-document-5HO7YPU4.js +0 -125
  3021. package/dist/chunks/svg-export-HRLHID4V.js +0 -79
  3022. package/dist/chunks/svg-place-7M7YPNBZ.js +0 -38
  3023. package/dist/chunks/sync-OFINS45Q.js +0 -148
  3024. package/dist/chunks/tabs-PEH6VX3X.js +0 -306
  3025. package/dist/chunks/team-GGW3O32G.js +0 -44
  3026. package/dist/chunks/templates-PVDEF4H5.js +0 -180
  3027. package/dist/chunks/tools-TKCA46ZS.js +0 -35
  3028. package/dist/chunks/tree-QLKVB5X2.js +0 -71
  3029. package/dist/chunks/ui-commands-6K4PYKU5.js +0 -264
  3030. package/dist/chunks/use-HXFGCN7O.js +0 -44
  3031. package/dist/chunks/versions-KHRNQFGF.js +0 -306
  3032. package/dist/chunks/video-7B5R5APU.js +0 -74
  3033. package/dist/chunks/web-QXDK5GSS.js +0 -169
  3034. package/dist/templates/print/comic-book-action-slant.js +0 -97
  3035. package/dist/templates/print/comic-book-cover-pulp.js +0 -97
  3036. package/dist/templates/print/comic-book-flashback.js +0 -97
  3037. package/dist/templates/print/comic-book-issue.js +0 -104
  3038. package/dist/templates/print/comic-book-nine-grid.js +0 -97
  3039. package/dist/templates/print/comic-book-page-classic.js +0 -97
  3040. package/dist/templates/print/comic-book-polyptych.js +0 -97
  3041. package/dist/templates/print/comic-book-radial.js +0 -97
  3042. package/dist/templates/print/comic-book-splash.js +0 -97
  3043. package/dist/templates/print/comic-book-spread.js +0 -97
  3044. package/dist/templates/themes/comic-book-art.js +0 -32
  3045. package/dist/templates/themes/comic-book-page.js +0 -63
  3046. package/src/templates/print/comic-book-action-slant.ts +0 -53
  3047. package/src/templates/print/comic-book-cover-pulp.ts +0 -39
  3048. package/src/templates/print/comic-book-flashback.ts +0 -44
  3049. package/src/templates/print/comic-book-issue.ts +0 -75
  3050. package/src/templates/print/comic-book-nine-grid.ts +0 -63
  3051. package/src/templates/print/comic-book-page-classic.ts +0 -57
  3052. package/src/templates/print/comic-book-polyptych.ts +0 -47
  3053. package/src/templates/print/comic-book-radial.ts +0 -45
  3054. package/src/templates/print/comic-book-splash.ts +0 -39
  3055. package/src/templates/print/comic-book-spread.ts +0 -58
  3056. package/src/templates/themes/comic-book-art.ts +0 -796
  3057. package/src/templates/themes/comic-book-page.ts +0 -305
  3058. package/types/templates/src/print/comic-book-action-slant.d.ts +0 -4
  3059. package/types/templates/src/print/comic-book-cover-pulp.d.ts +0 -4
  3060. package/types/templates/src/print/comic-book-flashback.d.ts +0 -4
  3061. package/types/templates/src/print/comic-book-nine-grid.d.ts +0 -4
  3062. package/types/templates/src/print/comic-book-page-classic.d.ts +0 -5
  3063. package/types/templates/src/print/comic-book-polyptych.d.ts +0 -4
  3064. package/types/templates/src/print/comic-book-radial.d.ts +0 -4
  3065. package/types/templates/src/print/comic-book-splash.d.ts +0 -4
  3066. package/types/templates/src/print/comic-book-spread.d.ts +0 -4
  3067. package/types/templates/src/themes/comic-book-art.d.ts +0 -153
  3068. package/types/templates/src/themes/comic-book-page.d.ts +0 -174
  3069. /package/dist/chunks/{chunk-64RMGOTG.js → chunk-GBLJAFGZ.js} +0 -0
  3070. /package/dist/chunks/{chunk-FJRVE5LG.js → chunk-MELC4CJB.js} +0 -0
  3071. /package/types/templates/src/print/{comic-book-issue.d.ts → printshop-booklet-open-day.d.ts} +0 -0
@@ -1,1469 +0,0 @@
1
- import { createRequire as __popcraftRequire } from 'node:module';
2
- import { fileURLToPath as __popcraftPath } from 'node:url';
3
- import { dirname as __popcraftDirname } from 'node:path';
4
- const require = __popcraftRequire(import.meta.url);
5
- const __filename = __popcraftPath(import.meta.url);
6
- const __dirname = __popcraftDirname(__filename);
7
- import {
8
- H,
9
- W,
10
- arc,
11
- arcPoints,
12
- back,
13
- bar,
14
- box,
15
- close,
16
- drift,
17
- focusColumn,
18
- focusRow,
19
- gameKit,
20
- gameVar,
21
- glow,
22
- go,
23
- keybind,
24
- keys,
25
- label,
26
- menu,
27
- onAll,
28
- oneShot,
29
- overlay,
30
- poly,
31
- readout,
32
- rebindListener,
33
- screen,
34
- sector,
35
- set,
36
- slider,
37
- spin,
38
- toggle,
39
- toggleComponent,
40
- when
41
- } from "./chunk-TQKUAF43.js";
42
- import {
43
- defineTemplate
44
- } from "./chunk-A44WEVKR.js";
45
- import {
46
- init_define_POPCRAFT_COMPONENT_IDS
47
- } from "./chunk-6VMOKHMF.js";
48
-
49
- // templates/src/game/ironroot-rts.ts
50
- init_define_POPCRAFT_COMPONENT_IDS();
51
- var TAU = Math.PI * 2;
52
- var polar = (cx, cy, r, a) => [cx + Math.cos(a) * r, cy + Math.sin(a) * r];
53
- function rng(seed) {
54
- let s = seed * 2654435761 >>> 0 || 1;
55
- return () => {
56
- s = Math.imul(s, 1664525) + 1013904223 >>> 0;
57
- return s / 4294967296;
58
- };
59
- }
60
- function blob(cx, cy, rx, ry, seed, n = 18, wob = 0.2) {
61
- const r = rng(seed);
62
- return Array.from({ length: n }, (_, i) => {
63
- const a = i / n * TAU, f = 1 + (r() - 0.5) * 2 * wob;
64
- return [cx + Math.cos(a) * rx * f, cy + Math.sin(a) * ry * f];
65
- });
66
- }
67
- var ellipsePts = (cx, cy, rx, ry, n = 40) => Array.from({ length: n }, (_, i) => [cx + Math.cos(i / n * TAU) * rx, cy + Math.sin(i / n * TAU) * ry]);
68
- function gearPts(cx, cy, r, teeth, depth = r * 0.2) {
69
- const out = [], step = TAU / teeth;
70
- for (let i = 0; i < teeth; i++) {
71
- const a = i * step;
72
- out.push(polar(cx, cy, r - depth, a), polar(cx, cy, r, a + step * 0.18), polar(cx, cy, r, a + step * 0.46), polar(cx, cy, r - depth, a + step * 0.64));
73
- }
74
- return out;
75
- }
76
- var scalePts = (pts, s, dx = 0, dy = 0) => pts.map(([x, y]) => [x * s + dx, y * s + dy]);
77
- var WORLD = { w: 2400, h: 1200 };
78
- var VIEW = { w: 1920, h: 684 };
79
- var BASE = [420, 760];
80
- var CORE = [2e3, 330];
81
- var FOG_R = [480, 800, 1120, 1450, 2900];
82
- var RIDGES = [{ c: [1500, 190], r: [330, 140], s: 3 }, { c: [880, 420], r: [210, 90], s: 7 }, { c: [2150, 760], r: [230, 170], s: 11 }, { c: [300, 150], r: [230, 110], s: 13 }, { c: [1900, 1080], r: [200, 90], s: 17 }];
83
- var MEADOWS = [{ c: [620, 820], r: [440, 260], s: 21 }, { c: [1300, 600], r: [380, 210], s: 22 }, { c: [1900, 1060], r: [420, 170], s: 23 }, { c: [2120, 330], r: [320, 220], s: 24 }, { c: [260, 420], r: [260, 180], s: 25 }];
84
- var RIVER = [[1180, -30], [1120, 160], [1215, 330], [1110, 520], [1190, 700], [1330, 860], [1300, 1010], [1430, 1240]];
85
- var TRAIL = [[420, 760], [620, 720], [820, 700], [1010, 610], [1150, 540], [1380, 500], [1600, 470], [1820, 390], [2e3, 330]];
86
- var FORESTS = [[640, 150, 14], [1660, 420, 11], [190, 1070, 12], [2250, 1010, 13], [1010, 1120, 9], [2260, 110, 9], [1520, 780, 7], [860, 300, 6]];
87
- var ORE_FIELDS = [[250, 360], [1250, 990], [1760, 650]];
88
- var SQUADS = [
89
- { key: "1", tab: "Rangers", name: "Sporeling rangers", role: "Light skirmishers \xB7 spore-lances", at: [820, 690], atk: 18, arm: 6, spd: 82, quip: '"Roots remember every step."', size: 4 },
90
- { key: "2", tab: "Harvest", name: "Brass harvesters", role: "Ore haulers \xB7 steam tread", at: [360, 440], atk: 4, arm: 22, spd: 40, quip: '"Seam is rich. Boilers hungry."', size: 3 },
91
- { key: "3", tab: "Wrights", name: "Gearwright engineers", role: "Builders \xB7 field repair", at: [700, 1e3], atk: 8, arm: 12, spd: 58, quip: '"Give us an hour and a wrench."', size: 2 }
92
- ];
93
- var camFor = (p) => ({ x: Math.max(0, Math.min(WORLD.w - VIEW.w, p[0] - VIEW.w / 2)), y: Math.max(0, Math.min(WORLD.h - VIEW.h, p[1] - VIEW.h / 2)) });
94
- var FACTIONS = [
95
- { name: "Verdant Foundry", motto: '"Industry is only a slower kind of gardening."', bonus: "+150 starting ore", stats: [86, 54, 40], roster: ["Sporeling ranger", "Brass harvester", "Thornback walker"] },
96
- { name: "Oxide Covenant", motto: '"Rust is iron remembering the earth."', bonus: "+80 starting fuel", stats: [52, 90, 46], roster: ["Cinder lancer", "Slag crawler", "Furnace titan"] },
97
- { name: "Mireglass Syndics", motto: '"Every fog has a price, and we have paid it."', bonus: "First fog ring charted", stats: [44, 50, 92], roster: ["Fen stalker", "Glass skiff", "Lantern oracle"] }
98
- ];
99
- var CREDITS = [
100
- ["Game direction", "Odalys Ferreira-Kwan"],
101
- ["Systems design", "Bram Oyelaran"],
102
- ["Art direction", "Mireille Castellanos"],
103
- ["World and terrain", "Tuomas Achterberg"],
104
- ["Interface", "Keziah Mbeki"],
105
- ["Audio", "Ignatius Varga \xB7 Luz Aranda"],
106
- ["Narrative", "Petronella Ashdown"],
107
- ["Engineering", "Ravi Selwyn \xB7 Ondine Marsh \xB7 Caspar Holt"],
108
- ["Special thanks", "The playtesters who fed the boilers until dawn"]
109
- ];
110
- var SAVES = [
111
- { name: "Rusted Canopy \u2014 dawn 3", hint: "Ore 620 \xB7 2 rings charted", ore: 620, fuel: 240, scout: 2, trained: 3 },
112
- { name: "Mireglass Fen \u2014 dusk 5", hint: "Ore 380 \xB7 spire in sight", ore: 380, fuel: 320, scout: 4, trained: 5 },
113
- { name: "Oxide Reach \u2014 night 9", hint: "Ore 910 \xB7 Thornbacks ready", ore: 910, fuel: 180, scout: 3, trained: 6 }
114
- ];
115
- var ironroot_rts_default = defineTemplate({
116
- id: "game-ironroot-rts",
117
- meta: {
118
- name: "IRONROOT DOMINION \u2014 real-time strategy UI",
119
- description: "A playable dieselpunk-botanical RTS front end and battle HUD: foundry boot, an iron-tree title, faction select with gliding stats and roster, a mission briefing whose objectives pop onto the map, working settings and key bindings, and a battle HUD with resources that count, a panning camera and minimap, fog of war that recedes as you scout, squad selection, a nine-command card with cooldown sweeps, a build queue, a tech tree, raids, pause, defeat and victory with medals",
120
- category: "game-ui",
121
- tags: ["game", "game ui", "hud", "rts", "real-time strategy", "strategy", "dieselpunk", "minimap", "interactive", "variables", "keyboard", "menus", "present mode"],
122
- platforms: ["desktop"],
123
- formats: ["screen"],
124
- useCases: ["launch", "pitch"],
125
- created: "2026-09-30",
126
- updated: "2026-09-30"
127
- },
128
- build() {
129
- const k = gameKit("IRONROOT DOMINION");
130
- k.brand({
131
- void: "#0D0A07",
132
- soil: "#211A11",
133
- loam: "#2E2518",
134
- panel: "#221810",
135
- panelHi: "#33261A",
136
- bronze: "#8C5B2C",
137
- bronzeDeep: "#4E3219",
138
- brass: "#D8A84A",
139
- brassDim: "#9C7A3A",
140
- verdigris: "#62B89E",
141
- verdigrisDeep: "#2C6A5B",
142
- moss: "#86A64A",
143
- mossDeep: "#3E5325",
144
- oxide: "#DD6A30",
145
- oxideDeep: "#8A3414",
146
- oxideText: "#F39462",
147
- rivet: "#C9A15A",
148
- parchment: "#F2E7CD",
149
- dim: "#C2B08C",
150
- onBrass: "#1A1208",
151
- onOxide: "#1C0903",
152
- onVerdigris: "#05140F",
153
- enemy: "#C4402A",
154
- enemyGlow: "#FF7A45",
155
- scrim: "#090705",
156
- primary: "#62B89E",
157
- onPrimary: "#05140F",
158
- accent: "#DD6A30",
159
- onAccent: "#1C0903"
160
- }, { title: "IRONROOT DOMINION", studio: "Tallow & Gear", tagline: "Grow an empire of iron and root. Hold the Heartwood." });
161
- k.palette({
162
- river: "#2B5C62",
163
- riverLight: "#71B8B0",
164
- ridge: "#5C4630",
165
- ridgeDark: "#3A2C1F",
166
- ridgeLight: "#7E6446",
167
- contour: "#6E5638",
168
- forest: "#1F3519",
169
- canopy: "#4E7A33",
170
- meadow: "#33421E",
171
- trail: "#4C3B24",
172
- ore: "#E28A43",
173
- oreLight: "#FFD39E",
174
- fog: "#15130E",
175
- mist: "#8F8B78",
176
- smoke: "#8B8475",
177
- root: "#6F4A26"
178
- });
179
- const commander = gameVar(k, "Commander", "name", "STRING", "WARDEN HESPER ASHGROVE");
180
- const faction = gameVar(k, "Commander", "faction", "FLOAT", 0);
181
- const industry = gameVar(k, "Commander", "industry", "FLOAT", FACTIONS[0].stats[0]);
182
- const might = gameVar(k, "Commander", "might", "FLOAT", FACTIONS[0].stats[1]);
183
- const guile = gameVar(k, "Commander", "guile", "FLOAT", FACTIONS[0].stats[2]);
184
- const ore = gameVar(k, "Economy", "ore", "FLOAT", 400);
185
- const fuel = gameVar(k, "Economy", "fuel", "FLOAT", 200);
186
- const supply = gameVar(k, "Economy", "supply", "FLOAT", 6);
187
- const cap = gameVar(k, "Economy", "supplyCap", "FLOAT", 20);
188
- const oreMined = gameVar(k, "Economy", "oreMined", "FLOAT", 0);
189
- const yieldV = gameVar(k, "Economy", "gatherYield", "FLOAT", 50);
190
- const trained = gameVar(k, "Army", "trained", "FLOAT", 0);
191
- const sporelings = gameVar(k, "Army", "sporelings", "FLOAT", 0);
192
- const thornbacks = gameVar(k, "Army", "thornbacks", "FLOAT", 0);
193
- const depots = gameVar(k, "Army", "depots", "FLOAT", 0);
194
- const sel = gameVar(k, "Army", "selected", "FLOAT", 1);
195
- const hp = SQUADS.map((_, i) => gameVar(k, "Army", `squadHealth${i + 1}`, "FLOAT", 100));
196
- const atk = gameVar(k, "Army", "attack", "FLOAT", SQUADS[0].atk);
197
- const arm = gameVar(k, "Army", "armour", "FLOAT", SQUADS[0].arm);
198
- const spd = gameVar(k, "Army", "speed", "FLOAT", SQUADS[0].spd);
199
- const baseHp = gameVar(k, "Base", "integrity", "FLOAT", 100);
200
- const baseTrail = gameVar(k, "Base", "integrityTrail", "FLOAT", 100);
201
- const baseMax = gameVar(k, "Base", "maxIntegrity", "FLOAT", 100);
202
- const dmgTaken = gameVar(k, "Base", "raidDamage", "FLOAT", 15);
203
- const braced = gameVar(k, "Base", "braced", "FLOAT", 0);
204
- const coreHp = gameVar(k, "Enemy", "spire", "FLOAT", 120);
205
- const coreTrail = gameVar(k, "Enemy", "spireTrail", "FLOAT", 120);
206
- const coreMax = gameVar(k, "Enemy", "maxSpire", "FLOAT", 120);
207
- const scout = gameVar(k, "Map", "scouted", "FLOAT", 0);
208
- const camX = gameVar(k, "Map", "cameraX", "FLOAT", 0);
209
- const camY = gameVar(k, "Map", "cameraY", "FLOAT", 418);
210
- const plating = gameVar(k, "Tech", "plating", "FLOAT", 0);
211
- const taproots = gameVar(k, "Tech", "taproots", "FLOAT", 0);
212
- const tier = gameVar(k, "Tech", "thornback", "FLOAT", 0);
213
- const actions = gameVar(k, "Stats", "actions", "FLOAT", 0);
214
- const raids = gameVar(k, "Stats", "raids", "FLOAT", 0);
215
- const menuFocus = gameVar(k, "UI", "menuFocus", "FLOAT", 0);
216
- const pauseFocus = gameVar(k, "UI", "pauseFocus", "FLOAT", 0);
217
- const endFocus = gameVar(k, "UI", "endFocus", "FLOAT", 0);
218
- const setFocus = gameVar(k, "UI", "settingsFocus", "FLOAT", 0);
219
- const techFocus = gameVar(k, "UI", "techFocus", "FLOAT", 0);
220
- const loadFocus = gameVar(k, "UI", "loadFocus", "FLOAT", 0);
221
- const cardHover = gameVar(k, "UI", "commandHover", "FLOAT", -1);
222
- const rebind = gameVar(k, "UI", "rebinding", "STRING", "");
223
- const volume = gameVar(k, "Settings", "masterVolume", "FLOAT", 80);
224
- const music = gameVar(k, "Settings", "musicVolume", "FLOAT", 60);
225
- const scroll = gameVar(k, "Settings", "scrollSpeed", "FLOAT", 5);
226
- const uiScale = gameVar(k, "Settings", "uiScale", "FLOAT", 100);
227
- const hpBars = gameVar(k, "Settings", "healthBars", "FLOAT", 1);
228
- const pings = gameVar(k, "Settings", "alertPings", "FLOAT", 1);
229
- const keyBuild = gameVar(k, "Keys", "build", "STRING", "B");
230
- const keyAttack = gameVar(k, "Keys", "attack", "STRING", "F");
231
- const keyStop = gameVar(k, "Keys", "stop", "STRING", "H");
232
- const mono = { fontFamily: "JetBrains Mono" };
233
- const serif = { fontFamily: "Source Serif 4" };
234
- k.textStyle("Boot 20", { size: 20, fontWeight: 500, lineHeight: 32, ...mono });
235
- k.textStyle("Studio 28", { size: 28, fontWeight: 800, letterSpacing: 8, lineHeight: 36, textCase: "UPPER" });
236
- k.textStyle("Title 132", { size: 132, fontWeight: 900, letterSpacing: -5, lineHeight: 124, textCase: "UPPER" });
237
- k.textStyle("Tagline 28", { size: 28, fontWeight: 400, lineHeight: 38, fontStyle: "italic", ...serif });
238
- k.textStyle("Prompt 24", { size: 24, fontWeight: 700, letterSpacing: 10, lineHeight: 32, textCase: "UPPER", ...mono });
239
- k.textStyle("Menu 38", { size: 38, fontWeight: 800, letterSpacing: -0.5, lineHeight: 46, textCase: "UPPER" });
240
- k.textStyle("Hint 18", { size: 18, fontWeight: 500, letterSpacing: 1, lineHeight: 26, ...mono });
241
- k.textStyle("Heading 60", { size: 60, fontWeight: 900, letterSpacing: -2, lineHeight: 66, textCase: "UPPER" });
242
- k.textStyle("Label 24", { size: 24, fontWeight: 600, lineHeight: 32 });
243
- k.textStyle("Value 24", { size: 24, fontWeight: 700, lineHeight: 32, ...mono });
244
- k.textStyle("Cap 20", { size: 20, fontWeight: 700, letterSpacing: 2, lineHeight: 26, textAlign: "CENTER", ...mono });
245
- k.textStyle("Cost 16", { size: 16, fontWeight: 700, lineHeight: 22, textCase: "UPPER", ...mono });
246
- k.textStyle("Small 16", { size: 16, fontWeight: 600, letterSpacing: 2, lineHeight: 22, textCase: "UPPER", ...mono });
247
- k.textStyle("Body 22", { size: 22, fontWeight: 400, lineHeight: 32 });
248
- k.textStyle("Card 30", { size: 30, fontWeight: 900, letterSpacing: -0.8, lineHeight: 34, textCase: "UPPER" });
249
- k.textStyle("Res 30", { size: 30, fontWeight: 800, lineHeight: 34, ...mono });
250
- k.textStyle("HUD 16", { size: 16, fontWeight: 800, letterSpacing: 1.5, lineHeight: 20, textCase: "UPPER" });
251
- k.textStyle("Cmd 17", { size: 17, fontWeight: 900, letterSpacing: -0.2, lineHeight: 20, textCase: "UPPER" });
252
- k.textStyle("Alert 28", { size: 28, fontWeight: 800, letterSpacing: 5, lineHeight: 36, textCase: "UPPER", textAlign: "CENTER", ...mono });
253
- k.textStyle("Stat 64", { size: 64, fontWeight: 800, lineHeight: 72, ...mono });
254
- k.textStyle("Unit 30", { size: 30, fontWeight: 900, letterSpacing: -0.6, lineHeight: 34, textCase: "UPPER" });
255
- k.textStyle("Counter 48", { size: 48, fontWeight: 800, lineHeight: 52, ...mono });
256
- k.textStyle("Quote 22", { size: 22, fontWeight: 400, lineHeight: 30, fontStyle: "italic", ...serif });
257
- k.textStyle("Epitaph 104", { size: 104, fontWeight: 600, letterSpacing: -2, lineHeight: 112, fontStyle: "italic", textAlign: "CENTER", ...serif });
258
- k.textStyle("Credit role 18", { size: 18, fontWeight: 600, letterSpacing: 4, lineHeight: 26, textCase: "UPPER", textAlign: "CENTER", ...mono });
259
- k.textStyle("Credit name 34", { size: 34, fontWeight: 800, letterSpacing: -0.5, lineHeight: 42, textAlign: "CENTER" });
260
- const spinAbout = (id, cx, cy, rate) => {
261
- const b = k.node(id);
262
- k.patch(id, { anchorX: (cx - b.x) / b.width, anchorY: (cy - b.y) / b.height });
263
- spin(k, id, rate);
264
- };
265
- const gear = (parent, cx, cy, r, teeth, rate, color = "brass", hub = "void") => {
266
- const g = box(k, parent, cx - r, cy - r, r * 2, r * 2, { name: "Gear" });
267
- poly(k, g, gearPts(r, r, r, teeth), color, { name: "Gear teeth" });
268
- k.ellipse(g, r * 1.1, "bronzeDeep", { name: "Gear web", absolute: { x: r * 0.45, y: r * 0.45 } });
269
- for (let i = 0; i < 5; i++) {
270
- const a = i / 5 * TAU;
271
- const [x, y] = polar(r, r, r * 0.38, a);
272
- k.ellipse(g, Math.max(4, r * 0.16), hub, { name: "Gear hole", absolute: { x: x - r * 0.08, y: y - r * 0.08 } });
273
- }
274
- k.ellipse(g, r * 0.34, color, { name: "Gear boss", absolute: { x: r * 0.83, y: r * 0.83 }, stroke: { color: "bronzeDeep", width: 2 } });
275
- if (rate) spin(k, g, rate);
276
- return g;
277
- };
278
- const plate = (parent, x, y, w, h, o = {}) => {
279
- const id = box(k, parent, x, y, w, h, { name: o.name ?? "Plate", fill: o.fill ?? "panel", radius: 6, stroke: { color: "bronze", width: 2, align: "INSIDE" }, clip: o.clip });
280
- k.rect(id, w, h, [k.gradient({ from: "verdigris", to: "verdigris", angle: 60, fromOpacity: 0.16, toOpacity: 0 })], { name: "Patina", radius: 6, absolute: { x: 0, y: 0 } });
281
- k.rect(id, w - 12, h - 12, [], { name: "Seam", radius: 4, stroke: { color: "bronzeDeep", width: 1 }, absolute: { x: 6, y: 6 } });
282
- if (o.rivets !== false) for (const [rx, ry] of [[9, 9], [w - 17, 9], [9, h - 17], [w - 17, h - 17]]) k.ellipse(id, 8, "rivet", { name: "Rivet", absolute: { x: rx, y: ry }, stroke: { color: "bronzeDeep", width: 1 } });
283
- return id;
284
- };
285
- const hintBar = (id, text) => {
286
- const b = box(k, id, 0, H - 60, W, 60, { name: "Hint bar", fill: k.tint("panel", 0.94), direction: "HORIZONTAL", align: "CENTER", padding: { top: 0, right: 64, bottom: 0, left: 64 }, stroke: { color: "bronzeDeep", width: 1 } });
287
- k.text(b, text, { style: "Hint 18", color: "dim", autoWidth: true, name: "Hints" });
288
- };
289
- const menuGround = (id) => {
290
- k.rect(id, W, H, [k.gradient({ from: "soil", to: "void", kind: "RADIAL", handles: [{ x: 0.3, y: 0.4 }, { x: 1.2, y: 0.4 }, { x: 0.3, y: 1.4 }] })], { name: "Ground wash", absolute: { x: 0, y: 0 } });
291
- const topo = box(k, id, 0, 0, W, H, { name: "Contours" });
292
- [[1500, 300, 5], [300, 820, 9], [1100, 900, 12]].forEach(([cx, cy, s]) => {
293
- for (let i = 0; i < 5; i++) poly(k, topo, blob(cx, cy, 120 + i * 90, 70 + i * 60, s + i, 22, 0.12), "contour", { name: "Contour", stroke: 2, closed: true, opacity: 0.35 - i * 0.05 });
294
- });
295
- gear(id, 1840, 1e3, 230, 18, 6, "loam", "soil");
296
- gear(id, 1530, 1060, 130, 11, -10.6, "loam", "soil");
297
- for (let i = 0; i < 9; i++) {
298
- const sp = k.ellipse(id, 6 + i % 3 * 3, "moss", { name: "Spore", absolute: { x: 140 + i * 205, y: 1080 }, opacity: 0.5 });
299
- k.behave(sp, "translateY", [{ kind: "spin", rate: -(40 + i % 4 * 14) }, { kind: "mod", period: 1150, offset: -1150 + i * 120 }]);
300
- drift(k, sp, "translateX", 16, 0.3 + i % 3 * 0.1, i);
301
- }
302
- };
303
- const terrain = (parent, s, detail) => {
304
- for (const m of MEADOWS) poly(k, parent, blob(m.c[0] * s, m.c[1] * s, m.r[0] * s, m.r[1] * s, m.s), "meadow", { name: "Meadow" });
305
- for (const r of RIDGES) {
306
- poly(k, parent, blob(r.c[0] * s, r.c[1] * s, r.r[0] * s, r.r[1] * s, r.s), "ridgeDark", { name: "Ridge" });
307
- poly(k, parent, blob(r.c[0] * s - 8 * s, r.c[1] * s - 10 * s, r.r[0] * s * 0.72, r.r[1] * s * 0.7, r.s + 1), "ridge", { name: "Ridge" });
308
- poly(k, parent, blob(r.c[0] * s - 16 * s, r.c[1] * s - 20 * s, r.r[0] * s * 0.42, r.r[1] * s * 0.4, r.s + 2), "ridgeLight", { name: "Ridge crest" });
309
- if (detail) for (let i = 1; i <= 2; i++) poly(k, parent, blob(r.c[0] * s, r.c[1] * s, r.r[0] * s * (1 + i * 0.14), r.r[1] * s * (1 + i * 0.16), r.s + 5), "contour", { name: "Contour", stroke: 2, closed: true, opacity: 0.5 });
310
- }
311
- poly(k, parent, scalePts(RIVER, s), "mossDeep", { name: "River bank", stroke: Math.max(3, 78 * s) });
312
- poly(k, parent, scalePts(RIVER, s), "river", { name: "River", stroke: Math.max(2, 52 * s) });
313
- if (detail) {
314
- const shine = poly(k, parent, scalePts(RIVER, s, -6 * s, 0), "riverLight", { name: "River shine", stroke: 10 * s, opacity: 0.5 });
315
- drift(k, shine, "opacity", 0.2, 0.4);
316
- }
317
- if (s > 0.2) poly(k, parent, scalePts(TRAIL, s), "trail", { name: "Trail", stroke: Math.max(2, 18 * s), opacity: 0.85 });
318
- FORESTS.forEach(([cx, cy, n], fi) => {
319
- const r = rng(fi + 40);
320
- const count = detail ? n : Math.ceil(n / 2);
321
- for (let i = 0; i < count; i++) {
322
- const a = r() * TAU, d = r() * 150, z = (34 + r() * 26) * s;
323
- const x = (cx + Math.cos(a) * d) * s, y = (cy + Math.sin(a) * d * 0.7) * s;
324
- k.ellipse(parent, z, "forest", { name: "Tree", absolute: { x: x - z / 2, y: y - z / 2 } });
325
- if (detail) k.ellipse(parent, z * 0.62, "canopy", { name: "Canopy", absolute: { x: x - z / 2 + z * 0.08, y: y - z / 2 + z * 0.06 } });
326
- }
327
- });
328
- ORE_FIELDS.forEach(([cx, cy], oi) => {
329
- const r = rng(oi + 90);
330
- for (let i = 0; i < (detail ? 7 : 3); i++) {
331
- const x = (cx + (r() - 0.5) * 150) * s, y = (cy + (r() - 0.5) * 90) * s, z = (16 + r() * 18) * s;
332
- poly(k, parent, [[x, y - z * 1.3], [x + z * 0.7, y], [x, y + z * 0.9], [x - z * 0.7, y]], "ore", { name: "Ore crystal" });
333
- if (detail) {
334
- const f = poly(k, parent, [[x, y - z * 1.3], [x + z * 0.7, y], [x, y - z * 0.1]], "oreLight", { name: "Ore glint" });
335
- drift(k, f, "opacity", 0.35, 0.6 + i * 0.13, i);
336
- }
337
- }
338
- });
339
- };
340
- k.variantSet(
341
- "Brass button",
342
- "State",
343
- ["Idle", "Hover", "Pressed"],
344
- { direction: "HORIZONTAL", width: "HUG", gap: 14, align: "CENTER", padding: { top: 14, right: 30, bottom: 14, left: 30 }, radius: 6, props: { Label: "Back" }, description: "A riveted brass button: hover warms it to brass, pressing flashes verdigris." },
345
- (state, id) => {
346
- k.propText(id, "Label", { style: "Hint 18", color: state === "Idle" ? "parchment" : state === "Hover" ? "onBrass" : "onVerdigris", autoWidth: true });
347
- },
348
- (state) => ({ fill: state === "Idle" ? "panelHi" : state === "Hover" ? "brass" : "verdigris", stroke: { color: "brass", width: 2, align: "INSIDE" } })
349
- );
350
- k.changeTo("Brass button/Idle", "ON_HOVER", "Brass button/Hover", 120);
351
- k.changeTo("Brass button/Hover", "ON_PRESS", "Brass button/Pressed", 60);
352
- toggleComponent(k, { track: "bronzeDeep", on: "verdigris", knob: "parchment", stateStyle: "Small 16", ink: "parchment" });
353
- const CD = { Short: 900, Medium: 1600, Long: 2600 };
354
- k.variantSet("Cooldown", "State", ["Idle", "Short", "Medium", "Long"], { width: 176, height: 88, description: "A command button's cooldown sweep: change to Short / Medium / Long when the command fires; the veil drains and the button exhales when ready." }, (state, id) => {
355
- const veil = k.rect(id, 176, 88, k.tint("void", 0.74), { name: "Veil", radius: 6, absolute: { x: 0, y: 0 }, opacity: 0 });
356
- const edge = k.rect(id, 176, 3, "brass", { name: "Sweep edge", absolute: { x: 0, y: 0 }, opacity: 0, effects: [glow(k, "brass", 10)] });
357
- const hand = poly(k, id, [[150, 44], [150, 16]], "brass", { name: "Clock hand", stroke: 3, opacity: 0 });
358
- k.patch(hand, { anchorX: 0, anchorY: 1 });
359
- const breath = k.rect(id, 176, 88, k.tint("verdigris", 0.3), { name: "Breath", radius: 6, absolute: { x: 0, y: 0 }, opacity: 0 });
360
- const ring = k.rect(id, 176, 88, [], { name: "Exhale ring", radius: 8, stroke: { color: "verdigris", width: 3 }, absolute: { x: 0, y: 0 }, opacity: 0, effects: [glow(k, "verdigris", 16)] });
361
- if (state === "Idle") return;
362
- const d = CD[state];
363
- keys(k, veil, "opacity", [{ t: 0, v: 1, ease: { kind: "hold" } }, { t: d - 60, v: 1, ease: { kind: "linear" } }, { t: d, v: 0 }]);
364
- keys(k, veil, "height", [{ t: 0, v: 88, ease: { kind: "linear" } }, { t: d, v: 2 }]);
365
- keys(k, edge, "opacity", [{ t: 0, v: 1, ease: { kind: "hold" } }, { t: d - 60, v: 1, ease: { kind: "linear" } }, { t: d, v: 0 }]);
366
- keys(k, edge, "translateY", [{ t: 0, v: 85, ease: { kind: "linear" } }, { t: d, v: 0 }]);
367
- keys(k, hand, "opacity", [{ t: 0, v: 1, ease: { kind: "hold" } }, { t: d - 60, v: 1, ease: { kind: "linear" } }, { t: d, v: 0 }]);
368
- keys(k, hand, "rotation", [{ t: 0, v: 0, ease: { kind: "linear" } }, { t: d, v: -360 }]);
369
- keys(k, breath, "opacity", [{ t: d, v: 0, ease: { kind: "ease", name: "cubic-out" } }, { t: d + 120, v: 1, ease: { kind: "ease", name: "cubic-in" } }, { t: d + 440, v: 0 }]);
370
- keys(k, ring, "opacity", [{ t: d, v: 0, ease: { kind: "ease", name: "cubic-out" } }, { t: d + 90, v: 1, ease: { kind: "ease", name: "cubic-in" } }, { t: d + 440, v: 0 }]);
371
- for (const [p, v] of [["scaleX", 1.07], ["scaleY", 1.16]]) keys(k, ring, p, [{ t: d, v: 1, ease: { kind: "ease", name: "back-out", param: 2 } }, { t: d + 200, v, ease: { kind: "ease", name: "cubic-in-out" } }, { t: d + 440, v: 1 }]);
372
- }, (state) => state === "Idle" ? {} : { timeline: { duration: CD[state] + 480 } });
373
- oneShot(k, "Ping", { width: 72, height: 72, state: "Ping", duration: 1500, description: "A minimap alert: change to Ping to ring the spot twice." }, (state, id) => {
374
- for (const [i, delay] of [[0, 0], [1, 380]]) {
375
- const r = k.ellipse(id, 72, [], { name: `Ping ring ${i + 1}`, stroke: { color: "oxideText", width: 3 }, absolute: { x: 0, y: 0 }, opacity: 0 });
376
- if (state !== "Ping") continue;
377
- keys(k, r, "opacity", [{ t: delay, v: 1, ease: { kind: "ease", name: "cubic-out" } }, { t: delay + 1e3, v: 0 }]);
378
- for (const p of ["scaleX", "scaleY"]) keys(k, r, p, [{ t: delay, v: 0.15, ease: { kind: "ease", name: "expo-out" } }, { t: delay + 1e3, v: 1.3 }]);
379
- }
380
- });
381
- oneShot(k, "Scan pulse", { width: 1800, height: 1800, state: "Pulse", duration: 1300, description: "The scouting wave that rolls out from the base when you scout." }, (state, id) => {
382
- const r = k.ellipse(id, 1800, [], { name: "Pulse ring", stroke: { color: "verdigris", width: 6 }, absolute: { x: 0, y: 0 }, opacity: 0, effects: [glow(k, "verdigris", 30)] });
383
- if (state !== "Pulse") return;
384
- keys(k, r, "opacity", [{ t: 0, v: 0.9, ease: { kind: "ease", name: "cubic-in" } }, { t: 1250, v: 0 }]);
385
- for (const p of ["scaleX", "scaleY"]) keys(k, r, p, [{ t: 0, v: 0.05, ease: { kind: "ease", name: "cubic-out" } }, { t: 1250, v: 1 }]);
386
- });
387
- oneShot(k, "Raid alert", { width: 820, height: 64, state: "Show", duration: 2300, description: 'The "base under attack" banner: change to Show on every raid.' }, (state, id) => {
388
- if (state !== "Show") return;
389
- const b = box(k, id, 0, 0, 820, 64, { name: "Alert plate", fill: "oxide", radius: 6, align: "CENTER", justify: "CENTER", stroke: { color: "oxideText", width: 2, align: "INSIDE" }, effects: [glow(k, "oxide", 30, 0.8)] });
390
- k.text(b, "Your base is under attack", { style: "Alert 28", color: "onOxide", autoWidth: true, name: "Alert words" });
391
- keys(k, b, "opacity", [{ t: 0, v: 0, ease: { kind: "hold" } }, { t: 60, v: 1, ease: { kind: "hold" } }, { t: 330, v: 0.3, ease: { kind: "hold" } }, { t: 480, v: 1, ease: { kind: "hold" } }, { t: 750, v: 0.3, ease: { kind: "hold" } }, { t: 900, v: 1, ease: { kind: "hold" } }, { t: 1900, v: 1, ease: { kind: "ease", name: "cubic-in" } }, { t: 2250, v: 0 }]);
392
- keys(k, b, "translateY", [{ t: 0, v: -30, ease: { kind: "ease", name: "back-out", param: 2 } }, { t: 300, v: 0 }]);
393
- });
394
- const TOASTS = { Poor: "Not enough ore or fuel", Blind: "Spire not in sight \u2014 scout first (S)", Capped: "Supply capped \u2014 build a depot" };
395
- k.variantSet("Order toast", "State", ["Idle", "Poor", "Blind", "Capped"], { width: 700, height: 52, description: "Why an order failed: change to Poor, Blind or Capped; it pops, holds and fades." }, (state, id) => {
396
- if (state === "Idle") return;
397
- const b = box(k, id, 0, 0, 700, 52, { name: "Toast plate", fill: "panelHi", radius: 6, align: "CENTER", justify: "CENTER", stroke: { color: "oxideText", width: 2, align: "INSIDE" } });
398
- k.text(b, TOASTS[state], { style: "HUD 16", color: "oxideText", autoWidth: true, name: "Toast words" });
399
- keys(k, b, "opacity", [{ t: 0, v: 0, ease: { kind: "ease", name: "cubic-out" } }, { t: 120, v: 1, ease: { kind: "hold" } }, { t: 1250, v: 1, ease: { kind: "ease", name: "cubic-in" } }, { t: 1560, v: 0 }]);
400
- for (const p of ["scaleX", "scaleY"]) keys(k, b, p, [{ t: 0, v: 0.8, ease: { kind: "ease", name: "back-out", param: 2.5 } }, { t: 260, v: 1 }]);
401
- }, (state) => state === "Idle" ? {} : { timeline: { duration: 1600 } });
402
- oneShot(k, "Gauge needle", { width: 120, height: 120, state: "Spike", duration: 1100, description: "A gauge needle that spikes under attack (change to Spike)." }, (state, id) => {
403
- const n = poly(k, id, [[57, 60], [60, 12], [63, 60], [60, 72]], "oxideText", { name: "Needle", effects: [glow(k, "oxide", 8, 0.6)] });
404
- const nb = k.node(n);
405
- k.patch(n, { anchorX: (60 - nb.x) / nb.width, anchorY: (60 - nb.y) / nb.height });
406
- k.ellipse(id, 14, "brass", { name: "Needle hub", absolute: { x: 53, y: 53 }, stroke: { color: "bronzeDeep", width: 2 } });
407
- if (state === "Spike") keys(k, n, "rotation", [{ t: 0, v: 0, ease: { kind: "ease", name: "expo-out" } }, { t: 110, v: 72, ease: { kind: "ease", name: "cubic-in-out" } }, { t: 420, v: -16, ease: { kind: "ease", name: "cubic-in-out" } }, { t: 680, v: 7, ease: { kind: "ease", name: "cubic-in-out" } }, { t: 1e3, v: 0 }]);
408
- });
409
- oneShot(k, "Spire hit", { width: 220, height: 220, duration: 760, description: "The Canker Spire flashes and rings when a strike lands." }, (state, id) => {
410
- const f = k.ellipse(id, 220, "oreLight", { name: "Impact flash", absolute: { x: 0, y: 0 }, opacity: 0, effects: [glow(k, "enemyGlow", 40)] });
411
- const r = k.ellipse(id, 220, [], { name: "Shock ring", stroke: { color: "oreLight", width: 5 }, absolute: { x: 0, y: 0 }, opacity: 0 });
412
- if (state !== "Hit") return;
413
- keys(k, f, "opacity", [{ t: 0, v: 0.85, ease: { kind: "ease", name: "expo-out" } }, { t: 380, v: 0 }]);
414
- for (const p of ["scaleX", "scaleY"]) keys(k, f, p, [{ t: 0, v: 0.4, ease: { kind: "ease", name: "expo-out" } }, { t: 380, v: 0.9 }]);
415
- keys(k, r, "opacity", [{ t: 0, v: 1, ease: { kind: "ease", name: "cubic-out" } }, { t: 720, v: 0 }]);
416
- for (const p of ["scaleX", "scaleY"]) keys(k, r, p, [{ t: 0, v: 0.3, ease: { kind: "ease", name: "expo-out" } }, { t: 720, v: 1.5 }]);
417
- });
418
- oneShot(k, "Queue bar", { width: 288, height: 14, state: "Training", duration: 2600, description: "The build queue's progress: change to Training when a unit is queued." }, (state, id) => {
419
- const f = k.rect(id, 288, 14, [k.gradient({ from: "verdigrisDeep", to: "verdigris", angle: 0 })], { name: "Queue fill", radius: 7, absolute: { x: 0, y: 0 }, opacity: 0 });
420
- const g = k.rect(id, 288, 14, "brass", { name: "Queue flash", radius: 7, absolute: { x: 0, y: 0 }, opacity: 0, effects: [glow(k, "brass", 14)] });
421
- if (state !== "Training") return;
422
- keys(k, f, "opacity", [{ t: 0, v: 1, ease: { kind: "hold" } }, { t: 2380, v: 1, ease: { kind: "linear" } }, { t: 2560, v: 0 }]);
423
- keys(k, f, "width", [{ t: 0, v: 4, ease: { kind: "ease", name: "sine-in-out" } }, { t: 2200, v: 288 }]);
424
- keys(k, g, "opacity", [{ t: 2200, v: 0, ease: { kind: "ease", name: "expo-out" } }, { t: 2260, v: 0.9, ease: { kind: "ease", name: "cubic-in" } }, { t: 2560, v: 0 }]);
425
- });
426
- oneShot(k, "Unit ready", { width: 200, height: 40, state: "Show", duration: 1100, description: `The counter's "+1 unit" float, on every unit trained.` }, (state, id) => {
427
- if (state !== "Show") return;
428
- const t = k.text(id, "+1 unit", { style: "HUD 16", color: "verdigris", absolute: { x: 0, y: 10 }, width: 200, name: "Ready words" });
429
- keys(k, t, "opacity", [{ t: 0, v: 0, ease: { kind: "ease", name: "cubic-out" } }, { t: 120, v: 1, ease: { kind: "hold" } }, { t: 700, v: 1, ease: { kind: "ease", name: "cubic-in" } }, { t: 1050, v: 0 }]);
430
- keys(k, t, "translateY", [{ t: 0, v: 14, ease: { kind: "ease", name: "cubic-out" } }, { t: 1050, v: -20 }]);
431
- });
432
- oneShot(k, "Raid flash", { width: W, height: H, duration: 600, description: "The screen edges flush oxide red on every raid." }, (state, id) => {
433
- const f = k.rect(id, W, H, [k.gradient({ from: "oxide", to: "oxide", kind: "RADIAL", fromOpacity: 0, toOpacity: 0.7, handles: [{ x: 0.5, y: 0.5 }, { x: 1.05, y: 0.5 }, { x: 0.5, y: 1.1 }] })], { name: "Flash", absolute: { x: 0, y: 0 }, opacity: 0 });
434
- if (state === "Hit") keys(k, f, "opacity", [{ t: 0, v: 1, ease: { kind: "ease", name: "expo-out" } }, { t: 560, v: 0 }]);
435
- });
436
- const boot = screen(k, "Boot", { ground: "void", first: true, duration: 3600 });
437
- const title = screen(k, "Title", { ground: "void" });
438
- const main = screen(k, "Main menu", { ground: "void" });
439
- const factionScreen = screen(k, "Faction select", { ground: "void" });
440
- const briefing = screen(k, "Mission briefing", { ground: "void" });
441
- const load = screen(k, "Load campaign", { ground: "void" });
442
- const settings = screen(k, "Settings", { ground: "void" });
443
- const credits = screen(k, "Credits", { ground: "void", duration: 12e3 });
444
- const hud = screen(k, "Battle HUD", { ground: "soil" });
445
- const tech = screen(k, "Tech tree", { ground: "void", fills: k.tint("scrim", 0.86) });
446
- const pause = screen(k, "Pause", { ground: "void", fills: k.tint("scrim", 0.8) });
447
- const defeat = screen(k, "Defeat", { ground: "void" });
448
- const victory = screen(k, "Victory", { ground: "void" });
449
- k.flowStart(boot, "Play IRONROOT DOMINION");
450
- const pickStats = (i) => [
451
- set(faction.id, { value: i, glide: 160 }),
452
- set(industry.id, { value: FACTIONS[i].stats[0], glide: 450 }),
453
- set(might.id, { value: FACTIONS[i].stats[1], glide: 450 }),
454
- set(guile.id, { value: FACTIONS[i].stats[2], glide: 450 })
455
- ];
456
- const selectSquad = (i) => {
457
- const c = camFor(SQUADS[i].at);
458
- return [
459
- set(sel.id, { value: i + 1 }),
460
- set(atk.id, { value: SQUADS[i].atk, glide: 420 }),
461
- set(arm.id, { value: SQUADS[i].arm, glide: 420 }),
462
- set(spd.id, { value: SQUADS[i].spd, glide: 420 }),
463
- set(camX.id, { value: c.x, glide: 700, easing: "EASE_IN_OUT" }),
464
- set(camY.id, { value: c.y, glide: 700, easing: "EASE_IN_OUT" })
465
- ];
466
- };
467
- const home = camFor(BASE);
468
- const resetRun = [
469
- set(ore.id, { expression: `400 + (${faction.n} == 0 ? 150 : 0)` }),
470
- set(fuel.id, { expression: `200 + (${faction.n} == 1 ? 80 : 0)` }),
471
- set(supply.id, { value: 6 }),
472
- set(cap.id, { value: 20 }),
473
- set(oreMined.id, { value: 0 }),
474
- set(yieldV.id, { value: 50 }),
475
- set(trained.id, { value: 0 }),
476
- set(sporelings.id, { value: 0 }),
477
- set(thornbacks.id, { value: 0 }),
478
- set(depots.id, { value: 0 }),
479
- ...hp.map((h) => set(h.id, { value: 100 })),
480
- set(baseHp.id, { value: 100 }),
481
- set(baseTrail.id, { value: 100 }),
482
- set(dmgTaken.id, { value: 15 }),
483
- set(braced.id, { value: 0 }),
484
- set(coreHp.id, { value: 120 }),
485
- set(coreTrail.id, { value: 120 }),
486
- set(scout.id, { expression: `${faction.n} == 2 ? 1 : 0` }),
487
- set(camX.id, { value: home.x }),
488
- set(camY.id, { value: home.y }),
489
- set(plating.id, { value: 0 }),
490
- set(taproots.id, { value: 0 }),
491
- set(tier.id, { value: 0 }),
492
- set(actions.id, { value: 0 }),
493
- set(raids.id, { value: 0 }),
494
- set(sel.id, { value: 1 }),
495
- set(atk.id, { value: SQUADS[0].atk }),
496
- set(arm.id, { value: SQUADS[0].arm }),
497
- set(spd.id, { value: SQUADS[0].spd })
498
- ];
499
- const toBattle = go(hud, "ZOOM_THROUGH", { duration: 600 });
500
- {
501
- k.rect(boot, W, H, [k.gradient({ from: "oxideDeep", to: "void", kind: "RADIAL", fromOpacity: 0.45, toOpacity: 0, handles: [{ x: 0.5, y: 0.9 }, { x: 1.1, y: 0.9 }, { x: 0.5, y: 1.6 }] })], { name: "Furnace glow", absolute: { x: 0, y: 0 } });
502
- gear(boot, 960, 330, 110, 14, 30, "bronze", "void");
503
- k.logo(boot, 110, 110, { absolute: { x: 905, y: 275 } });
504
- label(k, boot, "{{brand.studio}}", "Studio 28", "parchment", 160, 470, { w: 1600, align: "CENTER", name: "Studio" });
505
- label(k, boot, "Presents", "Small 16", "dim", 160, 516, { w: 1600, align: "CENTER", name: "Presents" });
506
- const log = box(k, boot, 560, 600, 800, 200, { name: "Foundry log", gap: 2 });
507
- for (const t of ["> stoking boilers .............. 212 psi", "> grafting rootstock ............ OK", "> charting the Hollow Reach ...... 4 rings", "> warden sworn .......... H. ASHGROVE"]) k.text(log, t, { style: "Boot 20", color: "verdigris", name: "Log line" });
508
- const pbar = box(k, boot, 560, 830, 800, 10, { name: "Pressure bar", fill: "bronzeDeep", radius: 5, clip: true });
509
- const pf = k.rect(pbar, 800, 10, [k.gradient({ from: "oxide", to: "brass", angle: 0 })], { name: "Pressure fill", radius: 5, absolute: { x: 0, y: 0 } });
510
- keys(k, pf, "width", [{ t: 200, v: 10, ease: { kind: "ease", name: "cubic-in-out" } }, { t: 3e3, v: 800 }]);
511
- k.cues(boot, [
512
- { layer: "{{brand.logo}}", preset: "scale-in", at: 0 },
513
- { layer: "Studio", preset: "fade-in", at: 300 },
514
- { layer: "Log line", preset: "typewriter", at: 700, params: { duration: 420 }, stagger: { delay: 520 } }
515
- ]);
516
- k.link(boot, title, "DISSOLVE", { trigger: "AFTER_TIMEOUT", delay: 3400, duration: 700 });
517
- k.link(boot, title, "DISSOLVE", { key: "*", duration: 400 });
518
- k.link(boot, title, "DISSOLVE", { duration: 400 });
519
- }
520
- {
521
- k.rect(title, W, H, [k.gradient({ from: "oxide", to: "void", kind: "RADIAL", fromOpacity: 0.28, toOpacity: 0, handles: [{ x: 0.7, y: 0.75 }, { x: 1.35, y: 0.75 }, { x: 0.7, y: 1.5 }] })], { name: "Dusk glow", absolute: { x: 0, y: 0 } });
522
- poly(k, title, [[0, 860], [220, 800], [420, 830], [700, 760], [980, 810], [1260, 740], [1560, 790], [1920, 720], [1920, 1080], [0, 1080]], "soil", { name: "Far hills" });
523
- for (const [x, h] of [[40, 130], [90, 96], [1760, 170], [1812, 120]]) {
524
- k.rect(title, 34, h, "loam", { name: "Smokestack", absolute: { x, y: 800 - h } });
525
- const puff = k.ellipse(title, 46, "smoke", { name: "Smoke", absolute: { x: x - 6, y: 770 - h }, opacity: 0.35 });
526
- k.behave(puff, "translateY", [{ kind: "spin", rate: -24 }, { kind: "mod", period: 90, offset: -90 }]);
527
- drift(k, puff, "opacity", 0.15, 0.5, x);
528
- }
529
- poly(k, title, [[0, 960], [300, 900], [640, 940], [1e3, 880], [1400, 930], [1920, 870], [1920, 1080], [0, 1080]], "loam", { name: "Near hills" });
530
- const tree = box(k, title, 880, 0, 1040, 1080, { name: "Iron tree" });
531
- k.rect(tree, 1040, 1080, [k.gradient({ from: "verdigris", to: "verdigris", kind: "RADIAL", fromOpacity: 0.22, toOpacity: 0, handles: [{ x: 0.5, y: 0.4 }, { x: 1, y: 0.4 }, { x: 0.5, y: 0.9 }] })], { name: "Canopy glow", absolute: { x: 0, y: 0 } });
532
- const roots = [[[520, 900], [380, 980], [250, 1e3], [120, 1080]], [[520, 900], [470, 1e3], [420, 1080]], [[520, 900], [640, 990], [720, 1080]], [[520, 900], [700, 960], [880, 1e3], [1e3, 1080]]];
533
- for (const r of roots) {
534
- poly(k, tree, r, "bronzeDeep", { name: "Root", stroke: 26 });
535
- poly(k, tree, r, "bronze", { name: "Root plate", stroke: 10 });
536
- }
537
- poly(k, tree, [[440, 1e3], [470, 700], [455, 520], [500, 360], [540, 360], [585, 520], [570, 700], [600, 1e3]], "bronze", { name: "Trunk" });
538
- poly(k, tree, [[470, 700], [455, 520], [500, 360], [520, 360], [505, 520], [520, 700], [500, 1e3], [440, 1e3]], "bronzeDeep", { name: "Trunk shade" });
539
- for (const y of [560, 680, 800, 920]) poly(k, tree, [[452, y], [592, y - 14]], "brassDim", { name: "Trunk band", stroke: 6 });
540
- for (const [x, y] of [[520, 610], [540, 740], [505, 860]]) k.ellipse(tree, 10, "rivet", { name: "Trunk rivet", absolute: { x, y } });
541
- const branches = [[[500, 420], [360, 320], [230, 300]], [[520, 380], [520, 220], [470, 130]], [[540, 420], [700, 310], [830, 290]], [[500, 520], [340, 470], [190, 480]], [[560, 520], [720, 470], [880, 500]]];
542
- for (const b of branches) poly(k, tree, b, "bronze", { name: "Branch", stroke: 20 });
543
- const canopy = box(k, tree, 0, 0, 1040, 700, { name: "Canopy" });
544
- const cr = rng(7);
545
- for (let i = 0; i < 26; i++) {
546
- const a = cr() * TAU, d = 120 + cr() * 300;
547
- const x = 520 + Math.cos(a) * d * 1.15, y = 330 + Math.sin(a) * d * 0.6, z = 90 + cr() * 90;
548
- k.ellipse(canopy, z, i % 3 === 0 ? "verdigrisDeep" : i % 3 === 1 ? "mossDeep" : "verdigris", { name: "Leaf mass", absolute: { x: x - z / 2, y: y - z / 2 }, opacity: i % 3 === 2 ? 0.55 : 0.9 });
549
- }
550
- drift(k, canopy, "translateX", 5, 0.18);
551
- gear(tree, 520, 300, 96, 14, 16);
552
- gear(tree, 520 + 96 + 58, 300 - 20, 64, 9, -24, "brassDim");
553
- gear(tree, 350, 250, 58, 8, -26, "brassDim");
554
- gear(tree, 760, 420, 44, 7, 34);
555
- gear(tree, 290, 430, 38, 6, 40);
556
- for (let i = 0; i < 12; i++) {
557
- const lf = poly(k, tree, [[0, 8], [10, 0], [22, 6], [12, 16]].map(([x, y]) => [x + 120 + i * 72, y + 240 + i % 4 * 60]), i % 2 ? "moss" : "verdigris", { name: "Falling leaf" });
558
- k.behave(lf, "translateY", [{ kind: "spin", rate: 50 + i % 5 * 12 }, { kind: "mod", period: 820, offset: -(i * 67) % 820 }]);
559
- drift(k, lf, "translateX", 30, 0.25 + i % 3 * 0.08, i * 0.7);
560
- drift(k, lf, "rotation", 50, 0.4 + i % 4 * 0.1, i);
561
- }
562
- const lock = k.stack(title, { name: "Title lockup", width: 960, gap: 24, absolute: { x: 120, y: 250 } });
563
- k.text(lock, "A {{brand.studio}} war of root and rivet", { style: "Small 16", color: "brass", name: "Kicker" });
564
- k.text(lock, "{{brand.title}}", { style: "Title 132", color: "parchment", name: "Title" });
565
- k.rect(lock, 180, 6, "oxide", { name: "Title rule" });
566
- k.text(lock, "{{brand.tagline}}", { style: "Tagline 28", color: "dim", name: "Tagline", width: 860 });
567
- const prompt = label(k, title, "Press any key", "Prompt 24", "brass", 120, 900, { w: 800, name: "Prompt" });
568
- drift(k, prompt, "opacity", 0.3, 0.7);
569
- label(k, title, '\xA9 2026 {{brand.studio}} \xB7 build 0.7.2 "Sapwood"', "Small 16", "dim", 120, 1010, { w: 900, name: "Legal" });
570
- k.cues(title, [
571
- { layer: "Title lockup", preset: "blur-in", at: 0 },
572
- { layer: "Iron tree", preset: "rise-in", at: 150, params: { distance: 60 } },
573
- { layer: "Prompt", preset: "fade-in", at: 900 }
574
- ]);
575
- k.link(title, main, "DISSOLVE", { key: "*", duration: 400 });
576
- k.link(title, main, "DISSOLVE", { duration: 400 });
577
- }
578
- {
579
- menuGround(main);
580
- label(k, main, "{{brand.title}}", "Heading 60", "parchment", 120, 96, { w: 1e3, name: "Wordmark" });
581
- k.rect(main, 140, 6, "oxide", { name: "Wordmark rule", absolute: { x: 124, y: 60 } });
582
- menu(k, main, [
583
- { label: "Campaign", hint: "Mission 3 \xB7 Rusted Canopy", actions: [go(factionScreen, "PUSH_FROM_RIGHT", { duration: 380 })] },
584
- { label: "Skirmish", hint: "Straight to the field", actions: [...resetRun, toBattle] },
585
- { label: "Load", hint: "3 saved campaigns", actions: [go(load, "PUSH_FROM_RIGHT", { duration: 380 })] },
586
- { label: "Settings", actions: [go(settings, "PUSH_FROM_RIGHT", { duration: 380 })] },
587
- { label: "Credits", actions: [go(credits, "DISSOLVE", { duration: 400 })] },
588
- { label: "Quit", hint: "Back to the title", actions: [go(title, "DISSOLVE", { duration: 400 })] }
589
- ], { focus: menuFocus, x: 100, y: 300, width: 900, pitch: 88, style: "Menu 38", color: "parchment", plate: [k.gradient({ from: "brass", to: "brass", angle: 0, fromOpacity: 0.42, toOpacity: 0 })], marker: { color: "brass" }, hintStyle: "Hint 18", radius: 4 });
590
- const card = plate(main, 1180, 290, 620, 560, { name: "War table" });
591
- const rose = box(k, card, 190, 40, 240, 240, { name: "Compass rose" });
592
- k.ellipse(rose, 240, "panelHi", { name: "Rose disc", stroke: { color: "brass", width: 3 }, absolute: { x: 0, y: 0 } });
593
- spinAbout(arc(k, rose, 120, 120, 104, 0, TAU * 0.85, "verdigris", 3, { name: "Rose ring" }), 120, 120, 12);
594
- const needle = poly(k, rose, [[120, 30], [136, 120], [120, 210], [104, 120]], "brass", { name: "Rose needle" });
595
- poly(k, rose, [[120, 30], [136, 120], [104, 120]], "oxide", { name: "Rose north" });
596
- k.behave(needle, "rotation", [{ kind: "noise", amp: 8, freq: 0.6, seed: 4 }]);
597
- readout(k, card, commander.n, "WARDEN HESPER ASHGROVE", "Unit 30", "parchment", 40, 310, { w: 540, align: "CENTER", name: "Commander" });
598
- readout(k, card, FACTIONS.map((f, i) => `${faction.n} == ${i} ? "${f.name.toUpperCase()}"`).join(" : ") + ' : ""', FACTIONS[0].name.toUpperCase(), "Small 16", "brass", 40, 356, { w: 540, align: "CENTER", name: "Dominion" });
599
- label(k, card, '"The Hollow Choir has crossed the Mireglass. Hold the Heartwood, Warden, and break their spire."', "Quote 22", "dim", 60, 400, { w: 500, align: "CENTER", name: "Dispatch quote" });
600
- const tick = box(k, main, 0, 930, W, 40, { name: "Dispatch ticker", clip: true, fill: k.tint("panel", 0.9) });
601
- const words = label(k, tick, "DISPATCH \xB7 Boilers at the Heartwood holding 212 psi \xB7 Choir scouts seen past the Mireglass ford \xB7 Ore seam east of the river runs rich \xB7 Thornback plans recovered from the Oxide Reach \xB7 ", "Small 16", "dim", 0, 9, { name: "Ticker words" });
602
- k.behave(words, "translateX", [{ kind: "spin", rate: -55 }, { kind: "mod", period: 1300, offset: -1300 }]);
603
- hintBar(main, "\u2191 \u2193 SELECT ENTER CONFIRM MOUSE POINT AND CLICK");
604
- k.cues(main, [{ layer: "Menu item", preset: "slide-in", at: 0, params: { direction: "left" }, stagger: { delay: 60 } }, { layer: "War table", preset: "rise-in", at: 200 }]);
605
- }
606
- {
607
- menuGround(factionScreen);
608
- label(k, factionScreen, "Choose your dominion", "Heading 60", "parchment", 120, 70, { name: "Screen title" });
609
- label(k, factionScreen, "Each dominion fields its own units and starts with its own edge.", "Body 22", "dim", 124, 146, { name: "Screen lead" });
610
- const emblem = (parent, i, cx, cy) => {
611
- if (i === 0) {
612
- gear(parent, cx, cy, 60, 10, 10);
613
- poly(k, parent, [[cx, cy - 34], [cx + 22, cy], [cx, cy + 30], [cx - 22, cy]], "moss", { name: "Emblem leaf" });
614
- }
615
- if (i === 1) {
616
- poly(k, parent, [[cx, cy - 64], [cx + 56, cy + 40], [cx - 56, cy + 40]], "oxide", { name: "Emblem flame" });
617
- poly(k, parent, [[cx, cy - 24], [cx + 24, cy + 28], [cx - 24, cy + 28]], "oreLight", { name: "Emblem core" });
618
- }
619
- if (i === 2) {
620
- poly(k, parent, ellipsePts(cx, cy, 64, 36), "verdigrisDeep", { name: "Emblem lens" });
621
- poly(k, parent, [[cx - 64, cy], [cx, cy - 40], [cx + 64, cy], [cx, cy + 40]], "verdigris", { name: "Emblem eye" });
622
- k.ellipse(parent, 30, "void", { name: "Emblem pupil", absolute: { x: cx - 15, y: cy - 15 } });
623
- }
624
- };
625
- FACTIONS.forEach((f, i) => {
626
- const near = `max(0, 1 - abs(${faction.n} - ${i}))`;
627
- const card = plate(factionScreen, 120 + i * 570, 210, 540, 400, { name: "Faction card" });
628
- const hl = k.rect(card, 540, 190, [k.gradient({ from: "brass", to: "brass", angle: 90, fromOpacity: 0.34, toOpacity: 0 })], { name: "Chosen glow", radius: 6, absolute: { x: 0, y: 0 } });
629
- k.bindExpression(hl, "opacity", near);
630
- const rim = k.rect(card, 540, 400, [], { name: "Chosen rim", radius: 6, stroke: { color: "brass", width: 4 }, absolute: { x: 0, y: 0 }, effects: [glow(k, "brass", 20, 0.6)] });
631
- k.bindExpression(rim, "opacity", near);
632
- k.bindExpression(card, "translateY", `${near} * -14`);
633
- emblem(card, i, 270, 110);
634
- label(k, card, f.name, "Card 30", "parchment", 20, 200, { w: 500, align: "CENTER", name: "Faction name" });
635
- label(k, card, f.motto, "Quote 22", "dim", 40, 244, { w: 460, align: "CENTER", name: "Faction motto" });
636
- label(k, card, f.bonus, "Small 16", "brass", 20, 336, { w: 500, align: "CENTER", name: "Faction bonus" });
637
- k.on(card, when([{ if: "true", then: pickStats(i) }]), { trigger: "MOUSE_ENTER" });
638
- onAll(k, card, pickStats(i));
639
- });
640
- const stats = plate(factionScreen, 120, 650, 820, 280, { name: "Dominion stats" });
641
- label(k, stats, "Dominion traits", "Small 16", "brass", 40, 28, { name: "Stats title" });
642
- [["Industry", industry], ["Might", might], ["Guile", guile]].forEach(([name, v], i) => {
643
- label(k, stats, name, "Label 24", "parchment", 40, 66 + i * 66, { name: "Trait name" });
644
- bar(k, stats, { x: 200, y: 78 + i * 66, w: 460, h: 14, value: v.n, max: "100", back: "bronzeDeep", fill: [k.gradient({ from: "verdigrisDeep", to: "brass", angle: 0 })], radius: 7, name: `${name} bar` });
645
- readout(k, stats, `round(${v.n})`, String(FACTIONS[0].stats[i]), "Value 24", "brass", 680, 66 + i * 66, { w: 100, align: "RIGHT", name: "Trait value" });
646
- });
647
- const roster = plate(factionScreen, 980, 650, 820, 280, { name: "Unit roster" });
648
- label(k, roster, "Unit roster", "Small 16", "brass", 40, 28, { name: "Roster title" });
649
- for (let u = 0; u < 3; u++) {
650
- const slot = box(k, roster, 40 + u * 250, 64, 230, 180, { name: "Roster slot", fill: "panelHi", radius: 6, stroke: { color: "bronzeDeep", width: 2 } });
651
- FACTIONS.forEach((f, i) => {
652
- const g = box(k, slot, 0, 0, 230, 180, { name: `${f.name} unit` });
653
- k.bindExpression(g, "visible", `round(${faction.n}) == ${i}`);
654
- const cx = 115, cy = 64, col = i === 0 ? "moss" : i === 1 ? "oxide" : "verdigris";
655
- if (u === 0) {
656
- poly(k, g, [[cx, cy - 36], [cx + 32, cy + 26], [cx - 32, cy + 26]], col, { name: "Unit icon" });
657
- poly(k, g, [[cx, cy - 12], [cx + 12, cy + 12], [cx - 12, cy + 12]], "void", { name: "Unit eye" });
658
- }
659
- if (u === 1) {
660
- poly(k, g, Array.from({ length: 6 }, (_, j) => polar(cx, cy, 38, j / 6 * TAU)), col, { name: "Unit icon" });
661
- k.rect(g, 44, 10, "void", { name: "Unit slot", absolute: { x: cx - 22, y: cy - 5 } });
662
- }
663
- if (u === 2) {
664
- poly(k, g, gearPts(cx, cy, 42, 8), col, { name: "Unit icon" });
665
- poly(k, g, [[cx, cy - 20], [cx + 18, cy + 14], [cx - 18, cy + 14]], "void", { name: "Unit eye" });
666
- }
667
- label(k, g, f.roster[u], "HUD 16", "parchment", 10, 130, { w: 210, align: "CENTER", name: "Unit name" });
668
- });
669
- drift(k, slot, "translateY", 4, 0.4, u);
670
- }
671
- const choose = k.instance(factionScreen, "Brass button", { Label: "Command this dominion ENTER" }, { name: "Choose faction", absolute: { x: 1400, y: 950 } });
672
- k.on(choose, go(briefing, "SLIDE_FROM_RIGHT", { duration: 450 }));
673
- for (const key of ["ArrowRight", "d"]) k.on(factionScreen, when(FACTIONS.map((_, i) => ({ if: `${faction.n} == ${i}`, then: pickStats((i + 1) % 3) }))), { key });
674
- for (const key of ["ArrowLeft", "a"]) k.on(factionScreen, when(FACTIONS.map((_, i) => ({ if: `${faction.n} == ${i}`, then: pickStats((i + 2) % 3) }))), { key });
675
- k.on(factionScreen, go(briefing, "SLIDE_FROM_RIGHT", { duration: 450 }), { key: "Enter" });
676
- k.on(factionScreen, back(), { key: "Escape" });
677
- label(k, factionScreen, "LEFT RIGHT CHOOSE ENTER CONFIRM ESC BACK", "Hint 18", "dim", 120, 970, { name: "Faction hints" });
678
- k.cues(factionScreen, [{ layer: "Faction card", preset: "rise-in", at: 0, stagger: { delay: 90 } }, { layer: "Dominion stats", preset: "fade-in", at: 400 }, { layer: "Unit roster", preset: "fade-in", at: 500 }]);
679
- }
680
- {
681
- menuGround(briefing);
682
- label(k, briefing, "Operation Rusted Canopy", "Heading 60", "parchment", 120, 60, { name: "Screen title" });
683
- label(k, briefing, "Mission 3 \xB7 The Hollow Reach \xB7 Dawn", "Small 16", "brass", 124, 136, { name: "Mission line" });
684
- const chartPlate = plate(briefing, 120, 180, 1060, 620, { name: "Chart" });
685
- const S = 1020 / WORLD.w;
686
- const chart = box(k, chartPlate, 20, 60, 1020, Math.round(WORLD.h * S), { name: "Chart map", fill: "soil", clip: true, radius: 4 });
687
- terrain(chart, S, false);
688
- label(k, chartPlate, "Survey of the Hollow Reach", "Small 16", "brass", 24, 22, { name: "Chart title" });
689
- const route = poly(k, chart, scalePts(TRAIL, S), "brass", { name: "Route", stroke: 4, opacity: 0.9 });
690
- void route;
691
- const markers = [[BASE, "Heartwood", "verdigris"], [ORE_FIELDS[0], "Ore seam", "ore"], [ORE_FIELDS[2], "Choir outpost", "enemy"], [CORE, "Canker Spire", "enemy"], [ORE_FIELDS[1], "Deep seam", "ore"]];
692
- for (const [[x, y], name, col] of markers) {
693
- const m = box(k, chart, x * S - 90, y * S - 22, 180, 70, { name: "Objective marker" });
694
- poly(k, m, [[90, 0], [112, 22], [90, 44], [68, 22]], col, { name: "Marker diamond", effects: [glow(k, col, 14, 0.7)] });
695
- poly(k, m, [[90, 10], [102, 22], [90, 34], [78, 22]], "void", { name: "Marker pip" });
696
- const tag = box(k, m, 20, 46, 140, 24, { name: "Marker tag", fill: k.tint("void", 0.85), radius: 4, align: "CENTER", justify: "CENTER" });
697
- k.text(tag, name, { style: "HUD 16", color: "parchment", autoWidth: true, name: "Marker name" });
698
- }
699
- const core = k.named(chart, "Objective marker")[3];
700
- drift(k, core, "scaleX", 0.06, 1.2);
701
- drift(k, core, "scaleY", 0.06, 1.2);
702
- const cmd = plate(briefing, 1220, 180, 580, 620, { name: "Commander" });
703
- const face = box(k, cmd, 30, 36, 190, 190, { name: "Portrait", fill: "panelHi", radius: 95, clip: true, stroke: { color: "brass", width: 3, align: "INSIDE" } });
704
- poly(k, face, [[40, 190], [60, 140], [95, 128], [130, 140], [150, 190]], "bronzeDeep", { name: "Coat" });
705
- poly(k, face, [[58, 96], [62, 52], [95, 32], [128, 52], [132, 96], [118, 128], [72, 128]], "bronze", { name: "Helm" });
706
- poly(k, face, [[66, 70], [124, 70], [118, 88], [72, 88]], "verdigris", { name: "Visor", effects: [glow(k, "verdigris", 14)] });
707
- k.ellipse(face, 34, "brassDim", { name: "Respirator", absolute: { x: 78, y: 96 }, stroke: { color: "bronzeDeep", width: 2 } });
708
- poly(k, face, [[95, 32], [100, 12], [106, 32]], "oxide", { name: "Crest" });
709
- drift(k, k.named(face, "Visor")[0], "opacity", 0.25, 0.8);
710
- readout(k, cmd, commander.n, "WARDEN HESPER ASHGROVE", "Unit 30", "parchment", 240, 56, { w: 310, name: "Commander name" });
711
- label(k, cmd, "Warden of the Heartwood", "Small 16", "brass", 240, 150, { w: 310, name: "Commander rank" });
712
- const orders = box(k, cmd, 30, 250, 520, 250, { name: "Orders", gap: 8 });
713
- for (const t of ["The Hollow Choir has raised a spire east of the river.", "Scout the fog ring by ring until it stands in sight.", "Mine the seams, feed the boilers, grow the army.", "Then strike, and bring the Canker Spire down."]) k.text(orders, t, { style: "Body 22", color: "parchment", name: "Order line" });
714
- const obj = box(k, cmd, 30, 510, 520, 90, { name: "Objectives", gap: 4 });
715
- for (const t of ["Primary \xB7 topple the Canker Spire", "Secondary \xB7 chart all four fog rings", "Optional \xB7 keep the Heartwood above 60"]) k.text(obj, t, { style: "Small 16", color: "dim", name: "Objective line" });
716
- const deploy = k.instance(briefing, "Brass button", { Label: "Deploy ENTER" }, { name: "Deploy", absolute: { x: 1570, y: 840 } });
717
- onAll(k, deploy, [...resetRun, toBattle]);
718
- onAll(k, briefing, [...resetRun, toBattle], { key: "Enter" });
719
- k.on(briefing, back(), { key: "Escape" });
720
- hintBar(briefing, "ENTER DEPLOY ESC BACK TO FACTIONS");
721
- k.cues(briefing, [
722
- { layer: "Objective marker", preset: "pop-in", at: 300, stagger: { delay: 220 } },
723
- { layer: "Order line", preset: "typewriter", at: 500, params: { duration: 520 }, stagger: { delay: 560 } },
724
- { layer: "Portrait", preset: "scale-in", at: 100 }
725
- ]);
726
- }
727
- {
728
- menuGround(load);
729
- label(k, load, "Load campaign", "Heading 60", "parchment", 120, 90, { name: "Screen title" });
730
- label(k, load, "Pick up the war where you left it.", "Body 22", "dim", 124, 166, { name: "Screen lead" });
731
- menu(k, load, [
732
- ...SAVES.map((s) => ({ label: s.name, hint: s.hint, actions: [...resetRun, set(ore.id, { value: s.ore }), set(fuel.id, { value: s.fuel }), set(scout.id, { value: s.scout }), set(trained.id, { value: s.trained }), set(sporelings.id, { value: s.trained }), set(supply.id, { value: 6 + s.trained * 2 }), toBattle] })),
733
- { label: "Back", actions: [back()] }
734
- ], { focus: loadFocus, x: 100, y: 280, width: 1300, pitch: 100, style: "Menu 38", color: "parchment", plate: [k.gradient({ from: "brass", to: "brass", angle: 0, fromOpacity: 0.42, toOpacity: 0 })], marker: { color: "brass" }, hintStyle: "Hint 18", escape: [back()], radius: 4 });
735
- hintBar(load, "\u2191 \u2193 SELECT ENTER LOAD ESC BACK");
736
- k.cues(load, [{ layer: "Menu item", preset: "slide-in", at: 0, params: { direction: "left" }, stagger: { delay: 70 } }]);
737
- }
738
- {
739
- menuGround(settings);
740
- label(k, settings, "Settings", "Heading 60", "parchment", 120, 80, { name: "Screen title" });
741
- const col = box(k, settings, 120, 190, 1100, 720, { name: "Settings list" });
742
- const rows = 9;
743
- focusColumn(k, settings, { focus: setFocus, count: rows, x: 100, y: 186, w: 1140, pitch: 80, plate: [k.gradient({ from: "brass", to: "brass", angle: 0, fromOpacity: 0.3, toOpacity: 0.04 })], guard: `${rebind.n} == ""`, escape: [back()] });
744
- const common = { labelStyle: "Label 24", ink: "parchment" };
745
- const sl = { ...common, valueStyle: "Value 24", track: "bronzeDeep", fill: "verdigris", knob: "brass" };
746
- const rowsAt = (i) => ({ x: 0, y: i * 80, width: 1100, focus: { n: setFocus.n, index: i } });
747
- const r0 = slider(k, col, { ...sl, ...rowsAt(0), label: "Master volume", variable: volume, suffix: "%" });
748
- const r1 = slider(k, col, { ...sl, ...rowsAt(1), label: "Music", variable: music, suffix: "%" });
749
- const r2 = slider(k, col, { ...sl, ...rowsAt(2), label: "Scroll speed", variable: scroll, min: 1, max: 10, step: 1 });
750
- const r3 = slider(k, col, { ...sl, ...rowsAt(3), label: "UI scale", variable: uiScale, min: 80, max: 120, step: 5, suffix: "%" });
751
- const r4 = toggle(k, col, { ...common, ...rowsAt(4), label: "Unit health bars", variable: hpBars });
752
- const r5 = toggle(k, col, { ...common, ...rowsAt(5), label: "Minimap alert pings", variable: pings });
753
- const kb = { ...common, capStyle: "Cap 20", cap: "panelHi", onCap: "brass", listening: "oxide", rebind };
754
- const r6 = keybind(k, col, { ...kb, ...rowsAt(6), action: "Build depot", slot: "build", variable: keyBuild });
755
- const r7 = keybind(k, col, { ...kb, ...rowsAt(7), action: "Attack (strike)", slot: "attack", variable: keyAttack });
756
- const r8 = keybind(k, col, { ...kb, ...rowsAt(8), action: "Stop (hold)", slot: "stop", variable: keyStop });
757
- [r0, r1, r2, r3, r4, r5, r6, r7, r8].forEach((r, i) => focusRow(k, r, setFocus, i));
758
- rebindListener(k, settings, rebind, [{ slot: "build", variable: keyBuild }, { slot: "attack", variable: keyAttack }, { slot: "stop", variable: keyStop }]);
759
- const pv = plate(settings, 1320, 190, 480, 560, { name: "Preview" });
760
- label(k, pv, "UI scale preview", "Small 16", "brass", 32, 28, { name: "Preview title" });
761
- const btn = box(k, pv, 152, 90, 176, 88, { name: "Preview button", fill: "panelHi", radius: 6, stroke: { color: "bronze", width: 2, align: "INSIDE" } });
762
- poly(k, btn, [[20, 64], [40, 24], [60, 64]], "moss", { name: "Preview icon" });
763
- label(k, btn, "Train", "Cmd 17", "parchment", 74, 18, { name: "Preview name" });
764
- label(k, btn, "50 ore", "Cost 16", "brass", 74, 52, { name: "Preview cost" });
765
- k.bindExpression(btn, "scaleX", `${uiScale.n} / 100`);
766
- k.bindExpression(btn, "scaleY", `${uiScale.n} / 100`);
767
- label(k, pv, "Camera step", "Small 16", "brass", 32, 250, { name: "Step title" });
768
- const lane = box(k, pv, 32, 300, 416, 20, { name: "Step lane", fill: "bronzeDeep", radius: 10, clip: true });
769
- const stepFill = k.rect(lane, 416, 20, [k.gradient({ from: "verdigrisDeep", to: "verdigris", angle: 0 })], { name: "Step fill", radius: 10, absolute: { x: 0, y: 0 } });
770
- k.bindExpression(stepFill, "width", `${scroll.n} / 10 * 416`);
771
- readout(k, pv, `round(${scroll.n} * 40) + " px per press"`, "200 px per press", "Value 24", "parchment", 32, 336, { w: 416, name: "Step value" });
772
- label(k, pv, "The battle map pans by this much with each arrow key.", "Body 22", "dim", 32, 390, { w: 416, name: "Step note" });
773
- const b = k.instance(settings, "Brass button", { Label: "Back ESC" }, { name: "Back", absolute: { x: 1620, y: 880 } });
774
- k.on(b, back());
775
- hintBar(settings, "\u2191 \u2193 ROW LEFT RIGHT ADJUST ENTER TOGGLE / REBIND ESC BACK");
776
- }
777
- {
778
- menuGround(credits);
779
- k.rect(credits, W, H, k.tint("void", 0.6), { name: "Wash", absolute: { x: 0, y: 0 } });
780
- const roll = box(k, credits, 460, 50, 1e3, 980, { name: "Credits roll", gap: 18, align: "CENTER" });
781
- k.text(roll, "Credits", { style: "Heading 60", color: "parchment", align: "CENTER", name: "Roll title" });
782
- for (const [role, name] of CREDITS) {
783
- const g = k.stack(roll, { gap: 2, align: "CENTER", name: "Credit" });
784
- k.text(g, role, { style: "Credit role 18", color: "brass", align: "CENTER", name: "Role" });
785
- k.text(g, name, { style: "Credit name 34", color: "parchment", align: "CENTER", name: "Name" });
786
- }
787
- k.text(roll, "Forged and grown by {{brand.studio}}", { style: "Credit role 18", color: "dim", align: "CENTER", name: "Sign-off" });
788
- keys(k, roll, "translateY", [{ t: 0, v: 1080, ease: { kind: "linear" } }, { t: 11800, v: -1100 }]);
789
- k.link(credits, main, "DISSOLVE", { key: "*", duration: 350 });
790
- k.link(credits, main, "DISSOLVE", { duration: 350 });
791
- }
792
- const K = (key) => `upper($key) == ${key}`;
793
- const trainCost = `(${tier.n} == 1 ? 4 : 2)`;
794
- const hitSpire = (dmg) => [
795
- set(coreHp.id, { expression: `max(0, ${coreHp.n} - (${dmg}))`, glide: 420 }),
796
- set(coreTrail.id, { expression: coreHp.n, glide: 1300, easing: "EASE_IN_OUT" }),
797
- set(camX.id, { value: camFor(CORE).x, glide: 800, easing: "EASE_IN_OUT" }),
798
- set(camY.id, { value: camFor(CORE).y, glide: 800, easing: "EASE_IN_OUT" }),
799
- when([{ if: `${coreHp.n} <= 0`, then: [go(victory, "ZOOM_THROUGH", { duration: 700 })] }])
800
- ];
801
- const act = set(actions.id, { expression: `${actions.n} + 1` });
802
- const COMMANDS = [
803
- {
804
- name: "Build",
805
- key: keyBuild.n,
806
- cost: '"100 ORE"',
807
- afford: `${ore.n} >= 100`,
808
- can: `${depots.n} < 4`,
809
- cd: "Medium",
810
- run: [set(ore.id, { expression: `${ore.n} - 100`, glide: 500 }), set(depots.id, { expression: `${depots.n} + 1` }), set(cap.id, { expression: `${cap.n} + 8`, glide: 500 }), act],
811
- icon: (p) => {
812
- poly(k, p, [[4, 20], [20, 4], [36, 20], [36, 38], [4, 38]], "brass", { name: "Icon" });
813
- k.rect(p, 10, 14, "void", { name: "Icon door", absolute: { x: 15, y: 24 } });
814
- }
815
- },
816
- {
817
- name: "Train",
818
- key: '"T"',
819
- cost: `${tier.n} == 1 ? "120+30F" : "50 ORE"`,
820
- afford: `(${tier.n} == 1 ? ${ore.n} >= 120 && ${fuel.n} >= 30 : ${ore.n} >= 50)`,
821
- can: `${supply.n} + ${trainCost} <= ${cap.n}`,
822
- cd: "Short",
823
- run: [when([
824
- { if: `${tier.n} == 1`, then: [set(ore.id, { expression: `${ore.n} - 120`, glide: 500 }), set(fuel.id, { expression: `${fuel.n} - 30`, glide: 500 }), set(supply.id, { expression: `${supply.n} + 4`, glide: 400 }), set(thornbacks.id, { expression: `${thornbacks.n} + 1` })] },
825
- { then: [set(ore.id, { expression: `${ore.n} - 50`, glide: 500 }), set(supply.id, { expression: `${supply.n} + 2`, glide: 400 }), set(sporelings.id, { expression: `${sporelings.n} + 1` })] }
826
- ]), set(trained.id, { expression: `${trained.n} + 1` }), act],
827
- icon: (p) => {
828
- poly(k, p, [[20, 2], [38, 36], [2, 36]], "moss", { name: "Icon" });
829
- k.rect(p, 14, 4, "void", { name: "Icon bar", absolute: { x: 13, y: 24 } });
830
- k.rect(p, 4, 14, "void", { name: "Icon bar", absolute: { x: 18, y: 19 } });
831
- }
832
- },
833
- {
834
- name: "Strike",
835
- key: keyAttack.n,
836
- cost: '"20 FUEL"',
837
- afford: `${fuel.n} >= 20`,
838
- can: `${scout.n} >= 4 && ${coreHp.n} > 0`,
839
- cd: "Medium",
840
- run: [set(fuel.id, { expression: `${fuel.n} - 20`, glide: 400 }), act, ...hitSpire(`14 + 3 * min(${trained.n}, 6) + 18 * ${tier.n}`)],
841
- icon: (p) => {
842
- poly(k, p, [[2, 38], [26, 14], [22, 4], [38, 2], [36, 18], [26, 14], [8, 38]], "oxide", { name: "Icon" });
843
- }
844
- },
845
- {
846
- name: "Hold",
847
- key: keyStop.n,
848
- cost: '"BRACE"',
849
- afford: "true",
850
- can: `${braced.n} == 0`,
851
- cd: "Long",
852
- run: [set(braced.id, { value: 1 }), act],
853
- icon: (p) => {
854
- poly(k, p, Array.from({ length: 8 }, (_, j) => polar(20, 20, 19, j / 8 * TAU + Math.PI / 8)), "oxideDeep", { name: "Icon" });
855
- k.rect(p, 20, 6, "parchment", { name: "Icon bar", absolute: { x: 10, y: 17 } });
856
- }
857
- },
858
- {
859
- name: "Gather",
860
- key: '"G"',
861
- cost: '"+" + ' + yieldV.n + ' + " ORE"',
862
- afford: "true",
863
- can: "true",
864
- cd: "Short",
865
- run: [set(ore.id, { expression: `${ore.n} + ${yieldV.n}`, glide: 700 }), set(fuel.id, { expression: `${fuel.n} + 20`, glide: 700 }), set(oreMined.id, { expression: `${oreMined.n} + ${yieldV.n}`, glide: 700 }), act],
866
- icon: (p) => {
867
- poly(k, p, [[20, 0], [34, 20], [20, 40], [6, 20]], "ore", { name: "Icon" });
868
- poly(k, p, [[20, 0], [34, 20], [20, 16]], "oreLight", { name: "Icon glint" });
869
- }
870
- },
871
- {
872
- name: "Scout",
873
- key: '"S"',
874
- cost: '"15 FUEL"',
875
- afford: `${fuel.n} >= 15`,
876
- can: `${scout.n} < 4`,
877
- cd: "Medium",
878
- run: [set(fuel.id, { expression: `${fuel.n} - 15`, glide: 400 }), set(scout.id, { expression: `${scout.n} + 1`, glide: 1e3, easing: "EASE_IN_OUT" }), act],
879
- icon: (p) => {
880
- poly(k, p, [[0, 20], [20, 6], [40, 20], [20, 34]], "verdigris", { name: "Icon" });
881
- k.ellipse(p, 14, "void", { name: "Icon pupil", absolute: { x: 13, y: 13 } });
882
- }
883
- },
884
- {
885
- name: "Research",
886
- key: '"R"',
887
- cost: '"TECH"',
888
- afford: "true",
889
- can: "true",
890
- run: [],
891
- icon: (p) => {
892
- const g = poly(k, p, gearPts(20, 20, 19, 8), "brassDim", { name: "Icon" });
893
- spin(k, g, 20);
894
- k.ellipse(p, 12, "void", { name: "Icon hub", absolute: { x: 14, y: 14 } });
895
- }
896
- },
897
- {
898
- name: "Rootquake",
899
- key: '"Q"',
900
- cost: '"60 FUEL"',
901
- afford: `${fuel.n} >= 60`,
902
- can: `${tier.n} == 1 && ${scout.n} >= 4 && ${coreHp.n} > 0`,
903
- cd: "Long",
904
- run: [set(fuel.id, { expression: `${fuel.n} - 60`, glide: 400 }), act, ...hitSpire("45")],
905
- icon: (p) => {
906
- poly(k, p, [[4, 38], [14, 22], [10, 14], [22, 2], [20, 14], [30, 18], [18, 30], [22, 38]], "root", { name: "Icon" });
907
- poly(k, p, [[14, 22], [10, 14], [22, 2], [20, 14]], "verdigris", { name: "Icon glint" });
908
- }
909
- },
910
- {
911
- name: "Repair",
912
- key: '"E"',
913
- cost: '"75 ORE"',
914
- afford: `${ore.n} >= 75`,
915
- can: `${baseHp.n} < ${baseMax.n}`,
916
- cd: "Medium",
917
- run: [set(ore.id, { expression: `${ore.n} - 75`, glide: 500 }), set(baseHp.id, { expression: `min(${baseMax.n}, ${baseHp.n} + 20)`, glide: 700 }), set(baseTrail.id, { expression: baseHp.n, glide: 700 }), act],
918
- icon: (p) => {
919
- k.rect(p, 12, 36, "verdigris", { name: "Icon", absolute: { x: 14, y: 2 } });
920
- k.rect(p, 36, 12, "verdigris", { name: "Icon bar", absolute: { x: 2, y: 14 } });
921
- }
922
- }
923
- ];
924
- const ok = (c) => `${K(c.key)} && ${c.afford} && ${c.can}`;
925
- {
926
- const view = box(k, hud, 0, 76, VIEW.w, VIEW.h, { name: "Map view", clip: true, fill: "soil" });
927
- const world = box(k, view, 0, 0, WORLD.w, WORLD.h, { name: "World", fill: "soil" });
928
- k.bindExpression(world, "translateX", `0 - ${camX.n}`);
929
- k.bindExpression(world, "translateY", `0 - ${camY.n}`);
930
- terrain(world, 1, true);
931
- const rr = rng(77);
932
- for (let i = 0; i < 8; i++) {
933
- const a = -Math.PI * 0.9 + i / 8 * Math.PI * 1.9 + rr() * 0.2;
934
- const pts = [BASE];
935
- for (let s = 1; s <= 5; s++) pts.push(polar(BASE[0], BASE[1], 60 + s * 55, a + (rr() - 0.5) * 0.5));
936
- const root = poly(k, world, pts, "root", { name: "Creeping root", stroke: 7 });
937
- k.bindExpression(root, "visible", `${trained.n} >= ${i + 1}`);
938
- poly(k, world, pts.slice(-2), "verdigris", { name: "Root tip", stroke: 3 });
939
- k.bindExpression(k.named(world, "Root tip").slice(-1)[0], "visible", `${trained.n} >= ${i + 1}`);
940
- }
941
- const heart = box(k, world, BASE[0] - 120, BASE[1] - 150, 240, 240, { name: "Heartwood" });
942
- poly(k, heart, Array.from({ length: 6 }, (_, j) => polar(120, 180, 96, j / 6 * TAU)), "bronzeDeep", { name: "Platform", effects: [glow(k, "verdigris", 24, 0.35)] });
943
- poly(k, heart, Array.from({ length: 6 }, (_, j) => polar(120, 176, 80, j / 6 * TAU)), "bronze", { name: "Platform deck" });
944
- poly(k, heart, [[104, 176], [110, 110], [100, 70], [140, 70], [130, 110], [136, 176]], "brassDim", { name: "Heart trunk" });
945
- for (const [x, y, z, c] of [[70, 20, 70, "verdigrisDeep"], [110, 6, 80, "verdigris"], [140, 30, 66, "mossDeep"], [90, 44, 60, "moss"]]) k.ellipse(heart, z, c, { name: "Heart crown", absolute: { x, y }, opacity: 0.92 });
946
- gear(heart, 120, 70, 30, 8, 30);
947
- for (let i = 0; i < 3; i++) {
948
- const puff = k.ellipse(heart, 22 + i * 6, "smoke", { name: "Stack smoke", absolute: { x: 176, y: 110 }, opacity: 0.4 });
949
- k.behave(puff, "translateY", [{ kind: "spin", rate: -30 }, { kind: "mod", period: 120, offset: -120 + i * 40 }]);
950
- drift(k, puff, "translateX", 8, 0.5, i);
951
- }
952
- k.rect(heart, 14, 40, "loam", { name: "Stack", absolute: { x: 180, y: 120 } });
953
- const DEPOTS = [[250, 900], [590, 910], [210, 640], [620, 620]];
954
- DEPOTS.forEach(([x, y], i) => {
955
- const d = box(k, world, x - 40, y - 34, 80, 68, { name: "Supply depot" });
956
- poly(k, d, [[0, 26], [40, 0], [80, 26], [80, 68], [0, 68]], "panelHi", { name: "Depot body" });
957
- poly(k, d, [[0, 26], [40, 0], [80, 26]], "brass", { name: "Depot roof", stroke: 4 });
958
- k.rect(d, 20, 24, "verdigris", { name: "Depot door", absolute: { x: 30, y: 44 } });
959
- k.bindExpression(d, "visible", `${depots.n} >= ${i + 1}`);
960
- });
961
- const unitShape = (parent, kind, x, y, name) => {
962
- if (kind === 0) {
963
- poly(k, parent, [[x, y - 14], [x + 13, y + 10], [x - 13, y + 10]], "moss", { name });
964
- poly(k, parent, [[x, y - 4], [x + 5, y + 5], [x - 5, y + 5]], "void", { name: `${name} eye` });
965
- }
966
- if (kind === 1) {
967
- poly(k, parent, Array.from({ length: 6 }, (_, j) => polar(x, y, 15, j / 6 * TAU)), "brass", { name });
968
- k.rect(parent, 16, 4, "void", { name: `${name} slot`, absolute: { x: x - 8, y: y - 2 } });
969
- }
970
- if (kind === 2) {
971
- poly(k, parent, gearPts(x, y, 14, 6), "verdigris", { name });
972
- k.ellipse(parent, 8, "void", { name: `${name} hub`, absolute: { x: x - 4, y: y - 4 } });
973
- }
974
- if (kind === 3) {
975
- poly(k, parent, Array.from({ length: 6 }, (_, j) => polar(x, y, 24, j / 6 * TAU + Math.PI / 6)), "verdigrisDeep", { name });
976
- poly(k, parent, [[x, y - 34], [x + 8, y - 20], [x - 8, y - 20]], "oxide", { name: `${name} spike` });
977
- poly(k, parent, [[x, y - 10], [x + 10, y + 8], [x - 10, y + 8]], "brass", { name: `${name} core` });
978
- }
979
- };
980
- SQUADS.forEach((s, i) => {
981
- const [cx, cy] = s.at;
982
- const g = box(k, world, cx - 110, cy - 80, 220, 160, { name: `Squad ${i + 1}` });
983
- const ring = poly(k, g, ellipsePts(110, 86, 100, 58), "brass", { name: "Selection ring", stroke: 3, closed: true, effects: [glow(k, "brass", 12, 0.7)] });
984
- k.bindExpression(ring, "visible", `${sel.n} == ${i + 1}`);
985
- drift(k, ring, "opacity", 0.25, 1.2);
986
- const slots = [[70, 70], [110, 60], [150, 70], [90, 100], [130, 100], [60, 120], [160, 120], [110, 130], [40, 90], [180, 90]];
987
- for (let u = 0; u < s.size; u++) unitShape(g, i, slots[u][0], slots[u][1], "Unit");
988
- if (i === 0) for (let u = 0; u < 6; u++) {
989
- const extra = box(k, g, slots[s.size + u][0] - 16, slots[s.size + u][1] - 16, 32, 32, { name: "Trained unit" });
990
- unitShape(extra, 0, 16, 16, "Unit");
991
- k.bindExpression(extra, "visible", `${sporelings.n} >= ${u + 1}`);
992
- }
993
- const hb = bar(k, g, { x: 60, y: 8, w: 100, h: 8, value: hp[i].n, max: "100", back: "bronzeDeep", fill: "moss", radius: 4, name: "Squad health" });
994
- k.bindExpression(hb, "visible", `${hpBars.n} == 1`);
995
- drift(k, g, "translateX", 6, 0.12 + i * 0.05, i);
996
- drift(k, g, "translateY", 4, 0.17 + i * 0.04, i * 2);
997
- });
998
- const thorn = box(k, world, 520, 480, 240, 160, { name: "Thornback line" });
999
- for (let u = 0; u < 4; u++) {
1000
- const w = box(k, thorn, 20 + u * 54, 40 + u % 2 * 40, 60, 70, { name: "Thornback" });
1001
- unitShape(w, 3, 30, 40, "Walker");
1002
- k.bindExpression(w, "visible", `${thornbacks.n} >= ${u + 1}`);
1003
- drift(k, w, "translateY", 3, 0.6, u);
1004
- }
1005
- const raiders = box(k, world, 1640, 400, 220, 140, { name: "Choir raiders" });
1006
- [[30, 40], [80, 20], [130, 50], [70, 90], [170, 80]].forEach(([x, y], i) => {
1007
- const r = poly(k, raiders, [[x, y - 12], [x + 14, y + 10], [x, y + 3], [x - 14, y + 10]], "enemy", { name: "Raider" });
1008
- drift(k, r, "translateX", 12, 0.3 + i * 0.07, i);
1009
- drift(k, r, "translateY", 8, 0.4 + i * 0.05, i * 2);
1010
- });
1011
- const spire = box(k, world, CORE[0] - 110, CORE[1] - 110, 220, 220, { name: "Canker spire" });
1012
- const aura = k.ellipse(spire, 220, [k.gradient({ from: "enemyGlow", to: "enemyGlow", kind: "RADIAL", fromOpacity: 0.5, toOpacity: 0 })], { name: "Spire aura", absolute: { x: 0, y: 0 } });
1013
- drift(k, aura, "opacity", 0.3, 0.8);
1014
- const spikes = poly(k, spire, gearPts(110, 110, 92, 12, 26), "oxideDeep", { name: "Spire thorns" });
1015
- spinAbout(spikes, 110, 110, -14);
1016
- poly(k, spire, Array.from({ length: 8 }, (_, j) => polar(110, 110, 62, j / 8 * TAU + Math.PI / 8)), "enemy", { name: "Spire body", effects: [glow(k, "enemy", 20, 0.6)] });
1017
- poly(k, spire, Array.from({ length: 8 }, (_, j) => polar(110, 110, 40, j / 8 * TAU + Math.PI / 8)), "oxideDeep", { name: "Spire inner" });
1018
- const eye = k.ellipse(spire, 34, "enemyGlow", { name: "Spire heart", absolute: { x: 93, y: 93 } });
1019
- drift(k, eye, "scaleX", 0.18, 1.4);
1020
- drift(k, eye, "scaleY", 0.18, 1.4);
1021
- const crackA = poly(k, spire, [[70, 60], [96, 92], [88, 118], [110, 140]], "void", { name: "Spire crack", stroke: 4 });
1022
- const crackB = poly(k, spire, [[150, 70], [124, 104], [140, 130], [126, 160]], "void", { name: "Spire crack", stroke: 4 });
1023
- k.bindExpression(crackA, "visible", `${coreHp.n} < 80`);
1024
- k.bindExpression(crackB, "visible", `${coreHp.n} < 40`);
1025
- const spireHit = k.instance(spire, "Spire hit", {}, { name: "Spire hit", absolute: { x: 0, y: 0 } });
1026
- const sb = bar(k, world, { x: CORE[0] - 80, y: CORE[1] - 140, w: 160, h: 10, value: coreHp.n, max: coreMax.n, back: "bronzeDeep", fill: "enemy", chip: { expression: coreTrail.n, color: "oreLight" }, radius: 5, name: "Spire health" });
1027
- k.bindExpression(sb, "visible", `${hpBars.n} == 1`);
1028
- FOG_R.slice(0, -1).forEach((r0, i) => {
1029
- const r1 = FOG_R[i + 1];
1030
- const ring = sector(k, world, BASE[0], BASE[1], r1, r0, 0, TAU, k.tint("fog", 0.9), { name: "Fog ring" });
1031
- k.bindExpression(ring, "opacity", `clamp(${i} + 1 - ${scout.n}, 0, 1)`);
1032
- k.bindExpression(ring, "scaleX", `1 + clamp(${scout.n} - ${i}, 0, 1) * 0.22`);
1033
- k.bindExpression(ring, "scaleY", `1 + clamp(${scout.n} - ${i}, 0, 1) * 0.22`);
1034
- const edge = arc(k, world, BASE[0], BASE[1], r0 + 6, 0, TAU, "mist", 14, { name: "Fog edge", opacity: 0.3 });
1035
- k.bindExpression(edge, "opacity", `clamp(${i} + 1 - ${scout.n}, 0, 1) * 0.3`);
1036
- k.bindExpression(edge, "scaleX", `1 + clamp(${scout.n} - ${i}, 0, 1) * 0.22`);
1037
- k.bindExpression(edge, "scaleY", `1 + clamp(${scout.n} - ${i}, 0, 1) * 0.22`);
1038
- for (let m = 0; m < 3; m++) {
1039
- const [mx, my] = polar(BASE[0], BASE[1], (r0 + Math.min(r1, r0 + 360)) / 2, -0.9 + m * 0.9 + i * 0.3);
1040
- const mist = k.ellipse(world, 220, "mist", { name: "Mist", absolute: { x: mx - 110, y: my - 110 }, opacity: 0.1 });
1041
- k.bindExpression(mist, "visible", `${scout.n} < ${i + 1}`);
1042
- drift(k, mist, "translateX", 40, 0.07 + m * 0.02, m + i);
1043
- }
1044
- });
1045
- const pulse = k.instance(world, "Scan pulse", {}, { name: "Scan pulse", absolute: { x: BASE[0] - 900, y: BASE[1] - 900 } });
1046
- SQUADS.forEach((s, i) => {
1047
- const hot = box(k, world, s.at[0] - 110, s.at[1] - 80, 220, 160, { name: `Select squad ${i + 1}` });
1048
- onAll(k, hot, selectSquad(i));
1049
- });
1050
- const flash = k.instance(hud, "Raid flash", {}, { name: "Raid flash", absolute: { x: 0, y: 0 } });
1051
- const top = plate(hud, 0, 0, W, 76, { name: "Top bar", rivets: false });
1052
- gear(top, 40, 38, 24, 8, 14);
1053
- label(k, top, "Op. Rusted Canopy", "HUD 16", "brass", 78, 14, { w: 270, name: "Operation" });
1054
- label(k, top, "Hollow Reach \xB7 dawn", "Small 16", "dim", 78, 40, { w: 270, name: "Operation place" });
1055
- const res = (x, name, v, rest, icon) => {
1056
- const g = box(k, top, x, 8, 220, 60, { name: `${name} counter` });
1057
- const ic = box(k, g, 0, 12, 36, 36, { name: `${name} icon` });
1058
- icon(ic);
1059
- readout(k, g, `round(${v.n})`, rest, "Res 30", "parchment", 48, 2, { w: 160, name: `${name} value` });
1060
- label(k, g, name, "Small 16", "dim", 48, 36, { name: `${name} label` });
1061
- return g;
1062
- };
1063
- res(380, "Ore", ore, "400", (p) => {
1064
- poly(k, p, [[18, 0], [32, 18], [18, 36], [4, 18]], "ore", { name: "Ore gem" });
1065
- poly(k, p, [[18, 0], [32, 18], [18, 14]], "oreLight", { name: "Ore facet" });
1066
- });
1067
- res(610, "Fuel", fuel, "200", (p) => {
1068
- poly(k, p, [[18, 0], [32, 22], [26, 34], [10, 34], [4, 22]], "brass", { name: "Fuel drop" });
1069
- k.ellipse(p, 10, "onBrass", { name: "Fuel shine", absolute: { x: 12, y: 18 } });
1070
- });
1071
- const sup = box(k, top, 840, 8, 300, 60, { name: "Supply counter" });
1072
- const crate = box(k, sup, 0, 12, 36, 36, { name: "Supply icon" });
1073
- k.rect(crate, 32, 28, "bronze", { name: "Crate", absolute: { x: 2, y: 6 }, stroke: { color: "brass", width: 2 } });
1074
- poly(k, crate, [[2, 6], [34, 34]], "brass", { name: "Crate brace", stroke: 2 });
1075
- readout(k, sup, `round(${supply.n}) + " / " + round(${cap.n})`, "6 / 20", "Res 30", "parchment", 48, 2, { w: 180, name: "Supply value" });
1076
- label(k, sup, "Supply", "Small 16", "dim", 48, 36, { name: "Supply label" });
1077
- const supBar = bar(k, sup, { x: 150, y: 42, w: 140, h: 10, value: supply.n, max: cap.n, back: "bronzeDeep", fill: "verdigris", radius: 5, name: "Supply bar" });
1078
- const supWarn = k.rect(supBar, 140, 10, "oxide", { name: "Supply bar warning", radius: 5, absolute: { x: 0, y: 0 } });
1079
- k.bindExpression(supWarn, "width", `clamp(${supply.n} / ${cap.n}, 0, 1) * 140`);
1080
- k.bindExpression(supWarn, "visible", `${supply.n} >= ${cap.n} - 4`);
1081
- drift(k, supWarn, "opacity", 0.35, 2.2);
1082
- const hw = box(k, top, 1160, 8, 440, 60, { name: "Heartwood integrity" });
1083
- label(k, hw, "Heartwood", "HUD 16", "verdigris", 0, 4, { name: "Heartwood label" });
1084
- bar(k, hw, { x: 0, y: 30, w: 340, h: 20, value: baseHp.n, max: baseMax.n, back: "bronzeDeep", fill: [k.gradient({ from: "verdigrisDeep", to: "verdigris", angle: 0 })], chip: { expression: baseTrail.n, color: "oxideText" }, radius: 4, name: "Base bar" });
1085
- readout(k, hw, `round(${baseHp.n}) + "%"`, "100%", "Value 24", "parchment", 350, 24, { w: 86, align: "RIGHT", name: "Base value" });
1086
- gear(top, 1700, 38, 26, 9, -18, "brassDim");
1087
- gear(top, 1746, 22, 16, 7, 29, "brassDim");
1088
- const objective = plate(hud, 20, 92, 460, 124, { name: "Objective" });
1089
- label(k, objective, "Objective", "Small 16", "brass", 22, 16, { name: "Objective label" });
1090
- label(k, objective, "Topple the Canker Spire", "Label 24", "parchment", 22, 40, { w: 420, name: "Objective text" });
1091
- bar(k, objective, { x: 22, y: 78, w: 300, h: 12, value: coreHp.n, max: coreMax.n, back: "bronzeDeep", fill: "enemy", chip: { expression: coreTrail.n, color: "oreLight" }, radius: 6, name: "Spire bar" });
1092
- readout(k, objective, `round(${coreHp.n}) + " HP"`, "120 HP", "Small 16", "oxideText", 330, 74, { w: 110, align: "RIGHT", name: "Spire value" });
1093
- readout(k, objective, `"FOG " + round(${scout.n}) + " / 4 \xB7 " + (${scout.n} >= 4 ? "SPIRE IN SIGHT" : "SPIRE UNSEEN")`, "FOG 0 / 4 \xB7 SPIRE UNSEEN", "Small 16", "dim", 22, 98, { w: 420, name: "Scout status" });
1094
- const warn = box(k, hud, 1480, 96, 420, 44, { name: "Supply warning", fill: "oxide", radius: 6, align: "CENTER", justify: "CENTER" });
1095
- k.text(warn, "Supply near cap \u2014 build (B)", { style: "HUD 16", color: "onOxide", autoWidth: true, name: "Supply warning words" });
1096
- k.bindExpression(warn, "visible", `${supply.n} >= ${cap.n} - 4`);
1097
- drift(k, warn, "opacity", 0.25, 1.6);
1098
- const failing = box(k, hud, 660, 300, 600, 56, { name: "Heartwood failing", fill: "oxideDeep", radius: 6, align: "CENTER", justify: "CENTER", stroke: { color: "oxideText", width: 2, align: "INSIDE" } });
1099
- k.text(failing, "Heartwood failing \u2014 repair (E)", { style: "Alert 28", color: "parchment", autoWidth: true, name: "Failing words" });
1100
- k.bindExpression(failing, "visible", `${baseHp.n} < 40 && ${baseHp.n} > 0`);
1101
- drift(k, failing, "opacity", 0.3, 2);
1102
- const legend = box(k, hud, 20, 722, 1200, 32, { name: "Controls", fill: k.tint("void", 0.86), radius: 4 });
1103
- readout(k, legend, `${keyBuild.n} + " BUILD \xB7 T TRAIN \xB7 " + ${keyAttack.n} + " STRIKE \xB7 " + ${keyStop.n} + " HOLD \xB7 G GATHER \xB7 S SCOUT \xB7 R TECH \xB7 A RAID \xB7 1 2 3 SQUADS"`, "B BUILD \xB7 T TRAIN \xB7 F STRIKE \xB7 H HOLD \xB7 G GATHER \xB7 S SCOUT \xB7 R TECH \xB7 A RAID \xB7 1 2 3 SQUADS", "Small 16", "parchment", 12, 5, { w: 1176, name: "Legend" });
1104
- const con = plate(hud, 0, 760, W, 320, { name: "Console", rivets: false });
1105
- void con;
1106
- const mm = plate(hud, 14, 772, 336, 296, { name: "Minimap panel" });
1107
- label(k, mm, "Cartograph", "Small 16", "brass", 20, 14, { name: "Minimap label" });
1108
- const MS = 1 / 8;
1109
- const mini = box(k, mm, 18, 42, 300, 150, { name: "Minimap", fill: "soil", clip: true, stroke: { color: "brassDim", width: 2, align: "INSIDE" } });
1110
- terrain(mini, MS, false);
1111
- k.ellipse(mini, 12, "verdigris", { name: "Minimap base", absolute: { x: BASE[0] * MS - 6, y: BASE[1] * MS - 6 } });
1112
- SQUADS.forEach((s, i) => {
1113
- const d = k.ellipse(mini, 7, "moss", { name: "Minimap squad", absolute: { x: s.at[0] * MS - 3.5, y: s.at[1] * MS - 3.5 } });
1114
- k.bindExpression(d, "opacity", `${sel.n} == ${i + 1} ? 1 : 0.7`);
1115
- });
1116
- const mcore = k.ellipse(mini, 12, "enemy", { name: "Minimap spire", absolute: { x: CORE[0] * MS - 6, y: CORE[1] * MS - 6 } });
1117
- drift(k, mcore, "opacity", 0.3, 1.4);
1118
- FOG_R.slice(0, -1).forEach((r0, i) => {
1119
- const ring = sector(k, mini, BASE[0] * MS, BASE[1] * MS, FOG_R[i + 1] * MS, r0 * MS, 0, TAU, k.tint("fog", 0.9), { name: "Minimap fog" });
1120
- k.bindExpression(ring, "opacity", `clamp(${i} + 1 - ${scout.n}, 0, 1)`);
1121
- });
1122
- const camRect = k.rect(mini, VIEW.w * MS, VIEW.h * MS, [], { name: "Camera frame", stroke: { color: "parchment", width: 2 }, absolute: { x: 0, y: 0 } });
1123
- k.bindExpression(camRect, "x", `${camX.n} * ${MS}`);
1124
- k.bindExpression(camRect, "y", `${camY.n} * ${MS}`);
1125
- const pingBase = k.instance(mini, "Ping", {}, { name: "Base ping", absolute: { x: BASE[0] * MS - 36, y: BASE[1] * MS - 36 } });
1126
- const pingCore = k.instance(mini, "Ping", {}, { name: "Spire ping", absolute: { x: CORE[0] * MS - 36, y: CORE[1] * MS - 36 } });
1127
- for (const p of [pingBase, pingCore]) k.bindExpression(p, "visible", `${pings.n} == 1`);
1128
- readout(k, mm, `"RAIDS WEATHERED " + ${raids.n}`, "RAIDS WEATHERED 0", "Small 16", "dim", 20, 206, { w: 300, name: "Raid log" });
1129
- label(k, mm, "Space \xB7 jump home", "Small 16", "dim", 20, 234, { w: 300, name: "Minimap hint" });
1130
- const selp = plate(hud, 362, 772, 640, 296, { name: "Selection panel" });
1131
- k.patch(selp, { anchorX: 0.5, anchorY: 1 });
1132
- k.bindExpression(selp, "scaleX", `${uiScale.n} / 100`);
1133
- k.bindExpression(selp, "scaleY", `${uiScale.n} / 100`);
1134
- const por = box(k, selp, 22, 56, 170, 170, { name: "Unit portrait", fill: "panelHi", radius: 85, clip: true, stroke: { color: "brass", width: 3, align: "INSIDE" } });
1135
- SQUADS.forEach((_, i) => {
1136
- const g = box(k, por, 0, 0, 170, 170, { name: `Portrait ${i + 1}` });
1137
- k.bindExpression(g, "visible", `${sel.n} == ${i + 1}`);
1138
- if (i === 0) {
1139
- poly(k, g, [[85, 20], [150, 140], [20, 140]], "moss", { name: "Portrait art" });
1140
- poly(k, g, [[85, 70], [110, 116], [60, 116]], "void", { name: "Portrait eye" });
1141
- poly(k, g, [[85, 84], [98, 108], [72, 108]], "verdigris", { name: "Portrait glint" });
1142
- }
1143
- if (i === 1) {
1144
- poly(k, g, Array.from({ length: 6 }, (_2, j) => polar(85, 88, 62, j / 6 * TAU)), "brass", { name: "Portrait art" });
1145
- k.rect(g, 70, 16, "void", { name: "Portrait slot", absolute: { x: 50, y: 80 } });
1146
- k.rect(g, 50, 6, "oxide", { name: "Portrait glint", absolute: { x: 60, y: 85 } });
1147
- }
1148
- if (i === 2) {
1149
- const gg = poly(k, g, gearPts(85, 85, 64, 10), "verdigris", { name: "Portrait art" });
1150
- spinAbout(gg, 85, 85, 12);
1151
- k.ellipse(g, 40, "void", { name: "Portrait hub", absolute: { x: 65, y: 65 } });
1152
- }
1153
- });
1154
- SQUADS.forEach((s, i) => {
1155
- const tab = box(k, selp, 212 + i * 138, 16, 128, 32, { name: `Group tab ${i + 1}`, fill: "panelHi", radius: 4, stroke: { color: "bronzeDeep", width: 1 } });
1156
- const lit = k.rect(tab, 128, 32, "brass", { name: "Tab lit", radius: 4, absolute: { x: 0, y: 0 } });
1157
- k.bindExpression(lit, "opacity", `${sel.n} == ${i + 1} ? 0.3 : 0`);
1158
- label(k, tab, `${s.key} ${s.tab}`, "HUD 16", "parchment", 12, 6, { name: "Tab words" });
1159
- onAll(k, tab, selectSquad(i));
1160
- });
1161
- const pick = (f) => SQUADS.map((s, i) => `${sel.n} == ${i + 1} ? "${f(s)}"`).join(" : ") + ' : ""';
1162
- readout(k, selp, pick((s) => s.name.toUpperCase()), SQUADS[0].name.toUpperCase(), "Unit 30", "parchment", 212, 60, { w: 340, name: "Unit name" });
1163
- readout(k, selp, `"\xD7" + (${sel.n} == 1 ? 4 + ${sporelings.n} : ${sel.n} == 2 ? 3 : 2)`, "\xD74", "Value 24", "brass", 552, 62, { w: 70, align: "RIGHT", name: "Unit count" });
1164
- readout(k, selp, pick((s) => s.role), SQUADS[0].role, "Small 16", "dim", 212, 94, { w: 410, name: "Unit role" });
1165
- const hpExpr = `${sel.n} == 1 ? ${hp[0].n} : ${sel.n} == 2 ? ${hp[1].n} : ${hp[2].n}`;
1166
- bar(k, selp, { x: 212, y: 126, w: 330, h: 16, value: hpExpr, max: "100", back: "bronzeDeep", fill: [k.gradient({ from: "mossDeep", to: "moss", angle: 0 })], radius: 4, name: "Unit health bar" });
1167
- readout(k, selp, `round(${hpExpr}) + " HP"`, "100 HP", "Small 16", "parchment", 548, 122, { w: 76, align: "RIGHT", name: "Unit health" });
1168
- [["Atk", atk], ["Arm", arm], ["Spd", spd]].forEach(([name, v], i) => {
1169
- label(k, selp, name, "Small 16", "brass", 212 + i * 140, 158, { name: "Stat name" });
1170
- readout(k, selp, `round(${v.n})`, String(SQUADS[0][name === "Atk" ? "atk" : name === "Arm" ? "arm" : "spd"]), "Value 24", "parchment", 262 + i * 140, 152, { w: 76, name: "Stat value" });
1171
- });
1172
- readout(k, selp, pick((s) => s.quip.replace(/"/g, "'")), SQUADS[0].quip.replace(/"/g, "'"), "Quote 22", "dim", 212, 192, { w: 410, name: "Unit quip" });
1173
- const mid = plate(hud, 1014, 772, 326, 296, { name: "Foundry" });
1174
- const gauge = (x, name, valueExpr, i) => {
1175
- const g = box(k, mid, x, 128, 120, 120, { name: `${name} gauge` });
1176
- k.ellipse(g, 120, "brass", { name: "Gauge rim", absolute: { x: 0, y: 0 } });
1177
- k.ellipse(g, 104, "panel", { name: "Gauge face", absolute: { x: 8, y: 8 } });
1178
- arc(k, g, 60, 60, 42, -Math.PI / 2 + Math.PI * 2 / 3 * 0.55, -Math.PI / 2 + Math.PI * 2 / 3, "oxide", 6, { name: "Red zone" });
1179
- for (let t = 0; t <= 8; t++) {
1180
- const a = -Math.PI / 2 - Math.PI * 2 / 3 + t / 8 * (Math.PI * 4) / 3;
1181
- poly(k, g, [polar(60, 60, 44, a), polar(60, 60, 50, a)], "dim", { name: "Gauge tick", stroke: 2 });
1182
- }
1183
- const set1 = box(k, g, 0, 0, 120, 120, { name: "Needle angle" });
1184
- k.bindExpression(set1, "rotation", valueExpr);
1185
- const wob = box(k, set1, 0, 0, 120, 120, { name: "Needle wobble" });
1186
- k.behave(wob, "rotation", [{ kind: "noise", amp: 4, freq: 1.6, seed: 11 + i }]);
1187
- const needle = k.instance(wob, "Gauge needle", {}, { name: "Gauge needle", absolute: { x: 0, y: 0 } });
1188
- label(k, g, name, "Small 16", "dim", 0, 72, { w: 120, align: "CENTER", name: "Gauge name" });
1189
- return needle;
1190
- };
1191
- const needleA = gauge(22, "Boiler", `120 - clamp(${fuel.n} / 300, 0, 1) * 240`, 0);
1192
- const needleB = gauge(184, "Sap", `120 - clamp(${baseHp.n} / 100, 0, 1) * 240`, 1);
1193
- label(k, mid, "Foundry queue", "Small 16", "brass", 22, 16, { name: "Queue label" });
1194
- readout(k, mid, `pad(${trained.n}, 2)`, "00", "Counter 48", "parchment", 22, 40, { w: 90, name: "Units trained" });
1195
- readout(k, mid, `${tier.n} == 1 ? "THORNBACKS" : "SPORELINGS"`, "SPORELINGS", "HUD 16", "dim", 120, 48, { w: 190, name: "Queue unit" });
1196
- label(k, mid, "Trained", "Small 16", "dim", 120, 70, { name: "Trained label" });
1197
- const qback = box(k, mid, 20, 102, 288, 14, { name: "Queue track", fill: "bronzeDeep", radius: 7 });
1198
- const queue = k.instance(qback, "Queue bar", {}, { name: "Queue bar", absolute: { x: 0, y: 0 } });
1199
- const ready = k.instance(mid, "Unit ready", {}, { name: "Unit ready", absolute: { x: 200, y: 8 } });
1200
- const card = plate(hud, 1352, 772, 560, 296, { name: "Command card" });
1201
- k.patch(card, { anchorX: 1, anchorY: 1 });
1202
- k.bindExpression(card, "scaleX", `${uiScale.n} / 100`);
1203
- k.bindExpression(card, "scaleY", `${uiScale.n} / 100`);
1204
- const cdInstances = [];
1205
- COMMANDS.forEach((c, i) => {
1206
- const bx = 10 + i % 3 * 184, by = 10 + Math.floor(i / 3) * 94;
1207
- const b = box(k, card, bx, by, 176, 88, { name: `${c.name} button`, fill: "panelHi", radius: 6, stroke: { color: "bronze", width: 2, align: "INSIDE" } });
1208
- const lit = k.rect(b, 176, 88, [k.gradient({ from: "brass", to: "brass", angle: 90, fromOpacity: 0.34, toOpacity: 0.06 })], { name: "Hover glow", radius: 6, absolute: { x: 0, y: 0 } });
1209
- k.bindExpression(lit, "opacity", `${cardHover.n} == ${i} ? 1 : 0`);
1210
- const face = box(k, b, 0, 0, 176, 88, { name: "Command face" });
1211
- k.bindExpression(face, "opacity", `${c.afford} ? 1 : 0.35`);
1212
- const icon = box(k, face, 12, 24, 40, 40, { name: "Command icon" });
1213
- c.icon(icon);
1214
- label(k, face, c.name, "Cmd 17", "parchment", 62, 14, { w: 108, name: "Command name" });
1215
- readout(k, face, c.cost, c.name === "Build" ? "100 ORE" : c.name === "Train" ? "50 ORE" : c.name === "Strike" ? "20 FUEL" : c.name === "Hold" ? "BRACE" : c.name === "Gather" ? "+50 ORE" : c.name === "Scout" ? "15 FUEL" : c.name === "Research" ? "TECH" : c.name === "Rootquake" ? "60 FUEL" : "75 ORE", "Cost 16", "brass", 62, 54, { w: 76, name: "Command cost" });
1216
- const capBox = box(k, face, 140, 50, 28, 28, { name: "Hotkey cap", fill: "void", radius: 4, stroke: { color: "brassDim", width: 1 }, align: "CENTER", justify: "CENTER" });
1217
- const bound = [keyBuild, keyAttack, keyStop].find((v) => v.n === c.key);
1218
- const kt = k.text(capBox, bound ? String(k.doc.variables?.[bound.id]?.valuesByMode["Mode 1"]) : c.key.replace(/"/g, ""), { style: "Small 16", color: "parchment", autoWidth: true, name: "Hotkey" });
1219
- if (bound) k.bindExpression(kt, "characters", `len(${bound.n}) > 2 ? "\xB7\xB7" : ${bound.n}`);
1220
- if (c.name === "Rootquake") {
1221
- k.bindExpression(face, "visible", `${tier.n} == 1`);
1222
- const lock = box(k, b, 0, 0, 176, 88, { name: "Locked face" });
1223
- k.bindExpression(lock, "visible", `${tier.n} != 1`);
1224
- k.rect(lock, 22, 18, "brassDim", { name: "Padlock", radius: 3, absolute: { x: 20, y: 38 } });
1225
- arc(k, lock, 31, 38, 8, Math.PI, TAU, "brassDim", 3, { name: "Shackle" });
1226
- label(k, lock, "Locked", "Cmd 17", "dim", 62, 14, { w: 108, name: "Locked name" });
1227
- label(k, lock, "Needs tech", "Cost 16", "dim", 62, 54, { w: 108, name: "Locked hint" });
1228
- }
1229
- if (c.cd) {
1230
- const cd = k.instance(b, "Cooldown", {}, { name: `Cmd ${c.name}`, absolute: { x: 0, y: 0 } });
1231
- k.on(cd, set(cardHover.id, { value: i }), { trigger: "MOUSE_ENTER" });
1232
- const at = (to, id) => ({ ...k.changeAction(to, 0), targetId: id });
1233
- const echo = c.name === "Train" ? [at("Queue bar/Training", queue), at("Unit ready/Show", ready)] : c.name === "Strike" || c.name === "Rootquake" ? [at("Spire hit/Hit", spireHit), at("Ping/Ping", pingCore)] : c.name === "Scout" ? [at("Scan pulse/Pulse", pulse)] : [];
1234
- k.on(cd, when([{ if: `${c.afford} && ${c.can}`, then: [k.changeAction(`Cooldown/${c.cd}`, 0), ...echo, ...c.run] }]));
1235
- cdInstances.push({ c, id: cd });
1236
- } else {
1237
- const hot = box(k, b, 0, 0, 176, 88, { name: `Cmd ${c.name}` });
1238
- k.on(hot, set(cardHover.id, { value: i }), { trigger: "MOUSE_ENTER" });
1239
- k.on(hot, overlay(tech));
1240
- }
1241
- });
1242
- const toast = k.instance(hud, "Order toast", {}, { name: "Order toast", absolute: { x: 610, y: 640 } });
1243
- const alert = k.instance(hud, "Raid alert", {}, { name: "Raid alert", absolute: { x: 550, y: 96 } });
1244
- const raid = `upper($key) == "A" && ${baseHp.n} > 0`;
1245
- for (const { c, id } of cdInstances) k.on(id, when([{ if: ok(c), then: [k.changeAction(`Cooldown/${c.cd}`, 0)] }]), { key: "*" });
1246
- const trainOk = ok(COMMANDS[1]);
1247
- k.on(queue, when([{ if: trainOk, then: [k.changeAction("Queue bar/Training", 0)] }]), { key: "*" });
1248
- k.on(ready, when([{ if: trainOk, then: [k.changeAction("Unit ready/Show", 0)] }]), { key: "*" });
1249
- const strike = COMMANDS[2], quake = COMMANDS[7];
1250
- k.on(spireHit, when([{ if: `(${ok(strike)}) || (${ok(quake)})`, then: [k.changeAction("Spire hit/Hit", 0)] }]), { key: "*" });
1251
- k.on(pingCore, when([{ if: `(${ok(strike)}) || (${ok(quake)})`, then: [k.changeAction("Ping/Ping", 0)] }]), { key: "*" });
1252
- k.on(pulse, when([{ if: ok(COMMANDS[5]), then: [k.changeAction("Scan pulse/Pulse", 0)] }]), { key: "*" });
1253
- k.on(pingBase, when([{ if: raid, then: [k.changeAction("Ping/Ping", 0)] }]), { key: "*" });
1254
- for (const n of [needleA, needleB]) k.on(n, when([{ if: raid, then: [k.changeAction("Gauge needle/Spike", 0)] }]), { key: "*" });
1255
- k.on(alert, when([{ if: raid, then: [k.changeAction("Raid alert/Show", 0)] }]), { key: "*" });
1256
- k.on(flash, when([{ if: raid, then: [k.changeAction("Raid flash/Hit", 0)] }]), { key: "*" });
1257
- const withCd = COMMANDS.filter((c) => c.cd);
1258
- k.on(toast, when([
1259
- { if: `(${K(strike.key)} && ${strike.afford} && ${scout.n} < 4) || (${K(quake.key)} && ${tier.n} == 1 && ${quake.afford} && ${scout.n} < 4)`, then: [k.changeAction("Order toast/Blind", 0)] },
1260
- { if: `${K('"T"')} && ${COMMANDS[1].afford} && !(${COMMANDS[1].can})`, then: [k.changeAction("Order toast/Capped", 0)] },
1261
- { if: withCd.map((c) => `(${K(c.key)} && !(${c.afford}))`).join(" || "), then: [k.changeAction("Order toast/Poor", 0)] }
1262
- ]), { key: "*" });
1263
- const logic = box(k, hud, 0, 0, 1, 1, { name: "Game logic" });
1264
- const step = `${scroll.n} * 40`;
1265
- const maxX = WORLD.w - VIEW.w, maxY = WORLD.h - VIEW.h;
1266
- k.on(logic, when([
1267
- ...withCd.map((c) => ({ if: ok(c), then: c.run })),
1268
- { if: raid, then: [
1269
- set(baseHp.id, { expression: `max(0, ${baseHp.n} - (${braced.n} == 1 ? 4 : ${dmgTaken.n}))`, glide: 320 }),
1270
- set(baseTrail.id, { expression: baseHp.n, glide: 1300, easing: "EASE_IN_OUT" }),
1271
- set(hp[0].id, { expression: `max(12, ${hp[0].n} - 7)`, glide: 320 }),
1272
- set(braced.id, { value: 0 }),
1273
- set(raids.id, { expression: `${raids.n} + 1` }),
1274
- when([{ if: `${baseHp.n} <= 0`, then: [go(defeat, "DISSOLVE", { duration: 900 })] }])
1275
- ] },
1276
- ...SQUADS.map((s, i) => ({ if: `$key == "${s.key}"`, then: selectSquad(i) })),
1277
- { if: '$key == "ArrowLeft"', then: [set(camX.id, { expression: `clamp(${camX.n} - ${step}, 0, ${maxX})`, glide: 360, easing: "EASE_IN_OUT" })] },
1278
- { if: '$key == "ArrowRight"', then: [set(camX.id, { expression: `clamp(${camX.n} + ${step}, 0, ${maxX})`, glide: 360, easing: "EASE_IN_OUT" })] },
1279
- { if: '$key == "ArrowUp"', then: [set(camY.id, { expression: `clamp(${camY.n} - ${step}, 0, ${maxY})`, glide: 360, easing: "EASE_IN_OUT" })] },
1280
- { if: '$key == "ArrowDown"', then: [set(camY.id, { expression: `clamp(${camY.n} + ${step}, 0, ${maxY})`, glide: 360, easing: "EASE_IN_OUT" })] },
1281
- { if: '$key == " "', then: [set(camX.id, { value: home.x, glide: 700, easing: "EASE_IN_OUT" }), set(camY.id, { value: home.y, glide: 700, easing: "EASE_IN_OUT" })] },
1282
- { if: 'upper($key) == "R"', then: [overlay(tech)] }
1283
- ]), { key: "*" });
1284
- k.on(logic, overlay(pause), { key: "Escape" });
1285
- k.cues(hud, [
1286
- { layer: "Top bar", preset: "drop-in", at: 0 },
1287
- { layer: "Objective", preset: "slide-in", at: 200, params: { direction: "left" } }
1288
- ]);
1289
- }
1290
- {
1291
- label(k, tech, "Foundry of roots", "Heading 60", "parchment", 0, 60, { w: W, align: "CENTER", name: "Screen title" });
1292
- readout(k, tech, `"ORE " + round(${ore.n}) + " \xB7 FUEL " + round(${fuel.n})`, "ORE 400 \xB7 FUEL 200", "Value 24", "brass", 0, 140, { w: W, align: "CENTER", name: "Tech purse" });
1293
- const pipe = (x, y, w, h, v) => {
1294
- k.rect(tech, w, h, "bronzeDeep", { name: "Pipe", radius: 8, absolute: { x, y }, stroke: { color: "bronze", width: 2 } });
1295
- const sap = k.rect(tech, w, h, "verdigris", { name: "Sap", radius: 8, absolute: { x, y }, effects: [glow(k, "verdigris", 16)] });
1296
- if (w > h) k.bindExpression(sap, "width", `max(1, ${v.n} * ${w})`);
1297
- else k.bindExpression(sap, "height", `max(1, ${v.n} * ${h})`);
1298
- k.bindExpression(sap, "opacity", `min(1, ${v.n} * 3)`);
1299
- };
1300
- pipe(432, 740, 16, 180, plating);
1301
- pipe(432, 904, 348, 16, plating);
1302
- pipe(1472, 740, 16, 180, taproots);
1303
- pipe(1140, 904, 348, 16, taproots);
1304
- pipe(432, 330, 16, 170, tier);
1305
- pipe(432, 330, 328, 16, tier);
1306
- const root = plate(tech, 780, 850, 360, 120, { name: "Heartwood node" });
1307
- gear(root, 60, 60, 32, 8, 20);
1308
- label(k, root, "Heartwood", "Card 30", "parchment", 110, 26, { w: 230, name: "Root name" });
1309
- label(k, root, "Your roots", "Small 16", "dim", 110, 66, { name: "Root hint" });
1310
- const NODES = [
1311
- {
1312
- name: "Verdigris plating",
1313
- effect: "Raids chip 10 from the Heartwood, not 15.",
1314
- x: 240,
1315
- y: 500,
1316
- v: plating,
1317
- cond: `${plating.n} == 0 && ${ore.n} >= 150`,
1318
- status: `${plating.n} >= 1 ? "RESEARCHED" : ${ore.n} >= 150 ? "150 ORE \xB7 ENTER" : "NEEDS 150 ORE"`,
1319
- rest: "150 ORE \xB7 ENTER",
1320
- run: [set(ore.id, { expression: `${ore.n} - 150`, glide: 500 }), set(plating.id, { value: 1, glide: 900, easing: "EASE_IN_OUT" }), set(dmgTaken.id, { value: 10 })]
1321
- },
1322
- {
1323
- name: "Thornback walker",
1324
- effect: "A heavy walker. Strikes bite harder; unlocks Rootquake.",
1325
- x: 760,
1326
- y: 200,
1327
- v: tier,
1328
- cond: `${tier.n} == 0 && ${plating.n} == 1 && ${ore.n} >= 200 && ${fuel.n} >= 80`,
1329
- status: `${tier.n} >= 1 ? "RESEARCHED" : ${plating.n} < 1 ? "NEEDS PLATING FIRST" : ${ore.n} >= 200 && ${fuel.n} >= 80 ? "200 ORE + 80 FUEL" : "NEEDS 200 ORE + 80 FUEL"`,
1330
- rest: "NEEDS PLATING FIRST",
1331
- run: [set(ore.id, { expression: `${ore.n} - 200`, glide: 500 }), set(fuel.id, { expression: `${fuel.n} - 80`, glide: 500 }), set(tier.id, { value: 1, glide: 900, easing: "EASE_IN_OUT" })]
1332
- },
1333
- {
1334
- name: "Deep taproots",
1335
- effect: "Harvesters haul 80 ore a trip instead of 50.",
1336
- x: 1280,
1337
- y: 500,
1338
- v: taproots,
1339
- cond: `${taproots.n} == 0 && ${fuel.n} >= 60`,
1340
- status: `${taproots.n} >= 1 ? "RESEARCHED" : ${fuel.n} >= 60 ? "60 FUEL \xB7 ENTER" : "NEEDS 60 FUEL"`,
1341
- rest: "60 FUEL \xB7 ENTER",
1342
- run: [set(fuel.id, { expression: `${fuel.n} - 60`, glide: 500 }), set(taproots.id, { value: 1, glide: 900, easing: "EASE_IN_OUT" }), set(yieldV.id, { value: 80 })]
1343
- }
1344
- ];
1345
- NODES.forEach((nd, i) => {
1346
- const near = `max(0, 1 - abs(${techFocus.n} - ${i}))`;
1347
- const n = plate(tech, nd.x, nd.y, 400, 260, { name: "Tech node" });
1348
- const hl = k.rect(n, 400, 96, [k.gradient({ from: "brass", to: "brass", angle: 90, fromOpacity: 0.3, toOpacity: 0 })], { name: "Node focus", radius: 6, absolute: { x: 0, y: 0 } });
1349
- k.bindExpression(hl, "opacity", near);
1350
- const done2 = k.rect(n, 400, 260, [], { name: "Node unlocked", radius: 6, stroke: { color: "verdigris", width: 4 }, absolute: { x: 0, y: 0 }, effects: [glow(k, "verdigris", 26, 0.8)] });
1351
- k.bindExpression(done2, "opacity", nd.v.n);
1352
- const ic = box(k, n, 24, 24, 60, 60, { name: "Node icon" });
1353
- if (i === 0) {
1354
- poly(k, ic, Array.from({ length: 6 }, (_, j) => polar(30, 30, 28, j / 6 * TAU + Math.PI / 6)), "verdigris", { name: "Node art" });
1355
- poly(k, ic, Array.from({ length: 6 }, (_, j) => polar(30, 30, 14, j / 6 * TAU + Math.PI / 6)), "verdigrisDeep", { name: "Node art inner" });
1356
- }
1357
- if (i === 1) {
1358
- poly(k, ic, Array.from({ length: 6 }, (_, j) => polar(30, 34, 22, j / 6 * TAU + Math.PI / 6)), "verdigrisDeep", { name: "Node art" });
1359
- poly(k, ic, [[30, 0], [38, 16], [22, 16]], "oxide", { name: "Node art spike" });
1360
- poly(k, ic, [[30, 24], [40, 42], [20, 42]], "brass", { name: "Node art inner" });
1361
- }
1362
- if (i === 2) {
1363
- for (const [a, b] of [[[30, 4], [30, 56]], [[30, 30], [8, 56]], [[30, 30], [52, 56]], [[30, 44], [18, 58]]]) poly(k, ic, [a, b], "root", { name: "Node art", stroke: 6 });
1364
- }
1365
- label(k, n, nd.name, "Card 30", "parchment", 24, 100, { w: 352, name: "Node name" });
1366
- label(k, n, nd.effect, "Body 22", "dim", 24, 146, { w: 352, name: "Node effect" });
1367
- readout(k, n, nd.status, nd.rest, "Small 16", "brass", 24, 222, { w: 352, name: "Node status" });
1368
- k.on(n, set(techFocus.id, { value: i, glide: 140 }), { trigger: "MOUSE_ENTER" });
1369
- k.on(n, when([{ if: nd.cond, then: [...nd.run, set(actions.id, { expression: `${actions.n} + 1` })] }]));
1370
- });
1371
- const done = k.instance(tech, "Brass button", { Label: "Back to battle ESC" }, { name: "Back to battle", absolute: { x: 1560, y: 980 } });
1372
- k.on(done, close());
1373
- for (const key of ["ArrowRight", "d"]) k.on(tech, set(techFocus.id, { expression: `(${techFocus.n} + 1) % 3`, glide: 140 }), { key });
1374
- for (const key of ["ArrowLeft", "a"]) k.on(tech, set(techFocus.id, { expression: `(${techFocus.n} + 2) % 3`, glide: 140 }), { key });
1375
- k.on(tech, when(NODES.map((nd, i) => ({ if: `${techFocus.n} == ${i} && ${nd.cond}`, then: [...nd.run, set(actions.id, { expression: `${actions.n} + 1` })] }))), { key: "Enter" });
1376
- k.on(tech, close(), { key: "Escape" });
1377
- label(k, tech, "LEFT RIGHT CHOOSE ENTER RESEARCH ESC BACK", "Hint 18", "dim", 120, 1e3, { name: "Tech hints" });
1378
- k.cues(tech, [{ layer: "Tech node", preset: "pop-in", at: 0, stagger: { delay: 90 } }]);
1379
- }
1380
- {
1381
- label(k, pause, "Paused", "Heading 60", "parchment", 0, 240, { w: W, align: "CENTER", name: "Screen title" });
1382
- menu(k, pause, [
1383
- { label: "Resume", actions: [close()] },
1384
- { label: "Settings", actions: [go(settings, "DISSOLVE", { duration: 300 })] },
1385
- { label: "Surrender", hint: "The roots will be severed", actions: [go(defeat, "DISSOLVE", { duration: 600 })] },
1386
- { label: "Quit to menu", actions: [go(main, "DISSOLVE", { duration: 400 })] }
1387
- ], { focus: pauseFocus, x: 560, y: 360, width: 800, pitch: 88, style: "Menu 38", color: "parchment", plate: k.tint("panelHi", 0.95), marker: { color: "brass" }, hintStyle: "Hint 18", escape: [close()], radius: 4 });
1388
- readout(k, pause, `"UNITS " + ${trained.n} + " \xB7 ORE MINED " + round(${oreMined.n}) + " \xB7 SPIRE " + round(${coreHp.n}) + " HP"`, "UNITS 0 \xB7 ORE MINED 0 \xB7 SPIRE 120 HP", "Hint 18", "dim", 0, 740, { w: W, align: "CENTER", name: "Run stats" });
1389
- }
1390
- {
1391
- k.rect(defeat, W, H, [k.gradient({ from: "oxideDeep", to: "void", kind: "RADIAL", fromOpacity: 0.35, toOpacity: 0, handles: [{ x: 0.5, y: 1 }, { x: 1.2, y: 1 }, { x: 0.5, y: 1.8 }] })], { name: "Embers", absolute: { x: 0, y: 0 } });
1392
- const felled = box(k, defeat, 160, 640, 1600, 440, { name: "Felled tree" });
1393
- poly(k, felled, [[-160, 340], [0, 330], [300, 300], [800, 320], [1200, 290], [1600, 320], [1760, 310], [1760, 440], [-160, 440]], "loam", { name: "Ground" });
1394
- for (const r of [[[340, 330], [230, 380], [120, 440]], [[360, 330], [340, 400], [300, 440]], [[400, 330], [470, 390], [520, 440]]]) {
1395
- poly(k, felled, r, "root", { name: "Severed root", stroke: 14 });
1396
- const [a, b] = r.slice(-2);
1397
- const mx = (a[0] + b[0]) / 2, my = (a[1] + b[1]) / 2;
1398
- poly(k, felled, [[mx - 14, my - 6], [mx + 14, my + 6]], "oxide", { name: "Cut", stroke: 5, effects: [glow(k, "oxide", 10)] });
1399
- }
1400
- poly(k, felled, [[300, 340], [310, 250], [340, 262], [360, 236], [390, 258], [420, 244], [440, 340]], "bronze", { name: "Stump" });
1401
- poly(k, felled, [[310, 250], [340, 262], [360, 236], [390, 258], [420, 244]], "oxideText", { name: "Stump cut", stroke: 4 });
1402
- poly(k, felled, [[470, 300], [1180, 250], [1200, 290], [480, 336]], "bronzeDeep", { name: "Fallen trunk" });
1403
- for (const x of [600, 760, 920, 1080]) poly(k, felled, [[x, 300 - (x - 470) * 0.07], [x + 6, 330 - (x - 470) * 0.07]], "brassDim", { name: "Trunk band", stroke: 5 });
1404
- for (const [x, y, z, c] of [[1160, 200, 120, "loam"], [1260, 230, 100, "ridgeDark"], [1220, 150, 90, "loam"], [1330, 190, 80, "ridgeDark"], [1110, 250, 70, "root"]]) k.ellipse(felled, z, c, { name: "Dead crown", absolute: { x, y }, opacity: 0.95 });
1405
- gear(felled, 1280, 300, 44, 9, 0, "brassDim", "void");
1406
- gear(felled, 1420, 330, 26, 7, 0, "bronze", "void");
1407
- for (let i = 0; i < 14; i++) {
1408
- const ash = k.ellipse(defeat, 5 + i % 3 * 2, "smoke", { name: "Ash", absolute: { x: 80 + i * 130, y: -20 }, opacity: 0.5 });
1409
- k.behave(ash, "translateY", [{ kind: "spin", rate: 40 + i % 4 * 10 }, { kind: "mod", period: 1100, offset: -(i * 90) % 1100 }]);
1410
- drift(k, ash, "translateX", 20, 0.2 + i % 3 * 0.1, i);
1411
- }
1412
- const lock = k.stack(defeat, { name: "Defeat lockup", width: 1400, gap: 18, align: "CENTER", absolute: { x: 260, y: 170 } });
1413
- k.text(lock, "Defeat", { style: "Small 16", color: "oxideText", align: "CENTER", name: "Defeat kicker" });
1414
- k.text(lock, "The roots are severed", { style: "Epitaph 104", color: "parchment", align: "CENTER", name: "Defeat title" });
1415
- const line = readout(k, defeat, `${commander.n} + " held the Heartwood through " + ${raids.n} + " raids with " + ${trained.n} + " units trained."`, "WARDEN HESPER ASHGROVE held the Heartwood through 0 raids with 0 units trained.", "Body 22", "dim", 260, 420, { w: 1400, align: "CENTER", name: "Defeat line" });
1416
- void line;
1417
- menu(k, defeat, [
1418
- { label: "Replant and retry", actions: [...resetRun, toBattle] },
1419
- { label: "Main menu", actions: [go(main, "DISSOLVE", { duration: 400 })] }
1420
- ], { focus: endFocus, x: 560, y: 500, width: 800, pitch: 88, style: "Menu 38", color: "parchment", plate: [k.gradient({ from: "oxide", to: "oxide", angle: 0, fromOpacity: 0.4, toOpacity: 0 })], marker: { color: "oxideText" }, radius: 4 });
1421
- k.cues(defeat, [{ layer: "Defeat lockup", preset: "blur-in", at: 0 }, { layer: "Felled tree", preset: "rise-in", at: 300 }]);
1422
- }
1423
- {
1424
- menuGround(victory);
1425
- k.rect(victory, W, H, [k.gradient({ from: "verdigris", to: "void", kind: "RADIAL", fromOpacity: 0.22, toOpacity: 0, handles: [{ x: 0.5, y: 0.2 }, { x: 1.1, y: 0.2 }, { x: 0.5, y: 0.9 }] })], { name: "Bloom glow", absolute: { x: 0, y: 0 } });
1426
- label(k, victory, "Mission complete", "Small 16", "verdigris", 0, 80, { w: W, align: "CENTER", name: "Victory kicker" });
1427
- label(k, victory, "The Canker Spire has fallen", "Heading 60", "parchment", 0, 110, { w: W, align: "CENTER", name: "Screen title" });
1428
- const tally = plate(victory, 260, 230, 1400, 250, { name: "Tally" });
1429
- const secs = `(240 + ${actions.n} * 23)`;
1430
- const STATS = [
1431
- ["Units trained", `pad(${trained.n}, 2)`, "00"],
1432
- ["Ore mined", `round(${oreMined.n})`, "0"],
1433
- ["Mission time", `pad(floor(${secs} / 60), 2) + ":" + pad(${secs} % 60, 2)`, "04:00"],
1434
- ["Orders / min", `min(240, 36 + ${actions.n} * 11)`, "36"]
1435
- ];
1436
- STATS.forEach(([name, e, rest], i) => {
1437
- label(k, tally, name, "Small 16", "brass", 60 + i * 335, 60, { name: "Tally name" });
1438
- readout(k, tally, e, rest, "Stat 64", "parchment", 60 + i * 335, 100, { w: 300, name: "Tally value" });
1439
- });
1440
- const MEDALS = [
1441
- ["Iron bark", "Heartwood above 60", `${baseHp.n} >= 60`, "verdigris"],
1442
- ["Tallow baron", "200 ore mined", `${oreMined.n} >= 200`, "brass"],
1443
- ["Quick roots", "120 orders / min", `36 + ${actions.n} * 11 >= 120`, "oxide"]
1444
- ];
1445
- MEDALS.forEach(([name, rule, cond, col], i) => {
1446
- const m = plate(victory, 360 + i * 420, 530, 360, 300, { name: "Medal" });
1447
- const em = box(k, m, 120, 26, 120, 120, { name: "Medal emblem" });
1448
- k.ellipse(em, 120, col, { name: "Medal disc", absolute: { x: 0, y: 0 }, effects: [glow(k, col, 24, 0.6)] });
1449
- k.ellipse(em, 92, "panel", { name: "Medal face", absolute: { x: 14, y: 14 } });
1450
- const st = k.star(em, 64, col, { name: "Medal star", absolute: { x: 28, y: 26 } });
1451
- spinAbout(st, 60, 58, 14);
1452
- k.bindExpression(em, "opacity", `${cond} ? 1 : 0.25`);
1453
- label(k, m, name, "Card 30", "parchment", 20, 164, { w: 320, align: "CENTER", name: "Medal name" });
1454
- label(k, m, rule, "Small 16", "dim", 20, 206, { w: 320, align: "CENTER", name: "Medal rule" });
1455
- readout(k, m, `${cond} ? "EARNED" : "NOT THIS TIME"`, "EARNED", "HUD 16", "brass", 20, 240, { w: 320, align: "CENTER", name: "Medal state" });
1456
- });
1457
- const cont = k.instance(victory, "Brass button", { Label: "Return to the war table ENTER" }, { name: "Continue", absolute: { x: 760, y: 880 } });
1458
- k.on(cont, go(main, "DISSOLVE", { duration: 400 }));
1459
- k.link(victory, main, "DISSOLVE", { key: "Enter", duration: 400 });
1460
- k.cues(victory, [{ layer: "Tally", preset: "rise-in", at: 0 }, { layer: "Medal", preset: "pop-in", at: 500, stagger: { delay: 220 } }]);
1461
- }
1462
- void arcPoints;
1463
- return k.finish();
1464
- }
1465
- });
1466
-
1467
- export {
1468
- ironroot_rts_default
1469
- };