diff --git a/.changeset/vast-hotels-accept.md b/.changeset/vast-hotels-accept.md new file mode 100644 index 00000000..fdc1a792 --- /dev/null +++ b/.changeset/vast-hotels-accept.md @@ -0,0 +1,9 @@ +--- +"@devup-ui/webpack-plugin": patch +"@devup-ui/wasm": patch +"@devup-ui/next-plugin": patch +"@devup-ui/vite-plugin": patch +"@devup-ui/react": patch +--- + +Add default theme diff --git a/Cargo.lock b/Cargo.lock index 9bc77909..d2f4dc49 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -53,9 +53,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" [[package]] name = "bumpalo" @@ -83,9 +83,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.7" +version = "1.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" +checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" dependencies = [ "shlex", ] @@ -125,18 +125,18 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.28" +version = "4.5.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e77c3243bd94243c03672cb5154667347c457ca271254724f9f393aee1c05ff" +checksum = "6088f3ae8c3608d19260cd7445411865a485688711b78b5be70d78cd96136f83" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.5.27" +version = "4.5.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" +checksum = "22a7ef7f676155edfb82daa97f99441f3ebf4a58d5e32f295a56259f1b6facc8" dependencies = [ "anstyle", "clap_lex", @@ -164,9 +164,9 @@ dependencies = [ [[package]] name = "console" -version = "0.15.10" +version = "0.15.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" +checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" dependencies = [ "encode_unicode", "libc", @@ -287,9 +287,9 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "encode_unicode" @@ -299,9 +299,9 @@ checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "extractor" @@ -404,9 +404,9 @@ dependencies = [ [[package]] name = "half" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" +checksum = "7db2ff139bba50379da6aa0766b52fdcb62cb5b263009b09ed58ba604e14bbd1" dependencies = [ "cfg-if", "crunchy", @@ -423,15 +423,15 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" +checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" [[package]] name = "indexmap" -version = "2.7.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +checksum = "3954d50fe15b02142bf25d3b8bdadb634ec3948f103d04ffe3031bc8fe9d7058" dependencies = [ "equivalent", "hashbrown", @@ -439,9 +439,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.42.1" +version = "1.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71c1b125e30d93896b365e156c33dadfffab45ee8400afcbba4752f59de08a86" +checksum = "50259abbaa67d11d2bcafc7ba1d094ed7a0c70e3ce893f0d0997f73558cb3084" dependencies = [ "console", "linked-hash-map", @@ -452,9 +452,9 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.15" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e19b23d53f35ce9f56aebc7d1bb4e6ac1e9c0db7ac85c8d1760c04379edced37" +checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ "hermit-abi", "libc", @@ -481,9 +481,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" @@ -497,9 +497,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.171" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" [[package]] name = "linked-hash-map" @@ -519,9 +519,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.22" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" [[package]] name = "memchr" @@ -575,27 +575,27 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.3" +version = "1.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" +checksum = "d75b0bedcc4fe52caa0e03d9f1151a323e4aa5e2d78ba3580400cd3c9e2bc4bc" [[package]] name = "oorandom" -version = "11.1.4" +version = "11.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" +checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] name = "outref" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" +checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" [[package]] name = "owo-colors" -version = "4.1.0" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb37767f6569cd834a413442455e0f066d0d522de8630436e2a1761d9726ba56" +checksum = "1036865bb9422d3300cf723f657c2851d0e9ab12567854b1f4eba3d77decf564" [[package]] name = "oxc-miette" @@ -608,7 +608,7 @@ dependencies = [ "oxc-miette-derive", "textwrap", "thiserror", - "unicode-width 0.2.0", + "unicode-width", ] [[package]] @@ -812,9 +812,9 @@ dependencies = [ [[package]] name = "oxc_sourcemap" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48557f779d04c8bfa8a930db5a3c35c0a86ff4e6bf1552ce446b9596a6e77c42" +checksum = "dcb048fad7eee078b23dc3f3be7aba94eeba596c892c9255fc2646fba232a2ec" dependencies = [ "base64-simd", "cfg-if", @@ -903,9 +903,9 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ "phf_shared", "rand", @@ -935,18 +935,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", @@ -995,18 +995,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.38" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -1048,9 +1048,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.8" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" +checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1" dependencies = [ "bitflags", ] @@ -1096,27 +1096,27 @@ dependencies = [ [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "ryu-js" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5" +checksum = "dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15" [[package]] name = "same-file" @@ -1129,9 +1129,9 @@ dependencies = [ [[package]] name = "scc" -version = "2.3.0" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28e1c91382686d21b5ac7959341fcb9780fa7c03773646995a87c950fa7be640" +checksum = "ea091f6cac2595aa38993f04f4ee692ed43757035c36e67c180b6828356385b1" dependencies = [ "sdd", ] @@ -1144,9 +1144,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sdd" -version = "3.0.5" +version = "3.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478f121bb72bbf63c52c93011ea1791dca40140dfe13f8336c4c5ac952c33aa9" +checksum = "584e070911c7017da6cb2eb0788d09f43d789029b5877d3e5ecc8acf86ceee21" [[package]] name = "self_cell" @@ -1156,15 +1156,15 @@ checksum = "c2fdfc24bc566f839a2da4c4295b82db7d25a24253867d5c64355abb5799bdbe" [[package]] name = "seq-macro" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4" +checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" [[package]] name = "serde" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" dependencies = [ "serde_derive", ] @@ -1182,9 +1182,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", @@ -1193,9 +1193,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ "itoa", "memchr", @@ -1255,9 +1255,9 @@ checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" [[package]] name = "similar" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" [[package]] name = "siphasher" @@ -1276,9 +1276,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" [[package]] name = "smawk" @@ -1300,9 +1300,9 @@ checksum = "d08889ec5408683408db66ad89e0e1f93dff55c73a4ccc71c427d5b277ee47e6" [[package]] name = "syn" -version = "2.0.93" +version = "2.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058" +checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" dependencies = [ "proc-macro2", "quote", @@ -1311,13 +1311,13 @@ dependencies = [ [[package]] name = "textwrap" -version = "0.16.1" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" +checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" dependencies = [ "smawk", "unicode-linebreak", - "unicode-width 0.1.14", + "unicode-width", ] [[package]] @@ -1358,9 +1358,9 @@ checksum = "2f322b60f6b9736017344fa0635d64be2f458fbc04eef65f6be22976dd1ffd5b" [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-linebreak" @@ -1368,12 +1368,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - [[package]] name = "unicode-width" version = "0.2.0" diff --git a/apps/landing/package.json b/apps/landing/package.json index 327d9092..64368f48 100644 --- a/apps/landing/package.json +++ b/apps/landing/package.json @@ -15,9 +15,9 @@ "@devup-ui/react": "workspace:*", "@mdx-js/loader": "^3.1.0", "@mdx-js/react": "^3.1.0", - "@next/mdx": "^15.1.7", + "@next/mdx": "^15.2.3", "@types/mdx": "^2.0.13", - "next": "^15.1.7", + "next": "^15.2.3", "react": "^19.0.0", "react-dom": "^19.0.0", "react-syntax-highlighter": "^15.6.1", diff --git a/apps/next/package.json b/apps/next/package.json index 3d86eaa1..531eb4e1 100644 --- a/apps/next/package.json +++ b/apps/next/package.json @@ -12,7 +12,7 @@ "dependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", - "next": "^15.1.7", + "next": "^15.2.3", "@devup-ui/react": "workspace:*" }, "devDependencies": { diff --git a/apps/vite-lib/package.json b/apps/vite-lib/package.json index 7be59d9c..711d0dbd 100644 --- a/apps/vite-lib/package.json +++ b/apps/vite-lib/package.json @@ -10,10 +10,10 @@ "dependencies": { "react": "^19.0.0", "@devup-ui/react": "workspace:*", - "vite": "^6.1.0" + "vite": "^6.2.2" }, "devDependencies": { - "vite-plugin-dts": "^4.5.0", + "vite-plugin-dts": "^4.5.3", "@devup-ui/vite-plugin": "workspace:*", "@vitejs/plugin-react": "^4.3.4", "typescript": "^5", diff --git a/apps/vite/package.json b/apps/vite/package.json index f80e4985..fe3a4e75 100644 --- a/apps/vite/package.json +++ b/apps/vite/package.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@devup-ui/vite-plugin": "workspace:*", - "vite": "^6.1.0", + "vite": "^6.2.2", "@vitejs/plugin-react": "^4.3.4", "typescript": "^5", "@types/node": "^22", diff --git a/benchmark/next-chakra-ui/package.json b/benchmark/next-chakra-ui/package.json index 4c5997ee..fbdade39 100644 --- a/benchmark/next-chakra-ui/package.json +++ b/benchmark/next-chakra-ui/package.json @@ -10,13 +10,13 @@ "lint": "next lint" }, "dependencies": { - "@chakra-ui/react": "^3.8.0", + "@chakra-ui/react": "^3.13.0", "@emotion/react": "^11.14.0", - "next": "^15.1.7", - "next-themes": "^0.4.4", + "next": "^15.2.3", + "next-themes": "^0.4.6", "react": "^19.0.0", "react-dom": "^19.0.0", - "react-icons": "^5.4.0" + "react-icons": "^5.5.0" }, "devDependencies": { "@types/node": "^22", diff --git a/benchmark/next-devup-ui/package.json b/benchmark/next-devup-ui/package.json index 2d59a2d7..a2c11ea9 100644 --- a/benchmark/next-devup-ui/package.json +++ b/benchmark/next-devup-ui/package.json @@ -12,7 +12,7 @@ "dependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", - "next": "^15.1.7", + "next": "^15.2.3", "@devup-ui/react": "workspace:*" }, "devDependencies": { diff --git a/benchmark/next-kuma-ui/package.json b/benchmark/next-kuma-ui/package.json index b27af513..91468170 100644 --- a/benchmark/next-kuma-ui/package.json +++ b/benchmark/next-kuma-ui/package.json @@ -12,7 +12,7 @@ "dependencies": { "react": "^19.0.0", "react-dom": "^19.0.0", - "next": "^15.1.7", + "next": "^15.2.3", "@kuma-ui/core": "^1.5.9" }, "devDependencies": { diff --git a/bindings/devup-ui-wasm/Cargo.toml b/bindings/devup-ui-wasm/Cargo.toml index 46e42fb0..6ee7666d 100644 --- a/bindings/devup-ui-wasm/Cargo.toml +++ b/bindings/devup-ui-wasm/Cargo.toml @@ -2,7 +2,7 @@ name = "devup-ui-wasm" version = "0.1.0" authors = ["owjs3901 "] -edition = "2021" +edition = "2024" [lib] crate-type = ["cdylib", "rlib"] @@ -21,12 +21,12 @@ css = { path = "../../libs/css" } # all the `std::fmt` and `std::panicking` infrastructure, so isn't great for # code size when deploying. console_error_panic_hook = { version = "0.1.7", optional = true } -once_cell = "1.20.3" -js-sys = "0.3.76" -serde_json = "1.0.138" +once_cell = "1.21.1" +js-sys = "0.3.77" +serde_json = "1.0.140" serde-wasm-bindgen = "0.6.5" [dev-dependencies] wasm-bindgen-test = "0.3.50" serial_test = "3.2.0" -insta = "1.42.1" +insta = "1.42.2" diff --git a/bindings/devup-ui-wasm/src/lib.rs b/bindings/devup-ui-wasm/src/lib.rs index b6317cbc..564fa736 100644 --- a/bindings/devup-ui-wasm/src/lib.rs +++ b/bindings/devup-ui-wasm/src/lib.rs @@ -155,6 +155,12 @@ pub fn register_theme(theme_object: JsValue) -> Result<(), JsValue> { Ok(()) } +#[wasm_bindgen(js_name = "getDefaultTheme")] +pub fn get_default_theme() -> Result, JsValue> { + let sheet = GLOBAL_STYLE_SHEET.lock().unwrap(); + Ok(sheet.theme.get_default_theme()) +} + #[wasm_bindgen(js_name = "getCss")] pub fn get_css() -> Result { let sheet = GLOBAL_STYLE_SHEET.lock().unwrap(); diff --git a/libs/css/Cargo.toml b/libs/css/Cargo.toml index 011cd8e1..d40cf197 100644 --- a/libs/css/Cargo.toml +++ b/libs/css/Cargo.toml @@ -1,10 +1,10 @@ [package] name = "css" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] -once_cell = "1.20.3" +once_cell = "1.21.1" serial_test = "3.2.0" -serde = { version = "1.0.217", features = ["derive"] } +serde = { version = "1.0.219", features = ["derive"] } regex = "1.11.1" diff --git a/libs/extractor/Cargo.toml b/libs/extractor/Cargo.toml index 7ce0e01c..4b52e616 100644 --- a/libs/extractor/Cargo.toml +++ b/libs/extractor/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "extractor" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] oxc_parser = "0.52.0" @@ -11,8 +11,8 @@ oxc_allocator = "0.52.0" oxc_ast = "0.52.0" oxc_codegen = "0.52.0" css = { path = "../css" } -once_cell = "1.20.3" +once_cell = "1.21.1" [dev-dependencies] -insta = "1.42.1" -serial_test = "3.2.0" \ No newline at end of file +insta = "1.42.2" +serial_test = "3.2.0" diff --git a/libs/extractor/src/gen_class_name.rs b/libs/extractor/src/gen_class_name.rs index 646c698e..bc66eb80 100644 --- a/libs/extractor/src/gen_class_name.rs +++ b/libs/extractor/src/gen_class_name.rs @@ -1,10 +1,10 @@ use crate::{ExtractStyleProp, StyleProperty}; use oxc_allocator::CloneIn; +use oxc_ast::AstBuilder; use oxc_ast::ast::{ Expression, JSXAttribute, JSXAttributeValue, JSXExpression, ObjectPropertyKind, PropertyKey, PropertyKind, TemplateElement, TemplateElementValue, }; -use oxc_ast::AstBuilder; use oxc_span::SPAN; pub fn gen_class_names<'a>( @@ -28,7 +28,7 @@ fn gen_class_name<'a>( style_order: Option, ) -> Option> { match style_prop { - ExtractStyleProp::Static(ref mut st) => { + ExtractStyleProp::Static(st) => { if let Some(style_order) = style_order { st.set_style_order(style_order); } @@ -46,16 +46,16 @@ fn gen_class_name<'a>( ), )) } - ExtractStyleProp::StaticArray(ref mut res) => merge_expression_for_class_name( + ExtractStyleProp::StaticArray(res) => merge_expression_for_class_name( ast_builder, res.iter_mut() .filter_map(|st| gen_class_name(ast_builder, st, style_order)) .collect(), ), ExtractStyleProp::Conditional { - ref condition, - ref mut consequent, - ref mut alternate, + condition, + consequent, + alternate, .. } => { let consequent = consequent diff --git a/libs/extractor/src/lib.rs b/libs/extractor/src/lib.rs index e714f50f..c750a2fc 100644 --- a/libs/extractor/src/lib.rs +++ b/libs/extractor/src/lib.rs @@ -9,8 +9,8 @@ mod visit; use crate::extract_style::ExtractStyleValue; use crate::visit::DevupVisitor; use oxc_allocator::Allocator; -use oxc_ast::ast::Expression; use oxc_ast::VisitMut; +use oxc_ast::ast::Expression; use oxc_codegen::Codegen; use oxc_parser::{Parser, ParserReturn}; use oxc_span::SourceType; @@ -53,11 +53,11 @@ impl ExtractStyleProp<'_> { } styles } - ExtractStyleProp::StaticArray(ref array) => { + ExtractStyleProp::StaticArray(array) => { array.iter().flat_map(|s| s.extract()).collect() } ExtractStyleProp::Expression { styles, .. } => styles.to_vec(), - ExtractStyleProp::MemberExpression { ref map, .. } => { + ExtractStyleProp::MemberExpression { map, .. } => { map.values().flat_map(|s| s.extract()).collect() } } @@ -137,26 +137,30 @@ mod tests { #[serial] fn extract_just_tsx() { reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - "const a = 1;", - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - }, - ) - .unwrap()); + assert_debug_snapshot!( + extract( + "test.tsx", + "const a = 1;", + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + }, + ) + .unwrap() + ); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - "", - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - }, - ) - .unwrap()); + assert_debug_snapshot!( + extract( + "test.tsx", + "", + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + }, + ) + .unwrap() + ); } #[test] #[serial] @@ -175,58 +179,66 @@ mod tests { .unwrap()); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r#"import {Input} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r#"import {Input} from '@devup-ui/core' "#, - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); } #[test] #[serial] fn convert_tag() { reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r#"import {Box} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r#"import {Box} from '@devup-ui/core' "#, - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r#"import {Box} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r#"import {Box} from '@devup-ui/core' "#, - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); - assert_debug_snapshot!(extract( - "test.tsx", - r#"import {Box} from '@devup-ui/core' + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); + assert_debug_snapshot!( + extract( + "test.tsx", + r#"import {Box} from '@devup-ui/core' "#, - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); // assert_debug_snapshot!(extract( // "test.tsx", // r#"import {Box} from '@devup-ui/core' @@ -277,153 +289,176 @@ mod tests { #[serial] fn extract_style_props() { reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r"import {Box} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r"import {Box} from '@devup-ui/core' /> ", - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r"import {Box as C} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r"import {Box as C} from '@devup-ui/core' ", - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r"import {Input} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r"import {Input} from '@devup-ui/core' ", - ExtractOption { - package: "@devup-ui/core".to_string(), - css_file: None - } - ) - .unwrap()); + ExtractOption { + package: "@devup-ui/core".to_string(), + css_file: None + } + ) + .unwrap() + ); reset_class_map(); - assert_debug_snapshot!(extract( - "test.tsx", - r"import {Button} from '@devup-ui/core' + assert_debug_snapshot!( + extract( + "test.tsx", + r"import {Button} from '@devup-ui/core'