@melt-js/comps-vue3 2026.11.6 → 2026.11.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +223 -57
- package/hel_dist/bilibili/autumn-1/5f18bd9e0b4fff738eaf6ebdc3c5c1477b5ea592.png +0 -0
- package/hel_dist/bilibili/autumn-1/62a1c4b6-da1f-437a-90f4-1427f058d2e9.mp4 +0 -0
- package/hel_dist/bilibili/autumn-1/839af78322450ea0eb6dbb1d19889d831862804f.png +0 -0
- package/hel_dist/bilibili/autumn-1/8bcf476e-6c97-472b-b1e8-d19dd7170edf.mp4 +0 -0
- package/hel_dist/bilibili/autumn-1/logo.png +0 -0
- package/hel_dist/bilibili/autumn-2/a10dc06f92ff2cf438244d0ed13dba27be88d73f.webp +0 -0
- package/hel_dist/bilibili/autumn-2/logo.png +0 -0
- package/hel_dist/bilibili/autumn-3/0479542df6a7c5deddf60fbbf63b6e1f1f770c08.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/0876da4f3ec73ff180fc87b46b6d1bcf4d52030a.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/0f79aa287163a3271c6cb22a73a6dc0fc210ab7c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/32aa867cd3e8fba371a2be90d7d844a68c67f7a5.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/4adc24834b64143296d77bc81ccd952a59301b08.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/530a4624fe408881101885c6f24c72e8c2a14fb6.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/57102cf6e2e2845f2773581928c1d0f0c1985a3e.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/639de634f90688e86b7bd32924cfb029a316cde4.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/852c3bd9d9608ceccb7265de8cea7cf3a4b039eb.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/8a6899088fc9dcd37a0039884fb77f69dc3b1c30.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/9556f65510f73c44aa6756ee9b8cf7fc2562b906.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/96704a6197153e1717a910e6c227937f34743cee.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/b6f4359409b4550fb38594d8c227902db29c720a.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/bf896616dec163402ec79a81f936af67932eca2f.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/c6263485a0218c887848c47a0fe4f515006e1567.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/cd4fda9478b06a8d81cd04f69d7a2ad475d1db40.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/e33992d2d75647af38c50792c199fb9db006786c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-3/logo.png +0 -0
- package/hel_dist/bilibili/autumn-4/16dc88de1e536a9b11dbe4acec40d44acbf30e4d.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/1c4b40f96bac2479f7a67541171170f79429158c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/2422523efbc7d3486555c66a9a8f20c3e3f6fdb5.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/392e080a19e6618774a15c235ab0873180e4010d.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/454a3f4bd1f8bd23d89d8e3a676a826e144ab13a.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/459b9e641fc8be0466084ec0fff89e28ca2229ea.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/85d3ee641e1af27233ce0571bfdc650bb6bac668.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/8f976964bf99b64dcf844b698642caa01449623b.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/a1d3587a7230b68e78b724558697ae6a1739e1cc.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/a2f14a60908565b6a4b85caee82bd0457127f9f3.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/a89c6c61109d1f58b83bc76fa3cf939df82d2ff4.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/a9a0eb9ce2e611290e86961a61c3b0942de3515b.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/b51d0d75b1b27b669e456aa36bdf3b46f658a531.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/d29049442060427102881e002285ae50686052e2.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/d86630ee943035f95c0e318bc386764196ab08b6.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/d9ff91200e453584beb49626c2ddbd78e4dd60ed.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/e3a1d1ea8c4360518fa9bbef665795056ca1d50f.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/f3bbed911be68b540c12fb7cbe602ae71ec9a8c7.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-4/logo.png +0 -0
- package/hel_dist/bilibili/autumn-5/064a75156c568aa6a9982e2c983d2a30cb86ea94.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/0ebcccd16a9fe9bb551e213de4eaf3cd5a24c8ff.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/18e14b236c8c0478b9f126b53dc149718c8277d6.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/1b6718fe3996574889da7ef1b9c29a566fe963f4.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/20ccfde3e5606d223ab230a78234e4f9ac140371.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/21a613a7457891ed7daa559b03191df7bf551362.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/2c048730ce3449400cd657650f5f2e68e2fa5ef5.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/30ccbdfe561bcd18a7ee457bd151b55da7a3dd3c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/4367bada261c826302101afa18fe41e86f545099.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/4a66f79212d4c6182a8e10a1eb0424f3d7c79120.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/57f20e919517fc784f1e03900140274cfea2cb85.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/582b9609daf669327c460af63776f5f0c14b5c26.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/6683112849dadee65749c4f7f72b83c9a9f8f537.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/670d70b0351582e5b53855ddbf50600c03425062.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/7bb79a88a5c61724c7fd2ab009f462b744ba5b29.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/83b58af34fc683e529962449078a3ded7f1d2e80.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/93ab310ca3e2a24489aa1873865501adb3f81393.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/ab4fbaed481d880a618e52f97e7e1f6e5c8b7f7c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/b66a4ac5-5c0b-487e-86d2-f787b70a4ace.webm +0 -0
- package/hel_dist/bilibili/autumn-5/c31995a7a80e459e165ae4ef60e323e27f497420.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/d562864113a6e6cce54b41745132a974b4576c3c.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/f5fcc108b811577571e3f54d6d46df58a9f553ed.png@1c.webp +0 -0
- package/hel_dist/bilibili/autumn-5/logo.png +0 -0
- package/hel_dist/bilibili/spring-1/17a00335345ecb9f5439069ee2d069772a9cede3.png +0 -0
- package/hel_dist/bilibili/spring-1/3969636231e7668ec91985bb147c89a6b69021c7.png +0 -0
- package/hel_dist/bilibili/spring-1/45031fa60ea6084886e80ca9e906803f9a3221b1.png +0 -0
- package/hel_dist/bilibili/spring-1/4d5ddb371f6d710cf0222a5d0cef46ea3ed5901c.png +0 -0
- package/hel_dist/bilibili/spring-1/4d8514308bd6673b215cdb1aadbf12891d784672.png +0 -0
- package/hel_dist/bilibili/spring-1/65a860abda015ed247d48b1bcc5cbb9ce725d050.png +0 -0
- package/hel_dist/bilibili/spring-1/6a6e6e52a18a7731645aa1d93b1d74f2f628f77a.png +0 -0
- package/hel_dist/bilibili/spring-1/8d947f22c6a67b8a5d2fbe1424ca2a946802e729.png +0 -0
- package/hel_dist/bilibili/spring-1/963685e7d82d27ba5e8187680814a2d548b5adbe.png +0 -0
- package/hel_dist/bilibili/spring-1/9af4cdc3c81e01522fc4df82a5b7cfa8b03b6b5b.png +0 -0
- package/hel_dist/bilibili/spring-1/9b4f18f9f18c8dca17ba6c0b46a1dcedb649c82b.png +0 -0
- package/hel_dist/bilibili/spring-1/b24c872ae1ef34ebe794d1631a50b57fbdb0a482.png +0 -0
- package/hel_dist/bilibili/spring-1/c12c6ceaa5f78de17cd94bb0ad325339b2386ee8.png +0 -0
- package/hel_dist/bilibili/spring-1/c7a1dbf9bbc09c1f867b14a141c4e2f07c4b228d.png +0 -0
- package/hel_dist/bilibili/spring-1/d605a7076d5fe89d0d7e3d6219bffe4000033a09.png +0 -0
- package/hel_dist/bilibili/spring-1/logo.png +0 -0
- package/hel_dist/bilibili/spring-2/kPbkWcX74M.mp4 +0 -0
- package/hel_dist/bilibili/spring-2/logo.png +0 -0
- package/hel_dist/bilibili/spring-3/c3c807eb2f5bcc333a3bf3189634e3f9867c6a85.webp +0 -0
- package/hel_dist/bilibili/spring-3/logo.png +0 -0
- package/hel_dist/bilibili/spring-4/2e81e0644044fafd5e72de3e595d7db6f65122ef.png@3840w_360h_1c_90q.webp +0 -0
- package/hel_dist/bilibili/spring-4/logo.png +0 -0
- package/hel_dist/bilibili/spring-5/06336184ba84f89890f50e867012c05914219947.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/17a1bcfacfc51f000cad0611dca32020b18db6f5.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/2c32dd208cb8f317ac78e03c78da5cd04b9a1410.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/2dd4a5f8aee1829bcdae687052853b8947a5d2f6.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/4d37acea06841ace858f27cab3a5596d9fdd8354.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/5630bebd1068fa6c46eaea4ffa9b004f882d7d33.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/6d9f792b3458e0b6f8647f7ad3958b1c1438d50e.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/8cacfce7b1f44f707836fa4fb68444a9c7202d63.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/905fbc85df462f16c3fe0b83f0e5814696818a56.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/996a5656d3a31738f79b67d94ea0b654fba169ac.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/a0de269c-fb3b-42b6-8ea5-8be8fe8d95a1.webm +0 -0
- package/hel_dist/bilibili/spring-5/a7ead379e7a6653cd70f24e8556ce336702abb3a.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/ae0543610dd9b3d0903cec7a6982200691dce1b5.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/ba22577d90164e589f87f9073d56953ff3e30088.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/be5632d3f86228a81979b8a85ce9cf0d5df541e0.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/d4d4569741806055f36c4d9140bdd7069a50ec09.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/d5113ee4aaca71d7e7570a45b1e541efc0deca71.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/d6ef89533fed72dfde53009ac2aab66009ab545a.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/ddc58cd92df71ada0be9bad00b2139a34872ef94.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/e04d0fbaaf67bdb0de7c40dca04180a9c1defa0a.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/f0ba9b7f8d4ec1745a08cabdf3951ceb4aa266d1.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/f3945f0ed928e45fb58c8a1edb07358ec719c8df.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/f63cf9726b73c78ececc43ff16f3336fdfc76748.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/ff63f10698f5f0a9e9083d90c6f32de5269801d4.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-5/logo.png +0 -0
- package/hel_dist/bilibili/spring-6/2e5a5407987125451f4401e1f80da8aa6c9ec74e.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/2ec5703e20135d578a4d31a9d40dd9deb23c326e.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/3dd93e33d7e9bb6b74b7e2c577cb4a61cd7876bf.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/48d675bee7f2b20af495ddcfa2051d1e42eeb526.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/556c868c5b003f3f167cf1e63e6e3aa27b74bdc7.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/5598c26a3d090ba7cdf1d99de1e7d76561d56e78.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/598389b103a4c89592706b9a426c1dd5c9fbdb96.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/59a63bc51e049fd01d7e567b9759727888d0de43.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/5a97b3d3f84e4ce0e77988a8a0d5744a2a2fd8b9.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/5cbcbeb21c079264f78e63c411f09334126a11d3.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/679c3bb077504de3379100c688770d94d97778cf.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/96151dfbace0750a4a590e9fac92211ce7c28b82.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/add3317b33f371b4ce4391b5169dbd6455065ed4.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/b1b6ebe5d3def015132105fe7a8253eced9b563c.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/b94241f2-320a-47ac-9f14-e9b0c46385ce.webm +0 -0
- package/hel_dist/bilibili/spring-6/c9ef0b13e5ec27cc6e9fa1516e79a8ab8f5c5b38.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/e35035fb17abb07d80c1749988bc938c9a5919dc.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/f272c9c3125afec158fe4c4e0540a271cd75dfb4.png@1c.webp +0 -0
- package/hel_dist/bilibili/spring-6/logo.png +0 -0
- package/hel_dist/bilibili/summer-1/11dd110b-5b4b-4912-af6d-1c4906295a1d.webm +0 -0
- package/hel_dist/bilibili/summer-1/1c713de1-3bbf-42b4-9148-0427b567b741.webm +0 -0
- package/hel_dist/bilibili/summer-1/4c0b2c71-0990-47a5-b19f-40e478ff6923.webm +0 -0
- package/hel_dist/bilibili/summer-1/6ef8db87-259b-48fb-b930-0fd201780d9b.webm +0 -0
- package/hel_dist/bilibili/summer-1/9f75c700-2e13-45c7-b021-006928c80667.webm +0 -0
- package/hel_dist/bilibili/summer-1/b180aa43-9b33-476d-bca3-7db19583beff.webm +0 -0
- package/hel_dist/bilibili/summer-1/logo.png +0 -0
- package/hel_dist/bilibili/summer-2/background.png +0 -0
- package/hel_dist/bilibili/summer-2/cover.png +0 -0
- package/hel_dist/bilibili/summer-2/logo.png +0 -0
- package/hel_dist/bilibili/summer-3/fba0c9bac0fad743e9befa9305f197a919561580.png@3840w_360h_1c_90q.webp +0 -0
- package/hel_dist/bilibili/summer-3/logo.png +0 -0
- package/hel_dist/bilibili/summer-4/0b9e2b95931f266a853ba046b6c225e49511a428.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/109794fd095a7328501365454faae6c91bc914cb.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/1f7d26c7582e7b320cb21923175613c9d8077f56.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/4d444aa8fafe9dac2db3b847657938a24a2fa83d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/4d58f4c657906f900a37eb6a9dcdaab5d7c31ef6.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/502ef5bcff5ae1588acf6abaf8ec57115183b6a5.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/58a4287288d296ccb9235e49f330cc9f8ae3f6e8.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/5f2aa97bddf032a32420313465904560e96e791d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/640b9089660a21c30698edd35fd89146b28a25a2.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/6ea563b54bfaf1830ed95edd295e2521c14ecf38.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/79abfde6b4ac5d95fd4df0dcea96c3d14d55f64c.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/93b789dfa303f9458d31690c2f13a4fc719da2db.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/b4fcb84965fadf036875b8189910280b3edb182c.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/b772ae3b3ed3342b0cbf26b6f2e66a054b7af81b.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/b83df7a50dd88a9f4558e1773b48fe523705d333.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/dc63a982b67922e999d743d3772091a8b412671c.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-4/logo.png +0 -0
- package/hel_dist/bilibili/summer-5/0725acc8fac5c8164726240de477fbd0ce18e6dd.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/149e5beb3ef989ee01a28c0412ece9842c026e74.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/1a77fc745eb5b65b976506bc3a8ce1c8fe876991.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/24c57a58af481117640928798419341bc6fd32d3.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/339abbc0d089a1ddbe3265b238e750173ce56de4.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/4e7edb416c34eccc40f34d2b297524652685a9bb.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/78e8b2abe1bc5715719e847a4e3654e3d11bcbf7.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/7b96b0044345b5c2e3ddb8ea487daed8761c57f7.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/8198227e8abb7c75a94ddbc1209a9bf5ba067a68.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/9af5dad13028d419618e86399eb8fc009700d74c.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/9f86739c3b0ff5ddc99122aa506dee041aab4ec4.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/a679239d0399412dd75e4e0eb30702b0818ef26d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/a89d95306fab17a35b50a5f7451e2b27ba4d2a6e.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/af9d07a3e29858d742cf2f0dd22c70d5553641f3.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/ce1377aa701c7704b5f0984959512120ac57c586.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/dc29b8093f5d97a41d48ca24b4d7d00f78920d54.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-5/logo.png +0 -0
- package/hel_dist/bilibili/summer-6/0a3bf7a4c7c3b8b5b63aae6adf57c5fabeeb0cff.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/31c6df60-8e93-40bc-8f16-e144f90a3ff3.webm +0 -0
- package/hel_dist/bilibili/summer-6/3483ce9cad9fc3dd80f34cb164bcd5eeb1606332.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/39f5846ccf601e178afe37eef2e9759d38078d56.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/4d9b71139bc84c4ddd1b37a906115c4b0c54af87.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/6e9dd4d7f26b117773661aeed3a357641d519f2a.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/8512395c322494ef32b0fb40821e8e66fb291b53.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/9539f58accbf88eb810a45ff2cbefbf1c29840c3.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/988a546df1cdf5eeefa0a5c319bc6b4bfca7d42d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/9cc0c1c3b87ca0ea32b80c3b08611e794108348b.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/ada15ae5-b072-434b-ab94-f1d8a683b74e.webm +0 -0
- package/hel_dist/bilibili/summer-6/b5514fc043485ce31d0c91a398aeb288261256dc.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/cd873292b7b3ae5603b546e1ecdf05fecaa955f3.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/e737e375a9bf412f802feaec18ee52ad517b4db9.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/f3a02af183b808d236d0cc7997cbeb8958ef9bb0.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/f48b2d7535cae1ed97c7bb3c69d29e574cbe30c6.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-6/logo.png +0 -0
- package/hel_dist/bilibili/summer-7/09d0855b6b6d6965e8f02404777986237848c6c9.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/142a486b8dd500a626a60b68ad993af8dabc8b55.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/198efffbc58493300854c04ab0ea8d979a6f9223.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/27e411d92729604aa594858beb5130ed60aad76d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/286eb259a60a0eabfcde96d7ea92d239fe68b3fe.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/40878bbef514e2d4bf5d660fe1145c869567bec2.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/42485baddbca05d2c4c7710a0b76b74d303e06d7.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/4596b25b-a9e6-47a2-b80c-d9c70c04d8eb.webm +0 -0
- package/hel_dist/bilibili/summer-7/75ec2d45ce8c942a1f7379d4641171da4d90ab0d.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/782d55aeca6cc75f51d2d630005f514a61a0ddfa.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/7998ca9f0bc267375fb7b45f75626d96806f94d7.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/8ea0e95a8e5fc85ae227810925dba1ace1e9fcba.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/a43c6833d262301373234ffbd6934559d2ce7fb2.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/bb6266e1525a51f7920fc8881e47cadeee271b0c.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/c13ca9c6405c71bf864ed2bc421680cb437f45ef.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/cbf19f3682dfb02e62557d07fefaf241a80296a1.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/cd68251cde11936871237ca94360acb451bf7ed2.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/ce8c5e45230a6d3805baf60f5916f1cd441aac8e.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/d6c941cf2d5fc6c717173f7e3f166dbc444aa15b.png@1c.webp +0 -0
- package/hel_dist/bilibili/summer-7/dcf4044d-c928-4e4f-bd94-d5a34df80d0d.webm +0 -0
- package/hel_dist/bilibili/summer-7/e305925c-56ec-44b5-b18e-1b8dc73b25f2.webm +0 -0
- package/hel_dist/bilibili/summer-7/logo.png +0 -0
- package/hel_dist/bilibili/winter-1/392f3829-0285-4589-8fba-ba5c3a236048.webm +0 -0
- package/hel_dist/bilibili/winter-1/93d05910-f94a-4246-aa23-60234dc90e31.webm +0 -0
- package/hel_dist/bilibili/winter-1/c1f4248b-fe5b-413e-890a-ebdbfbb3543f.webm +0 -0
- package/hel_dist/bilibili/winter-1/logo.png +0 -0
- package/hel_dist/bilibili/winter-2/f97330ca7905307f539b2af1f64fa2a2fdb4eaed.webp +0 -0
- package/hel_dist/bilibili/winter-2/logo.png +0 -0
- package/hel_dist/bilibili/winter-3/09fa68c0c716596cebf6b1f81ed69a2a7a0a8c89.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/0cea6143cb8fce3ac55c0e1888a889c906a976aa.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/0eb9f058-7ec4-4539-8a2c-083bd91146d5.webm +0 -0
- package/hel_dist/bilibili/winter-3/31ff321fe1c2b003ab5c42beebb07f6c1652f66e.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/459fbeaaff1fbeced05ac36f1cb0c0c70df3ff01.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/4cbfd5b2c00e1abb157e9ca3e79380bfa40d2b26.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/5103762686dc9627619b028354c15ba2a72b0886.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/596c782fe6636269c65a50a9188fd4d16d12a83e.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/6b8bf544dec0088423136771f01696c68112a145.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/7c2d36bba37320de03c417ed7d86111f7b05347e.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/89d1c8fb55797a064a4d4aca51be2ebb8d86643a.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/aa01bb2357ea84d7cc6cf3030769f2581a3ac98f.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/b28b35a71a658e8bc449cd570337d7d9662d07d7.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/bad95b1085650b58108b3491c9c13e1ef4e6b41f.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/bba2f3520bedef31ef33a816f11a9d22487b80aa.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/c2914ea86a54203e59b9b9fb1b8ab3461a5976ed.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/c7cb3d67462676f79b3e702db60f4d4b038f3f28.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/cb5b4ca963e3a1a6d3917182561844b24a05fc20.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/cd6dadba219330bf44d3f8bcb584aede77d37f79.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/cfb54458ad3e2101d245f3434222e33453825f4e.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-3/logo.png +0 -0
- package/hel_dist/bilibili/winter-4/01b79b5b5b38d7305a0ca1780c24662cc5a59f18.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/085bc5e7f70b625b62c1f5d374f55acbd828ab65.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/121335f79c78bb6f47e4fc7dae4b0af0eac804bb.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/1fd3d44b8f890b88cf52f6bcc041326b30e7cb62.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/357dd346995f678c43eb6bf51fe02f47bbe7db7d.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/3e16264878dd88c1b8ead37aab07a9363186b18c.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/476679726643b3b6cc5599b882d85953ef34f3d9.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/590a6dd64ff00d5d0e63e230188939c405253452.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/67a3c27832d63060d88fbd7bdb2fc543e3fb9ddf.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/6afc90f36610318b4785a52c1a51ef6f1de9d25b.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/73fcb8a56776307147c140f68bf9c5793696ae88.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/758c63f5-cd91-43d2-abdd-4a3d6ccd4562.webm +0 -0
- package/hel_dist/bilibili/winter-4/8902051ab71c8093a85ce2a71882054ee91ea631.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/b8a5bcf77a07793ce50294a8cb14a9fb8f2cea83.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/bae427c01d895b63e6aaf6b0c239b86027527e6a.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/c651a0183b81857191c86b133c5a777059b13571.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/c9231e763120806f3e918d06ad3f415e920c2b73.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/dd79de12-0736-4d00-acba-c6b201bc4886.webm +0 -0
- package/hel_dist/bilibili/winter-4/e00c60ae700774655af2e2516a13a5b1fa2fcfe7.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/fe903820ca0f604ef24f16ff7ad51192ead3d0c8.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-4/logo.png +0 -0
- package/hel_dist/bilibili/winter-5/1696ffeacb26bcce7ad50037952620ee43614a4a.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/23c05e4d9e0ffbc16671e14c406fbe785b06ff9f.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/477fb7a2f5e2cc1b2aa00c679c8ab168b47ff1b9.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/480a5c02dbcd3afd5f790cf621efbd1b2d39efcb.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/567e0221b3bd89e34d85c604549d915c95ca17d1.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/6f27fe80f495e83546921c2c58b2107c2ee89706.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/843ee84b16bab6274b98b317b3adaf1351b4be76.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/987a407da2e02a12be549ad7f011dc11f73216e9.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/a12cbab877db2b6d3b96ec012735cfe3998de399.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/a5607001ac06b4780106e2a10aa835657e553f07.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/ac580ac636595e27b5d5c8b1f9d802751823f02f.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/ae64c474ba2748b4fea1a1433b9b373598d3e686.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/b0747b7f64e0e07e379a4bd416a0891b3e52c7d9.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/b14cad3c76e957705810c26f4c6acc236f280721.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/c4cef2b063a853521c7f413d8e7782ff653e4126.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/cc1405d4d805baf9c459f67c03f095f70ec864c6.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/d41b0292d9d1b0fce37a35f6efacac579093cdb3.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/dd4aa5af4898a15dde074fe6b833bdfbc045dd47.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/eb98a42561de7d45f8856407c4531d2724ac6fc6.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/ec9f99bf71be9408a359d7cd48dfb47e48ebce2c.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/f569be6834a5968c038bcc0fb0403f8f77e24c18.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/fbfeb5de7e41fd1e888fca7ac76cbf2f8a42f3d3.png@1c.webp +0 -0
- package/hel_dist/bilibili/winter-5/logo.png +0 -0
- package/hel_dist/css/comp-misc.edf6705f.css +1 -0
- package/hel_dist/css/loadApp.3c3e8774.css +1 -0
- package/hel_dist/hel-meta.json +354 -16
- package/hel_dist/index.html +1 -1
- package/hel_dist/js/app.4c7ccd2a.js +1 -0
- package/hel_dist/js/comp-BilibiliBanner.b602ce49.js +1 -0
- package/hel_dist/js/comp-BookFlip.fe7fff09.js +1 -0
- package/hel_dist/js/comp-ChinaRouteMap.9c153fdd.js +1 -0
- package/hel_dist/js/comp-CircularMenu.21006db8.js +1 -0
- package/hel_dist/js/comp-CompareSlider.640445be.js +1 -0
- package/hel_dist/js/comp-CorgiInput.2009fdaa.js +1 -0
- package/hel_dist/js/comp-CubeWaveLoading.75d40172.js +1 -0
- package/hel_dist/js/comp-CyberInput.b1fb1801.js +1 -0
- package/hel_dist/js/comp-DnaLoading.c60932df.js +1 -0
- package/hel_dist/js/comp-DominoLoading.314224a9.js +1 -0
- package/hel_dist/js/comp-ExpandSearch.2ffc38e9.js +1 -0
- package/hel_dist/js/comp-FilmRoll.e671d245.js +1 -0
- package/hel_dist/js/comp-FloatingLabelInput.09236a77.js +1 -0
- package/hel_dist/js/comp-GearLoading.261e4a0a.js +1 -0
- package/hel_dist/js/comp-GlowBorder.90cb30a1.js +1 -0
- package/hel_dist/js/comp-GooeyBallsLoading.37f9507e.js +1 -0
- package/hel_dist/js/comp-GridLoading.186b710d.js +1 -0
- package/hel_dist/js/comp-HelloWorld.2dbcda11.js +1 -0
- package/hel_dist/js/comp-HourglassLoading.68f74b3e.js +1 -0
- package/hel_dist/js/comp-JellyLoading.89edea82.js +1 -0
- package/hel_dist/js/comp-LiftCard.8de22713.js +1 -0
- package/hel_dist/js/comp-MagneticButton.0c49d56a.js +1 -0
- package/hel_dist/js/comp-MinecraftChest.d4ccbace.js +1 -0
- package/hel_dist/js/comp-NeonRingLoading.93502681.js +1 -0
- package/hel_dist/js/comp-PasswordInput.48c2736e.js +1 -0
- package/hel_dist/js/comp-PhotoSphere.c2197581.js +1 -0
- package/hel_dist/js/comp-PosterCollage.4301b0e3.js +1 -0
- package/hel_dist/js/comp-RopeGallery.851f2614.js +1 -0
- package/hel_dist/js/comp-SlideAuthPanel.598b01a2.js +1 -0
- package/hel_dist/js/comp-SplitCodePreview.04c52458.js +1 -0
- package/hel_dist/js/comp-SpotlightButton.bd4d921d.js +1 -0
- package/hel_dist/js/comp-TerminalAuth.2b570932.js +1 -0
- package/hel_dist/js/comp-TiltCard.94648e12.js +1 -0
- package/hel_dist/js/comp-Typewriter.7fdd3eb9.js +1 -0
- package/hel_dist/js/comp-VortexLoading.26651753.js +1 -0
- package/hel_dist/js/comp-WarpStarfield.285914be.js +1 -0
- package/hel_dist/js/comp-WaterBallLoading.4e068436.js +1 -0
- package/hel_dist/js/comp-WheelMenuButton.c5dfc7a0.js +1 -0
- package/hel_dist/js/comp-china-route-map.data.33296e57.js +1 -0
- package/hel_dist/js/comp-index.82fba6d1.js +1 -0
- package/hel_dist/js/libProperties.d5e0d649.js +1 -0
- package/hel_dist/js/loadApp.481f7d00.js +1 -0
- package/hel_dist/js/vendors.bfb27d6d.js +1 -0
- package/package.json +72 -68
- package/scripts/meta.js +53 -53
- package/scripts/prepublishOnly.js +27 -27
- package/scripts/preview.js +72 -72
- package/src/components/BilibiliBanner/AutoPlayVideo.vue +100 -0
- package/src/components/BilibiliBanner/common-util.ts +35 -0
- package/src/components/BilibiliBanner/globals.d.ts +7 -0
- package/src/components/BilibiliBanner/index.vue +423 -0
- package/src/components/BilibiliBanner/propsSchema.json +78 -0
- package/src/components/BilibiliBanner/resize-observer.ts +29 -0
- package/src/components/BilibiliBanner/themes/autumn-1.ts +53 -0
- package/src/components/BilibiliBanner/themes/autumn-2.ts +20 -0
- package/src/components/BilibiliBanner/themes/autumn-3.ts +40 -0
- package/src/components/BilibiliBanner/themes/autumn-4.ts +43 -0
- package/src/components/BilibiliBanner/themes/autumn-5.ts +44 -0
- package/src/components/BilibiliBanner/themes/spring-1.ts +38 -0
- package/src/components/BilibiliBanner/themes/spring-2.ts +38 -0
- package/src/components/BilibiliBanner/themes/spring-3.ts +18 -0
- package/src/components/BilibiliBanner/themes/spring-4.ts +20 -0
- package/src/components/BilibiliBanner/themes/spring-5.ts +45 -0
- package/src/components/BilibiliBanner/themes/spring-6.ts +41 -0
- package/src/components/BilibiliBanner/themes/summer-1.ts +61 -0
- package/src/components/BilibiliBanner/themes/summer-2.ts +25 -0
- package/src/components/BilibiliBanner/themes/summer-3.ts +20 -0
- package/src/components/BilibiliBanner/themes/summer-4.ts +40 -0
- package/src/components/BilibiliBanner/themes/summer-5.ts +39 -0
- package/src/components/BilibiliBanner/themes/summer-6.ts +42 -0
- package/src/components/BilibiliBanner/themes/summer-7.ts +43 -0
- package/src/components/BilibiliBanner/themes/winter-1.ts +56 -0
- package/src/components/BilibiliBanner/themes/winter-2.ts +20 -0
- package/src/components/BilibiliBanner/themes/winter-3.ts +44 -0
- package/src/components/BilibiliBanner/themes/winter-4.ts +43 -0
- package/src/components/BilibiliBanner/themes/winter-5.ts +43 -0
- package/src/components/BilibiliBanner/themes.ts +64 -0
- package/src/components/BilibiliBanner/types.ts +82 -0
- package/src/components/BookFlip.propsSchema.json +167 -0
- package/src/components/BookFlip.vue +510 -0
- package/src/components/ChinaRouteMap.propsSchema.json +132 -0
- package/src/components/ChinaRouteMap.vue +803 -0
- package/src/components/CircularMenu.propsSchema.json +134 -0
- package/src/components/CircularMenu.vue +236 -57
- package/src/components/CompareSlider.propsSchema.json +143 -0
- package/src/components/CompareSlider.vue +424 -0
- package/src/components/CorgiInput.propsSchema.json +122 -0
- package/src/components/CorgiInput.vue +604 -0
- package/src/components/CubeWaveLoading.propsSchema.json +88 -0
- package/src/components/CubeWaveLoading.vue +279 -0
- package/src/components/CyberInput.propsSchema.json +134 -0
- package/src/components/CyberInput.vue +971 -0
- package/src/components/DnaLoading.propsSchema.json +142 -0
- package/src/components/DnaLoading.vue +276 -0
- package/src/components/DominoLoading.propsSchema.json +83 -0
- package/src/components/DominoLoading.vue +394 -0
- package/src/components/ExpandSearch.propsSchema.json +105 -0
- package/src/components/ExpandSearch.vue +314 -0
- package/src/components/FilmRoll.propsSchema.json +164 -0
- package/src/components/FilmRoll.vue +998 -0
- package/src/components/FloatingLabelInput.propsSchema.json +84 -0
- package/src/components/FloatingLabelInput.vue +222 -0
- package/src/components/GearLoading.propsSchema.json +88 -0
- package/src/components/GearLoading.vue +452 -0
- package/src/components/GlowBorder.propsSchema.json +110 -0
- package/src/components/GlowBorder.vue +201 -0
- package/src/components/GooeyBallsLoading.propsSchema.json +136 -0
- package/src/components/GooeyBallsLoading.vue +212 -0
- package/src/components/GridLoading.propsSchema.json +115 -0
- package/src/components/GridLoading.vue +147 -0
- package/src/components/HelloWorld.propsSchema.json +24 -0
- package/src/components/HelloWorld.vue +65 -59
- package/src/components/HourglassLoading.propsSchema.json +67 -0
- package/src/components/HourglassLoading.vue +424 -0
- package/src/components/JellyLoading.propsSchema.json +99 -0
- package/src/components/JellyLoading.vue +387 -0
- package/src/components/LiftCard.propsSchema.json +186 -0
- package/src/components/LiftCard.vue +291 -0
- package/src/components/MagneticButton.propsSchema.json +51 -0
- package/src/components/MagneticButton.vue +196 -0
- package/src/components/MinecraftChest.propsSchema.json +223 -0
- package/src/components/MinecraftChest.vue +738 -0
- package/src/components/NeonRingLoading.propsSchema.json +127 -0
- package/src/components/NeonRingLoading.vue +393 -0
- package/src/components/PasswordInput.propsSchema.json +79 -0
- package/src/components/PasswordInput.vue +249 -0
- package/src/components/PhotoSphere.propsSchema.json +184 -0
- package/src/components/PhotoSphere.vue +719 -0
- package/src/components/PosterCollage.propsSchema.json +125 -0
- package/src/components/PosterCollage.vue +236 -0
- package/src/components/RopeGallery.propsSchema.json +131 -0
- package/src/components/RopeGallery.vue +706 -0
- package/src/components/SlideAuthPanel.propsSchema.json +198 -0
- package/src/components/SlideAuthPanel.vue +772 -0
- package/src/components/SplitCodePreview.propsSchema.json +115 -0
- package/src/components/SplitCodePreview.vue +477 -0
- package/src/components/SpotlightButton.propsSchema.json +40 -0
- package/src/components/SpotlightButton.vue +141 -0
- package/src/components/TerminalAuth.propsSchema.json +210 -0
- package/src/components/TerminalAuth.vue +857 -0
- package/src/components/TiltCard.propsSchema.json +94 -0
- package/src/components/TiltCard.vue +177 -0
- package/src/components/Typewriter.propsSchema.json +94 -0
- package/src/components/Typewriter.vue +189 -0
- package/src/components/VortexLoading.propsSchema.json +110 -0
- package/src/components/VortexLoading.vue +362 -0
- package/src/components/WarpStarfield.propsSchema.json +159 -0
- package/src/components/WarpStarfield.vue +625 -0
- package/src/components/WaterBallLoading.propsSchema.json +132 -0
- package/src/components/WaterBallLoading.vue +355 -0
- package/src/components/WheelMenuButton.propsSchema.json +229 -0
- package/src/components/WheelMenuButton.vue +593 -0
- package/src/components/china-route-map.data.ts +964 -0
- package/src/components/index.ts +72 -0
- package/src/configs/subApp.ts +9 -9
- package/src/entrance/libTypes.ts +36 -0
- package/src/main.ts +3 -2
- package/hel_dist/css/695.1f4389c4.css +0 -1
- package/hel_dist/js/695.5260fdcb.js +0 -2
- package/hel_dist/js/695.5260fdcb.js.map +0 -1
- package/hel_dist/js/app.7fc432e5.js +0 -16
- package/hel_dist/js/app.7fc432e5.js.map +0 -1
|
@@ -0,0 +1,738 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
ref="rootEl"
|
|
4
|
+
class="mc"
|
|
5
|
+
:class="{ 'is-scene': scene }"
|
|
6
|
+
:style="rootStyle"
|
|
7
|
+
tabindex="0"
|
|
8
|
+
role="button"
|
|
9
|
+
:aria-pressed="opened"
|
|
10
|
+
aria-label="Minecraft 箱子"
|
|
11
|
+
@pointerdown="onPointerDown"
|
|
12
|
+
@pointermove="onPointerMove"
|
|
13
|
+
@pointerup="onPointerUp"
|
|
14
|
+
@pointercancel="onPointerUp"
|
|
15
|
+
@keydown="onKeydown"
|
|
16
|
+
>
|
|
17
|
+
<template v-if="scene">
|
|
18
|
+
<span v-for="index in 3" :key="index" class="mc__cloud" :class="`mc__cloud--${index}`" />
|
|
19
|
+
<span class="mc__ground" />
|
|
20
|
+
</template>
|
|
21
|
+
|
|
22
|
+
<div
|
|
23
|
+
class="mc__camera"
|
|
24
|
+
:style="{ '--mc-yaw': `${yaw}deg`, '--mc-pitch': `${pitch}deg` }"
|
|
25
|
+
>
|
|
26
|
+
<div class="mc__model" :style="modelStyle">
|
|
27
|
+
<span class="mc__shadow" />
|
|
28
|
+
|
|
29
|
+
<div
|
|
30
|
+
v-for="face in bodyFaces"
|
|
31
|
+
:key="face.key"
|
|
32
|
+
class="mc__slot"
|
|
33
|
+
:style="face.slotStyle"
|
|
34
|
+
>
|
|
35
|
+
<span class="mc__face" :class="face.className" :style="face.faceStyle" />
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
<!-- 盖子:绕后侧边缘向上翻 -->
|
|
39
|
+
<div class="mc__lid" :style="lidStyle">
|
|
40
|
+
<div
|
|
41
|
+
v-for="face in lidFaces"
|
|
42
|
+
:key="face.key"
|
|
43
|
+
class="mc__slot"
|
|
44
|
+
:style="face.slotStyle"
|
|
45
|
+
>
|
|
46
|
+
<span class="mc__face" :class="face.className" :style="face.faceStyle" />
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<p v-if="hint" class="mc__hint">{{ hintText }}</p>
|
|
53
|
+
</div>
|
|
54
|
+
</template>
|
|
55
|
+
|
|
56
|
+
<script setup lang="ts">
|
|
57
|
+
import { computed, onBeforeUnmount, ref, watch } from 'vue'
|
|
58
|
+
|
|
59
|
+
/*
|
|
60
|
+
* 由 video-code / 交互效果/Minecraft箱子.html 提取而来。
|
|
61
|
+
*
|
|
62
|
+
* 原 demo 是一整页的 Minecraft 风格场景:天空 + 方块云 + 草皮地面,中间一个用纯 CSS 3D 面片拼出来的
|
|
63
|
+
* 木箱子(外箱体 + 内壁 + 箱沿 + 铰链 + 铁锁),拖动可以环视(yaw 无限、pitch 限制在 -48° ~ -12°),
|
|
64
|
+
* 点一下盖子绕后沿翻起 86°,还带一个 WebAudio 合成的「开箱」音效。
|
|
65
|
+
*
|
|
66
|
+
* 组件化后:
|
|
67
|
+
* - 箱子几何改成数据驱动(外箱 / 内壁 / 箱沿 / 铰链 / 盖子 / 锁各是一组面片),尺寸六件套都能调;
|
|
68
|
+
* - 开合状态走 v-model:open,盖子的翻转交给 CSS transition(原 demo 是 rAF 手写缓动);
|
|
69
|
+
* - 场景(云 / 草地)可以整体关掉,只留箱子本体贴在宿主背景上;
|
|
70
|
+
* - 音效、提示、拖拽、点击都能单独关,第一次点击时才创建 AudioContext。
|
|
71
|
+
*/
|
|
72
|
+
type Tone =
|
|
73
|
+
| 'front'
|
|
74
|
+
| 'top'
|
|
75
|
+
| 'side'
|
|
76
|
+
| 'back'
|
|
77
|
+
| 'dark'
|
|
78
|
+
| 'innerFloor'
|
|
79
|
+
| 'innerWall'
|
|
80
|
+
| 'innerBack'
|
|
81
|
+
| 'rim'
|
|
82
|
+
| 'iron'
|
|
83
|
+
|
|
84
|
+
type FaceSpec = {
|
|
85
|
+
key: string
|
|
86
|
+
className: string
|
|
87
|
+
slotStyle: Record<string, string>
|
|
88
|
+
faceStyle: Record<string, string>
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
type CuboidFaces = Partial<Record<'front' | 'back' | 'right' | 'left' | 'top' | 'bottom', Tone>>
|
|
92
|
+
|
|
93
|
+
const props = defineProps({
|
|
94
|
+
/**
|
|
95
|
+
* @description 箱子是否打开(可用 v-model:open 双向绑定)
|
|
96
|
+
*/
|
|
97
|
+
open: {
|
|
98
|
+
type: Boolean,
|
|
99
|
+
default: false,
|
|
100
|
+
},
|
|
101
|
+
/**
|
|
102
|
+
* @description 箱体宽度,单位 px
|
|
103
|
+
*/
|
|
104
|
+
width: {
|
|
105
|
+
type: Number,
|
|
106
|
+
default: 280,
|
|
107
|
+
},
|
|
108
|
+
/**
|
|
109
|
+
* @description 箱体进深,单位 px
|
|
110
|
+
*/
|
|
111
|
+
depth: {
|
|
112
|
+
type: Number,
|
|
113
|
+
default: 220,
|
|
114
|
+
},
|
|
115
|
+
/**
|
|
116
|
+
* @description 箱体高度,单位 px
|
|
117
|
+
*/
|
|
118
|
+
height: {
|
|
119
|
+
type: Number,
|
|
120
|
+
default: 160,
|
|
121
|
+
},
|
|
122
|
+
/**
|
|
123
|
+
* @description 盖子的高度,单位 px
|
|
124
|
+
*/
|
|
125
|
+
lidHeight: {
|
|
126
|
+
type: Number,
|
|
127
|
+
default: 48,
|
|
128
|
+
},
|
|
129
|
+
/**
|
|
130
|
+
* @description 木板厚度(箱壁 / 箱沿),单位 px
|
|
131
|
+
*/
|
|
132
|
+
wall: {
|
|
133
|
+
type: Number,
|
|
134
|
+
default: 18,
|
|
135
|
+
},
|
|
136
|
+
/**
|
|
137
|
+
* @description 整体缩放
|
|
138
|
+
*/
|
|
139
|
+
scale: {
|
|
140
|
+
type: Number,
|
|
141
|
+
default: 1,
|
|
142
|
+
},
|
|
143
|
+
/**
|
|
144
|
+
* @description 初始水平环绕角,单位度
|
|
145
|
+
*/
|
|
146
|
+
yaw: {
|
|
147
|
+
type: Number,
|
|
148
|
+
default: -28,
|
|
149
|
+
},
|
|
150
|
+
/**
|
|
151
|
+
* @description 初始俯仰角,单位度(限 -48 ~ -12)
|
|
152
|
+
*/
|
|
153
|
+
pitch: {
|
|
154
|
+
type: Number,
|
|
155
|
+
default: -28,
|
|
156
|
+
},
|
|
157
|
+
/**
|
|
158
|
+
* @description 是否允许拖动环视
|
|
159
|
+
*/
|
|
160
|
+
draggable: {
|
|
161
|
+
type: Boolean,
|
|
162
|
+
default: true,
|
|
163
|
+
},
|
|
164
|
+
/**
|
|
165
|
+
* @description 是否允许点击开合
|
|
166
|
+
*/
|
|
167
|
+
clickable: {
|
|
168
|
+
type: Boolean,
|
|
169
|
+
default: true,
|
|
170
|
+
},
|
|
171
|
+
/**
|
|
172
|
+
* @description 是否播放开箱 / 关箱音效
|
|
173
|
+
*/
|
|
174
|
+
sound: {
|
|
175
|
+
type: Boolean,
|
|
176
|
+
default: true,
|
|
177
|
+
},
|
|
178
|
+
/**
|
|
179
|
+
* @description 是否画天空 / 云 / 草皮地面这套场景
|
|
180
|
+
*/
|
|
181
|
+
scene: {
|
|
182
|
+
type: Boolean,
|
|
183
|
+
default: true,
|
|
184
|
+
},
|
|
185
|
+
/**
|
|
186
|
+
* @description 盖子翻转时长,单位毫秒
|
|
187
|
+
*/
|
|
188
|
+
duration: {
|
|
189
|
+
type: Number,
|
|
190
|
+
default: 280,
|
|
191
|
+
},
|
|
192
|
+
/**
|
|
193
|
+
* @description 是否显示底部提示
|
|
194
|
+
*/
|
|
195
|
+
hint: {
|
|
196
|
+
type: Boolean,
|
|
197
|
+
default: true,
|
|
198
|
+
},
|
|
199
|
+
/**
|
|
200
|
+
* @description 提示文案
|
|
201
|
+
*/
|
|
202
|
+
hintText: {
|
|
203
|
+
type: String,
|
|
204
|
+
default: '拖动环视 · 点击开合',
|
|
205
|
+
},
|
|
206
|
+
})
|
|
207
|
+
|
|
208
|
+
const emit = defineEmits<{
|
|
209
|
+
'update:open': [open: boolean]
|
|
210
|
+
/** 开合状态变化 */
|
|
211
|
+
toggle: [open: boolean]
|
|
212
|
+
}>()
|
|
213
|
+
|
|
214
|
+
const rootEl = ref<HTMLElement | null>(null)
|
|
215
|
+
const yaw = ref(props.yaw)
|
|
216
|
+
const pitch = ref(clamp(props.pitch, -48, -12))
|
|
217
|
+
const opened = ref(props.open)
|
|
218
|
+
|
|
219
|
+
let drag: { id: number; x: number; y: number; distance: number } | null = null
|
|
220
|
+
let audioContext: AudioContext | null = null
|
|
221
|
+
|
|
222
|
+
function clamp(value: number, min: number, max: number) {
|
|
223
|
+
return Math.max(min, Math.min(max, value))
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
const rootStyle = computed(() => ({
|
|
227
|
+
'--mc-scale': String(props.scale),
|
|
228
|
+
'--mc-duration': `${props.duration}ms`,
|
|
229
|
+
}))
|
|
230
|
+
|
|
231
|
+
const modelStyle = computed(() => ({
|
|
232
|
+
transform: `translateY(${(-props.height * 0.49).toFixed(1)}px)`,
|
|
233
|
+
}))
|
|
234
|
+
|
|
235
|
+
/** 盖子绕后沿翻转:0° 合上,86° 全开 */
|
|
236
|
+
const lidStyle = computed(() => ({
|
|
237
|
+
transform: `translate3d(0px, 0px, ${-props.depth / 2}px) rotateX(${
|
|
238
|
+
opened.value ? 86 : 0
|
|
239
|
+
}deg)`,
|
|
240
|
+
}))
|
|
241
|
+
|
|
242
|
+
const TONE_CLASS: Record<Tone, string> = {
|
|
243
|
+
front: 'tone-front',
|
|
244
|
+
top: 'tone-top',
|
|
245
|
+
side: 'tone-side',
|
|
246
|
+
back: 'tone-back',
|
|
247
|
+
dark: 'tone-dark',
|
|
248
|
+
innerFloor: 'tone-inner-floor',
|
|
249
|
+
innerWall: 'tone-inner-wall',
|
|
250
|
+
innerBack: 'tone-inner-back',
|
|
251
|
+
rim: 'tone-rim',
|
|
252
|
+
iron: 'tone-iron',
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/** 生成一个长方体的六个面(按原 demo 的面片摆法) */
|
|
256
|
+
function cuboid(
|
|
257
|
+
group: string,
|
|
258
|
+
x: number,
|
|
259
|
+
y: number,
|
|
260
|
+
z: number,
|
|
261
|
+
w: number,
|
|
262
|
+
h: number,
|
|
263
|
+
d: number,
|
|
264
|
+
faces: CuboidFaces,
|
|
265
|
+
): FaceSpec[] {
|
|
266
|
+
const list: FaceSpec[] = []
|
|
267
|
+
const push = (key: string, tone: Tone, fw: number, fh: number, fx: number, fy: number, fz: number, rotation: string) => {
|
|
268
|
+
list.push(makeFace(`${group}-${key}`, tone, fw, fh, fx, fy, fz, rotation))
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
if (faces.front) push('front', faces.front, w, h, x, y, z + d / 2, '')
|
|
272
|
+
if (faces.back) push('back', faces.back, w, h, x, y, z - d / 2, 'rotateY(180deg)')
|
|
273
|
+
if (faces.right) push('right', faces.right, d, h, x + w / 2, y, z, 'rotateY(90deg)')
|
|
274
|
+
if (faces.left) push('left', faces.left, d, h, x - w / 2, y, z, 'rotateY(-90deg)')
|
|
275
|
+
if (faces.top) push('top', faces.top, w, d, x, y - h / 2, z, 'rotateX(90deg)')
|
|
276
|
+
if (faces.bottom) push('bottom', faces.bottom, w, d, x, y + h / 2, z, 'rotateX(-90deg)')
|
|
277
|
+
|
|
278
|
+
return list
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
function makeFace(
|
|
282
|
+
key: string,
|
|
283
|
+
tone: Tone,
|
|
284
|
+
width: number,
|
|
285
|
+
height: number,
|
|
286
|
+
x: number,
|
|
287
|
+
y: number,
|
|
288
|
+
z: number,
|
|
289
|
+
rotation: string,
|
|
290
|
+
): FaceSpec {
|
|
291
|
+
return {
|
|
292
|
+
key,
|
|
293
|
+
className: TONE_CLASS[tone],
|
|
294
|
+
slotStyle: { transform: `translate3d(${x}px, ${y}px, ${z}px)` },
|
|
295
|
+
faceStyle: {
|
|
296
|
+
width: `${width}px`,
|
|
297
|
+
height: `${height}px`,
|
|
298
|
+
marginLeft: `${-width / 2}px`,
|
|
299
|
+
marginTop: `${-height / 2}px`,
|
|
300
|
+
transform: rotation,
|
|
301
|
+
},
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
/** 箱体(不含盖子):外箱 + 内壁 + 箱沿 + 铰链 */
|
|
306
|
+
const bodyFaces = computed<FaceSpec[]>(() => {
|
|
307
|
+
const { width, depth, height, wall } = props
|
|
308
|
+
const innerWidth = width - wall * 2
|
|
309
|
+
const innerDepth = depth - wall * 2
|
|
310
|
+
const innerHeight = height - wall * 1.3
|
|
311
|
+
const faces: FaceSpec[] = []
|
|
312
|
+
|
|
313
|
+
faces.push(
|
|
314
|
+
...cuboid('base', 0, height / 2, 0, width, height, depth, {
|
|
315
|
+
front: 'front',
|
|
316
|
+
back: 'back',
|
|
317
|
+
right: 'side',
|
|
318
|
+
left: 'dark',
|
|
319
|
+
bottom: 'dark',
|
|
320
|
+
}),
|
|
321
|
+
)
|
|
322
|
+
|
|
323
|
+
// 内壁:底板 + 后 / 前 / 右 / 左四面
|
|
324
|
+
faces.push(makeFace('inner-floor', 'innerFloor', innerWidth, innerDepth, 0, height - wall, 0, 'rotateX(90deg)'))
|
|
325
|
+
faces.push(
|
|
326
|
+
makeFace('inner-back-wall', 'innerBack', innerWidth, innerHeight, 0, innerHeight / 2 + 6, -depth / 2 + wall, 'rotateY(180deg)'),
|
|
327
|
+
)
|
|
328
|
+
faces.push(makeFace('inner-front-wall', 'innerWall', innerWidth, innerHeight * 0.72, 0, innerHeight * 0.36 + 22, depth / 2 - wall, ''))
|
|
329
|
+
faces.push(makeFace('inner-right-wall', 'innerWall', innerDepth, innerHeight, width / 2 - wall, innerHeight / 2 + 6, 0, 'rotateY(90deg)'))
|
|
330
|
+
faces.push(makeFace('inner-left-wall', 'innerWall', innerDepth, innerHeight, -width / 2 + wall, innerHeight / 2 + 6, 0, 'rotateY(-90deg)'))
|
|
331
|
+
|
|
332
|
+
// 箱沿
|
|
333
|
+
faces.push(
|
|
334
|
+
...cuboid('rim-front', 0, 2, depth / 2 - wall / 2, width + 6, 12, wall, {
|
|
335
|
+
front: 'rim',
|
|
336
|
+
back: 'side',
|
|
337
|
+
top: 'rim',
|
|
338
|
+
bottom: 'dark',
|
|
339
|
+
}),
|
|
340
|
+
)
|
|
341
|
+
faces.push(
|
|
342
|
+
...cuboid('rim-back', 0, 2, -depth / 2 + wall / 2, width + 6, 12, wall, {
|
|
343
|
+
front: 'side',
|
|
344
|
+
back: 'back',
|
|
345
|
+
top: 'rim',
|
|
346
|
+
bottom: 'dark',
|
|
347
|
+
}),
|
|
348
|
+
)
|
|
349
|
+
faces.push(
|
|
350
|
+
...cuboid('rim-left', -width / 2 + wall / 2, 2, 0, wall, 12, depth, {
|
|
351
|
+
front: 'front',
|
|
352
|
+
back: 'back',
|
|
353
|
+
left: 'dark',
|
|
354
|
+
top: 'rim',
|
|
355
|
+
}),
|
|
356
|
+
)
|
|
357
|
+
faces.push(
|
|
358
|
+
...cuboid('rim-right', width / 2 - wall / 2, 2, 0, wall, 12, depth, {
|
|
359
|
+
front: 'front',
|
|
360
|
+
back: 'back',
|
|
361
|
+
right: 'side',
|
|
362
|
+
top: 'rim',
|
|
363
|
+
}),
|
|
364
|
+
)
|
|
365
|
+
|
|
366
|
+
return faces
|
|
367
|
+
})
|
|
368
|
+
|
|
369
|
+
/** 盖子:盖板 + 铁锁(跟着盖子一起翻) */
|
|
370
|
+
const lidFaces = computed<FaceSpec[]>(() => {
|
|
371
|
+
const { width, depth, lidHeight } = props
|
|
372
|
+
const faces: FaceSpec[] = []
|
|
373
|
+
|
|
374
|
+
faces.push(
|
|
375
|
+
...cuboid('lid', 0, -lidHeight / 2, depth / 2, width, lidHeight, depth, {
|
|
376
|
+
front: 'top',
|
|
377
|
+
back: 'back',
|
|
378
|
+
right: 'side',
|
|
379
|
+
left: 'dark',
|
|
380
|
+
top: 'top',
|
|
381
|
+
bottom: 'innerFloor',
|
|
382
|
+
}),
|
|
383
|
+
)
|
|
384
|
+
faces.push(
|
|
385
|
+
...cuboid('lock', 0, -8, depth + 8, 42, 58, 16, {
|
|
386
|
+
front: 'iron',
|
|
387
|
+
back: 'iron',
|
|
388
|
+
right: 'iron',
|
|
389
|
+
left: 'iron',
|
|
390
|
+
top: 'iron',
|
|
391
|
+
bottom: 'iron',
|
|
392
|
+
}),
|
|
393
|
+
)
|
|
394
|
+
|
|
395
|
+
return faces
|
|
396
|
+
})
|
|
397
|
+
|
|
398
|
+
function setOpen(next: boolean) {
|
|
399
|
+
if (opened.value === next) return
|
|
400
|
+
opened.value = next
|
|
401
|
+
emit('update:open', next)
|
|
402
|
+
emit('toggle', next)
|
|
403
|
+
playSound(next)
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
/** 用 WebAudio 合成一个短促的木板「咔哒」声,不依赖音频文件 */
|
|
407
|
+
function playSound(opening: boolean) {
|
|
408
|
+
if (!props.sound || typeof window === 'undefined') return
|
|
409
|
+
try {
|
|
410
|
+
const Ctor = window.AudioContext || (window as unknown as { webkitAudioContext: typeof AudioContext }).webkitAudioContext
|
|
411
|
+
if (!Ctor) return
|
|
412
|
+
if (!audioContext) audioContext = new Ctor()
|
|
413
|
+
const audio = audioContext
|
|
414
|
+
const now = audio.currentTime
|
|
415
|
+
const osc = audio.createOscillator()
|
|
416
|
+
const gain = audio.createGain()
|
|
417
|
+
const filter = audio.createBiquadFilter()
|
|
418
|
+
|
|
419
|
+
osc.type = 'triangle'
|
|
420
|
+
osc.frequency.setValueAtTime(opening ? 150 : 92, now)
|
|
421
|
+
osc.frequency.exponentialRampToValueAtTime(opening ? 74 : 54, now + (opening ? 0.16 : 0.1))
|
|
422
|
+
filter.type = 'lowpass'
|
|
423
|
+
filter.frequency.setValueAtTime(opening ? 740 : 380, now)
|
|
424
|
+
gain.gain.setValueAtTime(0.0001, now)
|
|
425
|
+
gain.gain.exponentialRampToValueAtTime(0.075, now + 0.012)
|
|
426
|
+
gain.gain.exponentialRampToValueAtTime(0.0001, now + (opening ? 0.2 : 0.13))
|
|
427
|
+
|
|
428
|
+
osc.connect(filter)
|
|
429
|
+
filter.connect(gain)
|
|
430
|
+
gain.connect(audio.destination)
|
|
431
|
+
osc.start(now)
|
|
432
|
+
osc.stop(now + 0.22)
|
|
433
|
+
} catch {
|
|
434
|
+
// 浏览器可能因为缺少用户手势而拦截音频,忽略即可
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
function onPointerDown(event: PointerEvent) {
|
|
439
|
+
if (!props.draggable && !props.clickable) return
|
|
440
|
+
if (event.button !== 0 && event.pointerType === 'mouse') return
|
|
441
|
+
drag = { id: event.pointerId, x: event.clientX, y: event.clientY, distance: 0 }
|
|
442
|
+
try {
|
|
443
|
+
rootEl.value?.setPointerCapture?.(event.pointerId)
|
|
444
|
+
} catch {
|
|
445
|
+
// 合成事件下会抛 NotFoundError
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
function onPointerMove(event: PointerEvent) {
|
|
450
|
+
if (!drag || drag.id !== event.pointerId || !props.draggable) return
|
|
451
|
+
const dx = event.clientX - drag.x
|
|
452
|
+
const dy = event.clientY - drag.y
|
|
453
|
+
drag.x = event.clientX
|
|
454
|
+
drag.y = event.clientY
|
|
455
|
+
drag.distance += Math.hypot(dx, dy)
|
|
456
|
+
if (drag.distance <= 2) return
|
|
457
|
+
|
|
458
|
+
yaw.value += dx * 0.34
|
|
459
|
+
pitch.value = clamp(pitch.value - dy * 0.26, -48, -12)
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
function onPointerUp(event: PointerEvent) {
|
|
463
|
+
if (!drag || drag.id !== event.pointerId) return
|
|
464
|
+
// 位移很小才算「点击」,拖动环视不会顺手开箱
|
|
465
|
+
const isClick = drag.distance < 6
|
|
466
|
+
drag = null
|
|
467
|
+
try {
|
|
468
|
+
rootEl.value?.releasePointerCapture?.(event.pointerId)
|
|
469
|
+
} catch {
|
|
470
|
+
// 指针可能已经释放
|
|
471
|
+
}
|
|
472
|
+
if (isClick && props.clickable) setOpen(!opened.value)
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
function onKeydown(event: KeyboardEvent) {
|
|
476
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
477
|
+
event.preventDefault()
|
|
478
|
+
setOpen(!opened.value)
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
watch(
|
|
483
|
+
() => props.open,
|
|
484
|
+
(next) => {
|
|
485
|
+
opened.value = next
|
|
486
|
+
},
|
|
487
|
+
)
|
|
488
|
+
|
|
489
|
+
onBeforeUnmount(() => {
|
|
490
|
+
audioContext?.close?.().catch(() => {})
|
|
491
|
+
audioContext = null
|
|
492
|
+
})
|
|
493
|
+
|
|
494
|
+
defineExpose({
|
|
495
|
+
toggle: () => setOpen(!opened.value),
|
|
496
|
+
open: () => setOpen(true),
|
|
497
|
+
close: () => setOpen(false),
|
|
498
|
+
resetView: () => {
|
|
499
|
+
yaw.value = props.yaw
|
|
500
|
+
pitch.value = clamp(props.pitch, -48, -12)
|
|
501
|
+
},
|
|
502
|
+
})
|
|
503
|
+
</script>
|
|
504
|
+
|
|
505
|
+
<style scoped>
|
|
506
|
+
.mc {
|
|
507
|
+
position: relative;
|
|
508
|
+
width: 100%;
|
|
509
|
+
height: 100%;
|
|
510
|
+
min-height: 280px;
|
|
511
|
+
overflow: hidden;
|
|
512
|
+
/* 默认透明:关掉场景时让宿主的背景透上来 */
|
|
513
|
+
background: transparent;
|
|
514
|
+
image-rendering: pixelated;
|
|
515
|
+
user-select: none;
|
|
516
|
+
touch-action: none;
|
|
517
|
+
cursor: grab;
|
|
518
|
+
perspective: 960px;
|
|
519
|
+
perspective-origin: 50% 42%;
|
|
520
|
+
outline: none;
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
/* 打开场景时才是 Minecraft 的天空蓝 */
|
|
524
|
+
.mc.is-scene {
|
|
525
|
+
background: #72bdf4;
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
.mc:active {
|
|
529
|
+
cursor: grabbing;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
/* 方块云:三个横向小方块 + 投影 */
|
|
533
|
+
.mc__cloud {
|
|
534
|
+
position: absolute;
|
|
535
|
+
height: 18px;
|
|
536
|
+
background: rgba(255, 255, 255, 0.24);
|
|
537
|
+
box-shadow:
|
|
538
|
+
42px -18px 0 rgba(255, 255, 255, 0.24),
|
|
539
|
+
84px 0 0 rgba(255, 255, 255, 0.24);
|
|
540
|
+
pointer-events: none;
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
.mc__cloud--1 {
|
|
544
|
+
top: 15%;
|
|
545
|
+
left: 8%;
|
|
546
|
+
width: 86px;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
.mc__cloud--2 {
|
|
550
|
+
top: 13%;
|
|
551
|
+
left: 39%;
|
|
552
|
+
width: 78px;
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
.mc__cloud--3 {
|
|
556
|
+
top: 16%;
|
|
557
|
+
right: 17%;
|
|
558
|
+
width: 92px;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
/* 草皮 + 泥土,带方块纹理 */
|
|
562
|
+
.mc__ground {
|
|
563
|
+
position: absolute;
|
|
564
|
+
right: 0;
|
|
565
|
+
bottom: 0;
|
|
566
|
+
left: 0;
|
|
567
|
+
height: 42%;
|
|
568
|
+
background:
|
|
569
|
+
linear-gradient(#7fbe55 0 24px, #315f25 24px 36px, transparent 36px),
|
|
570
|
+
repeating-linear-gradient(90deg, rgba(58, 35, 20, 0.34) 0 1px, transparent 1px 52px),
|
|
571
|
+
repeating-linear-gradient(0deg, rgba(58, 35, 20, 0.34) 0 1px, transparent 1px 52px),
|
|
572
|
+
#95572f;
|
|
573
|
+
pointer-events: none;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
/* 相机:整块靠 yaw / pitch 旋转 */
|
|
577
|
+
.mc__camera {
|
|
578
|
+
position: absolute;
|
|
579
|
+
top: 53%;
|
|
580
|
+
left: 50%;
|
|
581
|
+
width: 0;
|
|
582
|
+
height: 0;
|
|
583
|
+
transform-style: preserve-3d;
|
|
584
|
+
transform: translate(-50%, -50%) scale(var(--mc-scale)) rotateX(var(--mc-pitch)) rotateY(var(--mc-yaw));
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
.mc__model,
|
|
588
|
+
.mc__lid,
|
|
589
|
+
.mc__slot {
|
|
590
|
+
position: absolute;
|
|
591
|
+
top: 0;
|
|
592
|
+
left: 0;
|
|
593
|
+
width: 0;
|
|
594
|
+
height: 0;
|
|
595
|
+
transform-style: preserve-3d;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
.mc__lid {
|
|
599
|
+
transition: transform var(--mc-duration) cubic-bezier(0.17, 0.67, 0.23, 1);
|
|
600
|
+
}
|
|
601
|
+
|
|
602
|
+
/* 地面阴影 */
|
|
603
|
+
.mc__shadow {
|
|
604
|
+
position: absolute;
|
|
605
|
+
top: 112px;
|
|
606
|
+
left: -145px;
|
|
607
|
+
width: 290px;
|
|
608
|
+
height: 88px;
|
|
609
|
+
border-radius: 50%;
|
|
610
|
+
background: rgba(35, 18, 8, 0.24);
|
|
611
|
+
filter: blur(13px);
|
|
612
|
+
transform: translateZ(-120px) rotateX(90deg);
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
.mc__face {
|
|
616
|
+
position: absolute;
|
|
617
|
+
top: 0;
|
|
618
|
+
left: 0;
|
|
619
|
+
box-sizing: border-box;
|
|
620
|
+
overflow: hidden;
|
|
621
|
+
border: 3px solid #211309;
|
|
622
|
+
background-color: #c87929;
|
|
623
|
+
backface-visibility: visible;
|
|
624
|
+
transform-style: preserve-3d;
|
|
625
|
+
box-shadow:
|
|
626
|
+
inset 0 0 0 1px rgba(255, 229, 146, 0.12),
|
|
627
|
+
inset 0 -18px 0 rgba(60, 31, 12, 0.16);
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
/* 木纹:横竖格线 + 中段分隔条 */
|
|
631
|
+
.mc__face::before {
|
|
632
|
+
content: '';
|
|
633
|
+
position: absolute;
|
|
634
|
+
inset: 0;
|
|
635
|
+
background:
|
|
636
|
+
repeating-linear-gradient(90deg, transparent 0 37px, rgba(36, 20, 8, 0.34) 37px 40px),
|
|
637
|
+
repeating-linear-gradient(0deg, transparent 0 37px, rgba(36, 20, 8, 0.3) 37px 40px);
|
|
638
|
+
pointer-events: none;
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
.mc__face::after {
|
|
642
|
+
content: '';
|
|
643
|
+
position: absolute;
|
|
644
|
+
top: 34%;
|
|
645
|
+
right: 0;
|
|
646
|
+
left: 0;
|
|
647
|
+
height: 15%;
|
|
648
|
+
background:
|
|
649
|
+
linear-gradient(rgba(68, 36, 14, 0.36), rgba(68, 36, 14, 0.36)) 0 0 / 100% 42% no-repeat,
|
|
650
|
+
linear-gradient(rgba(255, 207, 93, 0.16), rgba(255, 207, 93, 0.16)) 0 100% / 100% 30% no-repeat;
|
|
651
|
+
pointer-events: none;
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
/* 六种木板色 */
|
|
655
|
+
.tone-front {
|
|
656
|
+
background-color: #c87929;
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
.tone-top {
|
|
660
|
+
background-color: #e09637;
|
|
661
|
+
}
|
|
662
|
+
|
|
663
|
+
.tone-side {
|
|
664
|
+
background-color: #a85f22;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
.tone-back {
|
|
668
|
+
background-color: #96551f;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
.tone-dark {
|
|
672
|
+
background-color: #7f471b;
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
/* 内壁:没有木纹格线,只有更暗的底色 */
|
|
676
|
+
.tone-inner-floor {
|
|
677
|
+
background-color: #d88a35;
|
|
678
|
+
box-shadow:
|
|
679
|
+
inset 0 0 0 2px rgba(255, 226, 138, 0.14),
|
|
680
|
+
inset 0 28px 0 rgba(255, 197, 78, 0.1);
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
.tone-inner-wall {
|
|
684
|
+
background-color: #bd6d28;
|
|
685
|
+
box-shadow: inset 0 0 0 2px rgba(255, 226, 138, 0.1);
|
|
686
|
+
}
|
|
687
|
+
|
|
688
|
+
.tone-inner-back {
|
|
689
|
+
background-color: #a65e24;
|
|
690
|
+
}
|
|
691
|
+
|
|
692
|
+
.tone-rim {
|
|
693
|
+
background-color: #de9637;
|
|
694
|
+
box-shadow: inset 0 -7px 0 rgba(69, 36, 13, 0.22);
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
.tone-iron {
|
|
698
|
+
border-color: #252525;
|
|
699
|
+
background: #cfcfcf;
|
|
700
|
+
box-shadow:
|
|
701
|
+
inset 6px 0 0 rgba(255, 255, 255, 0.58),
|
|
702
|
+
inset -7px 0 0 rgba(0, 0, 0, 0.28);
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
.tone-inner-floor::before,
|
|
706
|
+
.tone-inner-floor::after,
|
|
707
|
+
.tone-inner-wall::before,
|
|
708
|
+
.tone-inner-wall::after,
|
|
709
|
+
.tone-inner-back::before,
|
|
710
|
+
.tone-inner-back::after,
|
|
711
|
+
.tone-rim::before,
|
|
712
|
+
.tone-rim::after,
|
|
713
|
+
.tone-iron::before,
|
|
714
|
+
.tone-iron::after {
|
|
715
|
+
display: none;
|
|
716
|
+
}
|
|
717
|
+
|
|
718
|
+
.mc__hint {
|
|
719
|
+
position: absolute;
|
|
720
|
+
bottom: 14px;
|
|
721
|
+
left: 0;
|
|
722
|
+
width: 100%;
|
|
723
|
+
margin: 0;
|
|
724
|
+
color: rgba(255, 255, 255, 0.72);
|
|
725
|
+
font-family: monospace;
|
|
726
|
+
font-size: 12px;
|
|
727
|
+
letter-spacing: 0.08em;
|
|
728
|
+
text-align: center;
|
|
729
|
+
text-shadow: 0 2px 0 rgba(0, 0, 0, 0.35);
|
|
730
|
+
pointer-events: none;
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
@media (prefers-reduced-motion: reduce) {
|
|
734
|
+
.mc__lid {
|
|
735
|
+
transition-duration: 0.01ms;
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
</style>
|