Release 1.1.0-rc.16 (#2483)

This commit is contained in:
Firstyear 2024-02-07 14:39:02 +10:00 committed by GitHub
parent cdbaefe23d
commit 7567514044
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
33 changed files with 1084 additions and 1802 deletions

View file

@ -41,8 +41,6 @@ jobs:
- name: "Build the workspace" - name: "Build the workspace"
run: cargo build --workspace run: cargo build --workspace
- name: "Build the idv-tui feature kanidm binary"
run: cargo build --bin kanidm --features idv-tui
- name: "Check disk space and size of target, then clean it" - name: "Check disk space and size of target, then clean it"
run: | run: |
df -h df -h

View file

@ -36,7 +36,6 @@
- illode - illode
- Jinna Kiisuo (jinnatar) - Jinna Kiisuo (jinnatar)
## Acknowledgements ## Acknowledgements
- M. Gerstner - M. Gerstner

314
Cargo.lock generated
View file

@ -94,9 +94,9 @@ dependencies = [
[[package]] [[package]]
name = "anstyle" name = "anstyle"
version = "1.0.5" version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2faccea4cc4ab4a667ce676a30e8ec13922a692c99bb8f5b11f1502c72e04220" checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
[[package]] [[package]]
name = "anstyle-parse" name = "anstyle-parse"
@ -477,17 +477,17 @@ dependencies = [
[[package]] [[package]]
name = "bindgen" name = "bindgen"
version = "0.69.2" version = "0.69.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d" checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
dependencies = [ dependencies = [
"bitflags 2.4.2", "bitflags 2.4.2",
"cexpr", "cexpr",
"clang-sys", "clang-sys",
"itertools 0.12.1",
"lazy_static", "lazy_static",
"lazycell", "lazycell",
"log", "log",
"peeking_take_while",
"prettyplease 0.2.16", "prettyplease 0.2.16",
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -616,9 +616,9 @@ checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205"
[[package]] [[package]]
name = "bytemuck" name = "bytemuck"
version = "1.14.1" version = "1.14.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed2490600f404f2b94c167e31d3ed1d5f3c225a0f3b80230053b3e0b7b962bd9" checksum = "ea31d69bda4949c1c1562c1e6f042a1caefac98cdc8a298260a2ff41c1e2d42b"
[[package]] [[package]]
name = "byteorder" name = "byteorder"
@ -746,9 +746,9 @@ dependencies = [
[[package]] [[package]]
name = "clap_complete" name = "clap_complete"
version = "4.4.9" version = "4.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df631ae429f6613fcd3a7c1adbdb65f637271e561b03680adaa6573015dfb106" checksum = "abb745187d7f4d76267b37485a65e0149edd0e91a4cfcdd3f27524ad86cee9f3"
dependencies = [ dependencies = [
"clap", "clap",
] ]
@ -949,7 +949,7 @@ dependencies = [
"clap", "clap",
"criterion-plot", "criterion-plot",
"is-terminal", "is-terminal",
"itertools", "itertools 0.10.5",
"num-traits", "num-traits",
"once_cell", "once_cell",
"oorandom", "oorandom",
@ -970,7 +970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
dependencies = [ dependencies = [
"cast", "cast",
"itertools", "itertools 0.10.5",
] ]
[[package]] [[package]]
@ -1040,31 +1040,6 @@ version = "0.8.19"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
[[package]]
name = "crossterm"
version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e64e6c0fbe2c17357405f7c758c1ef960fce08bdfb2c03d88d2a18d7e09c4b67"
dependencies = [
"bitflags 1.3.2",
"crossterm_winapi",
"libc",
"mio",
"parking_lot 0.12.1",
"signal-hook",
"signal-hook-mio",
"winapi",
]
[[package]]
name = "crossterm_winapi"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
dependencies = [
"winapi",
]
[[package]] [[package]]
name = "crunchy" name = "crunchy"
version = "0.2.2" version = "0.2.2"
@ -1102,48 +1077,9 @@ dependencies = [
"memchr", "memchr",
] ]
[[package]]
name = "cursive"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5438eb16bdd8af51b31e74764fef5d0a9260227a5ec82ba75c9d11ce46595839"
dependencies = [
"ahash 0.8.7",
"cfg-if",
"crossbeam-channel",
"crossterm",
"cursive_core",
"lazy_static",
"libc",
"log",
"signal-hook",
"unicode-segmentation",
"unicode-width",
]
[[package]]
name = "cursive_core"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4db3b58161228d0dcb45c7968c5e74c3f03ad39e8983e58ad7d57061aa2cd94d"
dependencies = [
"ahash 0.8.7",
"crossbeam-channel",
"enum-map",
"enumset",
"lazy_static",
"log",
"num",
"owning_ref",
"time",
"unicode-segmentation",
"unicode-width",
"xi-unicode",
]
[[package]] [[package]]
name = "daemon" name = "daemon"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"clap", "clap",
"clap_complete", "clap_complete",
@ -1459,26 +1395,6 @@ dependencies = [
"syn 2.0.48", "syn 2.0.48",
] ]
[[package]]
name = "enum-map"
version = "2.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9"
dependencies = [
"enum-map-derive",
]
[[package]]
name = "enum-map-derive"
version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.48",
]
[[package]] [[package]]
name = "enumflags2" name = "enumflags2"
version = "0.7.8" version = "0.7.8"
@ -1499,27 +1415,6 @@ dependencies = [
"syn 2.0.48", "syn 2.0.48",
] ]
[[package]]
name = "enumset"
version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d"
dependencies = [
"enumset_derive",
]
[[package]]
name = "enumset_derive"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af"
dependencies = [
"darling 0.20.5",
"proc-macro2",
"quote",
"syn 2.0.48",
]
[[package]] [[package]]
name = "equivalent" name = "equivalent"
version = "1.0.1" version = "1.0.1"
@ -2653,9 +2548,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
[[package]] [[package]]
name = "hermit-abi" name = "hermit-abi"
version = "0.3.4" version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f" checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3"
[[package]] [[package]]
name = "hex" name = "hex"
@ -2769,9 +2664,9 @@ dependencies = [
[[package]] [[package]]
name = "iana-time-zone" name = "iana-time-zone"
version = "0.1.59" version = "0.1.60"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
dependencies = [ dependencies = [
"android_system_properties", "android_system_properties",
"core-foundation-sys", "core-foundation-sys",
@ -2950,6 +2845,15 @@ dependencies = [
"either", "either",
] ]
[[package]]
name = "itertools"
version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
dependencies = [
"either",
]
[[package]] [[package]]
name = "itoa" name = "itoa"
version = "1.0.10" version = "1.0.10"
@ -2973,9 +2877,9 @@ checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
[[package]] [[package]]
name = "js-sys" name = "js-sys"
version = "0.3.67" version = "0.3.68"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
dependencies = [ dependencies = [
"wasm-bindgen", "wasm-bindgen",
] ]
@ -3027,7 +2931,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm-ipa-sync" name = "kanidm-ipa-sync"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"base64urlsafedata", "base64urlsafedata",
"chrono", "chrono",
@ -3052,7 +2956,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm-ldap-sync" name = "kanidm-ldap-sync"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"base64urlsafedata", "base64urlsafedata",
"chrono", "chrono",
@ -3078,7 +2982,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_build_profiles" name = "kanidm_build_profiles"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"base64 0.21.7", "base64 0.21.7",
"gix", "gix",
@ -3088,7 +2992,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_client" name = "kanidm_client"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"hyper", "hyper",
"kanidm_lib_file_permissions", "kanidm_lib_file_permissions",
@ -3126,7 +3030,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_lib_file_permissions" name = "kanidm_lib_file_permissions"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"kanidm_utils_users", "kanidm_utils_users",
"whoami", "whoami",
@ -3134,7 +3038,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_proto" name = "kanidm_proto"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"base32", "base32",
"base64urlsafedata", "base64urlsafedata",
@ -3154,13 +3058,12 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_tools" name = "kanidm_tools"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"async-recursion", "async-recursion",
"clap", "clap",
"clap_complete", "clap_complete",
"compact_jwt 0.3.3", "compact_jwt 0.3.3",
"cursive",
"dialoguer", "dialoguer",
"futures-concurrency", "futures-concurrency",
"kanidm_build_profiles", "kanidm_build_profiles",
@ -3187,14 +3090,13 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_unix_int" name = "kanidm_unix_int"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"base64urlsafedata", "base64urlsafedata",
"bytes", "bytes",
"clap", "clap",
"clap_complete", "clap_complete",
"compact_jwt 0.3.3",
"csv", "csv",
"futures", "futures",
"hashbrown 0.14.3", "hashbrown 0.14.3",
@ -3227,14 +3129,14 @@ dependencies = [
[[package]] [[package]]
name = "kanidm_utils_users" name = "kanidm_utils_users"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"libc", "libc",
] ]
[[package]] [[package]]
name = "kanidmd_core" name = "kanidmd_core"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"axum", "axum",
@ -3287,7 +3189,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_lib" name = "kanidmd_lib"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"base64 0.21.7", "base64 0.21.7",
"base64urlsafedata", "base64urlsafedata",
@ -3305,7 +3207,6 @@ dependencies = [
"kanidm_build_profiles", "kanidm_build_profiles",
"kanidm_lib_crypto", "kanidm_lib_crypto",
"kanidm_proto", "kanidm_proto",
"kanidm_utils_users",
"kanidmd_lib_macros", "kanidmd_lib_macros",
"lazy_static", "lazy_static",
"ldap3_proto", "ldap3_proto",
@ -3354,7 +3255,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_testkit" name = "kanidmd_testkit"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"assert_cmd", "assert_cmd",
"compact_jwt 0.3.3", "compact_jwt 0.3.3",
@ -3392,7 +3293,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_web_ui_admin" name = "kanidmd_web_ui_admin"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"gloo", "gloo",
"gloo-utils 0.2.0", "gloo-utils 0.2.0",
@ -3413,7 +3314,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_web_ui_login_flows" name = "kanidmd_web_ui_login_flows"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"gloo", "gloo",
"gloo-utils 0.2.0", "gloo-utils 0.2.0",
@ -3434,7 +3335,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_web_ui_shared" name = "kanidmd_web_ui_shared"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"gloo", "gloo",
"js-sys", "js-sys",
@ -3453,7 +3354,7 @@ dependencies = [
[[package]] [[package]]
name = "kanidmd_web_ui_user" name = "kanidmd_web_ui_user"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"gloo", "gloo",
"gloo-timers 0.3.0", "gloo-timers 0.3.0",
@ -3762,9 +3663,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
[[package]] [[package]]
name = "miniz_oxide" name = "miniz_oxide"
version = "0.7.1" version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
dependencies = [ dependencies = [
"adler", "adler",
] ]
@ -3870,7 +3771,7 @@ dependencies = [
[[package]] [[package]]
name = "nss_kanidm" name = "nss_kanidm"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"kanidm_unix_int", "kanidm_unix_int",
"lazy_static", "lazy_static",
@ -3922,9 +3823,9 @@ checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa"
[[package]] [[package]]
name = "num-complex" name = "num-complex"
version = "0.4.4" version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6"
dependencies = [ dependencies = [
"num-traits", "num-traits",
] ]
@ -3948,9 +3849,9 @@ dependencies = [
[[package]] [[package]]
name = "num-derive" name = "num-derive"
version = "0.4.1" version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -4269,7 +4170,7 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
[[package]] [[package]]
name = "orca" name = "orca"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"clap", "clap",
"crossbeam", "crossbeam",
@ -4311,18 +4212,9 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
[[package]]
name = "owning_ref"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce"
dependencies = [
"stable_deref_trait",
]
[[package]] [[package]]
name = "pam_kanidm" name = "pam_kanidm"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"kanidm_unix_int", "kanidm_unix_int",
"libc", "libc",
@ -4415,12 +4307,6 @@ dependencies = [
"proc-macro-hack", "proc-macro-hack",
] ]
[[package]]
name = "peeking_take_while"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
[[package]] [[package]]
name = "peg" name = "peg"
version = "0.8.2" version = "0.8.2"
@ -4456,9 +4342,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
[[package]] [[package]]
name = "pest" name = "pest"
version = "2.7.6" version = "2.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f200d8d83c44a45b21764d1916299752ca035d15ecd46faca3e9a2a2bf6ad06" checksum = "219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546"
dependencies = [ dependencies = [
"memchr", "memchr",
"thiserror", "thiserror",
@ -4737,7 +4623,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"itertools", "itertools 0.10.5",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 1.0.109", "syn 1.0.109",
@ -5091,9 +4977,9 @@ dependencies = [
[[package]] [[package]]
name = "rustix" name = "rustix"
version = "0.38.30" version = "0.38.31"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
dependencies = [ dependencies = [
"bitflags 2.4.2", "bitflags 2.4.2",
"errno", "errno",
@ -5455,27 +5341,6 @@ version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]]
name = "signal-hook"
version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801"
dependencies = [
"libc",
"signal-hook-registry",
]
[[package]]
name = "signal-hook-mio"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
dependencies = [
"libc",
"mio",
"signal-hook",
]
[[package]] [[package]]
name = "signal-hook-registry" name = "signal-hook-registry"
version = "1.4.1" version = "1.4.1"
@ -5487,7 +5352,7 @@ dependencies = [
[[package]] [[package]]
name = "sketching" name = "sketching"
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
dependencies = [ dependencies = [
"gethostname", "gethostname",
"num_enum", "num_enum",
@ -5690,13 +5555,12 @@ checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae"
[[package]] [[package]]
name = "tempfile" name = "tempfile"
version = "3.9.0" version = "3.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"fastrand", "fastrand",
"redox_syscall 0.4.1",
"rustix", "rustix",
"windows-sys 0.52.0", "windows-sys 0.52.0",
] ]
@ -5768,9 +5632,9 @@ dependencies = [
[[package]] [[package]]
name = "time" name = "time"
version = "0.3.32" version = "0.3.34"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fe80ced77cbfb4cb91a94bf72b378b4b6791a0d9b7f09d0be747d1bdff4e68bd" checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
dependencies = [ dependencies = [
"deranged", "deranged",
"itoa", "itoa",
@ -5826,9 +5690,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]] [[package]]
name = "tokio" name = "tokio"
version = "1.35.1" version = "1.36.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
dependencies = [ dependencies = [
"backtrace", "backtrace",
"bytes", "bytes",
@ -6159,7 +6023,7 @@ dependencies = [
"hostname-validator", "hostname-validator",
"log", "log",
"mbox", "mbox",
"num-derive 0.4.1", "num-derive 0.4.2",
"num-traits", "num-traits",
"oid", "oid",
"picky-asn1", "picky-asn1",
@ -6377,9 +6241,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]] [[package]]
name = "wasm-bindgen" name = "wasm-bindgen"
version = "0.2.90" version = "0.2.91"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"serde", "serde",
@ -6389,9 +6253,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-backend" name = "wasm-bindgen-backend"
version = "0.2.90" version = "0.2.91"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
dependencies = [ dependencies = [
"bumpalo", "bumpalo",
"log", "log",
@ -6404,9 +6268,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-futures" name = "wasm-bindgen-futures"
version = "0.4.40" version = "0.4.41"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"js-sys", "js-sys",
@ -6416,9 +6280,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-macro" name = "wasm-bindgen-macro"
version = "0.2.90" version = "0.2.91"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
dependencies = [ dependencies = [
"quote", "quote",
"wasm-bindgen-macro-support", "wasm-bindgen-macro-support",
@ -6426,9 +6290,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-macro-support" name = "wasm-bindgen-macro-support"
version = "0.2.90" version = "0.2.91"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -6439,15 +6303,15 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-shared" name = "wasm-bindgen-shared"
version = "0.2.90" version = "0.2.91"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
[[package]] [[package]]
name = "wasm-bindgen-test" name = "wasm-bindgen-test"
version = "0.3.40" version = "0.3.41"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "139bd73305d50e1c1c4333210c0db43d989395b64a237bd35c10ef3832a7f70c" checksum = "143ddeb4f833e2ed0d252e618986e18bfc7b0e52f2d28d77d05b2f045dd8eb61"
dependencies = [ dependencies = [
"console_error_panic_hook", "console_error_panic_hook",
"js-sys", "js-sys",
@ -6459,9 +6323,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-test-macro" name = "wasm-bindgen-test-macro"
version = "0.3.40" version = "0.3.41"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70072aebfe5da66d2716002c729a14e4aec4da0e23cc2ea66323dac541c93928" checksum = "a5211b7550606857312bba1d978a8ec75692eae187becc5e680444fffc5e6f89"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -6485,9 +6349,9 @@ dependencies = [
[[package]] [[package]]
name = "web-sys" name = "web-sys"
version = "0.3.67" version = "0.3.68"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
dependencies = [ dependencies = [
"js-sys", "js-sys",
"wasm-bindgen", "wasm-bindgen",
@ -6867,9 +6731,9 @@ checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
[[package]] [[package]]
name = "winnow" name = "winnow"
version = "0.5.36" version = "0.5.39"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "818ce546a11a9986bc24f93d0cdf38a8a1a400f1473ea8c82e59f6e0ffab9249" checksum = "5389a154b01683d28c77f8f68f49dea75f0a4da32557a58f68ee51ebba472d29"
dependencies = [ dependencies = [
"memchr", "memchr",
] ]
@ -6902,12 +6766,6 @@ dependencies = [
"time", "time",
] ]
[[package]]
name = "xi-unicode"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a"
[[package]] [[package]]
name = "yew" name = "yew"
version = "0.20.0" version = "0.20.0"
@ -7065,7 +6923,7 @@ checksum = "103fa851fff70ea29af380e87c25c48ff7faac5c530c70bd0e65366d4e0c94e4"
dependencies = [ dependencies = [
"derive_builder", "derive_builder",
"fancy-regex", "fancy-regex",
"itertools", "itertools 0.10.5",
"js-sys", "js-sys",
"lazy_static", "lazy_static",
"quick-error", "quick-error",

View file

@ -32,7 +32,7 @@ members = [
] ]
[workspace.package] [workspace.package]
version = "1.1.0-rc.15-dev" version = "1.1.0-rc.16"
authors = [ authors = [
"William Brown <william@blackhats.net.au>", "William Brown <william@blackhats.net.au>",
"James Hodgkinson <james@terminaloutcomes.com>", "James Hodgkinson <james@terminaloutcomes.com>",
@ -78,18 +78,19 @@ sshkey-attest = { git = "https://github.com/kanidm/webauthn-rs.git", rev = "5f4d
# kanidm-hsm-crypto = { path = "../hsm-crypto" } # kanidm-hsm-crypto = { path = "../hsm-crypto" }
[workspace.dependencies] [workspace.dependencies]
kanidmd_core = { path = "./server/core", version = "1.1.0-rc.15-dev" } kanidmd_core = { path = "./server/core", version = "1.1.0-rc.16" }
kanidmd_lib = { path = "./server/lib", version = "1.1.0-rc.15-dev" } kanidmd_lib = { path = "./server/lib", version = "1.1.0-rc.16" }
kanidmd_lib_macros = { path = "./server/lib-macros", version = "1.1.0-rc.15-dev" } kanidmd_lib_macros = { path = "./server/lib-macros", version = "1.1.0-rc.16" }
kanidmd_testkit = { path = "./server/testkit", version = "1.1.0-rc.15-dev" } kanidmd_testkit = { path = "./server/testkit", version = "1.1.0-rc.16" }
kanidm_build_profiles = { path = "./libs/profiles", version = "1.1.0-rc.15-dev" } kanidm_build_profiles = { path = "./libs/profiles", version = "1.1.0-rc.16" }
kanidm_client = { path = "./libs/client", version = "1.1.0-rc.15-dev" } kanidm_client = { path = "./libs/client", version = "1.1.0-rc.16" }
kanidm-hsm-crypto = "^0.1.5" kanidm-hsm-crypto = "^0.1.5"
kanidm_lib_crypto = { path = "./libs/crypto", version = "1.1.0-rc.15-dev" } kanidm_lib_crypto = { path = "./libs/crypto", version = "1.1.0-rc.16" }
kanidm_lib_file_permissions = { path = "./libs/file_permissions", version = "1.1.0-rc.15-dev" } kanidm_lib_file_permissions = { path = "./libs/file_permissions", version = "1.1.0-rc.16" }
kanidm_proto = { path = "./proto", version = "1.1.0-rc.15-dev" } kanidm_proto = { path = "./proto", version = "1.1.0-rc.16" }
kanidm_unix_int = { path = "./unix_integration", version = "1.1.0-rc.15-dev" } kanidm_unix_int = { path = "./unix_integration", version = "1.1.0-rc.16" }
kanidm_utils_users = { path = "./libs/users", version = "1.1.0-rc.15-dev" } kanidm_utils_users = { path = "./libs/users", version = "1.1.0-rc.16" }
sketching = { path = "./libs/sketching", version = "1.1.0-rc.16" }
serde_with = "3.4.0" serde_with = "3.4.0"
argon2 = { version = "0.5.2", features = ["alloc"] } argon2 = { version = "0.5.2", features = ["alloc"] }
@ -206,7 +207,6 @@ serde_cbor = { version = "0.12.0-dev", package = "serde_cbor_2" }
serde_json = "^1.0.107" serde_json = "^1.0.107"
serde-wasm-bindgen = "0.5" serde-wasm-bindgen = "0.5"
shellexpand = "^2.1.2" shellexpand = "^2.1.2"
sketching = { path = "./libs/sketching", version = "1.1.0-rc.15-dev" }
smartstring = "^1.0.1" smartstring = "^1.0.1"
smolset = "^1.3.1" smolset = "^1.3.1"
sshkey-attest = "^0.5.0-dev" sshkey-attest = "^0.5.0-dev"

View file

@ -1,6 +1,6 @@
IMAGE_BASE ?= kanidm IMAGE_BASE ?= kanidm
IMAGE_VERSION ?= devel IMAGE_VERSION ?= devel
IMAGE_EXT_VERSION ?= 1.1.0-rc.15-dev IMAGE_EXT_VERSION ?= 1.1.0-rc.16
CONTAINER_TOOL_ARGS ?= CONTAINER_TOOL_ARGS ?=
IMAGE_ARCH ?= "linux/amd64,linux/arm64" IMAGE_ARCH ?= "linux/amd64,linux/arm64"
CONTAINER_BUILD_ARGS ?= CONTAINER_BUILD_ARGS ?=

View file

@ -14,8 +14,8 @@ of requirements and integrations. You should not need any other components (like
use Kanidm - we already have everything you need! use Kanidm - we already have everything you need!
To achieve this we rely heavily on strict defaults, simple configuration, and self-healing To achieve this we rely heavily on strict defaults, simple configuration, and self-healing
components. This allows Kanidm to run from small home labs, for families, small business, and all components. This allows Kanidm to run from small home labs, families, small business, and all the
the way to the largest enterprise needs. way to the largest enterprise needs.
If you want to host your own authentication service, then Kanidm is for you! If you want to host your own authentication service, then Kanidm is for you!
@ -23,15 +23,17 @@ If you want to host your own authentication service, then Kanidm is for you!
Kanidm supports: Kanidm supports:
- Webauthn (passkeys) for secure cryptographic authentication - Passkeys (webauthn) for secure cryptographic authentication
- Attested Passkeys for high assurance environments
- Oauth2/OIDC Authentication provider for web SSO - Oauth2/OIDC Authentication provider for web SSO
- Oauth Application Portal/Gateway allowing easy access to linked applications - Application Portal allowing easy access to linked applications
- Linux/Unix integration with offline authentication - Linux/Unix integration with TPM secured offline authentication
- SSH key distribution to Linux/Unix systems - SSH key distribution to Linux/Unix systems
- RADIUS for network and VPN authentication - RADIUS for network and VPN authentication
- Read only LDAPS gateway for Legacy Systems - Read only LDAPS gateway for Legacy Systems
- Complete CLI tooling for Administration - Complete CLI tooling for Administration
- A WebUI for User Self Service - A WebUI for User Self Service
- Two node high availability using database replication
</details> </details>
@ -65,29 +67,28 @@ and answer questions. Alternately you can open a new [github discussion].
## What does Kanidm mean? ## What does Kanidm mean?
Kanidm is a portmanteau of 'kani' and 'idm'. Kani is Japanese for crab, related to Rust's mascot Kanidm is a portmanteau of 'kani' and 'idm'. Kani is Japanese for crab, related to Rust's mascot
ferris the crab. identity management is often abbreviated to 'idm', and is a common industry term ferris the crab. Identity management is often abbreviated to 'idm', and is a common industry term
for these services. for authentication providers.
Kanidm is pronounced as "kar - nee - dee - em". Kanidm is pronounced as "kar - nee - dee - em".
## Comparison with other services ## Comparison with other services
<details><summary>LLDAP</summary> <details><summary>LLDAP</summary>
[LLDAP](https://github.com/nitnelave/lldap) is a similar project aiming for a small and easy to [LLDAP](https://github.com/nitnelave/lldap) is a similar project aiming for a small and easy to
administer LDAP server with a web administration portal. Both projects use the administer LDAP server with a web administration portal. Both projects use the
[Kanidm LDAP bindings](https://github.com/kanidm/ldap3), and have many similar ideas. [Kanidm LDAP bindings](https://github.com/kanidm/ldap3), and have many similar ideas.
The primary benefit of Kanidm over LLDAP is that Kanidm offers a broader set of "built in" features The primary benefit of Kanidm over LLDAP is that Kanidm offers a broader set of "built in" features
like Oauth2 and OIDC. To use these from LLDAP you need an external portal like Keycloak, where in like Oauth2 and OIDC. To use these from LLDAP you need an external portal like Keycloak. However
Kanidm they are "built in". However that is also a strength of LLDAP is that is offers "less" which that is also a strength of LLDAP is that is offers "less" which may make it easier to administer and
may make it easier to administer and deploy for you. deploy for you.
While LLDAP offers a simple Web UI as the primary user management frontend, Kanidm currently only While LLDAP offers a simple Web UI as the primary user management frontend, Kanidm currently only
offers administration functionality via its CLI. offers administration functionality via its CLI. The Kanidm Web UI is tailored to user interactions.
If Kanidm is too complex for your needs, you should check out LLDAP as a smaller alternative. If you If Kanidm is too complex for your needs, you should check out LLDAP as a smaller alternative. If you
want a project which has a broader feature set out of the box, then Kanidm might be a better fit. want a project which has a broader feature set out of the box, then Kanidm will be a better fit.
</details> </details>
@ -101,7 +102,8 @@ probably better alternatives. If you want a service that is easy to setup and fo
Kanidm is a better choice. Kanidm is a better choice.
Kanidm was originally inspired by many elements of both 389-ds and OpenLDAP. Already Kanidm is as Kanidm was originally inspired by many elements of both 389-ds and OpenLDAP. Already Kanidm is as
fast as (or faster than) 389-ds for performance and scaling as a directory service. fast as (or faster than) 389-ds for performance and scaling as a directory service while having a
richer feature set.
</details> </details>
@ -110,7 +112,7 @@ FreeIPA is another identity management service for Linux/Unix, and ships a huge
from LDAP, Kerberos, DNS, Certificate Authority, and more. from LDAP, Kerberos, DNS, Certificate Authority, and more.
FreeIPA however is a complex system, with a huge amount of parts and configuration. This adds a lot FreeIPA however is a complex system, with a huge amount of parts and configuration. This adds a lot
of resource overhead and difficulty for administration. of resource overhead and difficulty for administration and upgrades.
Kanidm aims to have the features richness of FreeIPA, but without the resource and administration Kanidm aims to have the features richness of FreeIPA, but without the resource and administration
overheads. If you want a complete IDM package, but in a lighter footprint and easier to manage, then overheads. If you want a complete IDM package, but in a lighter footprint and easier to manage, then

View file

@ -14,6 +14,34 @@ report it to our [issue tracker].
# Release Notes # Release Notes
## 2024-02-07 - Kanidm 1.1.0-rc.16
This is the sixteenth pre-release of the Kanidm Identity Management project. Pre-releases are to
help get feedback and ideas from the community on how we can continue to make this project better.
This is the final release candidate before we publish a release version. We believe that the API and
server interfaces are stable and reliable enough for people to depend on, and to develop external
tools to interact with Kanidm.
### 1.1.0-rc.16 Release Highlights
- Replication for two node environments is now supported
- Account policy supports password minimum length
- Improve performance of webui
- Add transitional compatability with SSSD
- Improve TPM interfaces in unix clients
- Allow importing more weak password schemes from FreeIPA
- Support Attestation of Passkeys/Webauthn - this makes us the first IDM to support this!
- Add entry-managed-by and hierarchial access control profiles
- Rework and improve default access controls to further restrict default privileges
- New replicated domain migration framework for distributed updates
- Start to add PIV/Smartcard authentication groundwork
- Allow changes to OAuth2 RS origin
- Support RFC8414 OAuth2 metadata
- Improve TLS error dialogs to assist administrators
- Support RFC6749 Client Credentials Grant
- Support custom claim maps in OIDC
## 2023-10-31 - Kanidm 1.1.0-beta14 ## 2023-10-31 - Kanidm 1.1.0-beta14
This is the fourteenth pre-release of the Kanidm Identity Management project. Pre-releases are to This is the fourteenth pre-release of the Kanidm Identity Management project. Pre-releases are to

View file

@ -68,11 +68,11 @@ mishandling secrets such as these so we should not rely on this as our sole defe
For public clients (which have no `client_id` authentication) we strictly enforce PKCE since For public clients (which have no `client_id` authentication) we strictly enforce PKCE since
disclosure of the authorisation code to an attacker will allow them to perform the code exchange. disclosure of the authorisation code to an attacker will allow them to perform the code exchange.
OpenID connect internally has a `nonce` parameter in its operations. Commonly it is argued that OpenID connect internally has a `nonce` parameter in its operations. Commonly it is argued that this
this value removes the need for OpenID connect clients to implement PKCE. It does not. This value removes the need for OpenID connect clients to implement PKCE. It does not. This parameter is
parameter is not equivalent or a replacement for PKCE. While the `nonce` can assist with certain not equivalent or a replacement for PKCE. While the `nonce` can assist with certain attack
attack mitigations, authorisation code interception is not prevented by the presence or validation mitigations, authorisation code interception is not prevented by the presence or validation of the
of the `nonce` value. `nonce` value.
We would strongly encourage OAuth2 client implementations to implement and support PKCE, as it We would strongly encourage OAuth2 client implementations to implement and support PKCE, as it
provides defense in depth to known and exploited authorisation code interception attacks. provides defense in depth to known and exploited authorisation code interception attacks.
@ -95,8 +95,8 @@ and may also limit the amount of keys we can store on the device. In the case of
they do not even support RSA keys up to 8192 bits (but they do support ECDSA 384 and 521). An they do not even support RSA keys up to 8192 bits (but they do support ECDSA 384 and 521). An
example of this is TPMs, which only support up to 4096 bit RSA keys at this time. example of this is TPMs, which only support up to 4096 bit RSA keys at this time.
As a result, we want to guide people toward smaller, faster and more secure cryptographic As a result, we want to guide people toward smaller, faster and more secure cryptographic standards
standards like ECDSA. We want to encourage application developers to implement ECDSA in their OAuth2 like ECDSA. We want to encourage application developers to implement ECDSA in their OAuth2
applications as it is likely that limitations of RSA will be hit in the future. applications as it is likely that limitations of RSA will be hit in the future.
Generally, it's also positive to encourage applications to review and update their cryptographic Generally, it's also positive to encourage applications to review and update their cryptographic

View file

@ -6,7 +6,8 @@ This happens in Docker currently, and here's some instructions for doing it for
1. Start in the root directory of the repository. 1. Start in the root directory of the repository.
2. Run `./platform/debian/ubuntu_docker_builder.sh` This'll start a container, mounting the 2. Run `./platform/debian/ubuntu_docker_builder.sh` This'll start a container, mounting the
repository in `~/kanidm/` and installing dependencies via `./scripts/install_ubuntu_dependencies.sh`. repository in `~/kanidm/` and installing dependencies via
`./scripts/install_ubuntu_dependencies.sh`.
3. Building packages uses make, get a list by running `make -f ./platform/debian/Makefile help` 3. Building packages uses make, get a list by running `make -f ./platform/debian/Makefile help`
4. So if you wanted to build the package for the Kanidm CLI, run 4. So if you wanted to build the package for the Kanidm CLI, run
`make -f ./platform/debian/Makefile debs/kanidm`. `make -f ./platform/debian/Makefile debs/kanidm`.

View file

@ -6,6 +6,7 @@
cargo install cargo-audit cargo install cargo-audit
cargo install cargo-outdated cargo install cargo-outdated
cargo install cargo-udeps cargo install cargo-udeps
cargo install wasm-bindgen-cli
``` ```
## Check List ## Check List
@ -34,6 +35,7 @@ cargo install cargo-udeps
- [ ] cargo test - [ ] cargo test
- [ ] build wasm components with release profile - [ ] build wasm components with release profile
- [ ] Update `RELEASE_NOTES.md` - [ ] Update `RELEASE_NOTES.md`
- [ ] Update `README.md`
- [ ] git commit - [ ] git commit
- [ ] git push origin YYYYMMDD-release - [ ] git push origin YYYYMMDD-release
- [ ] Merge PR - [ ] Merge PR

View file

@ -96,9 +96,6 @@ svg = { workspace = true }
[target.'cfg(target_family = "windows")'.dependencies] [target.'cfg(target_family = "windows")'.dependencies]
whoami = { workspace = true } whoami = { workspace = true }
[target.'cfg(not(target_family = "windows"))'.dependencies]
kanidm_utils_users = { workspace = true }
[features] [features]
# default = [ "libsqlite3-sys/bundled", "openssl/vendored" ] # default = [ "libsqlite3-sys/bundled", "openssl/vendored" ]

View file

@ -96,6 +96,7 @@ function passStringToWasm0(arg, malloc, realloc) {
const ret = encodeString(arg, view); const ret = encodeString(arg, view);
offset += ret.written; offset += ret.written;
ptr = realloc(ptr, len, offset, 1) >>> 0;
} }
WASM_VECTOR_LEN = offset; WASM_VECTOR_LEN = offset;
@ -189,6 +190,12 @@ function debugString(val) {
return className; return className;
} }
const CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(state => {
wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b)
});
function makeMutClosure(arg0, arg1, dtor, f) { function makeMutClosure(arg0, arg1, dtor, f) {
const state = { a: arg0, b: arg1, cnt: 1, dtor }; const state = { a: arg0, b: arg1, cnt: 1, dtor };
const real = (...args) => { const real = (...args) => {
@ -203,14 +210,14 @@ function makeMutClosure(arg0, arg1, dtor, f) {
} finally { } finally {
if (--state.cnt === 0) { if (--state.cnt === 0) {
wasm.__wbindgen_export_2.get(state.dtor)(a, state.b); wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);
CLOSURE_DTORS.unregister(state);
} else { } else {
state.a = a; state.a = a;
} }
} }
}; };
real.original = state; real.original = state;
CLOSURE_DTORS.register(real, state, state);
return real; return real;
} }
@ -223,19 +230,19 @@ function addBorrowedObject(obj) {
} }
function __wbg_adapter_38(arg0, arg1, arg2) { function __wbg_adapter_38(arg0, arg1, arg2) {
try { try {
wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hd1639e989b66ff34(arg0, arg1, addBorrowedObject(arg2)); wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d76d8166dd2cf71(arg0, arg1, addBorrowedObject(arg2));
} finally { } finally {
heap[stack_pointer++] = undefined; heap[stack_pointer++] = undefined;
} }
} }
function __wbg_adapter_41(arg0, arg1, arg2) { function __wbg_adapter_41(arg0, arg1, arg2) {
wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hc774ebf2925e9d9a(arg0, arg1, addHeapObject(arg2)); wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4f0e587bc277dda7(arg0, arg1, addHeapObject(arg2));
} }
function __wbg_adapter_44(arg0, arg1, arg2) { function __wbg_adapter_44(arg0, arg1, arg2) {
try { try {
wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h9b576c7a5c56443d(arg0, arg1, addBorrowedObject(arg2)); wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hc7b19acfe86b0ddf(arg0, arg1, addBorrowedObject(arg2));
} finally { } finally {
heap[stack_pointer++] = undefined; heap[stack_pointer++] = undefined;
} }
@ -345,6 +352,10 @@ function __wbg_get_imports() {
const ret = false; const ret = false;
return ret; return ret;
}; };
imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
const ret = getObject(arg0);
return addHeapObject(ret);
};
imports.wbg.__wbindgen_is_object = function(arg0) { imports.wbg.__wbindgen_is_object = function(arg0) {
const val = getObject(arg0); const val = getObject(arg0);
const ret = typeof(val) === 'object' && val !== null; const ret = typeof(val) === 'object' && val !== null;
@ -366,10 +377,6 @@ function __wbg_get_imports() {
const ret = new Error(getStringFromWasm0(arg0, arg1)); const ret = new Error(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
const ret = getObject(arg0);
return addHeapObject(ret);
};
imports.wbg.__wbindgen_boolean_get = function(arg0) { imports.wbg.__wbindgen_boolean_get = function(arg0) {
const v = getObject(arg0); const v = getObject(arg0);
const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2; const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;
@ -389,14 +396,14 @@ function __wbg_get_imports() {
const ret = arg0; const ret = arg0;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_setlistenerid_3183aae8fa5840fb = function(arg0, arg1) {
getObject(arg0).__yew_listener_id = arg1 >>> 0;
};
imports.wbg.__wbg_listenerid_12315eee21527820 = function(arg0, arg1) { imports.wbg.__wbg_listenerid_12315eee21527820 = function(arg0, arg1) {
const ret = getObject(arg1).__yew_listener_id; const ret = getObject(arg1).__yew_listener_id;
getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret; getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret;
getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret); getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);
}; };
imports.wbg.__wbg_setlistenerid_3183aae8fa5840fb = function(arg0, arg1) {
getObject(arg0).__yew_listener_id = arg1 >>> 0;
};
imports.wbg.__wbg_subtreeid_e348577f7ef777e3 = function(arg0, arg1) { imports.wbg.__wbg_subtreeid_e348577f7ef777e3 = function(arg0, arg1) {
const ret = getObject(arg1).__yew_subtree_id; const ret = getObject(arg1).__yew_subtree_id;
getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret; getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret;
@ -435,10 +442,10 @@ function __wbg_get_imports() {
wasm.__wbindgen_free(deferred0_0, deferred0_1, 1); wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
} }
}; };
imports.wbg.__wbg_queueMicrotask_4d890031a6a5a50c = function(arg0) { imports.wbg.__wbg_queueMicrotask_f61ee94ee663068b = function(arg0) {
queueMicrotask(getObject(arg0)); queueMicrotask(getObject(arg0));
}; };
imports.wbg.__wbg_queueMicrotask_adae4bc085237231 = function(arg0) { imports.wbg.__wbg_queueMicrotask_f82fc5d1e8f816ae = function(arg0) {
const ret = getObject(arg0).queueMicrotask; const ret = getObject(arg0).queueMicrotask;
return addHeapObject(ret); return addHeapObject(ret);
}; };
@ -468,27 +475,7 @@ function __wbg_get_imports() {
wasm.__wbindgen_free(arg0, arg1 * 4, 4); wasm.__wbindgen_free(arg0, arg1 * 4, 4);
console.log(...v0); console.log(...v0);
}; };
imports.wbg.__wbg_body_64abc9aba1891e91 = function(arg0) { imports.wbg.__wbg_instanceof_Window_cee7a886d55e7df5 = function(arg0) {
const ret = getObject(arg0).body;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_createElement_fdd5c113cb84539e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createElementNS_524b05a6070757b6 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
const ret = getObject(arg0).createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createTextNode_7ff0c034b2855f66 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).createTextNode(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
};
imports.wbg.__wbg_querySelector_c72dce5ac4b6bc3e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_Window_3e5cd1f48c152d01 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Window; result = getObject(arg0) instanceof Window;
@ -498,31 +485,31 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_document_d609202d16c38224 = function(arg0) { imports.wbg.__wbg_document_eb7fd66bde3ee213 = function(arg0) {
const ret = getObject(arg0).document; const ret = getObject(arg0).document;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_location_176c34e89c2c9d80 = function(arg0) { imports.wbg.__wbg_location_b17760ac7977a47a = function(arg0) {
const ret = getObject(arg0).location; const ret = getObject(arg0).location;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_history_80998b7456bf367e = function() { return handleError(function (arg0) { imports.wbg.__wbg_history_6882f83324841599 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).history; const ret = getObject(arg0).history;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_localStorage_8c507fd281456944 = function() { return handleError(function (arg0) { imports.wbg.__wbg_localStorage_3d538af21ea07fcc = function() { return handleError(function (arg0) {
const ret = getObject(arg0).localStorage; const ret = getObject(arg0).localStorage;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_sessionStorage_adb12b0c8ea06c48 = function() { return handleError(function (arg0) { imports.wbg.__wbg_sessionStorage_32de79fb90d1534a = function() { return handleError(function (arg0) {
const ret = getObject(arg0).sessionStorage; const ret = getObject(arg0).sessionStorage;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_fetch_6c415b3a07763878 = function(arg0, arg1) { imports.wbg.__wbg_fetch_33c84c2bf739f490 = function(arg0, arg1) {
const ret = getObject(arg0).fetch(getObject(arg1)); const ret = getObject(arg0).fetch(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_instanceof_Element_3f326a19cc457941 = function(arg0) { imports.wbg.__wbg_instanceof_Element_813f33306edae612 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Element; result = getObject(arg0) instanceof Element;
@ -532,193 +519,223 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_namespaceURI_7cc7ef157e398356 = function(arg0, arg1) { imports.wbg.__wbg_namespaceURI_230708ae7f4baac5 = function(arg0, arg1) {
const ret = getObject(arg1).namespaceURI; const ret = getObject(arg1).namespaceURI;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN; var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_classList_82893a9100db6428 = function(arg0) { imports.wbg.__wbg_classList_e98b57addeeb384e = function(arg0) {
const ret = getObject(arg0).classList; const ret = getObject(arg0).classList;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_setinnerHTML_ce0d6527ce4086f2 = function(arg0, arg1, arg2) { imports.wbg.__wbg_setinnerHTML_95222f1a2e797983 = function(arg0, arg1, arg2) {
getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2); getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2);
}; };
imports.wbg.__wbg_outerHTML_b5a8d952b5615778 = function(arg0, arg1) { imports.wbg.__wbg_outerHTML_eb21059e86b1e9f4 = function(arg0, arg1) {
const ret = getObject(arg1).outerHTML; const ret = getObject(arg1).outerHTML;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_children_990f38c4f4d5c721 = function(arg0) { imports.wbg.__wbg_children_ed606b49af931792 = function(arg0) {
const ret = getObject(arg0).children; const ret = getObject(arg0).children;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_removeAttribute_2e200daefb9f3ed4 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_removeAttribute_0c021c98a4dc7402 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeAttribute(getStringFromWasm0(arg1, arg2)); getObject(arg0).removeAttribute(getStringFromWasm0(arg1, arg2));
}, arguments) }; }, arguments) };
imports.wbg.__wbg_setAttribute_e7b72a5e7cfcb5a3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { imports.wbg.__wbg_setAttribute_f7ffa687ef977957 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) }; }, arguments) };
imports.wbg.__wbg_getItem_5395a7e200c31e89 = function() { return handleError(function (arg0, arg1, arg2, arg3) { imports.wbg.__wbg_body_874ccb42daaab363 = function(arg0) {
const ret = getObject(arg1).getItem(getStringFromWasm0(arg2, arg3)); const ret = getObject(arg0).body;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); return isLikeNone(ret) ? 0 : addHeapObject(ret);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_removeItem_c84f914587f36b1a = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeItem(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_setItem_3786c4c8dd0c9bd0 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setItem(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_setchecked_c1d5c3726082e274 = function(arg0, arg1) {
getObject(arg0).checked = arg1 !== 0;
}; };
imports.wbg.__wbg_value_e024243a9dae20bc = function(arg0, arg1) { imports.wbg.__wbg_createElement_03cf347ddad1c8c0 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg1).value; const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createElementNS_93f8de4acdef6da8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
const ret = getObject(arg0).createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createTextNode_ea32ad2506f7ae78 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).createTextNode(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
};
imports.wbg.__wbg_querySelector_118a0639aa1f51cd = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_addEventListener_bc4a7ad4cc72c6bf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
}, arguments) };
imports.wbg.__wbg_removeEventListener_deae10c75ef836f8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);
}, arguments) };
imports.wbg.__wbg_href_6918c551c13f118b = function(arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_setvalue_5b3442ff620b4a5d = function(arg0, arg1, arg2) { imports.wbg.__wbg_parentNode_e3a5ee563364a613 = function(arg0) {
getObject(arg0).value = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_bubbles_f1cdd0584446cad0 = function(arg0) {
const ret = getObject(arg0).bubbles;
return ret;
};
imports.wbg.__wbg_cancelBubble_976cfdf7ac449a6c = function(arg0) {
const ret = getObject(arg0).cancelBubble;
return ret;
};
imports.wbg.__wbg_composedPath_12a068e57a98cf90 = function(arg0) {
const ret = getObject(arg0).composedPath();
return addHeapObject(ret);
};
imports.wbg.__wbg_preventDefault_7f821f72e7c6b5d4 = function(arg0) {
getObject(arg0).preventDefault();
};
imports.wbg.__wbg_get_0231cdd369e04a1d = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = getObject(arg1).get(getStringFromWasm0(arg2, arg3));
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_set_27f236f6d7a28c29 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_parentNode_92a7017b3a4fad43 = function(arg0) {
const ret = getObject(arg0).parentNode; const ret = getObject(arg0).parentNode;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_parentElement_72e144c2e8d9e0b5 = function(arg0) { imports.wbg.__wbg_parentElement_45a9756dc74ff48b = function(arg0) {
const ret = getObject(arg0).parentElement; const ret = getObject(arg0).parentElement;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_lastChild_a62e3fbaab87f734 = function(arg0) { imports.wbg.__wbg_lastChild_d22dbf81f92f163b = function(arg0) {
const ret = getObject(arg0).lastChild; const ret = getObject(arg0).lastChild;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_nextSibling_bafccd3347d24543 = function(arg0) { imports.wbg.__wbg_nextSibling_87d2b32dfbf09fe3 = function(arg0) {
const ret = getObject(arg0).nextSibling; const ret = getObject(arg0).nextSibling;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_setnodeValue_630c6470d05b600e = function(arg0, arg1, arg2) { imports.wbg.__wbg_setnodeValue_d1cec51282858afe = function(arg0, arg1, arg2) {
getObject(arg0).nodeValue = arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2); getObject(arg0).nodeValue = arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2);
}; };
imports.wbg.__wbg_textContent_2f37235e13f8484b = function(arg0, arg1) { imports.wbg.__wbg_textContent_528ff517a0418a3e = function(arg0, arg1) {
const ret = getObject(arg1).textContent; const ret = getObject(arg1).textContent;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN; var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_appendChild_d30e6b83791d04c0 = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_appendChild_4153ba1b5d54d73b = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).appendChild(getObject(arg1)); const ret = getObject(arg0).appendChild(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_insertBefore_726c1640c419e940 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_insertBefore_2be91083083caa9e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).insertBefore(getObject(arg1), getObject(arg2)); const ret = getObject(arg0).insertBefore(getObject(arg1), getObject(arg2));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_removeChild_942eb9c02243d84d = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_removeChild_660924798c7e128c = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).removeChild(getObject(arg1)); const ret = getObject(arg0).removeChild(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_instanceof_ShadowRoot_0bd39e89ab117f86 = function(arg0) { imports.wbg.__wbg_add_73b81757e03ad37a = function() { return handleError(function (arg0, arg1, arg2) {
let result; getObject(arg0).add(getStringFromWasm0(arg1, arg2));
try { }, arguments) };
result = getObject(arg0) instanceof ShadowRoot; imports.wbg.__wbg_getItem_5c179cd36e9529e8 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
} catch (_) { const ret = getObject(arg1).getItem(getStringFromWasm0(arg2, arg3));
result = false; var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
} var len1 = WASM_VECTOR_LEN;
const ret = result; getInt32Memory0()[arg0 / 4 + 1] = len1;
return ret; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_removeItem_c402594a05099505 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeItem(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_setItem_7b55989efb4d45f7 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setItem(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_value_ffef403d62e3df58 = function(arg0, arg1) {
const ret = getObject(arg1).value;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_host_09eee5e3d9cf59a1 = function(arg0) { imports.wbg.__wbg_setvalue_cbab536654d8dd52 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).host; getObject(arg0).value = getStringFromWasm0(arg1, arg2);
return addHeapObject(ret);
}; };
imports.wbg.__wbg_addEventListener_374cbfd2bbc19ccf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { imports.wbg.__wbg_href_a5b902312c18d121 = function() { return handleError(function (arg0, arg1) {
getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
}, arguments) };
imports.wbg.__wbg_removeEventListener_9ece7e86d1135657 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);
}, arguments) };
imports.wbg.__wbg_state_ba77b2c3ee29c912 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).state;
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_pushState_e159043fce8f87bc = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
getObject(arg0).pushState(getObject(arg1), getStringFromWasm0(arg2, arg3), arg4 === 0 ? undefined : getStringFromWasm0(arg4, arg5));
}, arguments) };
imports.wbg.__wbg_href_160af2ae1328d7b7 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).href; const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) }; }, arguments) };
imports.wbg.__wbg_sethref_90b000c8b01f96b1 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_sethref_5f2e449a509e644b = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).href = getStringFromWasm0(arg1, arg2); getObject(arg0).href = getStringFromWasm0(arg1, arg2);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_pathname_1ab7e82aaa4511ff = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_pathname_d98d0a003b664ef0 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).pathname; const ret = getObject(arg1).pathname;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) }; }, arguments) };
imports.wbg.__wbg_search_9f7ca8896c2d0804 = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_search_40927d5af164fdfe = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).search; const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) }; }, arguments) };
imports.wbg.__wbg_hash_be2940ca236b5efc = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_hash_163703b5971e593c = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).hash; const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) }; }, arguments) };
imports.wbg.__wbg_headers_d135d2bb8cc60413 = function(arg0) { imports.wbg.__wbg_href_14a0154147810c9c = function(arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_pathname_3bec400c9c042d62 = function(arg0, arg1) {
const ret = getObject(arg1).pathname;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_search_6b70a3bf2ceb3f63 = function(arg0, arg1) {
const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_setsearch_e3e6802fd5fe58c4 = function(arg0, arg1, arg2) {
getObject(arg0).search = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_hash_6169ffe1f1446fd4 = function(arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_sethash_06df74e85ecce4f6 = function(arg0, arg1, arg2) {
getObject(arg0).hash = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_new_79acf9a4da56c772 = function() { return handleError(function (arg0, arg1) {
const ret = new URL(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_newwithbase_98813076a95cdc23 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = new URL(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_state_dce1712758f75ed1 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).state;
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_pushState_01f73865f6d8789a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
getObject(arg0).pushState(getObject(arg1), getStringFromWasm0(arg2, arg3), arg4 === 0 ? undefined : getStringFromWasm0(arg4, arg5));
}, arguments) };
imports.wbg.__wbg_headers_bb094b3567fea691 = function(arg0) {
const ret = getObject(arg0).headers; const ret = getObject(arg0).headers;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_newwithstrandinit_11fbc38beb4c26b0 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_instanceof_Response_4c3b1446206114d1 = function(arg0) { imports.wbg.__wbg_instanceof_Response_b5451a06784a2404 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Response; result = getObject(arg0) instanceof Response;
@ -728,149 +745,139 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_status_d6d47ad2837621eb = function(arg0) { imports.wbg.__wbg_status_bea567d1049f0b6a = function(arg0) {
const ret = getObject(arg0).status; const ret = getObject(arg0).status;
return ret; return ret;
}; };
imports.wbg.__wbg_headers_24def508a7518df9 = function(arg0) { imports.wbg.__wbg_headers_96d9457941f08a33 = function(arg0) {
const ret = getObject(arg0).headers; const ret = getObject(arg0).headers;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_json_34535d9848f043eb = function() { return handleError(function (arg0) { imports.wbg.__wbg_json_c07875c84e5205af = function() { return handleError(function (arg0) {
const ret = getObject(arg0).json(); const ret = getObject(arg0).json();
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_add_e0f3c5b6e421c311 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_instanceof_ShadowRoot_ef56f954a86c7472 = function(arg0) {
getObject(arg0).add(getStringFromWasm0(arg1, arg2)); let result;
}, arguments) }; try {
imports.wbg.__wbg_href_e9aac3826080dcaa = function(arg0, arg1) { result = getObject(arg0) instanceof ShadowRoot;
const ret = getObject(arg1).href; } catch (_) {
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); result = false;
const len1 = WASM_VECTOR_LEN; }
getInt32Memory0()[arg0 / 4 + 1] = len1; const ret = result;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; return ret;
}; };
imports.wbg.__wbg_pathname_aeafa820be91c325 = function(arg0, arg1) { imports.wbg.__wbg_host_dfffc3b2ba786fb8 = function(arg0) {
const ret = getObject(arg1).pathname; const ret = getObject(arg0).host;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_search_f6e95882a48d3f69 = function(arg0, arg1) {
const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_setsearch_4f7d084e0d811add = function(arg0, arg1, arg2) {
getObject(arg0).search = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_hash_0087751acddc8f2a = function(arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_sethash_bfc9db317a77305c = function(arg0, arg1, arg2) {
getObject(arg0).hash = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_new_9e08fd37c1c53142 = function() { return handleError(function (arg0, arg1) {
const ret = new URL(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; };
imports.wbg.__wbg_newwithbase_f4989aa5bbd5cc29 = function() { return handleError(function (arg0, arg1, arg2, arg3) { imports.wbg.__wbg_bubbles_31126fc08276cf99 = function(arg0) {
const ret = new URL(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3)); const ret = getObject(arg0).bubbles;
return ret;
};
imports.wbg.__wbg_cancelBubble_ae95595adf5ae83d = function(arg0) {
const ret = getObject(arg0).cancelBubble;
return ret;
};
imports.wbg.__wbg_composedPath_bd8a0336a042e053 = function(arg0) {
const ret = getObject(arg0).composedPath();
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; };
imports.wbg.__wbg_href_f21dc804d4da134a = function(arg0, arg1) { imports.wbg.__wbg_preventDefault_657cbf753df1396c = function(arg0) {
const ret = getObject(arg1).href; getObject(arg0).preventDefault();
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); };
const len1 = WASM_VECTOR_LEN; imports.wbg.__wbg_get_f5027e7a212e97a0 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = getObject(arg1).get(getStringFromWasm0(arg2, arg3));
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_set_4ad92a627c50c8ef = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_setchecked_50e21357d62a8ccd = function(arg0, arg1) {
getObject(arg0).checked = arg1 !== 0;
}; };
imports.wbg.__wbg_value_57e57170f6952449 = function(arg0, arg1) { imports.wbg.__wbg_value_99f5294791d62576 = function(arg0, arg1) {
const ret = getObject(arg1).value; const ret = getObject(arg1).value;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_setvalue_a11f3069fd7a1805 = function(arg0, arg1, arg2) { imports.wbg.__wbg_setvalue_bba31de32cdbb32c = function(arg0, arg1, arg2) {
getObject(arg0).value = getStringFromWasm0(arg1, arg2); getObject(arg0).value = getStringFromWasm0(arg1, arg2);
}; };
imports.wbg.__wbg_get_f01601b5a68d10e3 = function(arg0, arg1) { imports.wbg.__wbg_get_0ee8ea3c7c984c45 = function(arg0, arg1) {
const ret = getObject(arg0)[arg1 >>> 0]; const ret = getObject(arg0)[arg1 >>> 0];
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_length_1009b1af0c481d7b = function(arg0) { imports.wbg.__wbg_length_161c0d89c6535c1d = function(arg0) {
const ret = getObject(arg0).length; const ret = getObject(arg0).length;
return ret; return ret;
}; };
imports.wbg.__wbg_newnoargs_c62ea9419c21fbac = function(arg0, arg1) { imports.wbg.__wbg_newnoargs_cfecb3965268594c = function(arg0, arg1) {
const ret = new Function(getStringFromWasm0(arg0, arg1)); const ret = new Function(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_next_9b877f231f476d01 = function(arg0) { imports.wbg.__wbg_next_586204376d2ed373 = function(arg0) {
const ret = getObject(arg0).next; const ret = getObject(arg0).next;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_next_6529ee0cca8d57ed = function() { return handleError(function (arg0) { imports.wbg.__wbg_next_b2d3366343a208b3 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).next(); const ret = getObject(arg0).next();
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_done_5fe336b092d60cf2 = function(arg0) { imports.wbg.__wbg_done_90b14d6f6eacc42f = function(arg0) {
const ret = getObject(arg0).done; const ret = getObject(arg0).done;
return ret; return ret;
}; };
imports.wbg.__wbg_value_0c248a78fdc8e19f = function(arg0) { imports.wbg.__wbg_value_3158be908c80a75e = function(arg0) {
const ret = getObject(arg0).value; const ret = getObject(arg0).value;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_iterator_db7ca081358d4fb2 = function() { imports.wbg.__wbg_iterator_40027cdd598da26b = function() {
const ret = Symbol.iterator; const ret = Symbol.iterator;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_get_7b48513de5dc5ea4 = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_get_3fddfed2c83f434c = function() { return handleError(function (arg0, arg1) {
const ret = Reflect.get(getObject(arg0), getObject(arg1)); const ret = Reflect.get(getObject(arg0), getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_call_90c26b09837aba1c = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_call_3f093dd26d5569f8 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).call(getObject(arg1)); const ret = getObject(arg0).call(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_new_9fb8d994e1c0aaac = function() { imports.wbg.__wbg_new_632630b5cec17f21 = function() {
const ret = new Object(); const ret = new Object();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_self_f0e34d89f33b99fd = function() { return handleError(function () { imports.wbg.__wbg_self_05040bd9523805b9 = function() { return handleError(function () {
const ret = self.self; const ret = self.self;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_window_d3b084224f4774d7 = function() { return handleError(function () { imports.wbg.__wbg_window_adc720039f2cb14f = function() { return handleError(function () {
const ret = window.window; const ret = window.window;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_globalThis_9caa27ff917c6860 = function() { return handleError(function () { imports.wbg.__wbg_globalThis_622105db80c1457d = function() { return handleError(function () {
const ret = globalThis.globalThis; const ret = globalThis.globalThis;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_global_35dfdd59a4da3e74 = function() { return handleError(function () { imports.wbg.__wbg_global_f56b013ed9bcf359 = function() { return handleError(function () {
const ret = global.global; const ret = global.global;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_from_71add2e723d1f1b2 = function(arg0) { imports.wbg.__wbg_from_58c79ccfb68060f5 = function(arg0) {
const ret = Array.from(getObject(arg0)); const ret = Array.from(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_isArray_74fb723e24f76012 = function(arg0) { imports.wbg.__wbg_isArray_e783c41d0dd19b44 = function(arg0) {
const ret = Array.isArray(getObject(arg0)); const ret = Array.isArray(getObject(arg0));
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_ArrayBuffer_e7d53d51371448e2 = function(arg0) { imports.wbg.__wbg_instanceof_ArrayBuffer_9221fa854ffb71b5 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof ArrayBuffer; result = getObject(arg0) instanceof ArrayBuffer;
@ -880,7 +887,7 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_Error_31ca8d97f188bfbc = function(arg0) { imports.wbg.__wbg_instanceof_Error_5869c4f17aac9eb2 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Error; result = getObject(arg0) instanceof Error;
@ -890,58 +897,58 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_message_55b9ea8030688597 = function(arg0) { imports.wbg.__wbg_message_2a19bb5b62cf8e22 = function(arg0) {
const ret = getObject(arg0).message; const ret = getObject(arg0).message;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_name_e5eede664187fed6 = function(arg0) { imports.wbg.__wbg_name_405bb0aa047a1bf5 = function(arg0) {
const ret = getObject(arg0).name; const ret = getObject(arg0).name;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_toString_a44236e90224e279 = function(arg0) { imports.wbg.__wbg_toString_07f01913ec9af122 = function(arg0) {
const ret = getObject(arg0).toString(); const ret = getObject(arg0).toString();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_isSafeInteger_f93fde0dca9820f8 = function(arg0) { imports.wbg.__wbg_isSafeInteger_a23a66ee7c41b273 = function(arg0) {
const ret = Number.isSafeInteger(getObject(arg0)); const ret = Number.isSafeInteger(getObject(arg0));
return ret; return ret;
}; };
imports.wbg.__wbg_entries_9e2e2aa45aa5094a = function(arg0) { imports.wbg.__wbg_entries_488960b196cfb6a5 = function(arg0) {
const ret = Object.entries(getObject(arg0)); const ret = Object.entries(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_is_ff7acd231c75c0e4 = function(arg0, arg1) { imports.wbg.__wbg_is_bd5dc4ae269cba1c = function(arg0, arg1) {
const ret = Object.is(getObject(arg0), getObject(arg1)); const ret = Object.is(getObject(arg0), getObject(arg1));
return ret; return ret;
}; };
imports.wbg.__wbg_resolve_6e1c6553a82f85b7 = function(arg0) { imports.wbg.__wbg_resolve_5da6faf2c96fd1d5 = function(arg0) {
const ret = Promise.resolve(getObject(arg0)); const ret = Promise.resolve(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_then_3ab08cd4fbb91ae9 = function(arg0, arg1) { imports.wbg.__wbg_then_f9e58f5a50f43eae = function(arg0, arg1) {
const ret = getObject(arg0).then(getObject(arg1)); const ret = getObject(arg0).then(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_then_8371cc12cfedc5a2 = function(arg0, arg1, arg2) { imports.wbg.__wbg_then_20a5920e447d1cb1 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_buffer_a448f833075b71ba = function(arg0) { imports.wbg.__wbg_buffer_b914fb8b50ebbc3e = function(arg0) {
const ret = getObject(arg0).buffer; const ret = getObject(arg0).buffer;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_new_8f67e318f15d7254 = function(arg0) { imports.wbg.__wbg_new_b1f2d6842d615181 = function(arg0) {
const ret = new Uint8Array(getObject(arg0)); const ret = new Uint8Array(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_set_2357bf09366ee480 = function(arg0, arg1, arg2) { imports.wbg.__wbg_set_7d988c98e6ced92d = function(arg0, arg1, arg2) {
getObject(arg0).set(getObject(arg1), arg2 >>> 0); getObject(arg0).set(getObject(arg1), arg2 >>> 0);
}; };
imports.wbg.__wbg_length_1d25fa9e4ac21ce7 = function(arg0) { imports.wbg.__wbg_length_21c4b0ae73cba59d = function(arg0) {
const ret = getObject(arg0).length; const ret = getObject(arg0).length;
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_Uint8Array_bced6f43aed8c1aa = function(arg0) { imports.wbg.__wbg_instanceof_Uint8Array_c299a4ee232e76ba = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Uint8Array; result = getObject(arg0) instanceof Uint8Array;
@ -951,7 +958,7 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_set_759f75cd92b612d2 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_set_961700853a212a39 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
return ret; return ret;
}, arguments) }; }, arguments) };
@ -969,16 +976,16 @@ function __wbg_get_imports() {
const ret = wasm.memory; const ret = wasm.memory;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1118 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1196 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_38); const ret = makeMutClosure(arg0, arg1, 558, __wbg_adapter_38);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1336 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1330 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 593, __wbg_adapter_41); const ret = makeMutClosure(arg0, arg1, 608, __wbg_adapter_41);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1416 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1361 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 622, __wbg_adapter_44); const ret = makeMutClosure(arg0, arg1, 625, __wbg_adapter_44);
return addHeapObject(ret); return addHeapObject(ret);
}; };

View file

@ -96,6 +96,7 @@ function passStringToWasm0(arg, malloc, realloc) {
const ret = encodeString(arg, view); const ret = encodeString(arg, view);
offset += ret.written; offset += ret.written;
ptr = realloc(ptr, len, offset, 1) >>> 0;
} }
WASM_VECTOR_LEN = offset; WASM_VECTOR_LEN = offset;
@ -198,6 +199,12 @@ function debugString(val) {
return className; return className;
} }
const CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(state => {
wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b)
});
function makeMutClosure(arg0, arg1, dtor, f) { function makeMutClosure(arg0, arg1, dtor, f) {
const state = { a: arg0, b: arg1, cnt: 1, dtor }; const state = { a: arg0, b: arg1, cnt: 1, dtor };
const real = (...args) => { const real = (...args) => {
@ -212,14 +219,14 @@ function makeMutClosure(arg0, arg1, dtor, f) {
} finally { } finally {
if (--state.cnt === 0) { if (--state.cnt === 0) {
wasm.__wbindgen_export_2.get(state.dtor)(a, state.b); wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);
CLOSURE_DTORS.unregister(state);
} else { } else {
state.a = a; state.a = a;
} }
} }
}; };
real.original = state; real.original = state;
CLOSURE_DTORS.register(real, state, state);
return real; return real;
} }
@ -232,19 +239,19 @@ function addBorrowedObject(obj) {
} }
function __wbg_adapter_48(arg0, arg1, arg2) { function __wbg_adapter_48(arg0, arg1, arg2) {
try { try {
wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hfb82db14212d2aa7(arg0, arg1, addBorrowedObject(arg2)); wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hef22948b48858871(arg0, arg1, addBorrowedObject(arg2));
} finally { } finally {
heap[stack_pointer++] = undefined; heap[stack_pointer++] = undefined;
} }
} }
function __wbg_adapter_51(arg0, arg1, arg2) { function __wbg_adapter_51(arg0, arg1, arg2) {
wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hc774ebf2925e9d9a(arg0, arg1, addHeapObject(arg2)); wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4f0e587bc277dda7(arg0, arg1, addHeapObject(arg2));
} }
function __wbg_adapter_54(arg0, arg1, arg2) { function __wbg_adapter_54(arg0, arg1, arg2) {
try { try {
wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hfeee426a4d7736d6(arg0, arg1, addBorrowedObject(arg2)); wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h2d92af1ffea3b4c8(arg0, arg1, addBorrowedObject(arg2));
} finally { } finally {
heap[stack_pointer++] = undefined; heap[stack_pointer++] = undefined;
} }
@ -376,6 +383,10 @@ function __wbg_get_imports() {
const ret = BigInt.asUintN(64, arg0); const ret = BigInt.asUintN(64, arg0);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_error_new = function(arg0, arg1) {
const ret = new Error(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret);
};
imports.wbg.__wbindgen_number_get = function(arg0, arg1) { imports.wbg.__wbindgen_number_get = function(arg0, arg1) {
const obj = getObject(arg1); const obj = getObject(arg1);
const ret = typeof(obj) === 'number' ? obj : undefined; const ret = typeof(obj) === 'number' ? obj : undefined;
@ -399,22 +410,18 @@ function __wbg_get_imports() {
const ret = getObject(arg0) === undefined; const ret = getObject(arg0) === undefined;
return ret; return ret;
}; };
imports.wbg.__wbindgen_error_new = function(arg0, arg1) {
const ret = new Error(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret);
};
imports.wbg.__wbindgen_object_clone_ref = function(arg0) { imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
const ret = getObject(arg0); const ret = getObject(arg0);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_setlistenerid_3183aae8fa5840fb = function(arg0, arg1) {
getObject(arg0).__yew_listener_id = arg1 >>> 0;
};
imports.wbg.__wbg_listenerid_12315eee21527820 = function(arg0, arg1) { imports.wbg.__wbg_listenerid_12315eee21527820 = function(arg0, arg1) {
const ret = getObject(arg1).__yew_listener_id; const ret = getObject(arg1).__yew_listener_id;
getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret; getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret;
getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret); getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);
}; };
imports.wbg.__wbg_setlistenerid_3183aae8fa5840fb = function(arg0, arg1) {
getObject(arg0).__yew_listener_id = arg1 >>> 0;
};
imports.wbg.__wbg_subtreeid_e348577f7ef777e3 = function(arg0, arg1) { imports.wbg.__wbg_subtreeid_e348577f7ef777e3 = function(arg0, arg1) {
const ret = getObject(arg1).__yew_subtree_id; const ret = getObject(arg1).__yew_subtree_id;
getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret; getInt32Memory0()[arg0 / 4 + 1] = isLikeNone(ret) ? 0 : ret;
@ -464,10 +471,10 @@ function __wbg_get_imports() {
imports.wbg.__wbg_set_20cbc34131e76824 = function(arg0, arg1, arg2) { imports.wbg.__wbg_set_20cbc34131e76824 = function(arg0, arg1, arg2) {
getObject(arg0)[takeObject(arg1)] = takeObject(arg2); getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
}; };
imports.wbg.__wbg_queueMicrotask_4d890031a6a5a50c = function(arg0) { imports.wbg.__wbg_queueMicrotask_f61ee94ee663068b = function(arg0) {
queueMicrotask(getObject(arg0)); queueMicrotask(getObject(arg0));
}; };
imports.wbg.__wbg_queueMicrotask_adae4bc085237231 = function(arg0) { imports.wbg.__wbg_queueMicrotask_f82fc5d1e8f816ae = function(arg0) {
const ret = getObject(arg0).queueMicrotask; const ret = getObject(arg0).queueMicrotask;
return addHeapObject(ret); return addHeapObject(ret);
}; };
@ -507,31 +514,7 @@ function __wbg_get_imports() {
wasm.__wbindgen_free(arg0, arg1 * 4, 4); wasm.__wbindgen_free(arg0, arg1 * 4, 4);
console.warn(...v0); console.warn(...v0);
}; };
imports.wbg.__wbg_body_64abc9aba1891e91 = function(arg0) { imports.wbg.__wbg_instanceof_Window_cee7a886d55e7df5 = function(arg0) {
const ret = getObject(arg0).body;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_createElement_fdd5c113cb84539e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createElementNS_524b05a6070757b6 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
const ret = getObject(arg0).createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createTextNode_7ff0c034b2855f66 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).createTextNode(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
};
imports.wbg.__wbg_getElementById_65b9547a428b5eb4 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).getElementById(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_querySelector_c72dce5ac4b6bc3e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_Window_3e5cd1f48c152d01 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Window; result = getObject(arg0) instanceof Window;
@ -541,35 +524,35 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_document_d609202d16c38224 = function(arg0) { imports.wbg.__wbg_document_eb7fd66bde3ee213 = function(arg0) {
const ret = getObject(arg0).document; const ret = getObject(arg0).document;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}; };
imports.wbg.__wbg_location_176c34e89c2c9d80 = function(arg0) { imports.wbg.__wbg_location_b17760ac7977a47a = function(arg0) {
const ret = getObject(arg0).location; const ret = getObject(arg0).location;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_history_80998b7456bf367e = function() { return handleError(function (arg0) { imports.wbg.__wbg_history_6882f83324841599 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).history; const ret = getObject(arg0).history;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_navigator_96ba491902f8f083 = function(arg0) { imports.wbg.__wbg_navigator_b1003b77e05fcee9 = function(arg0) {
const ret = getObject(arg0).navigator; const ret = getObject(arg0).navigator;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_localStorage_8c507fd281456944 = function() { return handleError(function (arg0) { imports.wbg.__wbg_localStorage_3d538af21ea07fcc = function() { return handleError(function (arg0) {
const ret = getObject(arg0).localStorage; const ret = getObject(arg0).localStorage;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_sessionStorage_adb12b0c8ea06c48 = function() { return handleError(function (arg0) { imports.wbg.__wbg_sessionStorage_32de79fb90d1534a = function() { return handleError(function (arg0) {
const ret = getObject(arg0).sessionStorage; const ret = getObject(arg0).sessionStorage;
return isLikeNone(ret) ? 0 : addHeapObject(ret); return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_fetch_6c415b3a07763878 = function(arg0, arg1) { imports.wbg.__wbg_fetch_33c84c2bf739f490 = function(arg0, arg1) {
const ret = getObject(arg0).fetch(getObject(arg1)); const ret = getObject(arg0).fetch(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_instanceof_Element_3f326a19cc457941 = function(arg0) { imports.wbg.__wbg_instanceof_Element_813f33306edae612 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Element; result = getObject(arg0) instanceof Element;
@ -579,38 +562,62 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_namespaceURI_7cc7ef157e398356 = function(arg0, arg1) { imports.wbg.__wbg_namespaceURI_230708ae7f4baac5 = function(arg0, arg1) {
const ret = getObject(arg1).namespaceURI; const ret = getObject(arg1).namespaceURI;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN; var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_classList_82893a9100db6428 = function(arg0) { imports.wbg.__wbg_classList_e98b57addeeb384e = function(arg0) {
const ret = getObject(arg0).classList; const ret = getObject(arg0).classList;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_setinnerHTML_ce0d6527ce4086f2 = function(arg0, arg1, arg2) { imports.wbg.__wbg_setinnerHTML_95222f1a2e797983 = function(arg0, arg1, arg2) {
getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2); getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2);
}; };
imports.wbg.__wbg_outerHTML_b5a8d952b5615778 = function(arg0, arg1) { imports.wbg.__wbg_outerHTML_eb21059e86b1e9f4 = function(arg0, arg1) {
const ret = getObject(arg1).outerHTML; const ret = getObject(arg1).outerHTML;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_children_990f38c4f4d5c721 = function(arg0) { imports.wbg.__wbg_children_ed606b49af931792 = function(arg0) {
const ret = getObject(arg0).children; const ret = getObject(arg0).children;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_removeAttribute_2e200daefb9f3ed4 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_removeAttribute_0c021c98a4dc7402 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeAttribute(getStringFromWasm0(arg1, arg2)); getObject(arg0).removeAttribute(getStringFromWasm0(arg1, arg2));
}, arguments) }; }, arguments) };
imports.wbg.__wbg_setAttribute_e7b72a5e7cfcb5a3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { imports.wbg.__wbg_setAttribute_f7ffa687ef977957 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) }; }, arguments) };
imports.wbg.__wbg_instanceof_HtmlElement_55a0f0f0f0f0118e = function(arg0) { imports.wbg.__wbg_body_874ccb42daaab363 = function(arg0) {
const ret = getObject(arg0).body;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_createElement_03cf347ddad1c8c0 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createElementNS_93f8de4acdef6da8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
const ret = getObject(arg0).createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_createTextNode_ea32ad2506f7ae78 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).createTextNode(getStringFromWasm0(arg1, arg2));
return addHeapObject(ret);
};
imports.wbg.__wbg_getElementById_77f2dfdddee12e05 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).getElementById(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_querySelector_118a0639aa1f51cd = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
return isLikeNone(ret) ? 0 : addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_HtmlElement_99861aeb7af981c2 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof HTMLElement; result = getObject(arg0) instanceof HTMLElement;
@ -620,212 +627,37 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_focus_6d3d2b6776d06f7f = function() { return handleError(function (arg0) { imports.wbg.__wbg_focus_d1373017540aae66 = function() { return handleError(function (arg0) {
getObject(arg0).focus(); getObject(arg0).focus();
}, arguments) }; }, arguments) };
imports.wbg.__wbg_get_41904a8f394b5093 = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_addEventListener_bc4a7ad4cc72c6bf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
}, arguments) };
imports.wbg.__wbg_removeEventListener_deae10c75ef836f8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);
}, arguments) };
imports.wbg.__wbg_href_6918c551c13f118b = function(arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_get_3929a71ee2443c90 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).get(getObject(arg1)); const ret = getObject(arg0).get(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_credentials_cef3aa4d1e919496 = function(arg0) { imports.wbg.__wbg_value_ffef403d62e3df58 = function(arg0, arg1) {
const ret = getObject(arg0).credentials; const ret = getObject(arg1).value;
return addHeapObject(ret);
};
imports.wbg.__wbg_getItem_5395a7e200c31e89 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = getObject(arg1).getItem(getStringFromWasm0(arg2, arg3));
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_removeItem_c84f914587f36b1a = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeItem(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_setItem_3786c4c8dd0c9bd0 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setItem(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_addEventListener_374cbfd2bbc19ccf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
}, arguments) };
imports.wbg.__wbg_removeEventListener_9ece7e86d1135657 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);
}, arguments) };
imports.wbg.__wbg_state_ba77b2c3ee29c912 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).state;
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_pushState_e159043fce8f87bc = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
getObject(arg0).pushState(getObject(arg1), getStringFromWasm0(arg2, arg3), arg4 === 0 ? undefined : getStringFromWasm0(arg4, arg5));
}, arguments) };
imports.wbg.__wbg_href_160af2ae1328d7b7 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_sethref_90b000c8b01f96b1 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).href = getStringFromWasm0(arg1, arg2);
}, arguments) };
imports.wbg.__wbg_pathname_1ab7e82aaa4511ff = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).pathname;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_search_9f7ca8896c2d0804 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_hash_be2940ca236b5efc = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_replace_c73ceee21ffa44ab = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).replace(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_headers_d135d2bb8cc60413 = function(arg0) {
const ret = getObject(arg0).headers;
return addHeapObject(ret);
};
imports.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_Response_4c3b1446206114d1 = function(arg0) {
let result;
try {
result = getObject(arg0) instanceof Response;
} catch (_) {
result = false;
}
const ret = result;
return ret;
};
imports.wbg.__wbg_status_d6d47ad2837621eb = function(arg0) {
const ret = getObject(arg0).status;
return ret;
};
imports.wbg.__wbg_headers_24def508a7518df9 = function(arg0) {
const ret = getObject(arg0).headers;
return addHeapObject(ret);
};
imports.wbg.__wbg_json_34535d9848f043eb = function() { return handleError(function (arg0) {
const ret = getObject(arg0).json();
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_parentNode_92a7017b3a4fad43 = function(arg0) {
const ret = getObject(arg0).parentNode;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_parentElement_72e144c2e8d9e0b5 = function(arg0) {
const ret = getObject(arg0).parentElement;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_lastChild_a62e3fbaab87f734 = function(arg0) {
const ret = getObject(arg0).lastChild;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_nextSibling_bafccd3347d24543 = function(arg0) {
const ret = getObject(arg0).nextSibling;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_setnodeValue_630c6470d05b600e = function(arg0, arg1, arg2) {
getObject(arg0).nodeValue = arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_textContent_2f37235e13f8484b = function(arg0, arg1) {
const ret = getObject(arg1).textContent;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_appendChild_d30e6b83791d04c0 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).appendChild(getObject(arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_insertBefore_726c1640c419e940 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).insertBefore(getObject(arg1), getObject(arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_removeChild_942eb9c02243d84d = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).removeChild(getObject(arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_ShadowRoot_0bd39e89ab117f86 = function(arg0) {
let result;
try {
result = getObject(arg0) instanceof ShadowRoot;
} catch (_) {
result = false;
}
const ret = result;
return ret;
};
imports.wbg.__wbg_host_09eee5e3d9cf59a1 = function(arg0) {
const ret = getObject(arg0).host;
return addHeapObject(ret);
};
imports.wbg.__wbg_getClientExtensionResults_8da1aa123f3b7c0b = function(arg0) {
const ret = getObject(arg0).getClientExtensionResults();
return addHeapObject(ret);
};
imports.wbg.__wbg_log_a4530b4fe289336f = function(arg0) {
console.log(getObject(arg0));
};
imports.wbg.__wbg_add_e0f3c5b6e421c311 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).add(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_remove_c6ba26a0a6906129 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).remove(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_href_e9aac3826080dcaa = function(arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_pathname_aeafa820be91c325 = function(arg0, arg1) { imports.wbg.__wbg_setvalue_cbab536654d8dd52 = function(arg0, arg1, arg2) {
const ret = getObject(arg1).pathname; getObject(arg0).value = getStringFromWasm0(arg1, arg2);
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_search_f6e95882a48d3f69 = function(arg0, arg1) { imports.wbg.__wbg_instanceof_HtmlInputElement_189f182751dc1f5e = function(arg0) {
const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_hash_0087751acddc8f2a = function(arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_sethash_bfc9db317a77305c = function(arg0, arg1, arg2) {
getObject(arg0).hash = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_new_9e08fd37c1c53142 = function() { return handleError(function (arg0, arg1) {
const ret = new URL(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_newwithbase_f4989aa5bbd5cc29 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = new URL(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_HtmlInputElement_e7869aaef9cbb0e6 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof HTMLInputElement; result = getObject(arg0) instanceof HTMLInputElement;
@ -835,149 +667,324 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_checked_f46acdc11342a4bd = function(arg0) { imports.wbg.__wbg_checked_30b85a12f3f06fd9 = function(arg0) {
const ret = getObject(arg0).checked; const ret = getObject(arg0).checked;
return ret; return ret;
}; };
imports.wbg.__wbg_setchecked_c1d5c3726082e274 = function(arg0, arg1) { imports.wbg.__wbg_setchecked_50e21357d62a8ccd = function(arg0, arg1) {
getObject(arg0).checked = arg1 !== 0; getObject(arg0).checked = arg1 !== 0;
}; };
imports.wbg.__wbg_value_e024243a9dae20bc = function(arg0, arg1) { imports.wbg.__wbg_value_99f5294791d62576 = function(arg0, arg1) {
const ret = getObject(arg1).value; const ret = getObject(arg1).value;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_setvalue_5b3442ff620b4a5d = function(arg0, arg1, arg2) { imports.wbg.__wbg_setvalue_bba31de32cdbb32c = function(arg0, arg1, arg2) {
getObject(arg0).value = getStringFromWasm0(arg1, arg2); getObject(arg0).value = getStringFromWasm0(arg1, arg2);
}; };
imports.wbg.__wbg_bubbles_f1cdd0584446cad0 = function(arg0) { imports.wbg.__wbg_add_73b81757e03ad37a = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).add(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_remove_dea714b8c5f17b97 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).remove(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_getItem_5c179cd36e9529e8 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = getObject(arg1).getItem(getStringFromWasm0(arg2, arg3));
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_removeItem_c402594a05099505 = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).removeItem(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_setItem_7b55989efb4d45f7 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).setItem(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) };
imports.wbg.__wbg_getClientExtensionResults_466d05f787e7f4cb = function(arg0) {
const ret = getObject(arg0).getClientExtensionResults();
return addHeapObject(ret);
};
imports.wbg.__wbg_credentials_46f979142974ef3b = function(arg0) {
const ret = getObject(arg0).credentials;
return addHeapObject(ret);
};
imports.wbg.__wbg_parentNode_e3a5ee563364a613 = function(arg0) {
const ret = getObject(arg0).parentNode;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_parentElement_45a9756dc74ff48b = function(arg0) {
const ret = getObject(arg0).parentElement;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_lastChild_d22dbf81f92f163b = function(arg0) {
const ret = getObject(arg0).lastChild;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_nextSibling_87d2b32dfbf09fe3 = function(arg0) {
const ret = getObject(arg0).nextSibling;
return isLikeNone(ret) ? 0 : addHeapObject(ret);
};
imports.wbg.__wbg_setnodeValue_d1cec51282858afe = function(arg0, arg1, arg2) {
getObject(arg0).nodeValue = arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_textContent_528ff517a0418a3e = function(arg0, arg1) {
const ret = getObject(arg1).textContent;
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_appendChild_4153ba1b5d54d73b = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).appendChild(getObject(arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_insertBefore_2be91083083caa9e = function() { return handleError(function (arg0, arg1, arg2) {
const ret = getObject(arg0).insertBefore(getObject(arg1), getObject(arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_removeChild_660924798c7e128c = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).removeChild(getObject(arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_bubbles_31126fc08276cf99 = function(arg0) {
const ret = getObject(arg0).bubbles; const ret = getObject(arg0).bubbles;
return ret; return ret;
}; };
imports.wbg.__wbg_cancelBubble_976cfdf7ac449a6c = function(arg0) { imports.wbg.__wbg_cancelBubble_ae95595adf5ae83d = function(arg0) {
const ret = getObject(arg0).cancelBubble; const ret = getObject(arg0).cancelBubble;
return ret; return ret;
}; };
imports.wbg.__wbg_composedPath_12a068e57a98cf90 = function(arg0) { imports.wbg.__wbg_composedPath_bd8a0336a042e053 = function(arg0) {
const ret = getObject(arg0).composedPath(); const ret = getObject(arg0).composedPath();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_preventDefault_7f821f72e7c6b5d4 = function(arg0) { imports.wbg.__wbg_preventDefault_657cbf753df1396c = function(arg0) {
getObject(arg0).preventDefault(); getObject(arg0).preventDefault();
}; };
imports.wbg.__wbg_get_0231cdd369e04a1d = function() { return handleError(function (arg0, arg1, arg2, arg3) { imports.wbg.__wbg_get_f5027e7a212e97a0 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = getObject(arg1).get(getStringFromWasm0(arg2, arg3)); const ret = getObject(arg1).get(getStringFromWasm0(arg2, arg3));
var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
var len1 = WASM_VECTOR_LEN; var len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) }; }, arguments) };
imports.wbg.__wbg_set_27f236f6d7a28c29 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { imports.wbg.__wbg_set_4ad92a627c50c8ef = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
getObject(arg0).set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); getObject(arg0).set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
}, arguments) }; }, arguments) };
imports.wbg.__wbg_href_f21dc804d4da134a = function(arg0, arg1) { imports.wbg.__wbg_href_a5b902312c18d121 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_sethref_5f2e449a509e644b = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).href = getStringFromWasm0(arg1, arg2);
}, arguments) };
imports.wbg.__wbg_pathname_d98d0a003b664ef0 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).pathname;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_search_40927d5af164fdfe = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_hash_163703b5971e593c = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}, arguments) };
imports.wbg.__wbg_replace_6569a636f8d64d4c = function() { return handleError(function (arg0, arg1, arg2) {
getObject(arg0).replace(getStringFromWasm0(arg1, arg2));
}, arguments) };
imports.wbg.__wbg_href_14a0154147810c9c = function(arg0, arg1) {
const ret = getObject(arg1).href; const ret = getObject(arg1).href;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_value_57e57170f6952449 = function(arg0, arg1) { imports.wbg.__wbg_pathname_3bec400c9c042d62 = function(arg0, arg1) {
const ret = getObject(arg1).value; const ret = getObject(arg1).pathname;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN; const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1; getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_setvalue_a11f3069fd7a1805 = function(arg0, arg1, arg2) { imports.wbg.__wbg_search_6b70a3bf2ceb3f63 = function(arg0, arg1) {
getObject(arg0).value = getStringFromWasm0(arg1, arg2); const ret = getObject(arg1).search;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
}; };
imports.wbg.__wbg_get_f01601b5a68d10e3 = function(arg0, arg1) { imports.wbg.__wbg_hash_6169ffe1f1446fd4 = function(arg0, arg1) {
const ret = getObject(arg1).hash;
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
const len1 = WASM_VECTOR_LEN;
getInt32Memory0()[arg0 / 4 + 1] = len1;
getInt32Memory0()[arg0 / 4 + 0] = ptr1;
};
imports.wbg.__wbg_sethash_06df74e85ecce4f6 = function(arg0, arg1, arg2) {
getObject(arg0).hash = getStringFromWasm0(arg1, arg2);
};
imports.wbg.__wbg_new_79acf9a4da56c772 = function() { return handleError(function (arg0, arg1) {
const ret = new URL(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_newwithbase_98813076a95cdc23 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
const ret = new URL(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_log_79d3c56888567995 = function(arg0) {
console.log(getObject(arg0));
};
imports.wbg.__wbg_state_dce1712758f75ed1 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).state;
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_pushState_01f73865f6d8789a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
getObject(arg0).pushState(getObject(arg1), getStringFromWasm0(arg2, arg3), arg4 === 0 ? undefined : getStringFromWasm0(arg4, arg5));
}, arguments) };
imports.wbg.__wbg_headers_bb094b3567fea691 = function(arg0) {
const ret = getObject(arg0).headers;
return addHeapObject(ret);
};
imports.wbg.__wbg_newwithstrandinit_11fbc38beb4c26b0 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_Response_b5451a06784a2404 = function(arg0) {
let result;
try {
result = getObject(arg0) instanceof Response;
} catch (_) {
result = false;
}
const ret = result;
return ret;
};
imports.wbg.__wbg_status_bea567d1049f0b6a = function(arg0) {
const ret = getObject(arg0).status;
return ret;
};
imports.wbg.__wbg_headers_96d9457941f08a33 = function(arg0) {
const ret = getObject(arg0).headers;
return addHeapObject(ret);
};
imports.wbg.__wbg_json_c07875c84e5205af = function() { return handleError(function (arg0) {
const ret = getObject(arg0).json();
return addHeapObject(ret);
}, arguments) };
imports.wbg.__wbg_instanceof_ShadowRoot_ef56f954a86c7472 = function(arg0) {
let result;
try {
result = getObject(arg0) instanceof ShadowRoot;
} catch (_) {
result = false;
}
const ret = result;
return ret;
};
imports.wbg.__wbg_host_dfffc3b2ba786fb8 = function(arg0) {
const ret = getObject(arg0).host;
return addHeapObject(ret);
};
imports.wbg.__wbg_get_0ee8ea3c7c984c45 = function(arg0, arg1) {
const ret = getObject(arg0)[arg1 >>> 0]; const ret = getObject(arg0)[arg1 >>> 0];
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_length_1009b1af0c481d7b = function(arg0) { imports.wbg.__wbg_length_161c0d89c6535c1d = function(arg0) {
const ret = getObject(arg0).length; const ret = getObject(arg0).length;
return ret; return ret;
}; };
imports.wbg.__wbg_new_ffc6d4d085022169 = function() { imports.wbg.__wbg_new_75208e29bddfd88c = function() {
const ret = new Array(); const ret = new Array();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_newnoargs_c62ea9419c21fbac = function(arg0, arg1) { imports.wbg.__wbg_newnoargs_cfecb3965268594c = function(arg0, arg1) {
const ret = new Function(getStringFromWasm0(arg0, arg1)); const ret = new Function(getStringFromWasm0(arg0, arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_new_bfd4534b584a9593 = function() { imports.wbg.__wbg_new_d1cc518eff6805bb = function() {
const ret = new Map(); const ret = new Map();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_next_9b877f231f476d01 = function(arg0) { imports.wbg.__wbg_next_586204376d2ed373 = function(arg0) {
const ret = getObject(arg0).next; const ret = getObject(arg0).next;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_next_6529ee0cca8d57ed = function() { return handleError(function (arg0) { imports.wbg.__wbg_next_b2d3366343a208b3 = function() { return handleError(function (arg0) {
const ret = getObject(arg0).next(); const ret = getObject(arg0).next();
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_done_5fe336b092d60cf2 = function(arg0) { imports.wbg.__wbg_done_90b14d6f6eacc42f = function(arg0) {
const ret = getObject(arg0).done; const ret = getObject(arg0).done;
return ret; return ret;
}; };
imports.wbg.__wbg_value_0c248a78fdc8e19f = function(arg0) { imports.wbg.__wbg_value_3158be908c80a75e = function(arg0) {
const ret = getObject(arg0).value; const ret = getObject(arg0).value;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_iterator_db7ca081358d4fb2 = function() { imports.wbg.__wbg_iterator_40027cdd598da26b = function() {
const ret = Symbol.iterator; const ret = Symbol.iterator;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_get_7b48513de5dc5ea4 = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_get_3fddfed2c83f434c = function() { return handleError(function (arg0, arg1) {
const ret = Reflect.get(getObject(arg0), getObject(arg1)); const ret = Reflect.get(getObject(arg0), getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_call_90c26b09837aba1c = function() { return handleError(function (arg0, arg1) { imports.wbg.__wbg_call_3f093dd26d5569f8 = function() { return handleError(function (arg0, arg1) {
const ret = getObject(arg0).call(getObject(arg1)); const ret = getObject(arg0).call(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_new_9fb8d994e1c0aaac = function() { imports.wbg.__wbg_new_632630b5cec17f21 = function() {
const ret = new Object(); const ret = new Object();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_self_f0e34d89f33b99fd = function() { return handleError(function () { imports.wbg.__wbg_self_05040bd9523805b9 = function() { return handleError(function () {
const ret = self.self; const ret = self.self;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_window_d3b084224f4774d7 = function() { return handleError(function () { imports.wbg.__wbg_window_adc720039f2cb14f = function() { return handleError(function () {
const ret = window.window; const ret = window.window;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_globalThis_9caa27ff917c6860 = function() { return handleError(function () { imports.wbg.__wbg_globalThis_622105db80c1457d = function() { return handleError(function () {
const ret = globalThis.globalThis; const ret = globalThis.globalThis;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_global_35dfdd59a4da3e74 = function() { return handleError(function () { imports.wbg.__wbg_global_f56b013ed9bcf359 = function() { return handleError(function () {
const ret = global.global; const ret = global.global;
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_set_f2740edb12e318cd = function(arg0, arg1, arg2) { imports.wbg.__wbg_set_79c308ecd9a1d091 = function(arg0, arg1, arg2) {
getObject(arg0)[arg1 >>> 0] = takeObject(arg2); getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
}; };
imports.wbg.__wbg_from_71add2e723d1f1b2 = function(arg0) { imports.wbg.__wbg_from_58c79ccfb68060f5 = function(arg0) {
const ret = Array.from(getObject(arg0)); const ret = Array.from(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_isArray_74fb723e24f76012 = function(arg0) { imports.wbg.__wbg_isArray_e783c41d0dd19b44 = function(arg0) {
const ret = Array.isArray(getObject(arg0)); const ret = Array.isArray(getObject(arg0));
return ret; return ret;
}; };
imports.wbg.__wbg_push_901f3914205d44de = function(arg0, arg1) { imports.wbg.__wbg_push_0239ee92f127e807 = function(arg0, arg1) {
const ret = getObject(arg0).push(getObject(arg1)); const ret = getObject(arg0).push(getObject(arg1));
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_ArrayBuffer_e7d53d51371448e2 = function(arg0) { imports.wbg.__wbg_instanceof_ArrayBuffer_9221fa854ffb71b5 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof ArrayBuffer; result = getObject(arg0) instanceof ArrayBuffer;
@ -987,7 +994,7 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_Error_31ca8d97f188bfbc = function(arg0) { imports.wbg.__wbg_instanceof_Error_5869c4f17aac9eb2 = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Error; result = getObject(arg0) instanceof Error;
@ -997,66 +1004,66 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_message_55b9ea8030688597 = function(arg0) { imports.wbg.__wbg_message_2a19bb5b62cf8e22 = function(arg0) {
const ret = getObject(arg0).message; const ret = getObject(arg0).message;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_name_e5eede664187fed6 = function(arg0) { imports.wbg.__wbg_name_405bb0aa047a1bf5 = function(arg0) {
const ret = getObject(arg0).name; const ret = getObject(arg0).name;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_toString_a44236e90224e279 = function(arg0) { imports.wbg.__wbg_toString_07f01913ec9af122 = function(arg0) {
const ret = getObject(arg0).toString(); const ret = getObject(arg0).toString();
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_set_d257c6f2da008627 = function(arg0, arg1, arg2) { imports.wbg.__wbg_set_e4cfc2763115ffc7 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).set(getObject(arg1), getObject(arg2)); const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_isSafeInteger_f93fde0dca9820f8 = function(arg0) { imports.wbg.__wbg_isSafeInteger_a23a66ee7c41b273 = function(arg0) {
const ret = Number.isSafeInteger(getObject(arg0)); const ret = Number.isSafeInteger(getObject(arg0));
return ret; return ret;
}; };
imports.wbg.__wbg_entries_9e2e2aa45aa5094a = function(arg0) { imports.wbg.__wbg_entries_488960b196cfb6a5 = function(arg0) {
const ret = Object.entries(getObject(arg0)); const ret = Object.entries(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_is_ff7acd231c75c0e4 = function(arg0, arg1) { imports.wbg.__wbg_is_bd5dc4ae269cba1c = function(arg0, arg1) {
const ret = Object.is(getObject(arg0), getObject(arg1)); const ret = Object.is(getObject(arg0), getObject(arg1));
return ret; return ret;
}; };
imports.wbg.__wbg_resolve_6e1c6553a82f85b7 = function(arg0) { imports.wbg.__wbg_resolve_5da6faf2c96fd1d5 = function(arg0) {
const ret = Promise.resolve(getObject(arg0)); const ret = Promise.resolve(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_then_3ab08cd4fbb91ae9 = function(arg0, arg1) { imports.wbg.__wbg_then_f9e58f5a50f43eae = function(arg0, arg1) {
const ret = getObject(arg0).then(getObject(arg1)); const ret = getObject(arg0).then(getObject(arg1));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_then_8371cc12cfedc5a2 = function(arg0, arg1, arg2) { imports.wbg.__wbg_then_20a5920e447d1cb1 = function(arg0, arg1, arg2) {
const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_buffer_a448f833075b71ba = function(arg0) { imports.wbg.__wbg_buffer_b914fb8b50ebbc3e = function(arg0) {
const ret = getObject(arg0).buffer; const ret = getObject(arg0).buffer;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_newwithbyteoffsetandlength_d0482f893617af71 = function(arg0, arg1, arg2) { imports.wbg.__wbg_newwithbyteoffsetandlength_0de9ee56e9f6ee6e = function(arg0, arg1, arg2) {
const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_new_8f67e318f15d7254 = function(arg0) { imports.wbg.__wbg_new_b1f2d6842d615181 = function(arg0) {
const ret = new Uint8Array(getObject(arg0)); const ret = new Uint8Array(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbg_set_2357bf09366ee480 = function(arg0, arg1, arg2) { imports.wbg.__wbg_set_7d988c98e6ced92d = function(arg0, arg1, arg2) {
getObject(arg0).set(getObject(arg1), arg2 >>> 0); getObject(arg0).set(getObject(arg1), arg2 >>> 0);
}; };
imports.wbg.__wbg_length_1d25fa9e4ac21ce7 = function(arg0) { imports.wbg.__wbg_length_21c4b0ae73cba59d = function(arg0) {
const ret = getObject(arg0).length; const ret = getObject(arg0).length;
return ret; return ret;
}; };
imports.wbg.__wbg_instanceof_Uint8Array_bced6f43aed8c1aa = function(arg0) { imports.wbg.__wbg_instanceof_Uint8Array_c299a4ee232e76ba = function(arg0) {
let result; let result;
try { try {
result = getObject(arg0) instanceof Uint8Array; result = getObject(arg0) instanceof Uint8Array;
@ -1066,14 +1073,14 @@ function __wbg_get_imports() {
const ret = result; const ret = result;
return ret; return ret;
}; };
imports.wbg.__wbg_set_759f75cd92b612d2 = function() { return handleError(function (arg0, arg1, arg2) { imports.wbg.__wbg_stringify_865daa6fb8c83d5a = function() { return handleError(function (arg0) {
const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
return ret;
}, arguments) };
imports.wbg.__wbg_stringify_e1b19966d964d242 = function() { return handleError(function (arg0) {
const ret = JSON.stringify(getObject(arg0)); const ret = JSON.stringify(getObject(arg0));
return addHeapObject(ret); return addHeapObject(ret);
}, arguments) }; }, arguments) };
imports.wbg.__wbg_set_961700853a212a39 = function() { return handleError(function (arg0, arg1, arg2) {
const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
return ret;
}, arguments) };
imports.wbg.__wbindgen_bigint_get_as_i64 = function(arg0, arg1) { imports.wbg.__wbindgen_bigint_get_as_i64 = function(arg0, arg1) {
const v = getObject(arg1); const v = getObject(arg1);
const ret = typeof(v) === 'bigint' ? v : undefined; const ret = typeof(v) === 'bigint' ? v : undefined;
@ -1094,16 +1101,16 @@ function __wbg_get_imports() {
const ret = wasm.memory; const ret = wasm.memory;
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1351 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1386 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 465, __wbg_adapter_48); const ret = makeMutClosure(arg0, arg1, 528, __wbg_adapter_48);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1742 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1733 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 597, __wbg_adapter_51); const ret = makeMutClosure(arg0, arg1, 637, __wbg_adapter_51);
return addHeapObject(ret); return addHeapObject(ret);
}; };
imports.wbg.__wbindgen_closure_wrapper1827 = function(arg0, arg1, arg2) { imports.wbg.__wbindgen_closure_wrapper1764 = function(arg0, arg1, arg2) {
const ret = makeMutClosure(arg0, arg1, 628, __wbg_adapter_54); const ret = makeMutClosure(arg0, arg1, 654, __wbg_adapter_54);
return addHeapObject(ret); return addHeapObject(ret);
}; };

File diff suppressed because it is too large Load diff

View file

@ -689,7 +689,7 @@ impl CredentialResetApp {
fn view_passkeys( fn view_passkeys(
&self, &self,
token: &CUSessionToken, token: &CUSessionToken,
passkeys: &Vec<PasskeyDetail>, passkeys: &[PasskeyDetail],
passkeys_state: CUCredState, passkeys_state: CUCredState,
) -> Html { ) -> Html {
let cb = self.cb.clone(); let cb = self.cb.clone();

View file

@ -13,7 +13,6 @@ repository = { workspace = true }
[features] [features]
default = ["unix"] default = ["unix"]
idv-tui = ["dep:cursive"]
unix = [] unix = []
[lib] [lib]
@ -60,12 +59,6 @@ lazy_static.workspace = true
regex = { workspace = true } regex = { workspace = true }
sketching = { workspace = true } sketching = { workspace = true }
[dependencies.cursive]
version = "0.20.0"
optional = true
default-features = false
features = ["crossterm-backend"]
[build-dependencies] [build-dependencies]
clap = { workspace = true, features = ["derive"] } clap = { workspace = true, features = ["derive"] }
clap_complete = { workspace = true } clap_complete = { workspace = true }

View file

@ -1,607 +0,0 @@
use cursive::{
align::HAlign,
crossterm,
view::{Nameable, Resizable},
views::{Dialog, DummyView, EditView, LinearLayout, TextArea, TextView},
CbSink, Cursive, CursiveRunnable, View,
};
use kanidm_client::KanidmClient;
use kanidm_proto::internal::{IdentifyUserRequest, IdentifyUserResponse};
use std::{cell::RefCell, sync::Arc, time::SystemTime};
use tokio::sync::{
mpsc::{unbounded_channel, UnboundedReceiver, UnboundedSender},
oneshot::{self, Receiver},
};
use crate::{
CODE_FAILURE_ERROR_MESSAGE, IDENTITY_UNAVAILABLE_ERROR_MESSAGE, INVALID_STATE_ERROR_MESSAGE,
INVALID_USER_ID_ERROR_MESSAGE,
};
// here I used a simple function instead of a struct because all the channel stuff requires ownership, so if we were to use a struct with a `run` method, it would have to take ownership of everything
// so might as well just use a function
pub async fn run_identity_verification_tui(self_id: &str, client: KanidmClient) {
//unbounded channel to send messages to the controller from the ui
let (controller_tx, controller_rx) = unbounded_channel::<IdentifyUserMsg>();
// unbounded channel to send messages to the ui from the controller
let (ui_tx, ui_rx) = unbounded_channel::<IdentifyUserState>();
// we manually send the initial start message
if controller_tx.send(IdentifyUserMsg::Start).is_err() {
eprint!("Failed to send the initial start message to the controller! Aborting..."); // TODO: add an error ID (internal error, restart)
return;
};
// oneshot channel to get the callback sink from the ui
let (cb_tx, cb_rx) = oneshot::channel::<CbSink>();
// we start the ui in its own thread
let gui_handle = std::thread::spawn(move || {
let mut ui = Ui::new(controller_tx, ui_rx);
if cb_tx.send(ui.get_cb()).is_err() {
eprintln!("Internal callback error in the CLI's TUI, please restart or log an issue with the Kanidm project if it continues to occur."); // TODO: add an error ID (internal error, restart)
return;
};
ui.0.run();
});
start_business_logic_loop(controller_rx, cb_rx, ui_tx, self_id, client).await;
if let Err(e) = gui_handle.join() {
eprintln!(
"The UI thread returned an error, please restart the program. Error was: {:?}",
e
); // TODO: add an error ID (internal error, restart)
};
}
async fn start_business_logic_loop(
mut controller_rx: UnboundedReceiver<IdentifyUserMsg>,
cb_rx: Receiver<CbSink>,
ui_tx: UnboundedSender<IdentifyUserState>,
self_id: &str,
client: KanidmClient,
) {
let Ok(cb) = cb_rx.await else {
eprintln!("Internal callback error in the CLI's logic loop, please restart or log an issue with the Kanidm project if it continues to occur."); // TODO: add an error ID (internal error, restart)
return;
};
let send_msg_and_call_callback = |msg: IdentifyUserState| {
if ui_tx.send(msg).is_err() {
eprintln!("The UI thread returned an error, please restart the program.");
// TODO: add an error ID (internal error, restart)
}
if cb.send(Box::new(Ui::update_state_callback)).is_err() {
eprintln!("The UI thread returned an error, please restart the program.");
// TODO: add an error ID (internal error, restart)
};
};
let self_id = Arc::new(self_id.to_string());
// conveniently when the `quit()` is called on the ui it also drops the controller_tx since it's stored in the `user_data` so as per the doc `controller_rx.recv()` will return None and therefore the loop will exit
while let Some(msg) = controller_rx.recv().await {
// ** NEVER EVER CALL `break` inside the loop as it will drop the mpsc receiver and sender and the ui won't be able to process whatever message is sent to it
// ** instead use `continue` so that the loop will only exit when the ui drops its controllers
let (id, req) = match &msg {
IdentifyUserMsg::Start => (&self_id, IdentifyUserRequest::Start),
IdentifyUserMsg::SubmitOtherId { other_id } => (other_id, IdentifyUserRequest::Start),
IdentifyUserMsg::SubmitCode {
code: totp,
other_id,
} => (
other_id,
IdentifyUserRequest::SubmitCode { other_totp: *totp },
),
IdentifyUserMsg::CodeConfirmedFirst { other_id } => {
send_msg_and_call_callback(IdentifyUserState::WaitForCode {
other_id: other_id.clone(),
});
continue;
}
IdentifyUserMsg::CodeConfirmedSecond { other_id } => {
send_msg_and_call_callback(IdentifyUserState::Success {
other_id: other_id.clone(),
});
continue;
}
IdentifyUserMsg::ReDisplayCodeFirst { other_id }
| IdentifyUserMsg::ReDisplayCodeSecond { other_id } => {
(other_id, IdentifyUserRequest::DisplayCode)
}
};
let res = match client.idm_person_identify_user(id, req).await {
Ok(res) => res,
Err(e) => {
let err = IdentifyUserState::Error {
error_title: "Server error!".to_string(),
error_msg: format!("{:?}", e),
};
send_msg_and_call_callback(err);
continue;
}
};
let state = match res {
IdentifyUserResponse::IdentityVerificationUnavailable => IdentifyUserState::Error {
error_title: "Feature unavailable".to_string(),
error_msg: IDENTITY_UNAVAILABLE_ERROR_MESSAGE.to_string(),
},
IdentifyUserResponse::IdentityVerificationAvailable => {
IdentifyUserState::IdDisplayAndSubmit {
self_id: self_id.clone(),
}
}
IdentifyUserResponse::ProvideCode { step, totp } => match msg {
IdentifyUserMsg::SubmitOtherId { other_id }
| IdentifyUserMsg::ReDisplayCodeFirst { other_id } => {
IdentifyUserState::DisplayCodeFirst {
self_totp: totp,
step,
other_id,
}
}
IdentifyUserMsg::SubmitCode { other_id, .. }
| IdentifyUserMsg::ReDisplayCodeSecond { other_id } => {
IdentifyUserState::DisplayCodeSecond {
self_totp: totp,
step,
other_id,
}
}
_ => IdentifyUserState::invalid_state_error(),
},
IdentifyUserResponse::WaitForCode => match msg {
IdentifyUserMsg::SubmitOtherId { other_id }
| IdentifyUserMsg::SubmitCode { other_id, .. } => {
IdentifyUserState::WaitForCode { other_id }
}
_ => IdentifyUserState::invalid_state_error(),
},
IdentifyUserResponse::Success => match msg {
IdentifyUserMsg::SubmitCode { other_id, .. } => {
IdentifyUserState::Success { other_id }
}
_ => IdentifyUserState::invalid_state_error(),
},
IdentifyUserResponse::CodeFailure => match msg {
IdentifyUserMsg::SubmitCode { .. } => IdentifyUserState::Error {
error_title: "🚨 Identity verification failed 🚨".to_string(),
error_msg: CODE_FAILURE_ERROR_MESSAGE.to_string(),
},
_ => IdentifyUserState::invalid_state_error(),
},
IdentifyUserResponse::InvalidUserId => IdentifyUserState::Error {
error_msg: format!("{id} {INVALID_USER_ID_ERROR_MESSAGE}"),
error_title: "Invalid ID error".to_string(),
},
};
send_msg_and_call_callback(state);
}
}
// this is kind of awkward but Cursive doesn't allow us to store data in the `user_data` without having to clone it every time we access it,
// so since all the Strings will never change during the execution of the program, we can just use Arcs to avoid cloning them every time
#[derive(Debug, Clone, PartialEq)]
enum IdentifyUserState {
IdDisplayAndSubmit {
self_id: Arc<String>,
},
WaitForCode {
other_id: Arc<String>,
},
DisplayCodeFirst {
self_totp: u32,
step: u32,
other_id: Arc<String>,
},
DisplayCodeSecond {
self_totp: u32,
step: u32,
other_id: Arc<String>,
},
Success {
other_id: Arc<String>,
},
Error {
error_msg: String,
error_title: String,
},
}
impl IdentifyUserState {
pub fn invalid_state_error() -> Self {
IdentifyUserState::Error {
error_msg: INVALID_STATE_ERROR_MESSAGE.to_string(), // TODO: add an error ID (internal error, restart)
error_title: "Invalid flow detected!".to_string(),
}
}
}
#[derive(Debug, Clone)]
enum IdentifyUserMsg {
Start,
SubmitOtherId { other_id: Arc<String> },
SubmitCode { code: u32, other_id: Arc<String> },
CodeConfirmedFirst { other_id: Arc<String> },
CodeConfirmedSecond { other_id: Arc<String> },
ReDisplayCodeFirst { other_id: Arc<String> },
ReDisplayCodeSecond { other_id: Arc<String> },
}
struct Ui(CursiveRunnable);
struct UiUserData {
controller_tx: UnboundedSender<IdentifyUserMsg>,
ui_rx: UnboundedReceiver<IdentifyUserState>,
}
impl Ui {
fn new(
controller_tx: UnboundedSender<IdentifyUserMsg>,
ui_rx: UnboundedReceiver<IdentifyUserState>,
) -> Self {
let mut cursive = crossterm();
cursive.add_global_callback('q', |s| {
s.quit();
});
cursive.set_autorefresh(true);
cursive.set_user_data(UiUserData {
controller_tx,
ui_rx,
});
Ui(cursive)
}
fn get_cb(&self) -> CbSink {
self.0.cb_sink().clone()
}
fn render_state(
s: &mut Cursive,
state: IdentifyUserState,
controller_tx: UnboundedSender<IdentifyUserMsg>,
) {
match state {
IdentifyUserState::IdDisplayAndSubmit { self_id } => {
let controller_tx_clone = controller_tx.clone();
let layout = LinearLayout::vertical()
.child(DummyView.fixed_height(1))
.child(
TextView::new(format!(
"When asked for your ID, provide the following: {}",
self_id
))
.h_align(HAlign::Center),
)
.child(DummyView.fixed_height(1))
.child(
TextView::new(" ---------------------------------------------- ")
.h_align(HAlign::Center),
)
.child(DummyView.fixed_height(1))
.child(
TextView::new("Ask for the other person's ID, and insert it here!")
.h_align(HAlign::Center),
)
.child(DummyView.fixed_height(1))
.child(
EditView::new()
.on_submit(move |s, user_id: &str| {
let send_outcome =
controller_tx.send(IdentifyUserMsg::SubmitOtherId {
other_id: Arc::new(user_id.to_string()),
});
if send_outcome.is_err() {
s.quit();
};
Self::loading_view(s);
})
.with_name("id-user-input"),
);
// we have to redeclare this because we consumed it in the prev closure
s.add_layer(
Dialog::around(layout)
.button("Quit", |s| {
s.quit();
})
.button("Continue", move |s| {
let user_id = match s
.call_on_name("id-user-input", |view: &mut EditView| {
view.get_content()
}) {
Some(user_id) => user_id,
None => {
return Self::error_state_view(
s,
"Internal error, couldn't get the 'id-user-input' view, please restart the program.", // TODO: add an error ID (internal error, restart)
None,
);
}
};
let send_outcome =
controller_tx_clone.send(IdentifyUserMsg::SubmitOtherId {
other_id: Arc::new(user_id.to_string()),
});
if send_outcome.is_err() {
s.quit();
};
Self::loading_view(s);
}),
);
}
IdentifyUserState::WaitForCode { other_id } => {
s.pop_layer();
let other_id_clone = other_id.clone();
let controller_tx_clone = controller_tx.clone();
let layout = LinearLayout::vertical()
.child(TextView::new(format!(
"Ask for {}'s code, and insert it here!",
&other_id
)))
.child(DummyView.fixed_height(1))
.child(
EditView::new()
.on_submit(move |s, code: &str| {
let code_u32 =
match Self::parse_totp_code_and_display_popup(s, code) {
Some(code) => code,
None => return,
};
let send_outcome =
controller_tx.send(IdentifyUserMsg::SubmitCode {
code: code_u32,
other_id: other_id_clone.clone(),
});
if send_outcome.is_err() {
s.quit();
};
Self::loading_view(s);
})
.with_name("totp-input"),
);
s.add_layer(
Dialog::around(layout)
.button("Quit", |s| {
s.quit();
})
.button("Continue", move |s| {
let code = match s.call_on_name("totp-input", |view: &mut EditView| {
view.get_content()
}) {
Some(code) => code,
None => {
return Self::error_state_view(
s,
"Internal error, couldn't get the 'totp-input' view, please restart the program.", // TODO: add an error ID (internal error, restart)
None,
);
}
};
let code_u32 =
match Self::parse_totp_code_and_display_popup(s, code.as_str()) {
Some(code) => code,
None => return,
};
let send_outcome =
controller_tx_clone.send(IdentifyUserMsg::SubmitCode {
code: code_u32,
other_id: other_id.clone(),
});
if send_outcome.is_err() {
s.quit();
};
Self::loading_view(s);
}),
);
}
IdentifyUserState::DisplayCodeFirst {
self_totp,
step,
other_id,
} => {
s.pop_layer();
let layout = LinearLayout::vertical()
.child(TextView::new(format!(
"Provide the following code when asked: {self_totp}"
)))
.child(DummyView.fixed_height(1))
.child(TotpCountdownView::new(
step as u64,
controller_tx.clone(),
IdentifyUserMsg::ReDisplayCodeFirst {
other_id: other_id.clone(),
},
));
s.add_layer(Dialog::around(layout).button("Continue", move |s| {
Self::confirmation_view(
s,
&other_id,
controller_tx.clone(),
IdentifyUserMsg::CodeConfirmedFirst {
other_id: other_id.clone(),
},
);
}));
}
IdentifyUserState::DisplayCodeSecond {
self_totp,
step,
other_id,
} => {
s.pop_layer();
let layout = LinearLayout::vertical()
.child(TextView::new(format!(
"Provide the following code when asked: {self_totp}"
)))
.child(DummyView.fixed_height(1))
.child(TotpCountdownView::new(
step as u64,
controller_tx.clone(),
IdentifyUserMsg::ReDisplayCodeSecond {
other_id: other_id.clone(),
},
));
s.add_layer(Dialog::around(layout).button("Continue", move |s| {
Self::confirmation_view(
s,
&other_id,
controller_tx.clone(),
IdentifyUserMsg::CodeConfirmedSecond {
other_id: other_id.clone(),
},
);
}));
}
IdentifyUserState::Success { other_id } => {
s.pop_layer();
let layout = LinearLayout::vertical().child(TextView::new(format!(
"{other_id}'s identity has been successfully verified!"
)));
s.add_layer(
Dialog::around(layout)
.padding_lrtb(1, 1, 1, 0)
.title("Success 🎉🎉")
.button("Quit", |s| {
s.quit();
}),
);
}
IdentifyUserState::Error {
error_msg: msg,
error_title: title,
} => Self::error_state_view(s, &msg, Some(&title)),
};
}
fn update_state_callback(s: &mut Cursive) {
let user_data = match s.user_data::<UiUserData>() {
Some(data) => data,
None => {
return Self::error_state_view(
s,
"Failed to parse server response, please start again.", // TODO: add error ID (internal error, restart)
None,
);
}
};
if let Some(state) = user_data.ui_rx.blocking_recv() {
let controller_rx = user_data.controller_tx.to_owned(); // we have to take ownership so the mut borrow `s` can be passed to `render_state`
Ui::render_state(s, state, controller_rx);
}
}
fn confirmation_view(
s: &mut Cursive,
other_id: &Arc<String>,
controller_tx: UnboundedSender<IdentifyUserMsg>,
msg: IdentifyUserMsg,
) {
let textarea = TextArea::new().content(format!("Did you confirm that {other_id} correctly verified your code? If you proceed, you won't be able to go back.")).disabled().fixed_width(57);
s.add_layer(
Dialog::around(textarea)
.padding_lrtb(1, 1, 0, 1)
.title("Warning!")
.button("Continue", move |s| {
s.pop_layer();
s.pop_layer();
let send_outcome = controller_tx.send(msg.to_owned());
if send_outcome.is_err() {
s.quit();
};
})
.dismiss_button("Cancel"),
);
}
fn error_state_view(s: &mut Cursive, msg: &str, error_title: Option<&str>) {
s.pop_layer();
let layout = LinearLayout::vertical()
.child(DummyView.fixed_height(1))
.child(TextView::new(msg));
s.add_layer(
Dialog::around(layout)
.title(error_title.unwrap_or("An error occurred!"))
.button("Quit", |s| {
s.quit();
}),
);
}
fn parse_totp_code_and_display_popup(s: &mut Cursive, code: &str) -> Option<u32> {
let code_u32 = match code.parse::<u32>() {
Ok(code_u32) => code_u32,
Err(_) => {
Self::disposable_warning_view(s, "The code you provided is not a number!");
return None;
}
};
if code.len() < 5 || code.len() > 6 {
Self::disposable_warning_view(s, "The code should be a 5 or 6 digit number!");
return None;
};
Some(code_u32)
}
fn disposable_warning_view(s: &mut Cursive, msg: &str) {
let dialog = Dialog::text(msg).dismiss_button("Ok");
s.add_layer(dialog);
}
fn loading_view(s: &mut Cursive) {
s.pop_layer();
s.add_layer(TextView::new("Loading, please wait..."));
}
}
struct TotpCountdownView {
msg: IdentifyUserMsg,
step: u64,
controller_tx: UnboundedSender<IdentifyUserMsg>,
should_call_callback: RefCell<bool>, // we need to use a refcell since we need to mutate this data inside the `draw` method which has a `&self` reference
}
impl TotpCountdownView {
fn new(
step: u64,
controller_tx: UnboundedSender<IdentifyUserMsg>,
msg: IdentifyUserMsg,
) -> Self {
Self {
should_call_callback: RefCell::new(true),
msg,
step,
controller_tx,
}
}
fn get_ticks_left_from_now(&self, step: u64) -> u64 {
#[allow(clippy::expect_used)]
let dur = SystemTime::now()
.duration_since(SystemTime::UNIX_EPOCH)
.expect("invalid duration from epoch now");
step - dur.as_secs() % (step)
}
}
impl View for TotpCountdownView {
fn draw(&self, printer: &cursive::Printer) {
let ticks_left_from_now = self.get_ticks_left_from_now(self.step);
// basically whenever the ticks_left reset to step, i.e. the first time this function has been called after we got to a new totp window, then we
// call the callback to fetch a new code which will be displayed at best in the next tick. On very slow connections the user might see the old
// code for a bit. If we want to get rid of this we would need to pass to the struct a callback to show a loading screen
if ticks_left_from_now == self.step && *self.should_call_callback.borrow() {
self.controller_tx
.send(self.msg.to_owned())
.expect("TOTP countdown view failed to send msg to controller"); // TODO: add an error ID (internal error, restart)
*self.should_call_callback.borrow_mut() = false;
};
printer.print(
(0, 0),
&format!(" {}s left", ticks_left_from_now),
);
}
}

View file

@ -16,10 +16,7 @@ extern crate tracing;
use crate::common::OpType; use crate::common::OpType;
use std::path::PathBuf; use std::path::PathBuf;
#[cfg(not(feature = "idv-tui"))]
use identify_user_no_tui::{run_identity_verification_no_tui, IdentifyUserState}; use identify_user_no_tui::{run_identity_verification_no_tui, IdentifyUserState};
#[cfg(feature = "idv-tui")]
use identify_user_tui::run_identity_verification_tui;
use kanidm_client::{ClientError, StatusCode}; use kanidm_client::{ClientError, StatusCode};
use url::Url; use url::Url;
@ -30,8 +27,6 @@ include!("../opt/kanidm.rs");
mod common; mod common;
mod domain; mod domain;
mod group; mod group;
#[cfg(feature = "idv-tui")]
mod identify_user_tui;
mod oauth2; mod oauth2;
mod person; mod person;
mod raw; mod raw;
@ -131,9 +126,6 @@ impl SelfOpt {
} }
}; };
#[cfg(feature = "idv-tui")]
run_identity_verification_tui(spn, client).await;
#[cfg(not(feature = "idv-tui"))]
run_identity_verification_no_tui(IdentifyUserState::Start, client, spn, None).await; run_identity_verification_no_tui(IdentifyUserState::Start, client, spn, None).await;
} // end PersonOpt::Validity } // end PersonOpt::Validity
} }
@ -226,7 +218,6 @@ pub const INVALID_USER_ID_ERROR_MESSAGE: &str =
pub const INVALID_STATE_ERROR_MESSAGE: &str = pub const INVALID_STATE_ERROR_MESSAGE: &str =
"The user identification flow is in an invalid state 😵😵"; "The user identification flow is in an invalid state 😵😵";
#[cfg(not(feature = "idv-tui"))]
mod identify_user_no_tui { mod identify_user_no_tui {
use crate::{ use crate::{
CODE_FAILURE_ERROR_MESSAGE, IDENTITY_UNAVAILABLE_ERROR_MESSAGE, CODE_FAILURE_ERROR_MESSAGE, IDENTITY_UNAVAILABLE_ERROR_MESSAGE,

View file

@ -57,7 +57,6 @@ base64urlsafedata = { workspace = true }
bytes = { workspace = true } bytes = { workspace = true }
clap = { workspace = true, features = ["derive", "env"] } clap = { workspace = true, features = ["derive", "env"] }
csv = { workspace = true } csv = { workspace = true }
compact_jwt = { workspace = true, features = ["hsm-crypto"] }
futures = { workspace = true } futures = { workspace = true }
hashbrown = { workspace = true } hashbrown = { workspace = true }
libc = { workspace = true } libc = { workspace = true }