diff --git a/Cargo.lock b/Cargo.lock index db1fee6..d379fb0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -48,9 +48,9 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.18" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9" [[package]] name = "android-tzdata" @@ -69,9 +69,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.15" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" +checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" dependencies = [ "anstyle", "anstyle-parse", @@ -84,43 +84,43 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.8" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] name = "anstyle-parse" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.4" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" dependencies = [ "anstyle", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "anyhow" -version = "1.0.90" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95" +checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "arrayvec" @@ -147,7 +147,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -279,9 +279,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" +checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" [[package]] name = "cached" @@ -293,7 +293,7 @@ dependencies = [ "hashbrown 0.14.5", "instant", "once_cell", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -316,7 +316,7 @@ dependencies = [ "serde", "serde_bytes", "stacker", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -328,14 +328,14 @@ dependencies = [ "lazy_static", "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] name = "cc" -version = "1.1.31" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" +checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" dependencies = [ "shlex", ] @@ -357,6 +357,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "chrono" version = "0.4.38" @@ -401,9 +407,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.20" +version = "4.5.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" +checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" dependencies = [ "clap_builder", "clap_derive", @@ -411,9 +417,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.20" +version = "4.5.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" +checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" dependencies = [ "anstream", "anstyle", @@ -430,20 +436,20 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] name = "clap_lex" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" +checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" [[package]] name = "colorchoice" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] name = "concurrent-queue" @@ -488,9 +494,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.14" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -562,7 +568,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -625,6 +631,17 @@ dependencies = [ "subtle", ] +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "ecdsa" version = "0.16.9" @@ -660,7 +677,7 @@ dependencies = [ "rand_core", "serde", "sha2 0.9.9", - "thiserror", + "thiserror 1.0.69", "zeroize", ] @@ -706,9 +723,9 @@ dependencies = [ [[package]] name = "encoding_rs" -version = "0.8.34" +version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" dependencies = [ "cfg-if", ] @@ -752,9 +769,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" +checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" [[package]] name = "ff" @@ -858,7 +875,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -909,8 +926,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", + "js-sys", "libc", "wasi", + "wasm-bindgen", ] [[package]] @@ -977,9 +996,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" [[package]] name = "heck" @@ -1105,9 +1124,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +checksum = "97818827ef4f364230e16705d4706e2897df2bb60617d6ca15d598025a3c481f" dependencies = [ "bytes", "futures-channel", @@ -1130,7 +1149,7 @@ checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", "http 1.1.0", - "hyper 1.5.0", + "hyper 1.5.1", "hyper-util", "rustls", "rustls-pki-types", @@ -1155,16 +1174,16 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" dependencies = [ "bytes", "futures-channel", "futures-util", "http 1.1.0", "http-body 1.0.1", - "hyper 1.5.0", + "hyper 1.5.1", "pin-project-lite", "socket2", "tokio", @@ -1212,9 +1231,9 @@ dependencies = [ [[package]] name = "ic-agent" -version = "0.39.0" +version = "0.39.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0783cc46e082dc4b016ff693a45207db55e552e8e6f5e3e2552514761a285f6d" +checksum = "158138fcb769fe6288e63d5db221c904e472cfb7d376aba13a38c060f2984e63" dependencies = [ "async-lock", "async-trait", @@ -1239,7 +1258,7 @@ dependencies = [ "pkcs8", "rand", "rangemap", - "reqwest 0.12.8", + "reqwest 0.12.9", "sec1", "serde", "serde_bytes", @@ -1247,7 +1266,7 @@ dependencies = [ "serde_repr", "sha2 0.10.8", "simple_asn1", - "thiserror", + "thiserror 1.0.69", "time", "tokio", "tower-service", @@ -1256,9 +1275,9 @@ dependencies = [ [[package]] name = "ic-cdk" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8ecacd682fa05a985253592963306cb9799622d7b1cce4b1edb89c6ec85be1" +checksum = "b2abdf9341da9f9f6b451a40609cb69645a05a8e9eb7784c16209f16f2c0f76f" dependencies = [ "candid", "ic-cdk-macros", @@ -1269,23 +1288,23 @@ dependencies = [ [[package]] name = "ic-cdk-macros" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d4d857135deef20cc7ea8f3869a30cd9cfeb1392b3a81043790b2cd82adc3e0" +checksum = "b8df41980e95dead28735ab0f748c75477b0c5eab37a09a5641c78ec406a1db0" dependencies = [ "candid", "proc-macro2", "quote", "serde", "serde_tokenstream", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] name = "ic-cdk-timers" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7c528bbb3d4d934b43a364855995d318649217c7510f40f92ad52eba3ff7be" +checksum = "fb8fd812a9e26f6aa00594546f8fbf4d4853f39c3ba794c8ff11ecf86fd3c9e4" dependencies = [ "futures", "ic-cdk", @@ -1318,13 +1337,13 @@ dependencies = [ "ic-certification", "ic-representation-independent-hash", "serde", - "thiserror", + "thiserror 1.0.69", "urlencoding", ] [[package]] name = "ic-oss" -version = "0.9.9" +version = "0.9.10" dependencies = [ "bytes", "candid", @@ -1341,7 +1360,7 @@ dependencies = [ [[package]] name = "ic-oss-can" -version = "0.9.9" +version = "0.9.10" dependencies = [ "candid", "ciborium", @@ -1354,7 +1373,7 @@ dependencies = [ [[package]] name = "ic-oss-cli" -version = "0.9.9" +version = "0.9.10" dependencies = [ "anyhow", "candid", @@ -1375,7 +1394,7 @@ dependencies = [ [[package]] name = "ic-oss-types" -version = "0.9.9" +version = "0.9.10" dependencies = [ "base64 0.22.1", "candid", @@ -1405,18 +1424,18 @@ dependencies = [ [[package]] name = "ic-stable-structures" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03f3044466a69802de74e710dc0300b706a05696a0531c942ca856751a13b0db" +checksum = "fcaf89c1bc326c72498bcc0cd954f2edf718c018e7c586d2193d701d3c9af29a" dependencies = [ "ic_principal", ] [[package]] name = "ic-transport-types" -version = "0.39.0" +version = "0.39.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90400f5f1371fda054a07e23717d38813f15093e193b8f21a36fd3e2c62a7179" +checksum = "2d8789a5c176bb1b925fa58ca97c651a3995d504e76101e93d2a17f558bdcf66" dependencies = [ "candid", "hex", @@ -1427,7 +1446,7 @@ dependencies = [ "serde_cbor", "serde_repr", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1466,7 +1485,7 @@ dependencies = [ [[package]] name = "ic_oss_bucket" -version = "0.9.9" +version = "0.9.10" dependencies = [ "base64 0.22.1", "candid", @@ -1486,7 +1505,7 @@ dependencies = [ [[package]] name = "ic_oss_cluster" -version = "0.9.9" +version = "0.9.10" dependencies = [ "candid", "ciborium", @@ -1512,7 +1531,7 @@ dependencies = [ "data-encoding", "serde", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1535,14 +1554,143 @@ dependencies = [ "time", ] +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "idna" -version = "0.5.0" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ - "unicode-bidi", - "unicode-normalization", + "icu_normalizer", + "icu_properties", ] [[package]] @@ -1552,7 +1700,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.15.0", + "hashbrown 0.15.1", ] [[package]] @@ -1596,9 +1744,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" [[package]] name = "js-sys" @@ -1652,15 +1800,15 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.161" +version = "0.2.164" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" +checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" [[package]] name = "libm" -version = "0.2.8" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" [[package]] name = "linux-raw-sys" @@ -1668,6 +1816,12 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +[[package]] +name = "litemap" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" + [[package]] name = "lock_api" version = "0.4.12" @@ -1698,9 +1852,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "mime-db" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a61c4bc8a32ee5bf3e11804ec460e771ea496968a213fa187651569ee3418" +checksum = "31951f6dfc6394b0dc7bf1dad6be4fc0819253ef17ffba37895b5c1dd4978d60" dependencies = [ "reqwest 0.11.27", "serde", @@ -1825,7 +1979,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -1929,9 +2083,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pin-project-lite" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" [[package]] name = "pin-utils" @@ -1992,27 +2146,27 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.88" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] [[package]] name = "psm" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa37f80ca58604976033fae9515a8a2989fc13797d953f7c04fb8fa36a11f205" +checksum = "200b9ff220857e53e184257720a14553b2f4aa02577d2ed9842d45d4b9654810" dependencies = [ "cc", ] [[package]] name = "quinn" -version = "0.11.5" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" +checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" dependencies = [ "bytes", "pin-project-lite", @@ -2021,34 +2175,38 @@ dependencies = [ "rustc-hash", "rustls", "socket2", - "thiserror", + "thiserror 2.0.3", "tokio", "tracing", ] [[package]] name = "quinn-proto" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" +checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ "bytes", + "getrandom", "rand", "ring", "rustc-hash", "rustls", + "rustls-pki-types", "slab", - "thiserror", + "thiserror 2.0.3", "tinyvec", "tracing", + "web-time", ] [[package]] name = "quinn-udp" -version = "0.5.5" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b" +checksum = "7d5a626c6807713b15cac82a6acaccd6043c9a5408c24baae07611fec3f243da" dependencies = [ + "cfg_aliases", "libc", "once_cell", "socket2", @@ -2152,9 +2310,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.8" +version = "0.12.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" +checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" dependencies = [ "base64 0.22.1", "bytes", @@ -2164,7 +2322,7 @@ dependencies = [ "http 1.1.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.0", + "hyper 1.5.1", "hyper-rustls", "hyper-util", "ipnet", @@ -2181,7 +2339,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tokio", "tokio-rustls", "tokio-util", @@ -2243,9 +2401,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.37" +version = "0.38.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" dependencies = [ "bitflags 2.6.0", "errno", @@ -2256,9 +2414,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.15" +version = "0.23.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fbb44d7acc4e873d613422379f69f237a1b141928c02f6bc6ccfddddc2d7993" +checksum = "9c9cc1d47e243d655ace55ed38201c19ae02c148ae56412ab8750e8f0166ab7f" dependencies = [ "once_cell", "ring", @@ -2291,6 +2449,9 @@ name = "rustls-pki-types" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" +dependencies = [ + "web-time", +] [[package]] name = "rustls-webpki" @@ -2317,9 +2478,9 @@ checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "schannel" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" +checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" dependencies = [ "windows-sys 0.59.0", ] @@ -2359,9 +2520,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.12.0" +version = "2.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +checksum = "fa39c7303dc58b5543c94d22c1766b0d31f2ee58306363ea622b10bbc075eaa2" dependencies = [ "core-foundation-sys", "libc", @@ -2375,9 +2536,9 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.210" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f" dependencies = [ "serde_derive", ] @@ -2403,20 +2564,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.210" +version = "1.0.215" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] name = "serde_json" -version = "1.0.132" +version = "1.0.133" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" dependencies = [ "itoa", "memchr", @@ -2432,7 +2593,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -2444,7 +2605,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -2526,7 +2687,7 @@ checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" dependencies = [ "num-bigint", "num-traits", - "thiserror", + "thiserror 1.0.69", "time", ] @@ -2580,6 +2741,12 @@ dependencies = [ "der", ] +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + [[package]] name = "stacker" version = "0.1.17" @@ -2618,7 +2785,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -2646,9 +2813,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.82" +version = "2.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021" +checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" dependencies = [ "proc-macro2", "quote", @@ -2663,13 +2830,24 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] name = "sync_wrapper" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" dependencies = [ "futures-core", ] +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "system-configuration" version = "0.5.1" @@ -2693,9 +2871,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" dependencies = [ "cfg-if", "fastrand", @@ -2706,22 +2884,42 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa" +dependencies = [ + "thiserror-impl 2.0.3", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ - "thiserror-impl", + "proc-macro2", + "quote", + "syn 2.0.89", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -2755,6 +2953,16 @@ dependencies = [ "time-core", ] +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + [[package]] name = "tinyvec" version = "1.8.0" @@ -2772,9 +2980,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.40.0" +version = "1.41.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" dependencies = [ "backtrace", "bytes", @@ -2796,7 +3004,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", ] [[package]] @@ -2893,26 +3101,11 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" -[[package]] -name = "unicode-bidi" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" - [[package]] name = "unicode-ident" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" - -[[package]] -name = "unicode-normalization" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-width" @@ -2928,9 +3121,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.2" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" dependencies = [ "form_urlencoded", "idna", @@ -2943,6 +3136,18 @@ version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "utf8parse" version = "0.2.2" @@ -3004,7 +3209,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", "wasm-bindgen-shared", ] @@ -3038,7 +3243,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -3051,9 +3256,9 @@ checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "wasm-streams" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" +checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" dependencies = [ "futures-util", "js-sys", @@ -3072,11 +3277,21 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + [[package]] name = "webpki-roots" -version = "0.26.6" +version = "0.26.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" dependencies = [ "rustls-pki-types", ] @@ -3278,6 +3493,42 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + +[[package]] +name = "yoke" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", + "synstructure", +] + [[package]] name = "zerocopy" version = "0.7.35" @@ -3296,7 +3547,28 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.82", + "syn 2.0.89", +] + +[[package]] +name = "zerofrom" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", + "synstructure", ] [[package]] @@ -3304,3 +3576,25 @@ name = "zeroize" version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] diff --git a/Cargo.toml b/Cargo.toml index 0dc9004..37ef722 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ strip = true opt-level = 's' [workspace.package] -version = "0.9.9" +version = "0.9.10" edition = "2021" repository = "https://github.com/ldclabs/ic-oss" keywords = ["file", "storage", "oss", "s3", "icp"] @@ -29,6 +29,7 @@ bytes = "1" base64 = "0.22" candid = "0.10" ciborium = "0.2" +coset = "0.3" futures = "0.3" serde = "1" serde_bytes = "0.11" @@ -41,8 +42,8 @@ hex = "0.4" sha2 = "0.10" sha3 = "0.10" num-traits = "0.2" -ic-cdk = "0.16" -ic-cdk-timers = "0.10" +ic-cdk = "0.17" +ic-cdk-timers = "0.11" ic-stable-structures = "0.6" icrc-ledger-types = "0.1" ic-http-certification = { version = "2.6", features = ["serde"] } diff --git a/package-lock.json b/package-lock.json index 2873939..6eefff3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -818,9 +818,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, "license": "MIT", "engines": { @@ -828,9 +828,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", - "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", + "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -867,9 +867,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz", - "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz", + "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==", "dev": true, "license": "Apache-2.0", "engines": { @@ -945,9 +945,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz", - "integrity": "sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", + "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -958,9 +958,9 @@ } }, "node_modules/@humanfs/core": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz", - "integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -968,19 +968,33 @@ } }, "node_modules/@humanfs/node": { - "version": "0.16.5", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz", - "integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==", + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@humanfs/core": "^0.19.0", + "@humanfs/core": "^0.19.1", "@humanwhocodes/retry": "^0.3.0" }, "engines": { "node": ">=18.18.0" } }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", @@ -1044,9 +1058,9 @@ "license": "BSD-3-Clause" }, "node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -1931,15 +1945,15 @@ "license": "ISC" }, "node_modules/@vitest/expect": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.2.tgz", - "integrity": "sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.5.tgz", + "integrity": "sha512-nZSBTW1XIdpZvEJyoP/Sy8fUg0b8od7ZpGDkTUcfJ7wz/VoZAFzFfLyxVxGFhUjJzhYqSbIpfMtl/+k/dpWa3Q==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "2.1.2", - "@vitest/utils": "2.1.2", - "chai": "^5.1.1", + "@vitest/spy": "2.1.5", + "@vitest/utils": "2.1.5", + "chai": "^5.1.2", "tinyrainbow": "^1.2.0" }, "funding": { @@ -1947,22 +1961,21 @@ } }, "node_modules/@vitest/mocker": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.2.tgz", - "integrity": "sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.5.tgz", + "integrity": "sha512-XYW6l3UuBmitWqSUXTNXcVBUCRytDogBsWuNXQijc00dtnU/9OqpXWp4OJroVrad/gLIomAq9aW8yWDBtMthhQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "^2.1.0-beta.1", + "@vitest/spy": "2.1.5", "estree-walker": "^3.0.3", - "magic-string": "^0.30.11" + "magic-string": "^0.30.12" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "@vitest/spy": "2.1.2", - "msw": "^2.3.5", + "msw": "^2.4.9", "vite": "^5.0.0" }, "peerDependenciesMeta": { @@ -1975,9 +1988,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.2.tgz", - "integrity": "sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.5.tgz", + "integrity": "sha512-4ZOwtk2bqG5Y6xRGHcveZVr+6txkH7M2e+nPFd6guSoN638v/1XQ0K06eOpi0ptVU/2tW/pIU4IoPotY/GZ9fw==", "dev": true, "license": "MIT", "dependencies": { @@ -1988,13 +2001,13 @@ } }, "node_modules/@vitest/runner": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.2.tgz", - "integrity": "sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.5.tgz", + "integrity": "sha512-pKHKy3uaUdh7X6p1pxOkgkVAFW7r2I818vHDthYLvUyjRfkKOU6P45PztOch4DZarWQne+VOaIMwA/erSSpB9g==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "2.1.2", + "@vitest/utils": "2.1.5", "pathe": "^1.1.2" }, "funding": { @@ -2002,14 +2015,14 @@ } }, "node_modules/@vitest/snapshot": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.2.tgz", - "integrity": "sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.5.tgz", + "integrity": "sha512-zmYw47mhfdfnYbuhkQvkkzYroXUumrwWDGlMjpdUr4jBd3HZiV2w7CQHj+z7AAS4VOtWxI4Zt4bWt4/sKcoIjg==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.1.2", - "magic-string": "^0.30.11", + "@vitest/pretty-format": "2.1.5", + "magic-string": "^0.30.12", "pathe": "^1.1.2" }, "funding": { @@ -2017,27 +2030,27 @@ } }, "node_modules/@vitest/spy": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.2.tgz", - "integrity": "sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.5.tgz", + "integrity": "sha512-aWZF3P0r3w6DiYTVskOYuhBc7EMc3jvn1TkBg8ttylFFRqNN2XGD7V5a4aQdk6QiUzZQ4klNBSpCLJgWNdIiNw==", "dev": true, "license": "MIT", "dependencies": { - "tinyspy": "^3.0.0" + "tinyspy": "^3.0.2" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/utils": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.2.tgz", - "integrity": "sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.5.tgz", + "integrity": "sha512-yfj6Yrp0Vesw2cwJbP+cl04OC+IHFsuQsrsJBL9pyGeQXE56v1UAOQco+SR55Vf1nQzfV0QJg1Qum7AaWUwwYg==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.1.2", - "loupe": "^3.1.1", + "@vitest/pretty-format": "2.1.5", + "loupe": "^3.1.2", "tinyrainbow": "^1.2.0" }, "funding": { @@ -2045,9 +2058,9 @@ } }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "dev": true, "license": "MIT", "bin": { @@ -2678,9 +2691,9 @@ "license": "CC-BY-4.0" }, "node_modules/chai": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz", - "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", + "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", "dev": true, "license": "MIT", "dependencies": { @@ -2858,9 +2871,9 @@ "license": "MIT" }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "license": "MIT", "dependencies": { @@ -3122,13 +3135,13 @@ } }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dev": true, "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -3508,6 +3521,13 @@ "node": ">= 0.4" } }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true, + "license": "MIT" + }, "node_modules/es-object-atoms": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", @@ -4110,6 +4130,16 @@ "node": ">=0.10.0" } }, + "node_modules/expect-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz", + "integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -5431,9 +5461,9 @@ "license": "ISC" }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.13", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.13.tgz", + "integrity": "sha512-8rYBO+MsWkgjDSOvLomYnzhdwEG51olQ4zL5KXnNJWV5MNmrb4rTZdrtkhxjnD/QyZUqR/Z/XDsUs/4ej2nx0g==", "dev": true, "license": "MIT", "dependencies": { @@ -5597,9 +5627,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, "license": "MIT" }, @@ -7390,9 +7420,9 @@ "license": "MIT" }, "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", + "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==", "dev": true, "license": "MIT" }, @@ -8285,9 +8315,9 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.0.tgz", - "integrity": "sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz", + "integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==", "dev": true, "license": "MIT" }, @@ -8538,9 +8568,9 @@ } }, "node_modules/typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, "license": "Apache-2.0", "bin": { @@ -8693,14 +8723,15 @@ } }, "node_modules/vite-node": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.2.tgz", - "integrity": "sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.5.tgz", + "integrity": "sha512-rd0QIgx74q4S1Rd56XIiL2cYEdyWn13cunYBIuqh9mpmQr7gGS0IxXoP8R6OaZtNQQLyXSWbd4rXKYUbhFpK5w==", "dev": true, "license": "MIT", "dependencies": { "cac": "^6.7.14", - "debug": "^4.3.6", + "debug": "^4.3.7", + "es-module-lexer": "^1.5.4", "pathe": "^1.1.2", "vite": "^5.0.0" }, @@ -8740,30 +8771,31 @@ } }, "node_modules/vitest": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.2.tgz", - "integrity": "sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/expect": "2.1.2", - "@vitest/mocker": "2.1.2", - "@vitest/pretty-format": "^2.1.2", - "@vitest/runner": "2.1.2", - "@vitest/snapshot": "2.1.2", - "@vitest/spy": "2.1.2", - "@vitest/utils": "2.1.2", - "chai": "^5.1.1", - "debug": "^4.3.6", - "magic-string": "^0.30.11", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.5.tgz", + "integrity": "sha512-P4ljsdpuzRTPI/kbND2sDZ4VmieerR2c9szEZpjc+98Z9ebvnXmM5+0tHEKqYZumXqlvnmfWsjeFOjXVriDG7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "2.1.5", + "@vitest/mocker": "2.1.5", + "@vitest/pretty-format": "^2.1.5", + "@vitest/runner": "2.1.5", + "@vitest/snapshot": "2.1.5", + "@vitest/spy": "2.1.5", + "@vitest/utils": "2.1.5", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", "pathe": "^1.1.2", - "std-env": "^3.7.0", + "std-env": "^3.8.0", "tinybench": "^2.9.0", - "tinyexec": "^0.3.0", - "tinypool": "^1.0.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", "tinyrainbow": "^1.2.0", "vite": "^5.0.0", - "vite-node": "2.1.2", + "vite-node": "2.1.5", "why-is-node-running": "^2.3.0" }, "bin": { @@ -8778,8 +8810,8 @@ "peerDependencies": { "@edge-runtime/vm": "*", "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.1.2", - "@vitest/ui": "2.1.2", + "@vitest/browser": "2.1.5", + "@vitest/ui": "2.1.5", "happy-dom": "*", "jsdom": "*" }, @@ -9111,38 +9143,38 @@ }, "src/ic_oss_ts": { "name": "@ldclabs/ic_oss_ts", - "version": "0.9.3", + "version": "0.9.6", "license": "MIT", "dependencies": { - "@dfinity/agent": "^2.1.2", - "@dfinity/candid": "^2.1.2", - "@dfinity/principal": "^2.1.2", - "@dfinity/utils": "^2.5.2", - "@noble/hashes": "^1.5.0", + "@dfinity/agent": "^2.1.3", + "@dfinity/candid": "^2.1.3", + "@dfinity/principal": "^2.1.3", + "@dfinity/utils": "^2.7.0", + "@noble/hashes": "^1.6.1", "mime": "^4.0.4", "web-streams-polyfill": "^4.0.0" }, "devDependencies": { "@types/eslint": "^9.6.1", - "@types/node": "22.7.5", - "@typescript-eslint/eslint-plugin": "^8.8.1", - "@typescript-eslint/parser": "^8.8.1", - "eslint": "^9.12.0", + "@types/node": "22.9.3", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", + "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "^5.2.1", "prettier": "^3.3.3", - "typescript": "^5.6.3", - "vitest": "^2.1.2" + "typescript": "^5.7.2", + "vitest": "^2.1.5" }, "engines": { "node": ">=18.16.0" } }, "src/ic_oss_ts/node_modules/@dfinity/agent": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@dfinity/agent/-/agent-2.1.2.tgz", - "integrity": "sha512-UAXf6uXovhBlSp245RWlA21zcCavy+vVUvKVQUpesk1gLJpJlvsCE6hYOwTeFZAP+bjmPi0Tl7cx8DT2KM4eDQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@dfinity/agent/-/agent-2.1.3.tgz", + "integrity": "sha512-4XmqhFR3GQSUrmx7lMFx7DyHEhFkM6nz4O9FeYJ/WpkmPe8tulKaAfgWbWdTSCjbd8meCgKVHo+QYj+JHXagcw==", "license": "Apache-2.0", "dependencies": { "@noble/curves": "^1.4.0", @@ -9153,32 +9185,32 @@ "simple-cbor": "^0.4.1" }, "peerDependencies": { - "@dfinity/candid": "^2.1.2", - "@dfinity/principal": "^2.1.2" + "@dfinity/candid": "^2.1.3", + "@dfinity/principal": "^2.1.3" } }, "src/ic_oss_ts/node_modules/@dfinity/candid": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@dfinity/candid/-/candid-2.1.2.tgz", - "integrity": "sha512-do69J9iahW2tlmbPdbmc8MDhi5cfIQyTcAlYqaSOOAyg+Kp8beCnW7mletXVfx30dyVlpkyCrYOXhbpQuSCKtw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@dfinity/candid/-/candid-2.1.3.tgz", + "integrity": "sha512-Asn7AfydLhhk7E5z9oW+5UL6ne11gxFlYTxHuhrIc7FdqYlM5Flcq1Wfg9EzRa6Btdol3w58Bcph7Brwh1bcIQ==", "license": "Apache-2.0", "peerDependencies": { - "@dfinity/principal": "^2.1.2" + "@dfinity/principal": "^2.1.3" } }, "src/ic_oss_ts/node_modules/@dfinity/principal": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@dfinity/principal/-/principal-2.1.2.tgz", - "integrity": "sha512-L3Y0nDjquqNFseM2Gx5fI4GOUKjjezFr9/6ZjSwAFeDeb4Ubqld4ZKL3FEzv4QKNbfZgCx19b7UXi+OdmLhi4w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@dfinity/principal/-/principal-2.1.3.tgz", + "integrity": "sha512-HtiAfZcs+ToPYFepVJdFlorIfPA56KzC6J97ZuH2lGNMTAfJA+NEBzLe476B4wVCAwZ0TiGJ27J4ks9O79DFEg==", "license": "Apache-2.0", "dependencies": { "@noble/hashes": "^1.3.1" } }, "src/ic_oss_ts/node_modules/@dfinity/utils": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@dfinity/utils/-/utils-2.5.2.tgz", - "integrity": "sha512-QSW7t8kcLj0s/gL4NbYqr+Pqr3e2QhFn2JriwcghuflhwrYet1y23ANyM4EwSUeDAUR/OQXR86e4MfWkGMttAg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@dfinity/utils/-/utils-2.7.0.tgz", + "integrity": "sha512-PPuzoFXwcjPJN0ax9GeKyJaMokq7igDDX8f4YnrBzmYgqhKPntLSg5oBZM/H54mkS/RvZ69+LlxEFSSzULoCKw==", "license": "Apache-2.0", "peerDependencies": { "@dfinity/agent": "^2.0.0", @@ -9187,7 +9219,9 @@ } }, "src/ic_oss_ts/node_modules/@eslint/eslintrc": { - "version": "3.1.0", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", "dev": true, "license": "MIT", "dependencies": { @@ -9210,6 +9244,8 @@ }, "src/ic_oss_ts/node_modules/@eslint/eslintrc/node_modules/minimatch": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "license": "ISC", "dependencies": { @@ -9220,9 +9256,9 @@ } }, "src/ic_oss_ts/node_modules/@eslint/js": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz", - "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==", + "version": "9.15.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.15.0.tgz", + "integrity": "sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==", "dev": true, "license": "MIT", "engines": { @@ -9230,9 +9266,9 @@ } }, "src/ic_oss_ts/node_modules/@noble/hashes": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz", - "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.6.1.tgz", + "integrity": "sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==", "license": "MIT", "engines": { "node": "^14.21.3 || >=16" @@ -9253,27 +9289,27 @@ } }, "src/ic_oss_ts/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "version": "22.9.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.3.tgz", + "integrity": "sha512-F3u1fs/fce3FFk+DAxbxc78DF8x0cY09RRL8GnXLmkJ1jvx3TtPdWoTT5/NiYfI5ASqXBmfqJi9dZ3gxMx4lzw==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~6.19.8" } }, "src/ic_oss_ts/node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.8.1.tgz", - "integrity": "sha512-xfvdgA8AP/vxHgtgU310+WBnLB4uJQ9XdyP17RebG26rLtDrQJV3ZYrcopX91GrHmMoH8bdSwMRh2a//TiJ1jQ==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.15.0.tgz", + "integrity": "sha512-+zkm9AR1Ds9uLWN3fkoeXgFppaQ+uEVtfOV62dDmsy9QCNqlRHWNEck4yarvRNrvRcHQLGfqBNui3cimoz8XAg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.8.1", - "@typescript-eslint/type-utils": "8.8.1", - "@typescript-eslint/utils": "8.8.1", - "@typescript-eslint/visitor-keys": "8.8.1", + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/type-utils": "8.15.0", + "@typescript-eslint/utils": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -9297,16 +9333,16 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/parser": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.8.1.tgz", - "integrity": "sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.15.0.tgz", + "integrity": "sha512-7n59qFpghG4uazrF9qtGKBZXn7Oz4sOMm8dwNWDQY96Xlm2oX67eipqcblDj+oY1lLCbf1oltMZFpUso66Kl1A==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "8.8.1", - "@typescript-eslint/types": "8.8.1", - "@typescript-eslint/typescript-estree": "8.8.1", - "@typescript-eslint/visitor-keys": "8.8.1", + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/typescript-estree": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "debug": "^4.3.4" }, "engines": { @@ -9326,14 +9362,14 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/scope-manager": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.8.1.tgz", - "integrity": "sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.15.0.tgz", + "integrity": "sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.8.1", - "@typescript-eslint/visitor-keys": "8.8.1" + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -9344,14 +9380,14 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/type-utils": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.8.1.tgz", - "integrity": "sha512-qSVnpcbLP8CALORf0za+vjLYj1Wp8HSoiI8zYU5tHxRVj30702Z1Yw4cLwfNKhTPWp5+P+k1pjmD5Zd1nhxiZA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.15.0.tgz", + "integrity": "sha512-UU6uwXDoI3JGSXmcdnP5d8Fffa2KayOhUUqr/AiBnG1Gl7+7ut/oyagVeSkh7bxQ0zSXV9ptRh/4N15nkCqnpw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.8.1", - "@typescript-eslint/utils": "8.8.1", + "@typescript-eslint/typescript-estree": "8.15.0", + "@typescript-eslint/utils": "8.15.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -9362,6 +9398,9 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0" + }, "peerDependenciesMeta": { "typescript": { "optional": true @@ -9369,9 +9408,9 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/types": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.8.1.tgz", - "integrity": "sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.15.0.tgz", + "integrity": "sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==", "dev": true, "license": "MIT", "engines": { @@ -9383,14 +9422,14 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.8.1.tgz", - "integrity": "sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.15.0.tgz", + "integrity": "sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/types": "8.8.1", - "@typescript-eslint/visitor-keys": "8.8.1", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -9412,16 +9451,16 @@ } }, "src/ic_oss_ts/node_modules/@typescript-eslint/utils": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.8.1.tgz", - "integrity": "sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.15.0.tgz", + "integrity": "sha512-k82RI9yGhr0QM3Dnq+egEpz9qB6Un+WLYhmoNcvl8ltMEededhh7otBVVIDDsEEttauwdY/hQoSsOv13lxrFzQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.8.1", - "@typescript-eslint/types": "8.8.1", - "@typescript-eslint/typescript-estree": "8.8.1" + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/typescript-estree": "8.15.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -9432,17 +9471,22 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "src/ic_oss_ts/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.8.1.tgz", - "integrity": "sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.15.0.tgz", + "integrity": "sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.8.1", - "eslint-visitor-keys": "^3.4.3" + "@typescript-eslint/types": "8.15.0", + "eslint-visitor-keys": "^4.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -9462,32 +9506,32 @@ } }, "src/ic_oss_ts/node_modules/eslint": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz", - "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==", + "version": "9.15.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.15.0.tgz", + "integrity": "sha512-7CrWySmIibCgT1Os28lUU6upBshZ+GxybLOrmRzi08kS8MBuO8QA7pXEgYgY5W8vK3e74xv0lpjo9DbaGU9Rkw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.11.0", - "@eslint/config-array": "^0.18.0", - "@eslint/core": "^0.6.0", - "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.12.0", - "@eslint/plugin-kit": "^0.2.0", - "@humanfs/node": "^0.16.5", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.19.0", + "@eslint/core": "^0.9.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.15.0", + "@eslint/plugin-kit": "^0.2.3", + "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.3.1", + "@humanwhocodes/retry": "^0.4.1", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", + "cross-spawn": "^7.0.5", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.1.0", - "eslint-visitor-keys": "^4.1.0", - "espree": "^10.2.0", + "eslint-scope": "^8.2.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -9501,8 +9545,7 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "text-table": "^0.2.0" + "optionator": "^0.9.3" }, "bin": { "eslint": "bin/eslint.js" @@ -9523,9 +9566,9 @@ } }, "src/ic_oss_ts/node_modules/eslint-scope": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz", - "integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -9539,10 +9582,10 @@ "url": "https://opencollective.com/eslint" } }, - "src/ic_oss_ts/node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz", - "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==", + "src/ic_oss_ts/node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, "license": "Apache-2.0", "engines": { @@ -9564,29 +9607,16 @@ } }, "src/ic_oss_ts/node_modules/espree": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz", - "integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "acorn": "^8.12.0", + "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "eslint-visitor-keys": "^4.2.0" }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "src/ic_oss_ts/node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz", - "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==", - "dev": true, - "license": "Apache-2.0", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -9619,6 +9649,8 @@ }, "src/ic_oss_ts/node_modules/globals": { "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", "dev": true, "license": "MIT", "engines": { diff --git a/src/declarations/ic_oss_bucket/ic_oss_bucket.did b/src/declarations/ic_oss_bucket/ic_oss_bucket.did index cb57b5e..21d581c 100644 --- a/src/declarations/ic_oss_bucket/ic_oss_bucket.did +++ b/src/declarations/ic_oss_bucket/ic_oss_bucket.did @@ -90,7 +90,11 @@ type InitArgs = record { max_folder_depth : nat8; file_id : nat32; }; -type LogVisibility = variant { controllers; public }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; type MetadataValue = variant { Int : int; Nat : nat; Blob : blob; Text : text }; type MoveInput = record { id : nat32; to : nat32; from : nat32 }; type QueryStats = record { diff --git a/src/declarations/ic_oss_bucket/ic_oss_bucket.did.d.ts b/src/declarations/ic_oss_bucket/ic_oss_bucket.did.d.ts index 950f0a0..96ca9bf 100644 --- a/src/declarations/ic_oss_bucket/ic_oss_bucket.did.d.ts +++ b/src/declarations/ic_oss_bucket/ic_oss_bucket.did.d.ts @@ -98,7 +98,8 @@ export interface InitArgs { 'file_id' : number, } export type LogVisibility = { 'controllers' : null } | - { 'public' : null }; + { 'public' : null } | + { 'allowed_viewers' : Array }; export type MetadataValue = { 'Int' : bigint } | { 'Nat' : bigint } | { 'Blob' : Uint8Array | number[] } | diff --git a/src/declarations/ic_oss_bucket/ic_oss_bucket.did.js b/src/declarations/ic_oss_bucket/ic_oss_bucket.did.js index d873e60..37d6429 100644 --- a/src/declarations/ic_oss_bucket/ic_oss_bucket.did.js +++ b/src/declarations/ic_oss_bucket/ic_oss_bucket.did.js @@ -92,6 +92,7 @@ export const idlFactory = ({ IDL }) => { const LogVisibility = IDL.Variant({ 'controllers' : IDL.Null, 'public' : IDL.Null, + 'allowed_viewers' : IDL.Vec(IDL.Principal), }); const DefiniteCanisterSettings = IDL.Record({ 'freezing_threshold' : IDL.Nat, diff --git a/src/declarations/ic_oss_cluster/ic_oss_cluster.did b/src/declarations/ic_oss_cluster/ic_oss_cluster.did index 040596e..05b9b7b 100644 --- a/src/declarations/ic_oss_cluster/ic_oss_cluster.did +++ b/src/declarations/ic_oss_cluster/ic_oss_cluster.did @@ -7,6 +7,26 @@ type BucketDeploymentInfo = record { canister : principal; wasm_hash : blob; }; +type CanisterSettings = record { + freezing_threshold : opt nat; + controllers : opt vec principal; + reserved_cycles_limit : opt nat; + log_visibility : opt LogVisibility; + wasm_memory_limit : opt nat; + memory_allocation : opt nat; + compute_allocation : opt nat; +}; +type CanisterStatusResponse = record { + status : CanisterStatusType; + memory_size : nat; + cycles : nat; + settings : DefiniteCanisterSettings; + query_stats : QueryStats; + idle_cycles_burned_per_day : nat; + module_hash : opt blob; + reserved_cycles : nat; +}; +type CanisterStatusType = variant { stopped; stopping; running }; type ChainArgs = variant { Upgrade : UpgradeArgs; Init : InitArgs }; type ClusterInfo = record { ecdsa_token_public_key : text; @@ -23,6 +43,16 @@ type ClusterInfo = record { schnorr_key_name : text; bucket_deployment_logs : nat64; subject_authz_total : nat64; + committers : vec principal; +}; +type DefiniteCanisterSettings = record { + freezing_threshold : nat; + controllers : vec principal; + reserved_cycles_limit : nat; + log_visibility : LogVisibility; + wasm_memory_limit : nat; + memory_allocation : nat; + compute_allocation : nat; }; type DeployWasmInput = record { args : opt blob; canister : principal }; type InitArgs = record { @@ -34,21 +64,38 @@ type InitArgs = record { bucket_topup_amount : nat; schnorr_key_name : text; }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; +type QueryStats = record { + response_payload_bytes_total : nat; + num_instructions_total : nat; + num_calls_total : nat; + request_payload_bytes_total : nat; +}; type Result = variant { Ok : blob; Err : text }; type Result_1 = variant { Ok; Err : text }; +type Result_10 = variant { Ok : vec record { principal; text }; Err : text }; +type Result_11 = variant { Ok : text; Err : text }; type Result_2 = variant { Ok : vec blob; Err : text }; -type Result_3 = variant { Ok : nat; Err : text }; -type Result_4 = variant { Ok : vec BucketDeploymentInfo; Err : text }; -type Result_5 = variant { Ok : WasmInfo; Err : text }; -type Result_6 = variant { Ok : vec principal; Err : text }; -type Result_7 = variant { Ok : ClusterInfo; Err : text }; -type Result_8 = variant { Ok : vec record { principal; text }; Err : text }; -type Result_9 = variant { Ok : text; Err : text }; +type Result_3 = variant { Ok : principal; Err : text }; +type Result_4 = variant { Ok : nat; Err : text }; +type Result_5 = variant { Ok : vec BucketDeploymentInfo; Err : text }; +type Result_6 = variant { Ok : WasmInfo; Err : text }; +type Result_7 = variant { Ok : vec principal; Err : text }; +type Result_8 = variant { Ok : CanisterStatusResponse; Err : text }; +type Result_9 = variant { Ok : ClusterInfo; Err : text }; type Token = record { subject : principal; audience : principal; policies : text; }; +type UpdateSettingsArgument = record { + canister_id : principal; + settings : CanisterSettings; +}; type UpgradeArgs = record { governance_canister : opt principal; name : opt text; @@ -65,41 +112,56 @@ type WasmInfo = record { }; service : (opt ChainArgs) -> { access_token : (principal) -> (Result); + admin_add_committers : (vec principal) -> (Result_1); admin_add_managers : (vec principal) -> (Result_1); admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1); admin_attach_policies : (Token) -> (Result_1); admin_batch_call_buckets : (vec principal, text, opt blob) -> (Result_2); + admin_create_bucket : (opt CanisterSettings, opt blob) -> (Result_3); admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1); admin_detach_policies : (Token) -> (Result_1); admin_ed25519_access_token : (Token) -> (Result); + admin_remove_committers : (vec principal) -> (Result_1); admin_remove_managers : (vec principal) -> (Result_1); admin_set_managers : (vec principal) -> (Result_1); admin_sign_access_token : (Token) -> (Result); - admin_topup_all_buckets : () -> (Result_3); + admin_topup_all_buckets : () -> (Result_4); + admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> ( + Result_1, + ); admin_upgrade_all_buckets : (opt blob) -> (Result_1); admin_weak_access_token : (Token, nat64, nat64) -> (Result) query; - bucket_deployment_logs : (opt nat, opt nat) -> (Result_4) query; + bucket_deployment_logs : (opt nat, opt nat) -> (Result_5) query; ed25519_access_token : (principal) -> (Result); - get_bucket_wasm : (blob) -> (Result_5) query; - get_buckets : () -> (Result_6) query; - get_cluster_info : () -> (Result_7) query; - get_deployed_buckets : () -> (Result_4) query; - get_subject_policies : (principal) -> (Result_8) query; - get_subject_policies_for : (principal, principal) -> (Result_9) query; - validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_9); + get_bucket_wasm : (blob) -> (Result_6) query; + get_buckets : () -> (Result_7) query; + get_canister_status : (opt principal) -> (Result_8); + get_cluster_info : () -> (Result_9) query; + get_deployed_buckets : () -> (Result_5) query; + get_subject_policies : (principal) -> (Result_10) query; + get_subject_policies_for : (principal, principal) -> (Result_11) query; + validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_11); validate2_admin_batch_call_buckets : (vec principal, text, opt blob) -> ( - Result_9, + Result_11, ); - validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_9); - validate2_admin_set_managers : (vec principal) -> (Result_9); - validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_9); - validate_admin_add_managers : (vec principal) -> (Result_9); + validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_11); + validate2_admin_set_managers : (vec principal) -> (Result_11); + validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_11); + validate_admin_add_committers : (vec principal) -> (Result_11); + validate_admin_add_managers : (vec principal) -> (Result_11); validate_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1); validate_admin_batch_call_buckets : (vec principal, text, opt blob) -> ( Result_2, ); + validate_admin_create_bucket : (opt CanisterSettings, opt blob) -> ( + Result_11, + ); validate_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1); - validate_admin_remove_managers : (vec principal) -> (Result_9); + validate_admin_remove_committers : (vec principal) -> (Result_11); + validate_admin_remove_managers : (vec principal) -> (Result_11); validate_admin_set_managers : (vec principal) -> (Result_1); + validate_admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> ( + Result_11, + ); validate_admin_upgrade_all_buckets : (opt blob) -> (Result_1); } diff --git a/src/declarations/ic_oss_cluster/ic_oss_cluster.did.d.ts b/src/declarations/ic_oss_cluster/ic_oss_cluster.did.d.ts index ff878ec..d90cd0c 100644 --- a/src/declarations/ic_oss_cluster/ic_oss_cluster.did.d.ts +++ b/src/declarations/ic_oss_cluster/ic_oss_cluster.did.d.ts @@ -14,6 +14,28 @@ export interface BucketDeploymentInfo { 'canister' : Principal, 'wasm_hash' : Uint8Array | number[], } +export interface CanisterSettings { + 'freezing_threshold' : [] | [bigint], + 'controllers' : [] | [Array], + 'reserved_cycles_limit' : [] | [bigint], + 'log_visibility' : [] | [LogVisibility], + 'wasm_memory_limit' : [] | [bigint], + 'memory_allocation' : [] | [bigint], + 'compute_allocation' : [] | [bigint], +} +export interface CanisterStatusResponse { + 'status' : CanisterStatusType, + 'memory_size' : bigint, + 'cycles' : bigint, + 'settings' : DefiniteCanisterSettings, + 'query_stats' : QueryStats, + 'idle_cycles_burned_per_day' : bigint, + 'module_hash' : [] | [Uint8Array | number[]], + 'reserved_cycles' : bigint, +} +export type CanisterStatusType = { 'stopped' : null } | + { 'stopping' : null } | + { 'running' : null }; export type ChainArgs = { 'Upgrade' : UpgradeArgs } | { 'Init' : InitArgs }; export interface ClusterInfo { @@ -31,6 +53,16 @@ export interface ClusterInfo { 'schnorr_key_name' : string, 'bucket_deployment_logs' : bigint, 'subject_authz_total' : bigint, + 'committers' : Array, +} +export interface DefiniteCanisterSettings { + 'freezing_threshold' : bigint, + 'controllers' : Array, + 'reserved_cycles_limit' : bigint, + 'log_visibility' : LogVisibility, + 'wasm_memory_limit' : bigint, + 'memory_allocation' : bigint, + 'compute_allocation' : bigint, } export interface DeployWasmInput { 'args' : [] | [Uint8Array | number[]], @@ -45,31 +77,48 @@ export interface InitArgs { 'bucket_topup_amount' : bigint, 'schnorr_key_name' : string, } +export type LogVisibility = { 'controllers' : null } | + { 'public' : null } | + { 'allowed_viewers' : Array }; +export interface QueryStats { + 'response_payload_bytes_total' : bigint, + 'num_instructions_total' : bigint, + 'num_calls_total' : bigint, + 'request_payload_bytes_total' : bigint, +} export type Result = { 'Ok' : Uint8Array | number[] } | { 'Err' : string }; export type Result_1 = { 'Ok' : null } | { 'Err' : string }; +export type Result_10 = { 'Ok' : Array<[Principal, string]> } | + { 'Err' : string }; +export type Result_11 = { 'Ok' : string } | + { 'Err' : string }; export type Result_2 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_3 = { 'Ok' : bigint } | +export type Result_3 = { 'Ok' : Principal } | { 'Err' : string }; -export type Result_4 = { 'Ok' : Array } | +export type Result_4 = { 'Ok' : bigint } | { 'Err' : string }; -export type Result_5 = { 'Ok' : WasmInfo } | +export type Result_5 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_6 = { 'Ok' : Array } | +export type Result_6 = { 'Ok' : WasmInfo } | { 'Err' : string }; -export type Result_7 = { 'Ok' : ClusterInfo } | +export type Result_7 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_8 = { 'Ok' : Array<[Principal, string]> } | +export type Result_8 = { 'Ok' : CanisterStatusResponse } | { 'Err' : string }; -export type Result_9 = { 'Ok' : string } | +export type Result_9 = { 'Ok' : ClusterInfo } | { 'Err' : string }; export interface Token { 'subject' : Principal, 'audience' : Principal, 'policies' : string, } +export interface UpdateSettingsArgument { + 'canister_id' : Principal, + 'settings' : CanisterSettings, +} export interface UpgradeArgs { 'governance_canister' : [] | [Principal], 'name' : [] | [string], @@ -86,6 +135,7 @@ export interface WasmInfo { } export interface _SERVICE { 'access_token' : ActorMethod<[Principal], Result>, + 'admin_add_committers' : ActorMethod<[Array], Result_1>, 'admin_add_managers' : ActorMethod<[Array], Result_1>, 'admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], @@ -96,16 +146,25 @@ export interface _SERVICE { [Array, string, [] | [Uint8Array | number[]]], Result_2 >, + 'admin_create_bucket' : ActorMethod< + [[] | [CanisterSettings], [] | [Uint8Array | number[]]], + Result_3 + >, 'admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], Result_1 >, 'admin_detach_policies' : ActorMethod<[Token], Result_1>, 'admin_ed25519_access_token' : ActorMethod<[Token], Result>, + 'admin_remove_committers' : ActorMethod<[Array], Result_1>, 'admin_remove_managers' : ActorMethod<[Array], Result_1>, 'admin_set_managers' : ActorMethod<[Array], Result_1>, 'admin_sign_access_token' : ActorMethod<[Token], Result>, - 'admin_topup_all_buckets' : ActorMethod<[], Result_3>, + 'admin_topup_all_buckets' : ActorMethod<[], Result_4>, + 'admin_update_bucket_canister_settings' : ActorMethod< + [UpdateSettingsArgument], + Result_1 + >, 'admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], Result_1 @@ -113,33 +172,35 @@ export interface _SERVICE { 'admin_weak_access_token' : ActorMethod<[Token, bigint, bigint], Result>, 'bucket_deployment_logs' : ActorMethod< [[] | [bigint], [] | [bigint]], - Result_4 + Result_5 >, 'ed25519_access_token' : ActorMethod<[Principal], Result>, - 'get_bucket_wasm' : ActorMethod<[Uint8Array | number[]], Result_5>, - 'get_buckets' : ActorMethod<[], Result_6>, - 'get_cluster_info' : ActorMethod<[], Result_7>, - 'get_deployed_buckets' : ActorMethod<[], Result_4>, - 'get_subject_policies' : ActorMethod<[Principal], Result_8>, - 'get_subject_policies_for' : ActorMethod<[Principal, Principal], Result_9>, + 'get_bucket_wasm' : ActorMethod<[Uint8Array | number[]], Result_6>, + 'get_buckets' : ActorMethod<[], Result_7>, + 'get_canister_status' : ActorMethod<[[] | [Principal]], Result_8>, + 'get_cluster_info' : ActorMethod<[], Result_9>, + 'get_deployed_buckets' : ActorMethod<[], Result_5>, + 'get_subject_policies' : ActorMethod<[Principal], Result_10>, + 'get_subject_policies_for' : ActorMethod<[Principal, Principal], Result_11>, 'validate2_admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, 'validate2_admin_batch_call_buckets' : ActorMethod< [Array, string, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, 'validate2_admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, - 'validate2_admin_set_managers' : ActorMethod<[Array], Result_9>, + 'validate2_admin_set_managers' : ActorMethod<[Array], Result_11>, 'validate2_admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], - Result_9 + Result_11 >, - 'validate_admin_add_managers' : ActorMethod<[Array], Result_9>, + 'validate_admin_add_committers' : ActorMethod<[Array], Result_11>, + 'validate_admin_add_managers' : ActorMethod<[Array], Result_11>, 'validate_admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], Result_1 @@ -148,12 +209,24 @@ export interface _SERVICE { [Array, string, [] | [Uint8Array | number[]]], Result_2 >, + 'validate_admin_create_bucket' : ActorMethod< + [[] | [CanisterSettings], [] | [Uint8Array | number[]]], + Result_11 + >, 'validate_admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], Result_1 >, - 'validate_admin_remove_managers' : ActorMethod<[Array], Result_9>, + 'validate_admin_remove_committers' : ActorMethod< + [Array], + Result_11 + >, + 'validate_admin_remove_managers' : ActorMethod<[Array], Result_11>, 'validate_admin_set_managers' : ActorMethod<[Array], Result_1>, + 'validate_admin_update_bucket_canister_settings' : ActorMethod< + [UpdateSettingsArgument], + Result_11 + >, 'validate_admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], Result_1 diff --git a/src/declarations/ic_oss_cluster/ic_oss_cluster.did.js b/src/declarations/ic_oss_cluster/ic_oss_cluster.did.js index af3c26c..aa4e39f 100644 --- a/src/declarations/ic_oss_cluster/ic_oss_cluster.did.js +++ b/src/declarations/ic_oss_cluster/ic_oss_cluster.did.js @@ -31,11 +31,30 @@ export const idlFactory = ({ IDL }) => { 'Ok' : IDL.Vec(IDL.Vec(IDL.Nat8)), 'Err' : IDL.Text, }); + const LogVisibility = IDL.Variant({ + 'controllers' : IDL.Null, + 'public' : IDL.Null, + 'allowed_viewers' : IDL.Vec(IDL.Principal), + }); + const CanisterSettings = IDL.Record({ + 'freezing_threshold' : IDL.Opt(IDL.Nat), + 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)), + 'reserved_cycles_limit' : IDL.Opt(IDL.Nat), + 'log_visibility' : IDL.Opt(LogVisibility), + 'wasm_memory_limit' : IDL.Opt(IDL.Nat), + 'memory_allocation' : IDL.Opt(IDL.Nat), + 'compute_allocation' : IDL.Opt(IDL.Nat), + }); + const Result_3 = IDL.Variant({ 'Ok' : IDL.Principal, 'Err' : IDL.Text }); const DeployWasmInput = IDL.Record({ 'args' : IDL.Opt(IDL.Vec(IDL.Nat8)), 'canister' : IDL.Principal, }); - const Result_3 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : IDL.Text }); + const Result_4 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : IDL.Text }); + const UpdateSettingsArgument = IDL.Record({ + 'canister_id' : IDL.Principal, + 'settings' : CanisterSettings, + }); const BucketDeploymentInfo = IDL.Record({ 'args' : IDL.Opt(IDL.Vec(IDL.Nat8)), 'prev_hash' : IDL.Vec(IDL.Nat8), @@ -44,7 +63,7 @@ export const idlFactory = ({ IDL }) => { 'canister' : IDL.Principal, 'wasm_hash' : IDL.Vec(IDL.Nat8), }); - const Result_4 = IDL.Variant({ + const Result_5 = IDL.Variant({ 'Ok' : IDL.Vec(BucketDeploymentInfo), 'Err' : IDL.Text, }); @@ -55,11 +74,45 @@ export const idlFactory = ({ IDL }) => { 'created_at' : IDL.Nat64, 'created_by' : IDL.Principal, }); - const Result_5 = IDL.Variant({ 'Ok' : WasmInfo, 'Err' : IDL.Text }); - const Result_6 = IDL.Variant({ + const Result_6 = IDL.Variant({ 'Ok' : WasmInfo, 'Err' : IDL.Text }); + const Result_7 = IDL.Variant({ 'Ok' : IDL.Vec(IDL.Principal), 'Err' : IDL.Text, }); + const CanisterStatusType = IDL.Variant({ + 'stopped' : IDL.Null, + 'stopping' : IDL.Null, + 'running' : IDL.Null, + }); + const DefiniteCanisterSettings = IDL.Record({ + 'freezing_threshold' : IDL.Nat, + 'controllers' : IDL.Vec(IDL.Principal), + 'reserved_cycles_limit' : IDL.Nat, + 'log_visibility' : LogVisibility, + 'wasm_memory_limit' : IDL.Nat, + 'memory_allocation' : IDL.Nat, + 'compute_allocation' : IDL.Nat, + }); + const QueryStats = IDL.Record({ + 'response_payload_bytes_total' : IDL.Nat, + 'num_instructions_total' : IDL.Nat, + 'num_calls_total' : IDL.Nat, + 'request_payload_bytes_total' : IDL.Nat, + }); + const CanisterStatusResponse = IDL.Record({ + 'status' : CanisterStatusType, + 'memory_size' : IDL.Nat, + 'cycles' : IDL.Nat, + 'settings' : DefiniteCanisterSettings, + 'query_stats' : QueryStats, + 'idle_cycles_burned_per_day' : IDL.Nat, + 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)), + 'reserved_cycles' : IDL.Nat, + }); + const Result_8 = IDL.Variant({ + 'Ok' : CanisterStatusResponse, + 'Err' : IDL.Text, + }); const ClusterInfo = IDL.Record({ 'ecdsa_token_public_key' : IDL.Text, 'schnorr_ed25519_token_public_key' : IDL.Text, @@ -75,15 +128,17 @@ export const idlFactory = ({ IDL }) => { 'schnorr_key_name' : IDL.Text, 'bucket_deployment_logs' : IDL.Nat64, 'subject_authz_total' : IDL.Nat64, + 'committers' : IDL.Vec(IDL.Principal), }); - const Result_7 = IDL.Variant({ 'Ok' : ClusterInfo, 'Err' : IDL.Text }); - const Result_8 = IDL.Variant({ + const Result_9 = IDL.Variant({ 'Ok' : ClusterInfo, 'Err' : IDL.Text }); + const Result_10 = IDL.Variant({ 'Ok' : IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Text)), 'Err' : IDL.Text, }); - const Result_9 = IDL.Variant({ 'Ok' : IDL.Text, 'Err' : IDL.Text }); + const Result_11 = IDL.Variant({ 'Ok' : IDL.Text, 'Err' : IDL.Text }); return IDL.Service({ 'access_token' : IDL.Func([IDL.Principal], [Result], []), + 'admin_add_committers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_add_managers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_add_wasm' : IDL.Func( [AddWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], @@ -96,6 +151,11 @@ export const idlFactory = ({ IDL }) => { [Result_2], [], ), + 'admin_create_bucket' : IDL.Func( + [IDL.Opt(CanisterSettings), IDL.Opt(IDL.Vec(IDL.Nat8))], + [Result_3], + [], + ), 'admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], @@ -103,6 +163,11 @@ export const idlFactory = ({ IDL }) => { ), 'admin_detach_policies' : IDL.Func([Token], [Result_1], []), 'admin_ed25519_access_token' : IDL.Func([Token], [Result], []), + 'admin_remove_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_1], + [], + ), 'admin_remove_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], [Result_1], @@ -110,7 +175,12 @@ export const idlFactory = ({ IDL }) => { ), 'admin_set_managers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_sign_access_token' : IDL.Func([Token], [Result], []), - 'admin_topup_all_buckets' : IDL.Func([], [Result_3], []), + 'admin_topup_all_buckets' : IDL.Func([], [Result_4], []), + 'admin_update_bucket_canister_settings' : IDL.Func( + [UpdateSettingsArgument], + [Result_1], + [], + ), 'admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], @@ -123,48 +193,54 @@ export const idlFactory = ({ IDL }) => { ), 'bucket_deployment_logs' : IDL.Func( [IDL.Opt(IDL.Nat), IDL.Opt(IDL.Nat)], - [Result_4], + [Result_5], ['query'], ), 'ed25519_access_token' : IDL.Func([IDL.Principal], [Result], []), - 'get_bucket_wasm' : IDL.Func([IDL.Vec(IDL.Nat8)], [Result_5], ['query']), - 'get_buckets' : IDL.Func([], [Result_6], ['query']), - 'get_cluster_info' : IDL.Func([], [Result_7], ['query']), - 'get_deployed_buckets' : IDL.Func([], [Result_4], ['query']), - 'get_subject_policies' : IDL.Func([IDL.Principal], [Result_8], ['query']), + 'get_bucket_wasm' : IDL.Func([IDL.Vec(IDL.Nat8)], [Result_6], ['query']), + 'get_buckets' : IDL.Func([], [Result_7], ['query']), + 'get_canister_status' : IDL.Func([IDL.Opt(IDL.Principal)], [Result_8], []), + 'get_cluster_info' : IDL.Func([], [Result_9], ['query']), + 'get_deployed_buckets' : IDL.Func([], [Result_5], ['query']), + 'get_subject_policies' : IDL.Func([IDL.Principal], [Result_10], ['query']), 'get_subject_policies_for' : IDL.Func( [IDL.Principal, IDL.Principal], - [Result_9], + [Result_11], ['query'], ), 'validate2_admin_add_wasm' : IDL.Func( [AddWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_batch_call_buckets' : IDL.Func( [IDL.Vec(IDL.Principal), IDL.Text, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_set_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate2_admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], + [], + ), + 'validate_admin_add_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_11], [], ), 'validate_admin_add_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate_admin_add_wasm' : IDL.Func( @@ -177,14 +253,24 @@ export const idlFactory = ({ IDL }) => { [Result_2], [], ), + 'validate_admin_create_bucket' : IDL.Func( + [IDL.Opt(CanisterSettings), IDL.Opt(IDL.Vec(IDL.Nat8))], + [Result_11], + [], + ), 'validate_admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], [], ), + 'validate_admin_remove_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_11], + [], + ), 'validate_admin_remove_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate_admin_set_managers' : IDL.Func( @@ -192,6 +278,11 @@ export const idlFactory = ({ IDL }) => { [Result_1], [], ), + 'validate_admin_update_bucket_canister_settings' : IDL.Func( + [UpdateSettingsArgument], + [Result_11], + [], + ), 'validate_admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], diff --git a/src/ic_oss_bucket/ic_oss_bucket.did b/src/ic_oss_bucket/ic_oss_bucket.did index cb57b5e..21d581c 100644 --- a/src/ic_oss_bucket/ic_oss_bucket.did +++ b/src/ic_oss_bucket/ic_oss_bucket.did @@ -90,7 +90,11 @@ type InitArgs = record { max_folder_depth : nat8; file_id : nat32; }; -type LogVisibility = variant { controllers; public }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; type MetadataValue = variant { Int : int; Nat : nat; Blob : blob; Text : text }; type MoveInput = record { id : nat32; to : nat32; from : nat32 }; type QueryStats = record { diff --git a/src/ic_oss_cli/README.md b/src/ic_oss_cli/README.md index 87e27bd..fcf8e6e 100644 --- a/src/ic_oss_cli/README.md +++ b/src/ic_oss_cli/README.md @@ -20,7 +20,7 @@ ic-oss-cli identity --help ic-oss-cli upload --help # Generate a new identity -ic-oss-cli identity --new --file myid.pem +ic-oss-cli identity --new --path myid.pem # Output: # principal: lxph3-nvpsv-yrevd-im4ug-qywcl-5ir34-rpsbs-6olvf-qtugo-iy5ai-jqe # new identity: myid.pem diff --git a/src/ic_oss_cluster/ic_oss_cluster.did b/src/ic_oss_cluster/ic_oss_cluster.did index d9c23a8..05b9b7b 100644 --- a/src/ic_oss_cluster/ic_oss_cluster.did +++ b/src/ic_oss_cluster/ic_oss_cluster.did @@ -64,7 +64,11 @@ type InitArgs = record { bucket_topup_amount : nat; schnorr_key_name : text; }; -type LogVisibility = variant { controllers; public }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; type QueryStats = record { response_payload_bytes_total : nat; num_instructions_total : nat; diff --git a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did index cb57b5e..21d581c 100644 --- a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did +++ b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did @@ -90,7 +90,11 @@ type InitArgs = record { max_folder_depth : nat8; file_id : nat32; }; -type LogVisibility = variant { controllers; public }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; type MetadataValue = variant { Int : int; Nat : nat; Blob : blob; Text : text }; type MoveInput = record { id : nat32; to : nat32; from : nat32 }; type QueryStats = record { diff --git a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.d.ts b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.d.ts index 950f0a0..96ca9bf 100644 --- a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.d.ts +++ b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.d.ts @@ -98,7 +98,8 @@ export interface InitArgs { 'file_id' : number, } export type LogVisibility = { 'controllers' : null } | - { 'public' : null }; + { 'public' : null } | + { 'allowed_viewers' : Array }; export type MetadataValue = { 'Int' : bigint } | { 'Nat' : bigint } | { 'Blob' : Uint8Array | number[] } | diff --git a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.js b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.js index d873e60..37d6429 100644 --- a/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.js +++ b/src/ic_oss_ts/candid/ic_oss_bucket/ic_oss_bucket.did.js @@ -92,6 +92,7 @@ export const idlFactory = ({ IDL }) => { const LogVisibility = IDL.Variant({ 'controllers' : IDL.Null, 'public' : IDL.Null, + 'allowed_viewers' : IDL.Vec(IDL.Principal), }); const DefiniteCanisterSettings = IDL.Record({ 'freezing_threshold' : IDL.Nat, diff --git a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did index 040596e..05b9b7b 100644 --- a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did +++ b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did @@ -7,6 +7,26 @@ type BucketDeploymentInfo = record { canister : principal; wasm_hash : blob; }; +type CanisterSettings = record { + freezing_threshold : opt nat; + controllers : opt vec principal; + reserved_cycles_limit : opt nat; + log_visibility : opt LogVisibility; + wasm_memory_limit : opt nat; + memory_allocation : opt nat; + compute_allocation : opt nat; +}; +type CanisterStatusResponse = record { + status : CanisterStatusType; + memory_size : nat; + cycles : nat; + settings : DefiniteCanisterSettings; + query_stats : QueryStats; + idle_cycles_burned_per_day : nat; + module_hash : opt blob; + reserved_cycles : nat; +}; +type CanisterStatusType = variant { stopped; stopping; running }; type ChainArgs = variant { Upgrade : UpgradeArgs; Init : InitArgs }; type ClusterInfo = record { ecdsa_token_public_key : text; @@ -23,6 +43,16 @@ type ClusterInfo = record { schnorr_key_name : text; bucket_deployment_logs : nat64; subject_authz_total : nat64; + committers : vec principal; +}; +type DefiniteCanisterSettings = record { + freezing_threshold : nat; + controllers : vec principal; + reserved_cycles_limit : nat; + log_visibility : LogVisibility; + wasm_memory_limit : nat; + memory_allocation : nat; + compute_allocation : nat; }; type DeployWasmInput = record { args : opt blob; canister : principal }; type InitArgs = record { @@ -34,21 +64,38 @@ type InitArgs = record { bucket_topup_amount : nat; schnorr_key_name : text; }; +type LogVisibility = variant { + controllers; + public; + allowed_viewers : vec principal; +}; +type QueryStats = record { + response_payload_bytes_total : nat; + num_instructions_total : nat; + num_calls_total : nat; + request_payload_bytes_total : nat; +}; type Result = variant { Ok : blob; Err : text }; type Result_1 = variant { Ok; Err : text }; +type Result_10 = variant { Ok : vec record { principal; text }; Err : text }; +type Result_11 = variant { Ok : text; Err : text }; type Result_2 = variant { Ok : vec blob; Err : text }; -type Result_3 = variant { Ok : nat; Err : text }; -type Result_4 = variant { Ok : vec BucketDeploymentInfo; Err : text }; -type Result_5 = variant { Ok : WasmInfo; Err : text }; -type Result_6 = variant { Ok : vec principal; Err : text }; -type Result_7 = variant { Ok : ClusterInfo; Err : text }; -type Result_8 = variant { Ok : vec record { principal; text }; Err : text }; -type Result_9 = variant { Ok : text; Err : text }; +type Result_3 = variant { Ok : principal; Err : text }; +type Result_4 = variant { Ok : nat; Err : text }; +type Result_5 = variant { Ok : vec BucketDeploymentInfo; Err : text }; +type Result_6 = variant { Ok : WasmInfo; Err : text }; +type Result_7 = variant { Ok : vec principal; Err : text }; +type Result_8 = variant { Ok : CanisterStatusResponse; Err : text }; +type Result_9 = variant { Ok : ClusterInfo; Err : text }; type Token = record { subject : principal; audience : principal; policies : text; }; +type UpdateSettingsArgument = record { + canister_id : principal; + settings : CanisterSettings; +}; type UpgradeArgs = record { governance_canister : opt principal; name : opt text; @@ -65,41 +112,56 @@ type WasmInfo = record { }; service : (opt ChainArgs) -> { access_token : (principal) -> (Result); + admin_add_committers : (vec principal) -> (Result_1); admin_add_managers : (vec principal) -> (Result_1); admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1); admin_attach_policies : (Token) -> (Result_1); admin_batch_call_buckets : (vec principal, text, opt blob) -> (Result_2); + admin_create_bucket : (opt CanisterSettings, opt blob) -> (Result_3); admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1); admin_detach_policies : (Token) -> (Result_1); admin_ed25519_access_token : (Token) -> (Result); + admin_remove_committers : (vec principal) -> (Result_1); admin_remove_managers : (vec principal) -> (Result_1); admin_set_managers : (vec principal) -> (Result_1); admin_sign_access_token : (Token) -> (Result); - admin_topup_all_buckets : () -> (Result_3); + admin_topup_all_buckets : () -> (Result_4); + admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> ( + Result_1, + ); admin_upgrade_all_buckets : (opt blob) -> (Result_1); admin_weak_access_token : (Token, nat64, nat64) -> (Result) query; - bucket_deployment_logs : (opt nat, opt nat) -> (Result_4) query; + bucket_deployment_logs : (opt nat, opt nat) -> (Result_5) query; ed25519_access_token : (principal) -> (Result); - get_bucket_wasm : (blob) -> (Result_5) query; - get_buckets : () -> (Result_6) query; - get_cluster_info : () -> (Result_7) query; - get_deployed_buckets : () -> (Result_4) query; - get_subject_policies : (principal) -> (Result_8) query; - get_subject_policies_for : (principal, principal) -> (Result_9) query; - validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_9); + get_bucket_wasm : (blob) -> (Result_6) query; + get_buckets : () -> (Result_7) query; + get_canister_status : (opt principal) -> (Result_8); + get_cluster_info : () -> (Result_9) query; + get_deployed_buckets : () -> (Result_5) query; + get_subject_policies : (principal) -> (Result_10) query; + get_subject_policies_for : (principal, principal) -> (Result_11) query; + validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_11); validate2_admin_batch_call_buckets : (vec principal, text, opt blob) -> ( - Result_9, + Result_11, ); - validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_9); - validate2_admin_set_managers : (vec principal) -> (Result_9); - validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_9); - validate_admin_add_managers : (vec principal) -> (Result_9); + validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_11); + validate2_admin_set_managers : (vec principal) -> (Result_11); + validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_11); + validate_admin_add_committers : (vec principal) -> (Result_11); + validate_admin_add_managers : (vec principal) -> (Result_11); validate_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1); validate_admin_batch_call_buckets : (vec principal, text, opt blob) -> ( Result_2, ); + validate_admin_create_bucket : (opt CanisterSettings, opt blob) -> ( + Result_11, + ); validate_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1); - validate_admin_remove_managers : (vec principal) -> (Result_9); + validate_admin_remove_committers : (vec principal) -> (Result_11); + validate_admin_remove_managers : (vec principal) -> (Result_11); validate_admin_set_managers : (vec principal) -> (Result_1); + validate_admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> ( + Result_11, + ); validate_admin_upgrade_all_buckets : (opt blob) -> (Result_1); } diff --git a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.d.ts b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.d.ts index ff878ec..d90cd0c 100644 --- a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.d.ts +++ b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.d.ts @@ -14,6 +14,28 @@ export interface BucketDeploymentInfo { 'canister' : Principal, 'wasm_hash' : Uint8Array | number[], } +export interface CanisterSettings { + 'freezing_threshold' : [] | [bigint], + 'controllers' : [] | [Array], + 'reserved_cycles_limit' : [] | [bigint], + 'log_visibility' : [] | [LogVisibility], + 'wasm_memory_limit' : [] | [bigint], + 'memory_allocation' : [] | [bigint], + 'compute_allocation' : [] | [bigint], +} +export interface CanisterStatusResponse { + 'status' : CanisterStatusType, + 'memory_size' : bigint, + 'cycles' : bigint, + 'settings' : DefiniteCanisterSettings, + 'query_stats' : QueryStats, + 'idle_cycles_burned_per_day' : bigint, + 'module_hash' : [] | [Uint8Array | number[]], + 'reserved_cycles' : bigint, +} +export type CanisterStatusType = { 'stopped' : null } | + { 'stopping' : null } | + { 'running' : null }; export type ChainArgs = { 'Upgrade' : UpgradeArgs } | { 'Init' : InitArgs }; export interface ClusterInfo { @@ -31,6 +53,16 @@ export interface ClusterInfo { 'schnorr_key_name' : string, 'bucket_deployment_logs' : bigint, 'subject_authz_total' : bigint, + 'committers' : Array, +} +export interface DefiniteCanisterSettings { + 'freezing_threshold' : bigint, + 'controllers' : Array, + 'reserved_cycles_limit' : bigint, + 'log_visibility' : LogVisibility, + 'wasm_memory_limit' : bigint, + 'memory_allocation' : bigint, + 'compute_allocation' : bigint, } export interface DeployWasmInput { 'args' : [] | [Uint8Array | number[]], @@ -45,31 +77,48 @@ export interface InitArgs { 'bucket_topup_amount' : bigint, 'schnorr_key_name' : string, } +export type LogVisibility = { 'controllers' : null } | + { 'public' : null } | + { 'allowed_viewers' : Array }; +export interface QueryStats { + 'response_payload_bytes_total' : bigint, + 'num_instructions_total' : bigint, + 'num_calls_total' : bigint, + 'request_payload_bytes_total' : bigint, +} export type Result = { 'Ok' : Uint8Array | number[] } | { 'Err' : string }; export type Result_1 = { 'Ok' : null } | { 'Err' : string }; +export type Result_10 = { 'Ok' : Array<[Principal, string]> } | + { 'Err' : string }; +export type Result_11 = { 'Ok' : string } | + { 'Err' : string }; export type Result_2 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_3 = { 'Ok' : bigint } | +export type Result_3 = { 'Ok' : Principal } | { 'Err' : string }; -export type Result_4 = { 'Ok' : Array } | +export type Result_4 = { 'Ok' : bigint } | { 'Err' : string }; -export type Result_5 = { 'Ok' : WasmInfo } | +export type Result_5 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_6 = { 'Ok' : Array } | +export type Result_6 = { 'Ok' : WasmInfo } | { 'Err' : string }; -export type Result_7 = { 'Ok' : ClusterInfo } | +export type Result_7 = { 'Ok' : Array } | { 'Err' : string }; -export type Result_8 = { 'Ok' : Array<[Principal, string]> } | +export type Result_8 = { 'Ok' : CanisterStatusResponse } | { 'Err' : string }; -export type Result_9 = { 'Ok' : string } | +export type Result_9 = { 'Ok' : ClusterInfo } | { 'Err' : string }; export interface Token { 'subject' : Principal, 'audience' : Principal, 'policies' : string, } +export interface UpdateSettingsArgument { + 'canister_id' : Principal, + 'settings' : CanisterSettings, +} export interface UpgradeArgs { 'governance_canister' : [] | [Principal], 'name' : [] | [string], @@ -86,6 +135,7 @@ export interface WasmInfo { } export interface _SERVICE { 'access_token' : ActorMethod<[Principal], Result>, + 'admin_add_committers' : ActorMethod<[Array], Result_1>, 'admin_add_managers' : ActorMethod<[Array], Result_1>, 'admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], @@ -96,16 +146,25 @@ export interface _SERVICE { [Array, string, [] | [Uint8Array | number[]]], Result_2 >, + 'admin_create_bucket' : ActorMethod< + [[] | [CanisterSettings], [] | [Uint8Array | number[]]], + Result_3 + >, 'admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], Result_1 >, 'admin_detach_policies' : ActorMethod<[Token], Result_1>, 'admin_ed25519_access_token' : ActorMethod<[Token], Result>, + 'admin_remove_committers' : ActorMethod<[Array], Result_1>, 'admin_remove_managers' : ActorMethod<[Array], Result_1>, 'admin_set_managers' : ActorMethod<[Array], Result_1>, 'admin_sign_access_token' : ActorMethod<[Token], Result>, - 'admin_topup_all_buckets' : ActorMethod<[], Result_3>, + 'admin_topup_all_buckets' : ActorMethod<[], Result_4>, + 'admin_update_bucket_canister_settings' : ActorMethod< + [UpdateSettingsArgument], + Result_1 + >, 'admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], Result_1 @@ -113,33 +172,35 @@ export interface _SERVICE { 'admin_weak_access_token' : ActorMethod<[Token, bigint, bigint], Result>, 'bucket_deployment_logs' : ActorMethod< [[] | [bigint], [] | [bigint]], - Result_4 + Result_5 >, 'ed25519_access_token' : ActorMethod<[Principal], Result>, - 'get_bucket_wasm' : ActorMethod<[Uint8Array | number[]], Result_5>, - 'get_buckets' : ActorMethod<[], Result_6>, - 'get_cluster_info' : ActorMethod<[], Result_7>, - 'get_deployed_buckets' : ActorMethod<[], Result_4>, - 'get_subject_policies' : ActorMethod<[Principal], Result_8>, - 'get_subject_policies_for' : ActorMethod<[Principal, Principal], Result_9>, + 'get_bucket_wasm' : ActorMethod<[Uint8Array | number[]], Result_6>, + 'get_buckets' : ActorMethod<[], Result_7>, + 'get_canister_status' : ActorMethod<[[] | [Principal]], Result_8>, + 'get_cluster_info' : ActorMethod<[], Result_9>, + 'get_deployed_buckets' : ActorMethod<[], Result_5>, + 'get_subject_policies' : ActorMethod<[Principal], Result_10>, + 'get_subject_policies_for' : ActorMethod<[Principal, Principal], Result_11>, 'validate2_admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, 'validate2_admin_batch_call_buckets' : ActorMethod< [Array, string, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, 'validate2_admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], - Result_9 + Result_11 >, - 'validate2_admin_set_managers' : ActorMethod<[Array], Result_9>, + 'validate2_admin_set_managers' : ActorMethod<[Array], Result_11>, 'validate2_admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], - Result_9 + Result_11 >, - 'validate_admin_add_managers' : ActorMethod<[Array], Result_9>, + 'validate_admin_add_committers' : ActorMethod<[Array], Result_11>, + 'validate_admin_add_managers' : ActorMethod<[Array], Result_11>, 'validate_admin_add_wasm' : ActorMethod< [AddWasmInput, [] | [Uint8Array | number[]]], Result_1 @@ -148,12 +209,24 @@ export interface _SERVICE { [Array, string, [] | [Uint8Array | number[]]], Result_2 >, + 'validate_admin_create_bucket' : ActorMethod< + [[] | [CanisterSettings], [] | [Uint8Array | number[]]], + Result_11 + >, 'validate_admin_deploy_bucket' : ActorMethod< [DeployWasmInput, [] | [Uint8Array | number[]]], Result_1 >, - 'validate_admin_remove_managers' : ActorMethod<[Array], Result_9>, + 'validate_admin_remove_committers' : ActorMethod< + [Array], + Result_11 + >, + 'validate_admin_remove_managers' : ActorMethod<[Array], Result_11>, 'validate_admin_set_managers' : ActorMethod<[Array], Result_1>, + 'validate_admin_update_bucket_canister_settings' : ActorMethod< + [UpdateSettingsArgument], + Result_11 + >, 'validate_admin_upgrade_all_buckets' : ActorMethod< [[] | [Uint8Array | number[]]], Result_1 diff --git a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.js b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.js index af3c26c..aa4e39f 100644 --- a/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.js +++ b/src/ic_oss_ts/candid/ic_oss_cluster/ic_oss_cluster.did.js @@ -31,11 +31,30 @@ export const idlFactory = ({ IDL }) => { 'Ok' : IDL.Vec(IDL.Vec(IDL.Nat8)), 'Err' : IDL.Text, }); + const LogVisibility = IDL.Variant({ + 'controllers' : IDL.Null, + 'public' : IDL.Null, + 'allowed_viewers' : IDL.Vec(IDL.Principal), + }); + const CanisterSettings = IDL.Record({ + 'freezing_threshold' : IDL.Opt(IDL.Nat), + 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)), + 'reserved_cycles_limit' : IDL.Opt(IDL.Nat), + 'log_visibility' : IDL.Opt(LogVisibility), + 'wasm_memory_limit' : IDL.Opt(IDL.Nat), + 'memory_allocation' : IDL.Opt(IDL.Nat), + 'compute_allocation' : IDL.Opt(IDL.Nat), + }); + const Result_3 = IDL.Variant({ 'Ok' : IDL.Principal, 'Err' : IDL.Text }); const DeployWasmInput = IDL.Record({ 'args' : IDL.Opt(IDL.Vec(IDL.Nat8)), 'canister' : IDL.Principal, }); - const Result_3 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : IDL.Text }); + const Result_4 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : IDL.Text }); + const UpdateSettingsArgument = IDL.Record({ + 'canister_id' : IDL.Principal, + 'settings' : CanisterSettings, + }); const BucketDeploymentInfo = IDL.Record({ 'args' : IDL.Opt(IDL.Vec(IDL.Nat8)), 'prev_hash' : IDL.Vec(IDL.Nat8), @@ -44,7 +63,7 @@ export const idlFactory = ({ IDL }) => { 'canister' : IDL.Principal, 'wasm_hash' : IDL.Vec(IDL.Nat8), }); - const Result_4 = IDL.Variant({ + const Result_5 = IDL.Variant({ 'Ok' : IDL.Vec(BucketDeploymentInfo), 'Err' : IDL.Text, }); @@ -55,11 +74,45 @@ export const idlFactory = ({ IDL }) => { 'created_at' : IDL.Nat64, 'created_by' : IDL.Principal, }); - const Result_5 = IDL.Variant({ 'Ok' : WasmInfo, 'Err' : IDL.Text }); - const Result_6 = IDL.Variant({ + const Result_6 = IDL.Variant({ 'Ok' : WasmInfo, 'Err' : IDL.Text }); + const Result_7 = IDL.Variant({ 'Ok' : IDL.Vec(IDL.Principal), 'Err' : IDL.Text, }); + const CanisterStatusType = IDL.Variant({ + 'stopped' : IDL.Null, + 'stopping' : IDL.Null, + 'running' : IDL.Null, + }); + const DefiniteCanisterSettings = IDL.Record({ + 'freezing_threshold' : IDL.Nat, + 'controllers' : IDL.Vec(IDL.Principal), + 'reserved_cycles_limit' : IDL.Nat, + 'log_visibility' : LogVisibility, + 'wasm_memory_limit' : IDL.Nat, + 'memory_allocation' : IDL.Nat, + 'compute_allocation' : IDL.Nat, + }); + const QueryStats = IDL.Record({ + 'response_payload_bytes_total' : IDL.Nat, + 'num_instructions_total' : IDL.Nat, + 'num_calls_total' : IDL.Nat, + 'request_payload_bytes_total' : IDL.Nat, + }); + const CanisterStatusResponse = IDL.Record({ + 'status' : CanisterStatusType, + 'memory_size' : IDL.Nat, + 'cycles' : IDL.Nat, + 'settings' : DefiniteCanisterSettings, + 'query_stats' : QueryStats, + 'idle_cycles_burned_per_day' : IDL.Nat, + 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)), + 'reserved_cycles' : IDL.Nat, + }); + const Result_8 = IDL.Variant({ + 'Ok' : CanisterStatusResponse, + 'Err' : IDL.Text, + }); const ClusterInfo = IDL.Record({ 'ecdsa_token_public_key' : IDL.Text, 'schnorr_ed25519_token_public_key' : IDL.Text, @@ -75,15 +128,17 @@ export const idlFactory = ({ IDL }) => { 'schnorr_key_name' : IDL.Text, 'bucket_deployment_logs' : IDL.Nat64, 'subject_authz_total' : IDL.Nat64, + 'committers' : IDL.Vec(IDL.Principal), }); - const Result_7 = IDL.Variant({ 'Ok' : ClusterInfo, 'Err' : IDL.Text }); - const Result_8 = IDL.Variant({ + const Result_9 = IDL.Variant({ 'Ok' : ClusterInfo, 'Err' : IDL.Text }); + const Result_10 = IDL.Variant({ 'Ok' : IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Text)), 'Err' : IDL.Text, }); - const Result_9 = IDL.Variant({ 'Ok' : IDL.Text, 'Err' : IDL.Text }); + const Result_11 = IDL.Variant({ 'Ok' : IDL.Text, 'Err' : IDL.Text }); return IDL.Service({ 'access_token' : IDL.Func([IDL.Principal], [Result], []), + 'admin_add_committers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_add_managers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_add_wasm' : IDL.Func( [AddWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], @@ -96,6 +151,11 @@ export const idlFactory = ({ IDL }) => { [Result_2], [], ), + 'admin_create_bucket' : IDL.Func( + [IDL.Opt(CanisterSettings), IDL.Opt(IDL.Vec(IDL.Nat8))], + [Result_3], + [], + ), 'admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], @@ -103,6 +163,11 @@ export const idlFactory = ({ IDL }) => { ), 'admin_detach_policies' : IDL.Func([Token], [Result_1], []), 'admin_ed25519_access_token' : IDL.Func([Token], [Result], []), + 'admin_remove_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_1], + [], + ), 'admin_remove_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], [Result_1], @@ -110,7 +175,12 @@ export const idlFactory = ({ IDL }) => { ), 'admin_set_managers' : IDL.Func([IDL.Vec(IDL.Principal)], [Result_1], []), 'admin_sign_access_token' : IDL.Func([Token], [Result], []), - 'admin_topup_all_buckets' : IDL.Func([], [Result_3], []), + 'admin_topup_all_buckets' : IDL.Func([], [Result_4], []), + 'admin_update_bucket_canister_settings' : IDL.Func( + [UpdateSettingsArgument], + [Result_1], + [], + ), 'admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], @@ -123,48 +193,54 @@ export const idlFactory = ({ IDL }) => { ), 'bucket_deployment_logs' : IDL.Func( [IDL.Opt(IDL.Nat), IDL.Opt(IDL.Nat)], - [Result_4], + [Result_5], ['query'], ), 'ed25519_access_token' : IDL.Func([IDL.Principal], [Result], []), - 'get_bucket_wasm' : IDL.Func([IDL.Vec(IDL.Nat8)], [Result_5], ['query']), - 'get_buckets' : IDL.Func([], [Result_6], ['query']), - 'get_cluster_info' : IDL.Func([], [Result_7], ['query']), - 'get_deployed_buckets' : IDL.Func([], [Result_4], ['query']), - 'get_subject_policies' : IDL.Func([IDL.Principal], [Result_8], ['query']), + 'get_bucket_wasm' : IDL.Func([IDL.Vec(IDL.Nat8)], [Result_6], ['query']), + 'get_buckets' : IDL.Func([], [Result_7], ['query']), + 'get_canister_status' : IDL.Func([IDL.Opt(IDL.Principal)], [Result_8], []), + 'get_cluster_info' : IDL.Func([], [Result_9], ['query']), + 'get_deployed_buckets' : IDL.Func([], [Result_5], ['query']), + 'get_subject_policies' : IDL.Func([IDL.Principal], [Result_10], ['query']), 'get_subject_policies_for' : IDL.Func( [IDL.Principal, IDL.Principal], - [Result_9], + [Result_11], ['query'], ), 'validate2_admin_add_wasm' : IDL.Func( [AddWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_batch_call_buckets' : IDL.Func( [IDL.Vec(IDL.Principal), IDL.Text, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], [], ), 'validate2_admin_set_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate2_admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], - [Result_9], + [Result_11], + [], + ), + 'validate_admin_add_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_11], [], ), 'validate_admin_add_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate_admin_add_wasm' : IDL.Func( @@ -177,14 +253,24 @@ export const idlFactory = ({ IDL }) => { [Result_2], [], ), + 'validate_admin_create_bucket' : IDL.Func( + [IDL.Opt(CanisterSettings), IDL.Opt(IDL.Vec(IDL.Nat8))], + [Result_11], + [], + ), 'validate_admin_deploy_bucket' : IDL.Func( [DeployWasmInput, IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], [], ), + 'validate_admin_remove_committers' : IDL.Func( + [IDL.Vec(IDL.Principal)], + [Result_11], + [], + ), 'validate_admin_remove_managers' : IDL.Func( [IDL.Vec(IDL.Principal)], - [Result_9], + [Result_11], [], ), 'validate_admin_set_managers' : IDL.Func( @@ -192,6 +278,11 @@ export const idlFactory = ({ IDL }) => { [Result_1], [], ), + 'validate_admin_update_bucket_canister_settings' : IDL.Func( + [UpdateSettingsArgument], + [Result_11], + [], + ), 'validate_admin_upgrade_all_buckets' : IDL.Func( [IDL.Opt(IDL.Vec(IDL.Nat8))], [Result_1], diff --git a/src/ic_oss_ts/package.json b/src/ic_oss_ts/package.json index efc2e31..597d24b 100644 --- a/src/ic_oss_ts/package.json +++ b/src/ic_oss_ts/package.json @@ -1,6 +1,6 @@ { "name": "@ldclabs/ic_oss_ts", - "version": "0.9.6", + "version": "0.9.10", "type": "module", "description": "The Typescript version of the client SDK for the ic-oss cluster.", "license": "MIT", @@ -35,25 +35,25 @@ "ncu": "npx npm-check-updates -u" }, "dependencies": { - "@dfinity/agent": "^2.1.2", - "@dfinity/candid": "^2.1.2", - "@dfinity/principal": "^2.1.2", - "@dfinity/utils": "^2.5.2", - "@noble/hashes": "^1.5.0", + "@dfinity/agent": "^2.1.3", + "@dfinity/candid": "^2.1.3", + "@dfinity/principal": "^2.1.3", + "@dfinity/utils": "^2.7.0", + "@noble/hashes": "^1.6.1", "mime": "^4.0.4", "web-streams-polyfill": "^4.0.0" }, "devDependencies": { "@types/eslint": "^9.6.1", - "@types/node": "22.7.7", - "@typescript-eslint/eslint-plugin": "^8.10.0", - "@typescript-eslint/parser": "^8.10.0", - "eslint": "^9.13.0", + "@types/node": "22.9.3", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", + "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "^5.2.1", "prettier": "^3.3.3", - "typescript": "^5.6.3", - "vitest": "^2.1.3" + "typescript": "^5.7.2", + "vitest": "^2.1.5" } } \ No newline at end of file diff --git a/src/ic_oss_types/Cargo.toml b/src/ic_oss_types/Cargo.toml index 5addec3..53fdb56 100644 --- a/src/ic_oss_types/Cargo.toml +++ b/src/ic_oss_types/Cargo.toml @@ -23,4 +23,4 @@ icrc-ledger-types = { workspace = true } k256 = { workspace = true } ed25519-dalek = { workspace = true } sha2 = { workspace = true } -coset = "0.3.8" +coset = { workspace = true }