From 28c2db2a371f7e2e50efcff42f46983b65909246 Mon Sep 17 00:00:00 2001 From: Igor Katson Date: Sat, 2 Dec 2023 21:12:15 +0000 Subject: [PATCH] Made changes for Desktop app to work --- Cargo.lock | 2 +- crates/dht/Cargo.toml | 1 - crates/dht/src/persistence.rs | 4 +-- crates/librqbit/src/api.rs | 4 +++ crates/librqbit/src/session.rs | 38 +++++++++++++-------- crates/librqbit/webui/assets/logo.png | Bin 0 -> 157333 bytes crates/librqbit/webui/dist/assets/index.js | 16 ++++----- crates/librqbit/webui/dist/manifest.json | 2 +- crates/librqbit/webui/src/api-types.ts | 1 + crates/librqbit/webui/src/http-api.ts | 3 ++ crates/librqbit/webui/src/main.tsx | 2 +- crates/librqbit/webui/src/rqbit-web.tsx | 25 ++++++++++---- crates/librqbit_core/Cargo.toml | 3 +- crates/librqbit_core/src/directories.rs | 6 ++++ crates/librqbit_core/src/lib.rs | 1 + 15 files changed, 72 insertions(+), 36 deletions(-) create mode 100644 crates/librqbit/webui/assets/logo.png create mode 100644 crates/librqbit_core/src/directories.rs diff --git a/Cargo.lock b/Cargo.lock index b771e01c..41f7718c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1313,6 +1313,7 @@ name = "librqbit-core" version = "3.1.0" dependencies = [ "anyhow", + "directories", "hex 0.4.3", "itertools 0.12.0", "librqbit-bencode", @@ -1335,7 +1336,6 @@ dependencies = [ "backoff", "chrono", "dashmap", - "directories", "futures", "hex 0.4.3", "indexmap 2.1.0", diff --git a/crates/dht/Cargo.toml b/crates/dht/Cargo.toml index 151f3780..f91c424d 100644 --- a/crates/dht/Cargo.toml +++ b/crates/dht/Cargo.toml @@ -31,7 +31,6 @@ backoff = "0.4.0" futures = "0.3" rand = "0.8" indexmap = "2" -directories = "5" dashmap = {version = "5.5.3", features = ["serde"]} clone_to_owned = {path="../clone_to_owned", package="librqbit-clone-to-owned", version = "2.2.1"} diff --git a/crates/dht/src/persistence.rs b/crates/dht/src/persistence.rs index 08bcb8ac..49d478eb 100644 --- a/crates/dht/src/persistence.rs +++ b/crates/dht/src/persistence.rs @@ -1,5 +1,6 @@ // TODO: this now stores only the routing table, but we also need AT LEAST the same socket address... +use librqbit_core::directories::get_configuration_directory; use librqbit_core::spawn_utils::spawn; use serde::{Deserialize, Serialize}; use std::fs::OpenOptions; @@ -72,8 +73,7 @@ impl PersistentDht { let config_filename = match config.config_filename.take() { Some(config_filename) => config_filename, None => { - let dirs = directories::ProjectDirs::from("com", "rqbit", "dht") - .context("cannot determine project directory for com.rqbit.dht")?; + let dirs = get_configuration_directory("dht")?; let path = dirs.cache_dir().join("dht.json"); info!("will store DHT routing table to {:?} periodically", &path); path diff --git a/crates/librqbit/src/api.rs b/crates/librqbit/src/api.rs index 1e1574a0..ecfd394d 100644 --- a/crates/librqbit/src/api.rs +++ b/crates/librqbit/src/api.rs @@ -143,8 +143,10 @@ impl Api { info, only_files, seen_peers, + output_folder, }) => ApiAddTorrentResponse { id: None, + output_folder: output_folder.to_string_lossy().into_owned(), seen_peers: Some(seen_peers), details: make_torrent_details(&info_hash, &info, only_files.as_deref()) .context("error making torrent details")?, @@ -159,6 +161,7 @@ impl Api { ApiAddTorrentResponse { id: Some(id), details, + output_folder: handle.info().out_dir.to_string_lossy().into_owned(), seen_peers: None, } } @@ -227,6 +230,7 @@ pub struct TorrentDetailsResponse { pub struct ApiAddTorrentResponse { pub id: Option, pub details: TorrentDetailsResponse, + pub output_folder: String, pub seen_peers: Option>, } diff --git a/crates/librqbit/src/session.rs b/crates/librqbit/src/session.rs index c32e4655..79ad2e55 100644 --- a/crates/librqbit/src/session.rs +++ b/crates/librqbit/src/session.rs @@ -14,6 +14,7 @@ use bencode::{bencode_serialize_to_writer, BencodeDeserializer}; use buffers::ByteString; use dht::{Dht, DhtBuilder, Id20, PersistentDht, PersistentDhtConfig, RequestPeersStream}; use librqbit_core::{ + directories::get_configuration_directory, magnet::Magnet, peer_id::generate_peer_id, torrent_metainfo::{torrent_from_bytes, TorrentMetaV1Info, TorrentMetaV1Owned}, @@ -66,7 +67,7 @@ impl SessionDatabase { fn serialize(&self) -> SerializedSessionDatabase { SerializedSessionDatabase { - torrents_v2: self + torrents: self .torrents .iter() .map(|(id, torrent)| { @@ -135,7 +136,7 @@ where #[derive(Serialize, Deserialize)] struct SerializedSessionDatabase { - torrents_v2: HashMap, + torrents: HashMap, } pub struct Session { @@ -208,9 +209,11 @@ pub struct ListOnlyResponse { pub info_hash: Id20, pub info: TorrentMetaV1Info, pub only_files: Option>, + pub output_folder: PathBuf, pub seen_peers: Vec, } +#[allow(clippy::large_enum_variant)] pub enum AddTorrentResponse { AlreadyManaged(TorrentId, ManagedTorrentHandle), ListOnly(ListOnlyResponse), @@ -276,7 +279,6 @@ pub struct SessionOptions { pub disable_dht: bool, pub disable_dht_persistence: bool, pub persistence: bool, - // Will default to output_folder/.rqbit-session.json pub persistence_filename: Option, pub dht_config: Option, pub peer_id: Option, @@ -308,9 +310,12 @@ impl Session { Some(dht) }; let peer_opts = opts.peer_opts.unwrap_or_default(); - let persistence_filename = opts - .persistence_filename - .unwrap_or_else(|| output_folder.join(".rqbit-session.json")); + let persistence_filename = match opts.persistence_filename { + Some(filename) => filename, + None => get_configuration_directory("session")? + .data_dir() + .join("session.json"), + }; let session = Arc::new(Self { persistence_filename, peer_id, @@ -322,6 +327,10 @@ impl Session { }); if opts.persistence { + info!( + "will use {:?} for session persistence", + session.persistence_filename + ); if let Some(parent) = session.persistence_filename.parent() { std::fs::create_dir_all(parent).with_context(|| { format!("couldn't create directory {:?} for session storage", parent) @@ -391,7 +400,7 @@ impl Session { let db: SerializedSessionDatabase = serde_json::from_reader(&mut rdr).context("error deserializing session database")?; let mut futures = Vec::new(); - for (id, storrent) in db.torrents_v2.into_iter() { + for (id, storrent) in db.torrents.into_iter() { let trackers: Vec = storrent .trackers .into_iter() @@ -646,22 +655,23 @@ impl Session { let only_files = get_only_files(opts.only_files, opts.only_files_regex, opts.list_only)?; + let sub_folder = opts.sub_folder.map(PathBuf::from).unwrap_or_default(); + let output_folder = opts + .output_folder + .map(PathBuf::from) + .unwrap_or_else(|| self.output_folder.clone()) + .join(sub_folder); + if opts.list_only { return Ok(AddTorrentResponse::ListOnly(ListOnlyResponse { info_hash, info, only_files, + output_folder, seen_peers: initial_peers, })); } - let sub_folder = opts.sub_folder.map(PathBuf::from).unwrap_or_default(); - let output_folder = opts - .output_folder - .map(PathBuf::from) - .unwrap_or_else(|| self.output_folder.clone()) - .join(sub_folder); - let mut builder = ManagedTorrentBuilder::new(info, info_hash, output_folder.clone()); builder .overwrite(opts.overwrite) diff --git a/crates/librqbit/webui/assets/logo.png b/crates/librqbit/webui/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e5077c4a5ad96bb6542b8eb2dfd79b13cd8ddce8 GIT binary patch literal 157333 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

?HmK9_T6RJ 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�&73N`ncF)~Cdb9p7Xy2$Og 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%0Dy- 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ǖ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%0Dd0{P%+8*syfF$7M$XG*62v^m?@(@ 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 literal 0 HcmV?d00001 diff --git a/crates/librqbit/webui/dist/assets/index.js b/crates/librqbit/webui/dist/assets/index.js index f2249d04..1d41eaff 100644 --- a/crates/librqbit/webui/dist/assets/index.js +++ b/crates/librqbit/webui/dist/assets/index.js @@ -6,7 +6,7 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var zr=Symbol.for("react.element"),Wd=Symbol.for("react.portal"),Vd=Symbol.for("react.fragment"),Qd=Symbol.for("react.strict_mode"),Kd=Symbol.for("react.profiler"),Gd=Symbol.for("react.provider"),Yd=Symbol.for("react.context"),Xd=Symbol.for("react.forward_ref"),Zd=Symbol.for("react.suspense"),Jd=Symbol.for("react.memo"),qd=Symbol.for("react.lazy"),Ju=Symbol.iterator;function bd(e){return e===null||typeof e!="object"?null:(e=Ju&&e[Ju]||e["@@iterator"],typeof e=="function"?e:null)}var ka={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ea=Object.assign,Ca={};function Bn(e,t,n){this.props=e,this.context=t,this.refs=Ca,this.updater=n||ka}Bn.prototype.isReactComponent={};Bn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Bn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Ta(){}Ta.prototype=Bn.prototype;function Yi(e,t,n){this.props=e,this.context=t,this.refs=Ca,this.updater=n||ka}var Xi=Yi.prototype=new Ta;Xi.constructor=Yi;Ea(Xi,Bn.prototype);Xi.isPureReactComponent=!0;var qu=Array.isArray,Na=Object.prototype.hasOwnProperty,Zi={current:null},_a={key:!0,ref:!0,__self:!0,__source:!0};function ja(e,t,n){var r,l={},o=null,i=null;if(t!=null)for(r in t.ref!==void 0&&(i=t.ref),t.key!==void 0&&(o=""+t.key),t)Na.call(t,r)&&!_a.hasOwnProperty(r)&&(l[r]=t[r]);var u=arguments.length-2;if(u===1)l.children=n;else if(1>>1,A=C[D];if(0>>1;Dl(et,P))Lel(mt,et)?(C[D]=mt,C[Le]=P,D=Le):(C[D]=et,C[Re]=P,D=Re);else if(Lel(mt,P))C[D]=mt,C[Le]=P,D=Le;else break e}}return L}function l(C,L){var P=C.sortIndex-L.sortIndex;return P!==0?P:C.id-L.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var i=Date,u=i.now();e.unstable_now=function(){return i.now()-u}}var s=[],a=[],h=1,p=null,d=3,S=!1,g=!1,x=!1,R=typeof setTimeout=="function"?setTimeout:null,m=typeof clearTimeout=="function"?clearTimeout:null,c=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function v(C){for(var L=n(a);L!==null;){if(L.callback===null)r(a);else if(L.startTime<=C)r(a),L.sortIndex=L.expirationTime,t(s,L);else break;L=n(a)}}function w(C){if(x=!1,v(C),!g)if(n(s)!==null)g=!0,je(E);else{var L=n(a);L!==null&&Ye(w,L.startTime-C)}}function E(C,L){g=!1,x&&(x=!1,m(j),j=-1),S=!0;var P=d;try{for(v(L),p=n(s);p!==null&&(!(p.expirationTime>L)||C&&!ie());){var D=p.callback;if(typeof D=="function"){p.callback=null,d=p.priorityLevel;var A=D(p.expirationTime<=L);L=e.unstable_now(),typeof A=="function"?p.callback=A:p===n(s)&&r(s),v(L)}else r(s);p=n(s)}if(p!==null)var fe=!0;else{var Re=n(a);Re!==null&&Ye(w,Re.startTime-L),fe=!1}return fe}finally{p=null,d=P,S=!1}}var T=!1,N=null,j=-1,U=5,O=-1;function ie(){return!(e.unstable_now()-OC||125D?(C.sortIndex=P,t(a,C),n(s)===null&&C===n(a)&&(x?(m(j),j=-1):x=!0,Ye(w,P-D))):(C.sortIndex=A,t(s,C),g||S||(g=!0,je(E))),C},e.unstable_shouldYield=ie,e.unstable_wrapCallback=function(C){var L=d;return function(){var P=d;d=L;try{return C.apply(this,arguments)}finally{d=P}}}})(Oa);Pa.exports=Oa;var cp=Pa.exports;/** + */(function(e){function t(C,L){var O=C.length;C.push(L);e:for(;0>>1,A=C[D];if(0>>1;Dl(et,O))Oel(mt,et)?(C[D]=mt,C[Oe]=O,D=Oe):(C[D]=et,C[Le]=O,D=Le);else if(Oel(mt,O))C[D]=mt,C[Oe]=O,D=Oe;else break e}}return L}function l(C,L){var O=C.sortIndex-L.sortIndex;return O!==0?O:C.id-L.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var i=Date,u=i.now();e.unstable_now=function(){return i.now()-u}}var s=[],a=[],m=1,h=null,f=3,w=!1,g=!1,x=!1,R=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,c=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function v(C){for(var L=n(a);L!==null;){if(L.callback===null)r(a);else if(L.startTime<=C)r(a),L.sortIndex=L.expirationTime,t(s,L);else break;L=n(a)}}function S(C){if(x=!1,v(C),!g)if(n(s)!==null)g=!0,Re(T);else{var L=n(a);L!==null&&Ye(S,L.startTime-C)}}function T(C,L){g=!1,x&&(x=!1,p(j),j=-1),w=!0;var O=f;try{for(v(L),h=n(s);h!==null&&(!(h.expirationTime>L)||C&&!ie());){var D=h.callback;if(typeof D=="function"){h.callback=null,f=h.priorityLevel;var A=D(h.expirationTime<=L);L=e.unstable_now(),typeof A=="function"?h.callback=A:h===n(s)&&r(s),v(L)}else r(s);h=n(s)}if(h!==null)var fe=!0;else{var Le=n(a);Le!==null&&Ye(S,Le.startTime-L),fe=!1}return fe}finally{h=null,f=O,w=!1}}var E=!1,N=null,j=-1,U=5,P=-1;function ie(){return!(e.unstable_now()-PC||125D?(C.sortIndex=O,t(a,C),n(s)===null&&C===n(a)&&(x?(p(j),j=-1):x=!0,Ye(S,O-D))):(C.sortIndex=A,t(s,C),g||w||(g=!0,Re(T))),C},e.unstable_shouldYield=ie,e.unstable_wrapCallback=function(C){var L=f;return function(){var O=f;f=L;try{return C.apply(this,arguments)}finally{f=O}}}})(Pa);Oa.exports=Pa;var cp=Oa.exports;/** * @license React * react-dom.production.min.js * @@ -30,15 +30,15 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Fa=y,Te=cp;function k(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xo=Object.prototype.hasOwnProperty,fp=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,es={},ts={};function dp(e){return Xo.call(ts,e)?!0:Xo.call(es,e)?!1:fp.test(e)?ts[e]=!0:(es[e]=!0,!1)}function pp(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function mp(e,t,n,r){if(t===null||typeof t>"u"||pp(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function he(e,t,n,r,l,o,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var oe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){oe[e]=new he(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];oe[t]=new he(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){oe[e]=new he(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){oe[e]=new he(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){oe[e]=new he(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){oe[e]=new he(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){oe[e]=new he(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){oe[e]=new he(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){oe[e]=new he(e,5,!1,e.toLowerCase(),null,!1,!1)});var qi=/[\-:]([a-z])/g;function bi(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(qi,bi);oe[t]=new he(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(qi,bi);oe[t]=new he(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(qi,bi);oe[t]=new he(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){oe[e]=new he(e,1,!1,e.toLowerCase(),null,!1,!1)});oe.xlinkHref=new he("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){oe[e]=new he(e,1,!1,e.toLowerCase(),null,!0,!0)});function eu(e,t,n,r){var l=oe.hasOwnProperty(t)?oe[t]:null;(l!==null?l.type!==0:r||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Xo=Object.prototype.hasOwnProperty,fp=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,es={},ts={};function dp(e){return Xo.call(ts,e)?!0:Xo.call(es,e)?!1:fp.test(e)?ts[e]=!0:(es[e]=!0,!1)}function pp(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function mp(e,t,n,r){if(t===null||typeof t>"u"||pp(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ve(e,t,n,r,l,o,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var oe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){oe[e]=new ve(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];oe[t]=new ve(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){oe[e]=new ve(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){oe[e]=new ve(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){oe[e]=new ve(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){oe[e]=new ve(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){oe[e]=new ve(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){oe[e]=new ve(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){oe[e]=new ve(e,5,!1,e.toLowerCase(),null,!1,!1)});var qi=/[\-:]([a-z])/g;function bi(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(qi,bi);oe[t]=new ve(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(qi,bi);oe[t]=new ve(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(qi,bi);oe[t]=new ve(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){oe[e]=new ve(e,1,!1,e.toLowerCase(),null,!1,!1)});oe.xlinkHref=new ve("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){oe[e]=new ve(e,1,!1,e.toLowerCase(),null,!0,!0)});function eu(e,t,n,r){var l=oe.hasOwnProperty(t)?oe[t]:null;(l!==null?l.type!==0:r||!(2u||l[i]!==o[u]){var s=` -`+l[i].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=i&&0<=u);break}}}finally{go=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?rr(e):""}function hp(e){switch(e.tag){case 5:return rr(e.type);case 16:return rr("Lazy");case 13:return rr("Suspense");case 19:return rr("SuspenseList");case 0:case 2:case 15:return e=wo(e.type,!1),e;case 11:return e=wo(e.type.render,!1),e;case 1:return e=wo(e.type,!0),e;default:return""}}function bo(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case hn:return"Fragment";case mn:return"Portal";case Zo:return"Profiler";case tu:return"StrictMode";case Jo:return"Suspense";case qo:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case $a:return(e.displayName||"Context")+".Consumer";case za:return(e._context.displayName||"Context")+".Provider";case nu:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ru:return t=e.displayName||null,t!==null?t:bo(e.type)||"Memo";case gt:t=e._payload,e=e._init;try{return bo(e(t))}catch{}}return null}function vp(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return bo(t);case 8:return t===tu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ft(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Ia(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function yp(e){var t=Ia(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(i){r=""+i,o.call(this,i)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(i){r=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Qr(e){e._valueTracker||(e._valueTracker=yp(e))}function Aa(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Ia(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function xl(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ei(e,t){var n=t.checked;return X({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function rs(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ft(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ua(e,t){t=t.checked,t!=null&&eu(e,"checked",t,!1)}function ti(e,t){Ua(e,t);var n=Ft(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ni(e,t.type,n):t.hasOwnProperty("defaultValue")&&ni(e,t.type,Ft(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function ls(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ni(e,t,n){(t!=="number"||xl(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var lr=Array.isArray;function _n(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l"+t.valueOf().toString()+"",t=Kr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function gr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var sr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},gp=["Webkit","ms","Moz","O"];Object.keys(sr).forEach(function(e){gp.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),sr[t]=sr[e]})});function Va(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||sr.hasOwnProperty(e)&&sr[e]?(""+t).trim():t+"px"}function Qa(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=Va(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var wp=X({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function oi(e,t){if(t){if(wp[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(k(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(k(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(k(61))}if(t.style!=null&&typeof t.style!="object")throw Error(k(62))}}function ii(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var ui=null;function lu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var si=null,jn=null,Rn=null;function us(e){if(e=Ir(e)){if(typeof si!="function")throw Error(k(280));var t=e.stateNode;t&&(t=eo(t),si(e.stateNode,e.type,t))}}function Ka(e){jn?Rn?Rn.push(e):Rn=[e]:jn=e}function Ga(){if(jn){var e=jn,t=Rn;if(Rn=jn=null,us(e),t)for(e=0;e>>=0,e===0?32:31-(Lp(e)/Pp|0)|0}var Gr=64,Yr=4194304;function or(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Tl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,o=e.pingedLanes,i=n&268435455;if(i!==0){var u=i&~l;u!==0?r=or(u):(o&=i,o!==0&&(r=or(o)))}else i=n&~l,i!==0?r=or(i):o!==0&&(r=or(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&l)&&(l=r&-r,o=t&-t,l>=o||l===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function $r(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-We(t),e[t]=n}function zp(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=cr),vs=String.fromCharCode(32),ys=!1;function pc(e,t){switch(e){case"keyup":return am.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function mc(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vn=!1;function fm(e,t){switch(e){case"compositionend":return mc(t);case"keypress":return t.which!==32?null:(ys=!0,vs);case"textInput":return e=t.data,e===vs&&ys?null:e;default:return null}}function dm(e,t){if(vn)return e==="compositionend"||!du&&pc(e,t)?(e=fc(),fl=au=Et=null,vn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=xs(n)}}function gc(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?gc(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wc(){for(var e=window,t=xl();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=xl(e.document)}return t}function pu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function xm(e){var t=wc(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&gc(n.ownerDocument.documentElement,n)){if(r!==null&&pu(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,o=Math.min(r.start,l);r=r.end===void 0?o:Math.min(r.end,l),!e.extend&&o>r&&(l=r,r=o,o=l),l=ks(n,o);var i=ks(n,r);l&&i&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,yn=null,mi=null,dr=null,hi=!1;function Es(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;hi||yn==null||yn!==xl(r)||(r=yn,"selectionStart"in r&&pu(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),dr&&Cr(dr,r)||(dr=r,r=jl(mi,"onSelect"),0Sn||(e.current=xi[Sn],xi[Sn]=null,Sn--)}function B(e,t){Sn++,xi[Sn]=e.current,e.current=t}var Mt={},ce=$t(Mt),we=$t(!1),Zt=Mt;function Mn(e,t){var n=e.type.contextTypes;if(!n)return Mt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},o;for(o in n)l[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function Se(e){return e=e.childContextTypes,e!=null}function Ll(){V(we),V(ce)}function Ls(e,t,n){if(ce.current!==Mt)throw Error(k(168));B(ce,t),B(we,n)}function jc(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(k(108,vp(e)||"Unknown",l));return X({},n,r)}function Pl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Mt,Zt=ce.current,B(ce,e),B(we,we.current),!0}function Ps(e,t,n){var r=e.stateNode;if(!r)throw Error(k(169));n?(e=jc(e,t,Zt),r.__reactInternalMemoizedMergedChildContext=e,V(we),V(ce),B(ce,e)):V(we),B(we,n)}var nt=null,to=!1,Fo=!1;function Rc(e){nt===null?nt=[e]:nt.push(e)}function Fm(e){to=!0,Rc(e)}function Dt(){if(!Fo&&nt!==null){Fo=!0;var e=0,t=I;try{var n=nt;for(I=1;e>=i,l-=i,rt=1<<32-We(t)+l|n<j?(U=N,N=null):U=N.sibling;var O=d(m,N,v[j],w);if(O===null){N===null&&(N=U);break}e&&N&&O.alternate===null&&t(m,N),c=o(O,c,j),T===null?E=O:T.sibling=O,T=O,N=U}if(j===v.length)return n(m,N),Q&&At(m,j),E;if(N===null){for(;jj?(U=N,N=null):U=N.sibling;var ie=d(m,N,O.value,w);if(ie===null){N===null&&(N=U);break}e&&N&&ie.alternate===null&&t(m,N),c=o(ie,c,j),T===null?E=ie:T.sibling=ie,T=ie,N=U}if(O.done)return n(m,N),Q&&At(m,j),E;if(N===null){for(;!O.done;j++,O=v.next())O=p(m,O.value,w),O!==null&&(c=o(O,c,j),T===null?E=O:T.sibling=O,T=O);return Q&&At(m,j),E}for(N=r(m,N);!O.done;j++,O=v.next())O=S(N,m,j,O.value,w),O!==null&&(e&&O.alternate!==null&&N.delete(O.key===null?j:O.key),c=o(O,c,j),T===null?E=O:T.sibling=O,T=O);return e&&N.forEach(function(Ke){return t(m,Ke)}),Q&&At(m,j),E}function R(m,c,v,w){if(typeof v=="object"&&v!==null&&v.type===hn&&v.key===null&&(v=v.props.children),typeof v=="object"&&v!==null){switch(v.$$typeof){case Vr:e:{for(var E=v.key,T=c;T!==null;){if(T.key===E){if(E=v.type,E===hn){if(T.tag===7){n(m,T.sibling),c=l(T,v.props.children),c.return=m,m=c;break e}}else if(T.elementType===E||typeof E=="object"&&E!==null&&E.$$typeof===gt&&Is(E)===T.type){n(m,T.sibling),c=l(T,v.props),c.ref=er(m,T,v),c.return=m,m=c;break e}n(m,T);break}else t(m,T);T=T.sibling}v.type===hn?(c=Yt(v.props.children,m.mode,w,v.key),c.return=m,m=c):(w=wl(v.type,v.key,v.props,null,m.mode,w),w.ref=er(m,c,v),w.return=m,m=w)}return i(m);case mn:e:{for(T=v.key;c!==null;){if(c.key===T)if(c.tag===4&&c.stateNode.containerInfo===v.containerInfo&&c.stateNode.implementation===v.implementation){n(m,c.sibling),c=l(c,v.children||[]),c.return=m,m=c;break e}else{n(m,c);break}else t(m,c);c=c.sibling}c=Bo(v,m.mode,w),c.return=m,m=c}return i(m);case gt:return T=v._init,R(m,c,T(v._payload),w)}if(lr(v))return g(m,c,v,w);if(Xn(v))return x(m,c,v,w);tl(m,v)}return typeof v=="string"&&v!==""||typeof v=="number"?(v=""+v,c!==null&&c.tag===6?(n(m,c.sibling),c=l(c,v),c.return=m,m=c):(n(m,c),c=Uo(v,m.mode,w),c.return=m,m=c),i(m)):n(m,c)}return R}var $n=Dc(!0),Ic=Dc(!1),Ar={},be=$t(Ar),jr=$t(Ar),Rr=$t(Ar);function Kt(e){if(e===Ar)throw Error(k(174));return e}function ku(e,t){switch(B(Rr,t),B(jr,e),B(be,Ar),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:li(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=li(t,e)}V(be),B(be,t)}function Dn(){V(be),V(jr),V(Rr)}function Ac(e){Kt(Rr.current);var t=Kt(be.current),n=li(t,e.type);t!==n&&(B(jr,e),B(be,n))}function Eu(e){jr.current===e&&(V(be),V(jr))}var G=$t(0);function Dl(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Mo=[];function Cu(){for(var e=0;en?n:4,e(!0);var r=zo.transition;zo.transition={};try{e(!1),t()}finally{I=n,zo.transition=r}}function tf(){return Ie().memoizedState}function Dm(e,t,n){var r=Pt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},nf(e))rf(t,n);else if(n=Fc(e,t,n,r),n!==null){var l=pe();Ve(n,e,r,l),lf(n,t,r)}}function Im(e,t,n){var r=Pt(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(nf(e))rf(t,l);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var i=t.lastRenderedState,u=o(i,n);if(l.hasEagerState=!0,l.eagerState=u,Qe(u,i)){var s=t.interleaved;s===null?(l.next=l,Su(t)):(l.next=s.next,s.next=l),t.interleaved=l;return}}catch{}finally{}n=Fc(e,t,l,r),n!==null&&(l=pe(),Ve(n,e,r,l),lf(n,t,r))}}function nf(e){var t=e.alternate;return e===Y||t!==null&&t===Y}function rf(e,t){pr=Il=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function lf(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,iu(e,n)}}var Al={readContext:De,useCallback:ue,useContext:ue,useEffect:ue,useImperativeHandle:ue,useInsertionEffect:ue,useLayoutEffect:ue,useMemo:ue,useReducer:ue,useRef:ue,useState:ue,useDebugValue:ue,useDeferredValue:ue,useTransition:ue,useMutableSource:ue,useSyncExternalStore:ue,useId:ue,unstable_isNewReconciler:!1},Am={readContext:De,useCallback:function(e,t){return Ze().memoizedState=[e,t===void 0?null:t],e},useContext:De,useEffect:Us,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,hl(4194308,4,Zc.bind(null,t,e),n)},useLayoutEffect:function(e,t){return hl(4194308,4,e,t)},useInsertionEffect:function(e,t){return hl(4,2,e,t)},useMemo:function(e,t){var n=Ze();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ze();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Dm.bind(null,Y,e),[r.memoizedState,e]},useRef:function(e){var t=Ze();return e={current:e},t.memoizedState=e},useState:As,useDebugValue:Ru,useDeferredValue:function(e){return Ze().memoizedState=e},useTransition:function(){var e=As(!1),t=e[0];return e=$m.bind(null,e[1]),Ze().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Y,l=Ze();if(Q){if(n===void 0)throw Error(k(407));n=n()}else{if(n=t(),ne===null)throw Error(k(349));qt&30||Hc(r,t,n)}l.memoizedState=n;var o={value:n,getSnapshot:t};return l.queue=o,Us(Vc.bind(null,r,o,e),[e]),r.flags|=2048,Or(9,Wc.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Ze(),t=ne.identifierPrefix;if(Q){var n=lt,r=rt;n=(r&~(1<<32-We(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Lr++,0")&&(s=s.replace("",e.displayName)),s}while(1<=i&&0<=u);break}}}finally{go=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?rr(e):""}function hp(e){switch(e.tag){case 5:return rr(e.type);case 16:return rr("Lazy");case 13:return rr("Suspense");case 19:return rr("SuspenseList");case 0:case 2:case 15:return e=wo(e.type,!1),e;case 11:return e=wo(e.type.render,!1),e;case 1:return e=wo(e.type,!0),e;default:return""}}function bo(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case hn:return"Fragment";case mn:return"Portal";case Zo:return"Profiler";case tu:return"StrictMode";case Jo:return"Suspense";case qo:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case $a:return(e.displayName||"Context")+".Consumer";case za:return(e._context.displayName||"Context")+".Provider";case nu:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ru:return t=e.displayName||null,t!==null?t:bo(e.type)||"Memo";case gt:t=e._payload,e=e._init;try{return bo(e(t))}catch{}}return null}function vp(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return bo(t);case 8:return t===tu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ft(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Ia(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function yp(e){var t=Ia(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(i){r=""+i,o.call(this,i)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(i){r=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Qr(e){e._valueTracker||(e._valueTracker=yp(e))}function Aa(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Ia(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function xl(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ei(e,t){var n=t.checked;return X({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function rs(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ft(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ua(e,t){t=t.checked,t!=null&&eu(e,"checked",t,!1)}function ti(e,t){Ua(e,t);var n=Ft(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ni(e,t.type,n):t.hasOwnProperty("defaultValue")&&ni(e,t.type,Ft(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function ls(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ni(e,t,n){(t!=="number"||xl(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var lr=Array.isArray;function _n(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l"+t.valueOf().toString()+"",t=Kr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function gr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var sr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},gp=["Webkit","ms","Moz","O"];Object.keys(sr).forEach(function(e){gp.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),sr[t]=sr[e]})});function Va(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||sr.hasOwnProperty(e)&&sr[e]?(""+t).trim():t+"px"}function Qa(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=Va(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var wp=X({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function oi(e,t){if(t){if(wp[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(k(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(k(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(k(61))}if(t.style!=null&&typeof t.style!="object")throw Error(k(62))}}function ii(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var ui=null;function lu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var si=null,jn=null,Rn=null;function us(e){if(e=Ir(e)){if(typeof si!="function")throw Error(k(280));var t=e.stateNode;t&&(t=eo(t),si(e.stateNode,e.type,t))}}function Ka(e){jn?Rn?Rn.push(e):Rn=[e]:jn=e}function Ga(){if(jn){var e=jn,t=Rn;if(Rn=jn=null,us(e),t)for(e=0;e>>=0,e===0?32:31-(Lp(e)/Op|0)|0}var Gr=64,Yr=4194304;function or(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Nl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,o=e.pingedLanes,i=n&268435455;if(i!==0){var u=i&~l;u!==0?r=or(u):(o&=i,o!==0&&(r=or(o)))}else i=n&~l,i!==0?r=or(i):o!==0&&(r=or(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&l)&&(l=r&-r,o=t&-t,l>=o||l===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function $r(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-We(t),e[t]=n}function zp(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=cr),vs=String.fromCharCode(32),ys=!1;function pc(e,t){switch(e){case"keyup":return am.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function mc(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vn=!1;function fm(e,t){switch(e){case"compositionend":return mc(t);case"keypress":return t.which!==32?null:(ys=!0,vs);case"textInput":return e=t.data,e===vs&&ys?null:e;default:return null}}function dm(e,t){if(vn)return e==="compositionend"||!du&&pc(e,t)?(e=fc(),fl=au=Et=null,vn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=xs(n)}}function gc(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?gc(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wc(){for(var e=window,t=xl();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=xl(e.document)}return t}function pu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function xm(e){var t=wc(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&gc(n.ownerDocument.documentElement,n)){if(r!==null&&pu(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,o=Math.min(r.start,l);r=r.end===void 0?o:Math.min(r.end,l),!e.extend&&o>r&&(l=r,r=o,o=l),l=ks(n,o);var i=ks(n,r);l&&i&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,yn=null,mi=null,dr=null,hi=!1;function Es(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;hi||yn==null||yn!==xl(r)||(r=yn,"selectionStart"in r&&pu(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),dr&&Cr(dr,r)||(dr=r,r=jl(mi,"onSelect"),0Sn||(e.current=xi[Sn],xi[Sn]=null,Sn--)}function B(e,t){Sn++,xi[Sn]=e.current,e.current=t}var Mt={},ce=$t(Mt),Se=$t(!1),Zt=Mt;function Mn(e,t){var n=e.type.contextTypes;if(!n)return Mt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},o;for(o in n)l[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function xe(e){return e=e.childContextTypes,e!=null}function Ll(){V(Se),V(ce)}function Ls(e,t,n){if(ce.current!==Mt)throw Error(k(168));B(ce,t),B(Se,n)}function jc(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(k(108,vp(e)||"Unknown",l));return X({},n,r)}function Ol(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Mt,Zt=ce.current,B(ce,e),B(Se,Se.current),!0}function Os(e,t,n){var r=e.stateNode;if(!r)throw Error(k(169));n?(e=jc(e,t,Zt),r.__reactInternalMemoizedMergedChildContext=e,V(Se),V(ce),B(ce,e)):V(Se),B(Se,n)}var nt=null,to=!1,Fo=!1;function Rc(e){nt===null?nt=[e]:nt.push(e)}function Fm(e){to=!0,Rc(e)}function Dt(){if(!Fo&&nt!==null){Fo=!0;var e=0,t=I;try{var n=nt;for(I=1;e>=i,l-=i,rt=1<<32-We(t)+l|n<j?(U=N,N=null):U=N.sibling;var P=f(p,N,v[j],S);if(P===null){N===null&&(N=U);break}e&&N&&P.alternate===null&&t(p,N),c=o(P,c,j),E===null?T=P:E.sibling=P,E=P,N=U}if(j===v.length)return n(p,N),Q&&At(p,j),T;if(N===null){for(;jj?(U=N,N=null):U=N.sibling;var ie=f(p,N,P.value,S);if(ie===null){N===null&&(N=U);break}e&&N&&ie.alternate===null&&t(p,N),c=o(ie,c,j),E===null?T=ie:E.sibling=ie,E=ie,N=U}if(P.done)return n(p,N),Q&&At(p,j),T;if(N===null){for(;!P.done;j++,P=v.next())P=h(p,P.value,S),P!==null&&(c=o(P,c,j),E===null?T=P:E.sibling=P,E=P);return Q&&At(p,j),T}for(N=r(p,N);!P.done;j++,P=v.next())P=w(N,p,j,P.value,S),P!==null&&(e&&P.alternate!==null&&N.delete(P.key===null?j:P.key),c=o(P,c,j),E===null?T=P:E.sibling=P,E=P);return e&&N.forEach(function(Ke){return t(p,Ke)}),Q&&At(p,j),T}function R(p,c,v,S){if(typeof v=="object"&&v!==null&&v.type===hn&&v.key===null&&(v=v.props.children),typeof v=="object"&&v!==null){switch(v.$$typeof){case Vr:e:{for(var T=v.key,E=c;E!==null;){if(E.key===T){if(T=v.type,T===hn){if(E.tag===7){n(p,E.sibling),c=l(E,v.props.children),c.return=p,p=c;break e}}else if(E.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===gt&&Is(T)===E.type){n(p,E.sibling),c=l(E,v.props),c.ref=er(p,E,v),c.return=p,p=c;break e}n(p,E);break}else t(p,E);E=E.sibling}v.type===hn?(c=Yt(v.props.children,p.mode,S,v.key),c.return=p,p=c):(S=wl(v.type,v.key,v.props,null,p.mode,S),S.ref=er(p,c,v),S.return=p,p=S)}return i(p);case mn:e:{for(E=v.key;c!==null;){if(c.key===E)if(c.tag===4&&c.stateNode.containerInfo===v.containerInfo&&c.stateNode.implementation===v.implementation){n(p,c.sibling),c=l(c,v.children||[]),c.return=p,p=c;break e}else{n(p,c);break}else t(p,c);c=c.sibling}c=Bo(v,p.mode,S),c.return=p,p=c}return i(p);case gt:return E=v._init,R(p,c,E(v._payload),S)}if(lr(v))return g(p,c,v,S);if(Xn(v))return x(p,c,v,S);tl(p,v)}return typeof v=="string"&&v!==""||typeof v=="number"?(v=""+v,c!==null&&c.tag===6?(n(p,c.sibling),c=l(c,v),c.return=p,p=c):(n(p,c),c=Uo(v,p.mode,S),c.return=p,p=c),i(p)):n(p,c)}return R}var $n=Dc(!0),Ic=Dc(!1),Ar={},be=$t(Ar),jr=$t(Ar),Rr=$t(Ar);function Kt(e){if(e===Ar)throw Error(k(174));return e}function ku(e,t){switch(B(Rr,t),B(jr,e),B(be,Ar),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:li(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=li(t,e)}V(be),B(be,t)}function Dn(){V(be),V(jr),V(Rr)}function Ac(e){Kt(Rr.current);var t=Kt(be.current),n=li(t,e.type);t!==n&&(B(jr,e),B(be,n))}function Eu(e){jr.current===e&&(V(be),V(jr))}var G=$t(0);function Dl(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Mo=[];function Cu(){for(var e=0;en?n:4,e(!0);var r=zo.transition;zo.transition={};try{e(!1),t()}finally{I=n,zo.transition=r}}function tf(){return Ie().memoizedState}function Dm(e,t,n){var r=Ot(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},nf(e))rf(t,n);else if(n=Fc(e,t,n,r),n!==null){var l=me();Ve(n,e,r,l),lf(n,t,r)}}function Im(e,t,n){var r=Ot(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(nf(e))rf(t,l);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var i=t.lastRenderedState,u=o(i,n);if(l.hasEagerState=!0,l.eagerState=u,Qe(u,i)){var s=t.interleaved;s===null?(l.next=l,Su(t)):(l.next=s.next,s.next=l),t.interleaved=l;return}}catch{}finally{}n=Fc(e,t,l,r),n!==null&&(l=me(),Ve(n,e,r,l),lf(n,t,r))}}function nf(e){var t=e.alternate;return e===Y||t!==null&&t===Y}function rf(e,t){pr=Il=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function lf(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,iu(e,n)}}var Al={readContext:De,useCallback:ue,useContext:ue,useEffect:ue,useImperativeHandle:ue,useInsertionEffect:ue,useLayoutEffect:ue,useMemo:ue,useReducer:ue,useRef:ue,useState:ue,useDebugValue:ue,useDeferredValue:ue,useTransition:ue,useMutableSource:ue,useSyncExternalStore:ue,useId:ue,unstable_isNewReconciler:!1},Am={readContext:De,useCallback:function(e,t){return Ze().memoizedState=[e,t===void 0?null:t],e},useContext:De,useEffect:Us,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,hl(4194308,4,Zc.bind(null,t,e),n)},useLayoutEffect:function(e,t){return hl(4194308,4,e,t)},useInsertionEffect:function(e,t){return hl(4,2,e,t)},useMemo:function(e,t){var n=Ze();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ze();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Dm.bind(null,Y,e),[r.memoizedState,e]},useRef:function(e){var t=Ze();return e={current:e},t.memoizedState=e},useState:As,useDebugValue:Ru,useDeferredValue:function(e){return Ze().memoizedState=e},useTransition:function(){var e=As(!1),t=e[0];return e=$m.bind(null,e[1]),Ze().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Y,l=Ze();if(Q){if(n===void 0)throw Error(k(407));n=n()}else{if(n=t(),ne===null)throw Error(k(349));qt&30||Hc(r,t,n)}l.memoizedState=n;var o={value:n,getSnapshot:t};return l.queue=o,Us(Vc.bind(null,r,o,e),[e]),r.flags|=2048,Pr(9,Wc.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Ze(),t=ne.identifierPrefix;if(Q){var n=lt,r=rt;n=(r&~(1<<32-We(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Lr++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=i.createElement(n,{is:r.is}):(e=i.createElement(n),n==="select"&&(i=e,r.multiple?i.multiple=!0:r.size&&(i.size=r.size))):e=i.createElementNS(e,n),e[Je]=t,e[_r]=r,mf(e,t,!1,!1),t.stateNode=e;e:{switch(i=ii(n,r),n){case"dialog":W("cancel",e),W("close",e),l=r;break;case"iframe":case"object":case"embed":W("load",e),l=r;break;case"video":case"audio":for(l=0;lAn&&(t.flags|=128,r=!0,tr(o,!1),t.lanes=4194304)}else{if(!r)if(e=Dl(i),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),tr(o,!0),o.tail===null&&o.tailMode==="hidden"&&!i.alternate&&!Q)return se(t),null}else 2*J()-o.renderingStartTime>An&&n!==1073741824&&(t.flags|=128,r=!0,tr(o,!1),t.lanes=4194304);o.isBackwards?(i.sibling=t.child,t.child=i):(n=o.last,n!==null?n.sibling=i:t.child=i,o.last=i)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=J(),t.sibling=null,n=G.current,B(G,r?n&1|2:n&1),t):(se(t),null);case 22:case 23:return zu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?ke&1073741824&&(se(t),t.subtreeFlags&6&&(t.flags|=8192)):se(t),null;case 24:return null;case 25:return null}throw Error(k(156,t.tag))}function Gm(e,t){switch(hu(t),t.tag){case 1:return Se(t.type)&&Ll(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Dn(),V(we),V(ce),Cu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Eu(t),null;case 13:if(V(G),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(k(340));zn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(G),null;case 4:return Dn(),null;case 10:return wu(t.type._context),null;case 22:case 23:return zu(),null;case 24:return null;default:return null}}var rl=!1,ae=!1,Ym=typeof WeakSet=="function"?WeakSet:Set,_=null;function Cn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Z(e,t,r)}else n.current=null}function Fi(e,t,n){try{n()}catch(r){Z(e,t,r)}}var Xs=!1;function Xm(e,t){if(vi=Nl,e=wc(),pu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var i=0,u=-1,s=-1,a=0,h=0,p=e,d=null;t:for(;;){for(var S;p!==n||l!==0&&p.nodeType!==3||(u=i+l),p!==o||r!==0&&p.nodeType!==3||(s=i+r),p.nodeType===3&&(i+=p.nodeValue.length),(S=p.firstChild)!==null;)d=p,p=S;for(;;){if(p===e)break t;if(d===n&&++a===l&&(u=i),d===o&&++h===r&&(s=i),(S=p.nextSibling)!==null)break;p=d,d=p.parentNode}p=S}n=u===-1||s===-1?null:{start:u,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(yi={focusedElem:e,selectionRange:n},Nl=!1,_=t;_!==null;)if(t=_,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,_=e;else for(;_!==null;){t=_;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var x=g.memoizedProps,R=g.memoizedState,m=t.stateNode,c=m.getSnapshotBeforeUpdate(t.elementType===t.type?x:Ue(t.type,x),R);m.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var v=t.stateNode.containerInfo;v.nodeType===1?v.textContent="":v.nodeType===9&&v.documentElement&&v.removeChild(v.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(k(163))}}catch(w){Z(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,_=e;break}_=t.return}return g=Xs,Xs=!1,g}function mr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var o=l.destroy;l.destroy=void 0,o!==void 0&&Fi(t,n,o)}l=l.next}while(l!==r)}}function lo(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Mi(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function yf(e){var t=e.alternate;t!==null&&(e.alternate=null,yf(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Je],delete t[_r],delete t[Si],delete t[Pm],delete t[Om])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function gf(e){return e.tag===5||e.tag===3||e.tag===4}function Zs(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||gf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function zi(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Rl));else if(r!==4&&(e=e.child,e!==null))for(zi(e,t,n),e=e.sibling;e!==null;)zi(e,t,n),e=e.sibling}function $i(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for($i(e,t,n),e=e.sibling;e!==null;)$i(e,t,n),e=e.sibling}var re=null,Be=!1;function ht(e,t,n){for(n=n.child;n!==null;)wf(e,t,n),n=n.sibling}function wf(e,t,n){if(qe&&typeof qe.onCommitFiberUnmount=="function")try{qe.onCommitFiberUnmount(Zl,n)}catch{}switch(n.tag){case 5:ae||Cn(n,t);case 6:var r=re,l=Be;re=null,ht(e,t,n),re=r,Be=l,re!==null&&(Be?(e=re,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):re.removeChild(n.stateNode));break;case 18:re!==null&&(Be?(e=re,n=n.stateNode,e.nodeType===8?Oo(e.parentNode,n):e.nodeType===1&&Oo(e,n),kr(e)):Oo(re,n.stateNode));break;case 4:r=re,l=Be,re=n.stateNode.containerInfo,Be=!0,ht(e,t,n),re=r,Be=l;break;case 0:case 11:case 14:case 15:if(!ae&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var o=l,i=o.destroy;o=o.tag,i!==void 0&&(o&2||o&4)&&Fi(n,t,i),l=l.next}while(l!==r)}ht(e,t,n);break;case 1:if(!ae&&(Cn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(u){Z(n,t,u)}ht(e,t,n);break;case 21:ht(e,t,n);break;case 22:n.mode&1?(ae=(r=ae)||n.memoizedState!==null,ht(e,t,n),ae=r):ht(e,t,n);break;default:ht(e,t,n)}}function Js(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Ym),t.forEach(function(r){var l=lh.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Ae(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=i),r&=~o}if(r=l,r=J()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Jm(r/1960))-r,10e?16:e,Ct===null)var r=!1;else{if(e=Ct,Ct=null,Hl=0,z&6)throw Error(k(331));var l=z;for(z|=4,_=e.current;_!==null;){var o=_,i=o.child;if(_.flags&16){var u=o.deletions;if(u!==null){for(var s=0;sJ()-Fu?Gt(e,0):Ou|=n),xe(e,t)}function _f(e,t){t===0&&(e.mode&1?(t=Yr,Yr<<=1,!(Yr&130023424)&&(Yr=4194304)):t=1);var n=pe();e=at(e,t),e!==null&&($r(e,t,n),xe(e,n))}function rh(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),_f(e,n)}function lh(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(k(314))}r!==null&&r.delete(t),_f(e,n)}var jf;jf=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||we.current)ge=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return ge=!1,Qm(e,t,n);ge=!!(e.flags&131072)}else ge=!1,Q&&t.flags&1048576&&Lc(t,Fl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;vl(e,t),e=t.pendingProps;var l=Mn(t,ce.current);Pn(t,n),l=Nu(null,t,r,e,l,n);var o=_u();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Se(r)?(o=!0,Pl(t)):o=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,xu(t),l.updater=no,t.stateNode=l,l._reactInternals=t,Ni(t,r,e,n),t=Ri(null,t,r,!0,o,n)):(t.tag=0,Q&&o&&mu(t),de(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(vl(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=ih(r),e=Ue(r,e),l){case 0:t=ji(null,t,r,e,n);break e;case 1:t=Ks(null,t,r,e,n);break e;case 11:t=Vs(null,t,r,e,n);break e;case 14:t=Qs(null,t,r,Ue(r.type,e),n);break e}throw Error(k(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),ji(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),Ks(e,t,r,l,n);case 3:e:{if(ff(t),e===null)throw Error(k(387));r=t.pendingProps,o=t.memoizedState,l=o.element,Mc(e,t),$l(t,r,null,n);var i=t.memoizedState;if(r=i.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){l=In(Error(k(423)),t),t=Gs(e,t,r,n,l);break e}else if(r!==l){l=In(Error(k(424)),t),t=Gs(e,t,r,n,l);break e}else for(Ee=jt(t.stateNode.containerInfo.firstChild),Ce=t,Q=!0,He=null,n=Ic(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(zn(),r===l){t=ct(e,t,n);break e}de(e,t,r,n)}t=t.child}return t;case 5:return Ac(t),e===null&&Ei(t),r=t.type,l=t.pendingProps,o=e!==null?e.memoizedProps:null,i=l.children,gi(r,l)?i=null:o!==null&&gi(r,o)&&(t.flags|=32),cf(e,t),de(e,t,i,n),t.child;case 6:return e===null&&Ei(t),null;case 13:return df(e,t,n);case 4:return ku(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=$n(t,null,r,n):de(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),Vs(e,t,r,l,n);case 7:return de(e,t,t.pendingProps,n),t.child;case 8:return de(e,t,t.pendingProps.children,n),t.child;case 12:return de(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,o=t.memoizedProps,i=l.value,B(Ml,r._currentValue),r._currentValue=i,o!==null)if(Qe(o.value,i)){if(o.children===l.children&&!we.current){t=ct(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var u=o.dependencies;if(u!==null){i=o.child;for(var s=u.firstContext;s!==null;){if(s.context===r){if(o.tag===1){s=ot(-1,n&-n),s.tag=2;var a=o.updateQueue;if(a!==null){a=a.shared;var h=a.pending;h===null?s.next=s:(s.next=h.next,h.next=s),a.pending=s}}o.lanes|=n,s=o.alternate,s!==null&&(s.lanes|=n),Ci(o.return,n,t),u.lanes|=n;break}s=s.next}}else if(o.tag===10)i=o.type===t.type?null:o.child;else if(o.tag===18){if(i=o.return,i===null)throw Error(k(341));i.lanes|=n,u=i.alternate,u!==null&&(u.lanes|=n),Ci(i,n,t),i=o.sibling}else i=o.child;if(i!==null)i.return=o;else for(i=o;i!==null;){if(i===t){i=null;break}if(o=i.sibling,o!==null){o.return=i.return,i=o;break}i=i.return}o=i}de(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,Pn(t,n),l=De(l),r=r(l),t.flags|=1,de(e,t,r,n),t.child;case 14:return r=t.type,l=Ue(r,t.pendingProps),l=Ue(r.type,l),Qs(e,t,r,l,n);case 15:return sf(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),vl(e,t),t.tag=1,Se(r)?(e=!0,Pl(t)):e=!1,Pn(t,n),$c(t,r,l),Ni(t,r,l,n),Ri(null,t,r,!0,e,n);case 19:return pf(e,t,n);case 22:return af(e,t,n)}throw Error(k(156,t.tag))};function Rf(e,t){return ec(e,t)}function oh(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ze(e,t,n,r){return new oh(e,t,n,r)}function Du(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ih(e){if(typeof e=="function")return Du(e)?1:0;if(e!=null){if(e=e.$$typeof,e===nu)return 11;if(e===ru)return 14}return 2}function Ot(e,t){var n=e.alternate;return n===null?(n=ze(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function wl(e,t,n,r,l,o){var i=2;if(r=e,typeof e=="function")Du(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case hn:return Yt(n.children,l,o,t);case tu:i=8,l|=8;break;case Zo:return e=ze(12,n,t,l|2),e.elementType=Zo,e.lanes=o,e;case Jo:return e=ze(13,n,t,l),e.elementType=Jo,e.lanes=o,e;case qo:return e=ze(19,n,t,l),e.elementType=qo,e.lanes=o,e;case Da:return io(n,l,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case za:i=10;break e;case $a:i=9;break e;case nu:i=11;break e;case ru:i=14;break e;case gt:i=16,r=null;break e}throw Error(k(130,e==null?e:typeof e,""))}return t=ze(i,n,t,l),t.elementType=e,t.type=r,t.lanes=o,t}function Yt(e,t,n,r){return e=ze(7,e,r,t),e.lanes=n,e}function io(e,t,n,r){return e=ze(22,e,r,t),e.elementType=Da,e.lanes=n,e.stateNode={isHidden:!1},e}function Uo(e,t,n){return e=ze(6,e,null,t),e.lanes=n,e}function Bo(e,t,n){return t=ze(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function uh(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=xo(0),this.expirationTimes=xo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=xo(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Iu(e,t,n,r,l,o,i,u,s){return e=new uh(e,t,n,u,s),t===1?(t=1,o===!0&&(t|=8)):t=0,o=ze(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},xu(o),e}function sh(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ff)}catch(e){console.error(e)}}Ff(),La.exports=Ne;var Mf=La.exports;const Nn=Yl(Mf);var oa=Mf;Yo.createRoot=oa.createRoot,Yo.hydrateRoot=oa.hydrateRoot;var zf={exports:{}};/*! +`+o.stack}return{value:e,source:t,stack:l,digest:null}}function Io(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function _i(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Hm=typeof WeakMap=="function"?WeakMap:Map;function of(e,t,n){n=ot(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Bl||(Bl=!0,Di=r),_i(e,t)},n}function uf(e,t,n){n=ot(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){_i(e,t)}}var o=e.stateNode;return o!==null&&typeof o.componentDidCatch=="function"&&(n.callback=function(){_i(e,t),typeof r!="function"&&(Lt===null?Lt=new Set([this]):Lt.add(this));var i=t.stack;this.componentDidCatch(t.value,{componentStack:i!==null?i:""})}),n}function Bs(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Hm;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=nh.bind(null,e,t,n),t.then(e,e))}function Hs(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Ws(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=ot(-1,1),t.tag=2,Rt(n,t,1))),n.lanes|=1),e)}var Wm=dt.ReactCurrentOwner,we=!1;function de(e,t,n,r){t.child=e===null?Ic(t,null,n,r):$n(t,e.child,n,r)}function Vs(e,t,n,r,l){n=n.render;var o=t.ref;return On(t,l),r=Tu(e,t,n,r,o,l),n=_u(),e!==null&&!we?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,ct(e,t,l)):(Q&&n&&mu(t),t.flags|=1,de(e,t,r,l),t.child)}function Qs(e,t,n,r,l){if(e===null){var o=n.type;return typeof o=="function"&&!Du(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,sf(e,t,o,r,l)):(e=wl(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!(e.lanes&l)){var i=o.memoizedProps;if(n=n.compare,n=n!==null?n:Cr,n(i,r)&&e.ref===t.ref)return ct(e,t,l)}return t.flags|=1,e=Pt(o,r),e.ref=t.ref,e.return=t,t.child=e}function sf(e,t,n,r,l){if(e!==null){var o=e.memoizedProps;if(Cr(o,r)&&e.ref===t.ref)if(we=!1,t.pendingProps=r=o,(e.lanes&l)!==0)e.flags&131072&&(we=!0);else return t.lanes=e.lanes,ct(e,t,l)}return ji(e,t,n,r,l)}function af(e,t,n){var r=t.pendingProps,l=r.children,o=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},B(Nn,Ee),Ee|=n;else{if(!(n&1073741824))return e=o!==null?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,B(Nn,Ee),Ee|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=o!==null?o.baseLanes:n,B(Nn,Ee),Ee|=r}else o!==null?(r=o.baseLanes|n,t.memoizedState=null):r=n,B(Nn,Ee),Ee|=r;return de(e,t,l,n),t.child}function cf(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function ji(e,t,n,r,l){var o=xe(n)?Zt:ce.current;return o=Mn(t,o),On(t,l),n=Tu(e,t,n,r,o,l),r=_u(),e!==null&&!we?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,ct(e,t,l)):(Q&&r&&mu(t),t.flags|=1,de(e,t,n,l),t.child)}function Ks(e,t,n,r,l){if(xe(n)){var o=!0;Ol(t)}else o=!1;if(On(t,l),t.stateNode===null)vl(e,t),$c(t,n,r),Ti(t,n,r,l),r=!0;else if(e===null){var i=t.stateNode,u=t.memoizedProps;i.props=u;var s=i.context,a=n.contextType;typeof a=="object"&&a!==null?a=De(a):(a=xe(n)?Zt:ce.current,a=Mn(t,a));var m=n.getDerivedStateFromProps,h=typeof m=="function"||typeof i.getSnapshotBeforeUpdate=="function";h||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(u!==r||s!==a)&&Ds(t,i,r,a),wt=!1;var f=t.memoizedState;i.state=f,$l(t,r,i,l),s=t.memoizedState,u!==r||f!==s||Se.current||wt?(typeof m=="function"&&(Ni(t,n,m,r),s=t.memoizedState),(u=wt||$s(t,n,u,r,f,s,a))?(h||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount()),typeof i.componentDidMount=="function"&&(t.flags|=4194308)):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=a,r=u):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,Mc(e,t),u=t.memoizedProps,a=t.type===t.elementType?u:Ue(t.type,u),i.props=a,h=t.pendingProps,f=i.context,s=n.contextType,typeof s=="object"&&s!==null?s=De(s):(s=xe(n)?Zt:ce.current,s=Mn(t,s));var w=n.getDerivedStateFromProps;(m=typeof w=="function"||typeof i.getSnapshotBeforeUpdate=="function")||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(u!==h||f!==s)&&Ds(t,i,r,s),wt=!1,f=t.memoizedState,i.state=f,$l(t,r,i,l);var g=t.memoizedState;u!==h||f!==g||Se.current||wt?(typeof w=="function"&&(Ni(t,n,w,r),g=t.memoizedState),(a=wt||$s(t,n,a,r,f,g,s)||!1)?(m||typeof i.UNSAFE_componentWillUpdate!="function"&&typeof i.componentWillUpdate!="function"||(typeof i.componentWillUpdate=="function"&&i.componentWillUpdate(r,g,s),typeof i.UNSAFE_componentWillUpdate=="function"&&i.UNSAFE_componentWillUpdate(r,g,s)),typeof i.componentDidUpdate=="function"&&(t.flags|=4),typeof i.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof i.componentDidUpdate!="function"||u===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=g),i.props=r,i.state=g,i.context=s,r=a):(typeof i.componentDidUpdate!="function"||u===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Ri(e,t,n,r,o,l)}function Ri(e,t,n,r,l,o){cf(e,t);var i=(t.flags&128)!==0;if(!r&&!i)return l&&Os(t,n,!1),ct(e,t,o);r=t.stateNode,Wm.current=t;var u=i&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&i?(t.child=$n(t,e.child,null,o),t.child=$n(t,null,u,o)):de(e,t,u,o),t.memoizedState=r.state,l&&Os(t,n,!0),t.child}function ff(e){var t=e.stateNode;t.pendingContext?Ls(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Ls(e,t.context,!1),ku(e,t.containerInfo)}function Gs(e,t,n,r,l){return zn(),vu(l),t.flags|=256,de(e,t,n,r),t.child}var Li={dehydrated:null,treeContext:null,retryLane:0};function Oi(e){return{baseLanes:e,cachePool:null,transitions:null}}function df(e,t,n){var r=t.pendingProps,l=G.current,o=!1,i=(t.flags&128)!==0,u;if((u=i)||(u=e!==null&&e.memoizedState===null?!1:(l&2)!==0),u?(o=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),B(G,l&1),e===null)return Ei(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(i=r.children,e=r.fallback,o?(r=t.mode,o=t.child,i={mode:"hidden",children:i},!(r&1)&&o!==null?(o.childLanes=0,o.pendingProps=i):o=io(i,r,0,null),e=Yt(e,r,n,null),o.return=t,e.return=t,o.sibling=e,t.child=o,t.child.memoizedState=Oi(n),t.memoizedState=Li,e):Lu(t,i));if(l=e.memoizedState,l!==null&&(u=l.dehydrated,u!==null))return Vm(e,t,i,r,u,l,n);if(o){o=r.fallback,i=t.mode,l=e.child,u=l.sibling;var s={mode:"hidden",children:r.children};return!(i&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=s,t.deletions=null):(r=Pt(l,s),r.subtreeFlags=l.subtreeFlags&14680064),u!==null?o=Pt(u,o):(o=Yt(o,i,n,null),o.flags|=2),o.return=t,r.return=t,r.sibling=o,t.child=r,r=o,o=t.child,i=e.child.memoizedState,i=i===null?Oi(n):{baseLanes:i.baseLanes|n,cachePool:null,transitions:i.transitions},o.memoizedState=i,o.childLanes=e.childLanes&~n,t.memoizedState=Li,r}return o=e.child,e=o.sibling,r=Pt(o,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Lu(e,t){return t=io({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function nl(e,t,n,r){return r!==null&&vu(r),$n(t,e.child,null,n),e=Lu(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Vm(e,t,n,r,l,o,i){if(n)return t.flags&256?(t.flags&=-257,r=Io(Error(k(422))),nl(e,t,i,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(o=r.fallback,l=t.mode,r=io({mode:"visible",children:r.children},l,0,null),o=Yt(o,l,i,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&$n(t,e.child,null,i),t.child.memoizedState=Oi(i),t.memoizedState=Li,o);if(!(t.mode&1))return nl(e,t,i,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var u=r.dgst;return r=u,o=Error(k(419)),r=Io(o,r,void 0),nl(e,t,i,r)}if(u=(i&e.childLanes)!==0,we||u){if(r=ne,r!==null){switch(i&-i){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|i)?0:l,l!==0&&l!==o.retryLane&&(o.retryLane=l,at(e,l),Ve(r,e,l,-1))}return $u(),r=Io(Error(k(421))),nl(e,t,i,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=rh.bind(null,e),l._reactRetry=t,null):(e=o.treeContext,Ce=jt(l.nextSibling),Ne=t,Q=!0,He=null,e!==null&&(Pe[Fe++]=rt,Pe[Fe++]=lt,Pe[Fe++]=Jt,rt=e.id,lt=e.overflow,Jt=t),t=Lu(t,r.children),t.flags|=4096,t)}function Ys(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ci(e.return,t,n)}function Ao(e,t,n,r,l){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=l)}function pf(e,t,n){var r=t.pendingProps,l=r.revealOrder,o=r.tail;if(de(e,t,r.children,n),r=G.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ys(e,n,t);else if(e.tag===19)Ys(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(B(G,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&Dl(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),Ao(t,!1,l,n,o);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&Dl(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}Ao(t,!0,n,null,o);break;case"together":Ao(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function vl(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function ct(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),bt|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(k(153));if(t.child!==null){for(e=t.child,n=Pt(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Pt(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Qm(e,t,n){switch(t.tag){case 3:ff(t),zn();break;case 5:Ac(t);break;case 1:xe(t.type)&&Ol(t);break;case 4:ku(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;B(Ml,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(B(G,G.current&1),t.flags|=128,null):n&t.child.childLanes?df(e,t,n):(B(G,G.current&1),e=ct(e,t,n),e!==null?e.sibling:null);B(G,G.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return pf(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),B(G,G.current),r)break;return null;case 22:case 23:return t.lanes=0,af(e,t,n)}return ct(e,t,n)}var mf,Pi,hf,vf;mf=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Pi=function(){};hf=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,Kt(be.current);var o=null;switch(n){case"input":l=ei(e,l),r=ei(e,r),o=[];break;case"select":l=X({},l,{value:void 0}),r=X({},r,{value:void 0}),o=[];break;case"textarea":l=ri(e,l),r=ri(e,r),o=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Rl)}oi(n,r);var i;n=null;for(a in l)if(!r.hasOwnProperty(a)&&l.hasOwnProperty(a)&&l[a]!=null)if(a==="style"){var u=l[a];for(i in u)u.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else a!=="dangerouslySetInnerHTML"&&a!=="children"&&a!=="suppressContentEditableWarning"&&a!=="suppressHydrationWarning"&&a!=="autoFocus"&&(yr.hasOwnProperty(a)?o||(o=[]):(o=o||[]).push(a,null));for(a in r){var s=r[a];if(u=l!=null?l[a]:void 0,r.hasOwnProperty(a)&&s!==u&&(s!=null||u!=null))if(a==="style")if(u){for(i in u)!u.hasOwnProperty(i)||s&&s.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in s)s.hasOwnProperty(i)&&u[i]!==s[i]&&(n||(n={}),n[i]=s[i])}else n||(o||(o=[]),o.push(a,n)),n=s;else a==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,u=u?u.__html:void 0,s!=null&&u!==s&&(o=o||[]).push(a,s)):a==="children"?typeof s!="string"&&typeof s!="number"||(o=o||[]).push(a,""+s):a!=="suppressContentEditableWarning"&&a!=="suppressHydrationWarning"&&(yr.hasOwnProperty(a)?(s!=null&&a==="onScroll"&&W("scroll",e),o||u===s||(o=[])):(o=o||[]).push(a,s))}n&&(o=o||[]).push("style",n);var a=o;(t.updateQueue=a)&&(t.flags|=4)}};vf=function(e,t,n,r){n!==r&&(t.flags|=4)};function tr(e,t){if(!Q)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function se(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Km(e,t,n){var r=t.pendingProps;switch(hu(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return se(t),null;case 1:return xe(t.type)&&Ll(),se(t),null;case 3:return r=t.stateNode,Dn(),V(Se),V(ce),Cu(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(el(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,He!==null&&(Ui(He),He=null))),Pi(e,t),se(t),null;case 5:Eu(t);var l=Kt(Rr.current);if(n=t.type,e!==null&&t.stateNode!=null)hf(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(k(166));return se(t),null}if(e=Kt(be.current),el(t)){r=t.stateNode,n=t.type;var o=t.memoizedProps;switch(r[Je]=t,r[_r]=o,e=(t.mode&1)!==0,n){case"dialog":W("cancel",r),W("close",r);break;case"iframe":case"object":case"embed":W("load",r);break;case"video":case"audio":for(l=0;l<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=i.createElement(n,{is:r.is}):(e=i.createElement(n),n==="select"&&(i=e,r.multiple?i.multiple=!0:r.size&&(i.size=r.size))):e=i.createElementNS(e,n),e[Je]=t,e[_r]=r,mf(e,t,!1,!1),t.stateNode=e;e:{switch(i=ii(n,r),n){case"dialog":W("cancel",e),W("close",e),l=r;break;case"iframe":case"object":case"embed":W("load",e),l=r;break;case"video":case"audio":for(l=0;lAn&&(t.flags|=128,r=!0,tr(o,!1),t.lanes=4194304)}else{if(!r)if(e=Dl(i),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),tr(o,!0),o.tail===null&&o.tailMode==="hidden"&&!i.alternate&&!Q)return se(t),null}else 2*J()-o.renderingStartTime>An&&n!==1073741824&&(t.flags|=128,r=!0,tr(o,!1),t.lanes=4194304);o.isBackwards?(i.sibling=t.child,t.child=i):(n=o.last,n!==null?n.sibling=i:t.child=i,o.last=i)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=J(),t.sibling=null,n=G.current,B(G,r?n&1|2:n&1),t):(se(t),null);case 22:case 23:return zu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Ee&1073741824&&(se(t),t.subtreeFlags&6&&(t.flags|=8192)):se(t),null;case 24:return null;case 25:return null}throw Error(k(156,t.tag))}function Gm(e,t){switch(hu(t),t.tag){case 1:return xe(t.type)&&Ll(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Dn(),V(Se),V(ce),Cu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Eu(t),null;case 13:if(V(G),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(k(340));zn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(G),null;case 4:return Dn(),null;case 10:return wu(t.type._context),null;case 22:case 23:return zu(),null;case 24:return null;default:return null}}var rl=!1,ae=!1,Ym=typeof WeakSet=="function"?WeakSet:Set,_=null;function Cn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Z(e,t,r)}else n.current=null}function Fi(e,t,n){try{n()}catch(r){Z(e,t,r)}}var Xs=!1;function Xm(e,t){if(vi=Tl,e=wc(),pu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var i=0,u=-1,s=-1,a=0,m=0,h=e,f=null;t:for(;;){for(var w;h!==n||l!==0&&h.nodeType!==3||(u=i+l),h!==o||r!==0&&h.nodeType!==3||(s=i+r),h.nodeType===3&&(i+=h.nodeValue.length),(w=h.firstChild)!==null;)f=h,h=w;for(;;){if(h===e)break t;if(f===n&&++a===l&&(u=i),f===o&&++m===r&&(s=i),(w=h.nextSibling)!==null)break;h=f,f=h.parentNode}h=w}n=u===-1||s===-1?null:{start:u,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(yi={focusedElem:e,selectionRange:n},Tl=!1,_=t;_!==null;)if(t=_,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,_=e;else for(;_!==null;){t=_;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var x=g.memoizedProps,R=g.memoizedState,p=t.stateNode,c=p.getSnapshotBeforeUpdate(t.elementType===t.type?x:Ue(t.type,x),R);p.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var v=t.stateNode.containerInfo;v.nodeType===1?v.textContent="":v.nodeType===9&&v.documentElement&&v.removeChild(v.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(k(163))}}catch(S){Z(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,_=e;break}_=t.return}return g=Xs,Xs=!1,g}function mr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var o=l.destroy;l.destroy=void 0,o!==void 0&&Fi(t,n,o)}l=l.next}while(l!==r)}}function lo(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Mi(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function yf(e){var t=e.alternate;t!==null&&(e.alternate=null,yf(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Je],delete t[_r],delete t[Si],delete t[Om],delete t[Pm])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function gf(e){return e.tag===5||e.tag===3||e.tag===4}function Zs(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||gf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function zi(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Rl));else if(r!==4&&(e=e.child,e!==null))for(zi(e,t,n),e=e.sibling;e!==null;)zi(e,t,n),e=e.sibling}function $i(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for($i(e,t,n),e=e.sibling;e!==null;)$i(e,t,n),e=e.sibling}var re=null,Be=!1;function ht(e,t,n){for(n=n.child;n!==null;)wf(e,t,n),n=n.sibling}function wf(e,t,n){if(qe&&typeof qe.onCommitFiberUnmount=="function")try{qe.onCommitFiberUnmount(Zl,n)}catch{}switch(n.tag){case 5:ae||Cn(n,t);case 6:var r=re,l=Be;re=null,ht(e,t,n),re=r,Be=l,re!==null&&(Be?(e=re,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):re.removeChild(n.stateNode));break;case 18:re!==null&&(Be?(e=re,n=n.stateNode,e.nodeType===8?Po(e.parentNode,n):e.nodeType===1&&Po(e,n),kr(e)):Po(re,n.stateNode));break;case 4:r=re,l=Be,re=n.stateNode.containerInfo,Be=!0,ht(e,t,n),re=r,Be=l;break;case 0:case 11:case 14:case 15:if(!ae&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var o=l,i=o.destroy;o=o.tag,i!==void 0&&(o&2||o&4)&&Fi(n,t,i),l=l.next}while(l!==r)}ht(e,t,n);break;case 1:if(!ae&&(Cn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(u){Z(n,t,u)}ht(e,t,n);break;case 21:ht(e,t,n);break;case 22:n.mode&1?(ae=(r=ae)||n.memoizedState!==null,ht(e,t,n),ae=r):ht(e,t,n);break;default:ht(e,t,n)}}function Js(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Ym),t.forEach(function(r){var l=lh.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Ae(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=i),r&=~o}if(r=l,r=J()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Jm(r/1960))-r,10e?16:e,Ct===null)var r=!1;else{if(e=Ct,Ct=null,Hl=0,z&6)throw Error(k(331));var l=z;for(z|=4,_=e.current;_!==null;){var o=_,i=o.child;if(_.flags&16){var u=o.deletions;if(u!==null){for(var s=0;sJ()-Fu?Gt(e,0):Pu|=n),ke(e,t)}function _f(e,t){t===0&&(e.mode&1?(t=Yr,Yr<<=1,!(Yr&130023424)&&(Yr=4194304)):t=1);var n=me();e=at(e,t),e!==null&&($r(e,t,n),ke(e,n))}function rh(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),_f(e,n)}function lh(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(k(314))}r!==null&&r.delete(t),_f(e,n)}var jf;jf=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Se.current)we=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return we=!1,Qm(e,t,n);we=!!(e.flags&131072)}else we=!1,Q&&t.flags&1048576&&Lc(t,Fl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;vl(e,t),e=t.pendingProps;var l=Mn(t,ce.current);On(t,n),l=Tu(null,t,r,e,l,n);var o=_u();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,xe(r)?(o=!0,Ol(t)):o=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,xu(t),l.updater=no,t.stateNode=l,l._reactInternals=t,Ti(t,r,e,n),t=Ri(null,t,r,!0,o,n)):(t.tag=0,Q&&o&&mu(t),de(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(vl(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=ih(r),e=Ue(r,e),l){case 0:t=ji(null,t,r,e,n);break e;case 1:t=Ks(null,t,r,e,n);break e;case 11:t=Vs(null,t,r,e,n);break e;case 14:t=Qs(null,t,r,Ue(r.type,e),n);break e}throw Error(k(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),ji(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),Ks(e,t,r,l,n);case 3:e:{if(ff(t),e===null)throw Error(k(387));r=t.pendingProps,o=t.memoizedState,l=o.element,Mc(e,t),$l(t,r,null,n);var i=t.memoizedState;if(r=i.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){l=In(Error(k(423)),t),t=Gs(e,t,r,n,l);break e}else if(r!==l){l=In(Error(k(424)),t),t=Gs(e,t,r,n,l);break e}else for(Ce=jt(t.stateNode.containerInfo.firstChild),Ne=t,Q=!0,He=null,n=Ic(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(zn(),r===l){t=ct(e,t,n);break e}de(e,t,r,n)}t=t.child}return t;case 5:return Ac(t),e===null&&Ei(t),r=t.type,l=t.pendingProps,o=e!==null?e.memoizedProps:null,i=l.children,gi(r,l)?i=null:o!==null&&gi(r,o)&&(t.flags|=32),cf(e,t),de(e,t,i,n),t.child;case 6:return e===null&&Ei(t),null;case 13:return df(e,t,n);case 4:return ku(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=$n(t,null,r,n):de(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),Vs(e,t,r,l,n);case 7:return de(e,t,t.pendingProps,n),t.child;case 8:return de(e,t,t.pendingProps.children,n),t.child;case 12:return de(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,o=t.memoizedProps,i=l.value,B(Ml,r._currentValue),r._currentValue=i,o!==null)if(Qe(o.value,i)){if(o.children===l.children&&!Se.current){t=ct(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var u=o.dependencies;if(u!==null){i=o.child;for(var s=u.firstContext;s!==null;){if(s.context===r){if(o.tag===1){s=ot(-1,n&-n),s.tag=2;var a=o.updateQueue;if(a!==null){a=a.shared;var m=a.pending;m===null?s.next=s:(s.next=m.next,m.next=s),a.pending=s}}o.lanes|=n,s=o.alternate,s!==null&&(s.lanes|=n),Ci(o.return,n,t),u.lanes|=n;break}s=s.next}}else if(o.tag===10)i=o.type===t.type?null:o.child;else if(o.tag===18){if(i=o.return,i===null)throw Error(k(341));i.lanes|=n,u=i.alternate,u!==null&&(u.lanes|=n),Ci(i,n,t),i=o.sibling}else i=o.child;if(i!==null)i.return=o;else for(i=o;i!==null;){if(i===t){i=null;break}if(o=i.sibling,o!==null){o.return=i.return,i=o;break}i=i.return}o=i}de(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,On(t,n),l=De(l),r=r(l),t.flags|=1,de(e,t,r,n),t.child;case 14:return r=t.type,l=Ue(r,t.pendingProps),l=Ue(r.type,l),Qs(e,t,r,l,n);case 15:return sf(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ue(r,l),vl(e,t),t.tag=1,xe(r)?(e=!0,Ol(t)):e=!1,On(t,n),$c(t,r,l),Ti(t,r,l,n),Ri(null,t,r,!0,e,n);case 19:return pf(e,t,n);case 22:return af(e,t,n)}throw Error(k(156,t.tag))};function Rf(e,t){return ec(e,t)}function oh(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ze(e,t,n,r){return new oh(e,t,n,r)}function Du(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ih(e){if(typeof e=="function")return Du(e)?1:0;if(e!=null){if(e=e.$$typeof,e===nu)return 11;if(e===ru)return 14}return 2}function Pt(e,t){var n=e.alternate;return n===null?(n=ze(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function wl(e,t,n,r,l,o){var i=2;if(r=e,typeof e=="function")Du(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case hn:return Yt(n.children,l,o,t);case tu:i=8,l|=8;break;case Zo:return e=ze(12,n,t,l|2),e.elementType=Zo,e.lanes=o,e;case Jo:return e=ze(13,n,t,l),e.elementType=Jo,e.lanes=o,e;case qo:return e=ze(19,n,t,l),e.elementType=qo,e.lanes=o,e;case Da:return io(n,l,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case za:i=10;break e;case $a:i=9;break e;case nu:i=11;break e;case ru:i=14;break e;case gt:i=16,r=null;break e}throw Error(k(130,e==null?e:typeof e,""))}return t=ze(i,n,t,l),t.elementType=e,t.type=r,t.lanes=o,t}function Yt(e,t,n,r){return e=ze(7,e,r,t),e.lanes=n,e}function io(e,t,n,r){return e=ze(22,e,r,t),e.elementType=Da,e.lanes=n,e.stateNode={isHidden:!1},e}function Uo(e,t,n){return e=ze(6,e,null,t),e.lanes=n,e}function Bo(e,t,n){return t=ze(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function uh(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=xo(0),this.expirationTimes=xo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=xo(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Iu(e,t,n,r,l,o,i,u,s){return e=new uh(e,t,n,u,s),t===1?(t=1,o===!0&&(t|=8)):t=0,o=ze(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},xu(o),e}function sh(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ff)}catch(e){console.error(e)}}Ff(),La.exports=_e;var Mf=La.exports;const Tn=Yl(Mf);var oa=Mf;Yo.createRoot=oa.createRoot,Yo.hydrateRoot=oa.hydrateRoot;var zf={exports:{}};/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames -*/(function(e){(function(){var t={}.hasOwnProperty;function n(){for(var r=[],l=0;l=0)&&(n[l]=e[l]);return n}function ia(e){return"default"+e.charAt(0).toUpperCase()+e.substr(1)}function mh(e){var t=hh(e,"string");return typeof t=="symbol"?t:String(t)}function hh(e,t){if(typeof e!="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vh(e,t,n){var r=y.useRef(e!==void 0),l=y.useState(t),o=l[0],i=l[1],u=e!==void 0,s=r.current;return r.current=u,!u&&s&&o!==t&&i(t),[u?e:o,y.useCallback(function(a){for(var h=arguments.length,p=new Array(h>1?h-1:0),d=1;d{o.target===e&&(l(),t(o))},n+r)}function Uh(e){e.offsetHeight}const aa=e=>!e||typeof e=="function"?e:t=>{e.current=t};function Bh(e,t){const n=aa(e),r=aa(t);return l=>{n&&n(l),r&&r(l)}}function mo(e,t){return y.useMemo(()=>Bh(e,t),[e,t])}function Hh(e){return e&&"setState"in e?Nn.findDOMNode(e):e??null}const Wh=Wt.forwardRef(({onEnter:e,onEntering:t,onEntered:n,onExit:r,onExiting:l,onExited:o,addEndListener:i,children:u,childRef:s,...a},h)=>{const p=y.useRef(null),d=mo(p,s),S=T=>{d(Hh(T))},g=T=>N=>{T&&p.current&&T(p.current,N)},x=y.useCallback(g(e),[e]),R=y.useCallback(g(t),[t]),m=y.useCallback(g(n),[n]),c=y.useCallback(g(r),[r]),v=y.useCallback(g(l),[l]),w=y.useCallback(g(o),[o]),E=y.useCallback(g(i),[i]);return f.jsx(zh,{ref:h,...a,onEnter:x,onEntered:m,onEntering:R,onExit:c,onExited:w,onExiting:v,addEndListener:E,nodeRef:p,children:typeof u=="function"?(T,N)=>u(T,{...N,ref:S}):Wt.cloneElement(u,{ref:S})})}),Vh=Wh;function Qh(e){const t=y.useRef(e);return y.useEffect(()=>{t.current=e},[e]),t}function Fe(e){const t=Qh(e);return y.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const Qf=e=>y.forwardRef((t,n)=>f.jsx("div",{...t,ref:n,className:M(t.className,e)})),Kf=Qf("h4");Kf.displayName="DivStyledAsH4";const Gf=y.forwardRef(({className:e,bsPrefix:t,as:n=Kf,...r},l)=>(t=H(t,"alert-heading"),f.jsx(n,{ref:l,className:M(e,t),...r})));Gf.displayName="AlertHeading";const Kh=Gf;function Gh(){return y.useState(null)}function Yh(){const e=y.useRef(!0),t=y.useRef(()=>e.current);return y.useEffect(()=>(e.current=!0,()=>{e.current=!1}),[]),t.current}function Xh(e){const t=y.useRef(null);return y.useEffect(()=>{t.current=e}),t.current}const Zh=typeof global<"u"&&global.navigator&&global.navigator.product==="ReactNative",Jh=typeof document<"u",ca=Jh||Zh?y.useLayoutEffect:y.useEffect,qh=["as","disabled"];function bh(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}function ev(e){return!e||e.trim()==="#"}function Hu({tagName:e,disabled:t,href:n,target:r,rel:l,role:o,onClick:i,tabIndex:u=0,type:s}){e||(n!=null||r!=null||l!=null?e="a":e="button");const a={tagName:e};if(e==="button")return[{type:s||"button",disabled:t},a];const h=d=>{if((t||e==="a"&&ev(n))&&d.preventDefault(),t){d.stopPropagation();return}i==null||i(d)},p=d=>{d.key===" "&&(d.preventDefault(),h(d))};return e==="a"&&(n||(n="#"),t&&(n=void 0)),[{role:o??"button",disabled:void 0,tabIndex:t?void 0:u,href:n,target:e==="a"?r:void 0,"aria-disabled":t||void 0,rel:e==="a"?l:void 0,onClick:h,onKeyDown:p},a]}const tv=y.forwardRef((e,t)=>{let{as:n,disabled:r}=e,l=bh(e,qh);const[o,{tagName:i}]=Hu(Object.assign({tagName:n,disabled:r},l));return f.jsx(i,Object.assign({},l,o,{ref:t}))});tv.displayName="Button";const nv=["onKeyDown"];function rv(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}function lv(e){return!e||e.trim()==="#"}const Yf=y.forwardRef((e,t)=>{let{onKeyDown:n}=e,r=rv(e,nv);const[l]=Hu(Object.assign({tagName:"a"},r)),o=Fe(i=>{l.onKeyDown(i),n==null||n(i)});return lv(r.href)||r.role==="button"?f.jsx("a",Object.assign({ref:t},r,l,{onKeyDown:o})):f.jsx("a",Object.assign({ref:t},r,{onKeyDown:n}))});Yf.displayName="Anchor";const ov=Yf,Xf=y.forwardRef(({className:e,bsPrefix:t,as:n=ov,...r},l)=>(t=H(t,"alert-link"),f.jsx(n,{ref:l,className:M(e,t),...r})));Xf.displayName="AlertLink";const iv=Xf,uv={[St]:"show",[Ht]:"show"},Zf=y.forwardRef(({className:e,children:t,transitionClasses:n={},onEnter:r,...l},o)=>{const i={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,appear:!1,...l},u=y.useCallback((s,a)=>{Uh(s),r==null||r(s,a)},[r]);return f.jsx(Vh,{ref:o,addEndListener:Ah,...i,onEnter:u,childRef:t.ref,children:(s,a)=>y.cloneElement(t,{...a,className:M("fade",e,t.props.className,uv[s],n[s])})})});Zf.displayName="Fade";const Kl=Zf,sv={"aria-label":it.string,onClick:it.func,variant:it.oneOf(["white"])},Wu=y.forwardRef(({className:e,variant:t,"aria-label":n="Close",...r},l)=>f.jsx("button",{ref:l,type:"button",className:M("btn-close",t&&`btn-close-${t}`,e),"aria-label":n,...r}));Wu.displayName="CloseButton";Wu.propTypes=sv;const Jf=Wu,qf=y.forwardRef((e,t)=>{const{bsPrefix:n,show:r=!0,closeLabel:l="Close alert",closeVariant:o,className:i,children:u,variant:s="primary",onClose:a,dismissible:h,transition:p=Kl,...d}=yh(e,{show:"onClose"}),S=H(n,"alert"),g=Fe(m=>{a&&a(!1,m)}),x=p===!0?Kl:p,R=f.jsxs("div",{role:"alert",...x?void 0:d,ref:t,className:M(i,S,s&&`${S}-${s}`,h&&`${S}-dismissible`),children:[h&&f.jsx(Jf,{onClick:g,"aria-label":l,variant:o}),u]});return x?f.jsx(x,{unmountOnExit:!0,...d,ref:void 0,in:r,children:R}):r?R:null});qf.displayName="Alert";const fa=Object.assign(qf,{Link:iv,Heading:Kh}),bf=y.forwardRef(({as:e,bsPrefix:t,variant:n="primary",size:r,active:l=!1,disabled:o=!1,className:i,...u},s)=>{const a=H(t,"btn"),[h,{tagName:p}]=Hu({tagName:e,disabled:o,...u}),d=p;return f.jsx(d,{...h,...u,ref:s,disabled:o,className:M(i,a,l&&"active",n&&`${a}-${n}`,r&&`${a}-${r}`,u.href&&o&&"disabled")})});bf.displayName="Button";const tn=bf;function av(e){const t=y.useRef(e);return t.current=e,t}function ed(e){const t=av(e);y.useEffect(()=>()=>t.current(),[])}function cv(e,t){let n=0;return y.Children.map(e,r=>y.isValidElement(r)?t(r,n++):r)}function fv(e,t){return y.Children.toArray(e).some(n=>y.isValidElement(n)&&n.type===t)}function dv({as:e,bsPrefix:t,className:n,...r}){t=H(t,"col");const l=Df(),o=If(),i=[],u=[];return l.forEach(s=>{const a=r[s];delete r[s];let h,p,d;typeof a=="object"&&a!=null?{span:h,offset:p,order:d}=a:h=a;const S=s!==o?`-${s}`:"";h&&i.push(h===!0?`${t}${S}`:`${t}${S}-${h}`),d!=null&&u.push(`order${S}-${d}`),p!=null&&u.push(`offset${S}-${p}`)}),[{...r,className:M(n,...i,...u)},{as:e,bsPrefix:t,spans:i}]}const td=y.forwardRef((e,t)=>{const[{className:n,...r},{as:l="div",bsPrefix:o,spans:i}]=dv(e);return f.jsx(l,{...r,ref:t,className:M(n,!i.length&&o)})});td.displayName="Col";const Vu=td,nd=y.forwardRef(({bsPrefix:e,fluid:t=!1,as:n="div",className:r,...l},o)=>{const i=H(e,"container"),u=typeof t=="string"?`-${t}`:"-fluid";return f.jsx(n,{ref:o,...l,className:M(r,t?`${i}${u}`:i)})});nd.displayName="Container";const pv=nd;var mv=Function.prototype.bind.call(Function.prototype.call,[].slice);function dn(e,t){return mv(e.querySelectorAll(t))}function da(e,t){if(e.contains)return e.contains(t);if(e.compareDocumentPosition)return e===t||!!(e.compareDocumentPosition(t)&16)}const hv="data-rr-ui-";function vv(e){return`${hv}${e}`}const rd=y.createContext(Vn?window:void 0);rd.Provider;function Qu(){return y.useContext(rd)}const yv={type:it.string,tooltip:it.bool,as:it.elementType},Ku=y.forwardRef(({as:e="div",className:t,type:n="valid",tooltip:r=!1,...l},o)=>f.jsx(e,{...l,ref:o,className:M(t,`${n}-${r?"tooltip":"feedback"}`)}));Ku.displayName="Feedback";Ku.propTypes=yv;const ld=Ku,gv=y.createContext({}),ft=gv,od=y.forwardRef(({id:e,bsPrefix:t,className:n,type:r="checkbox",isValid:l=!1,isInvalid:o=!1,as:i="input",...u},s)=>{const{controlId:a}=y.useContext(ft);return t=H(t,"form-check-input"),f.jsx(i,{...u,ref:s,type:r,id:e||a,className:M(n,t,l&&"is-valid",o&&"is-invalid")})});od.displayName="FormCheckInput";const id=od,ud=y.forwardRef(({bsPrefix:e,className:t,htmlFor:n,...r},l)=>{const{controlId:o}=y.useContext(ft);return e=H(e,"form-check-label"),f.jsx("label",{...r,ref:l,htmlFor:n||o,className:M(t,e)})});ud.displayName="FormCheckLabel";const Gi=ud,sd=y.forwardRef(({id:e,bsPrefix:t,bsSwitchPrefix:n,inline:r=!1,reverse:l=!1,disabled:o=!1,isValid:i=!1,isInvalid:u=!1,feedbackTooltip:s=!1,feedback:a,feedbackType:h,className:p,style:d,title:S="",type:g="checkbox",label:x,children:R,as:m="input",...c},v)=>{t=H(t,"form-check"),n=H(n,"form-switch");const{controlId:w}=y.useContext(ft),E=y.useMemo(()=>({controlId:e||w}),[w,e]),T=!R&&x!=null&&x!==!1||fv(R,Gi),N=f.jsx(id,{...c,type:g==="switch"?"checkbox":g,ref:v,isValid:i,isInvalid:u,disabled:o,as:m});return f.jsx(ft.Provider,{value:E,children:f.jsx("div",{style:d,className:M(p,T&&t,r&&`${t}-inline`,l&&`${t}-reverse`,g==="switch"&&n),children:R||f.jsxs(f.Fragment,{children:[N,T&&f.jsx(Gi,{title:S,children:x}),a&&f.jsx(ld,{type:h,tooltip:s,children:a})]})})})});sd.displayName="FormCheck";const Gl=Object.assign(sd,{Input:id,Label:Gi}),ad=y.forwardRef(({bsPrefix:e,type:t,size:n,htmlSize:r,id:l,className:o,isValid:i=!1,isInvalid:u=!1,plaintext:s,readOnly:a,as:h="input",...p},d)=>{const{controlId:S}=y.useContext(ft);return e=H(e,"form-control"),f.jsx(h,{...p,type:t,size:r,ref:d,readOnly:a,id:l||S,className:M(o,s?`${e}-plaintext`:e,n&&`${e}-${n}`,t==="color"&&`${e}-color`,i&&"is-valid",u&&"is-invalid")})});ad.displayName="FormControl";const wv=Object.assign(ad,{Feedback:ld}),cd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"form-floating"),f.jsx(n,{ref:l,className:M(e,t),...r})));cd.displayName="FormFloating";const Sv=cd,fd=y.forwardRef(({controlId:e,as:t="div",...n},r)=>{const l=y.useMemo(()=>({controlId:e}),[e]);return f.jsx(ft.Provider,{value:l,children:f.jsx(t,{...n,ref:r})})});fd.displayName="FormGroup";const dd=fd,pd=y.forwardRef(({as:e="label",bsPrefix:t,column:n=!1,visuallyHidden:r=!1,className:l,htmlFor:o,...i},u)=>{const{controlId:s}=y.useContext(ft);t=H(t,"form-label");let a="col-form-label";typeof n=="string"&&(a=`${a} ${a}-${n}`);const h=M(l,t,r&&"visually-hidden",n&&a);return o=o||s,n?f.jsx(Vu,{ref:u,as:"label",className:h,htmlFor:o,...i}):f.jsx(e,{ref:u,className:h,htmlFor:o,...i})});pd.displayName="FormLabel";const xv=pd,md=y.forwardRef(({bsPrefix:e,className:t,id:n,...r},l)=>{const{controlId:o}=y.useContext(ft);return e=H(e,"form-range"),f.jsx("input",{...r,type:"range",ref:l,className:M(t,e),id:n||o})});md.displayName="FormRange";const kv=md,hd=y.forwardRef(({bsPrefix:e,size:t,htmlSize:n,className:r,isValid:l=!1,isInvalid:o=!1,id:i,...u},s)=>{const{controlId:a}=y.useContext(ft);return e=H(e,"form-select"),f.jsx("select",{...u,size:n,ref:s,className:M(r,e,t&&`${e}-${t}`,l&&"is-valid",o&&"is-invalid"),id:i||a})});hd.displayName="FormSelect";const Ev=hd,vd=y.forwardRef(({bsPrefix:e,className:t,as:n="small",muted:r,...l},o)=>(e=H(e,"form-text"),f.jsx(n,{...l,ref:o,className:M(t,e,r&&"text-muted")})));vd.displayName="FormText";const Cv=vd,yd=y.forwardRef((e,t)=>f.jsx(Gl,{...e,ref:t,type:"switch"}));yd.displayName="Switch";const Tv=Object.assign(yd,{Input:Gl.Input,Label:Gl.Label}),gd=y.forwardRef(({bsPrefix:e,className:t,children:n,controlId:r,label:l,...o},i)=>(e=H(e,"form-floating"),f.jsxs(dd,{ref:i,className:M(t,e),controlId:r,...o,children:[n,f.jsx("label",{htmlFor:r,children:l})]})));gd.displayName="FloatingLabel";const Nv=gd,_v={_ref:it.any,validated:it.bool,as:it.elementType},Gu=y.forwardRef(({className:e,validated:t,as:n="form",...r},l)=>f.jsx(n,{...r,ref:l,className:M(e,t&&"was-validated")}));Gu.displayName="Form";Gu.propTypes=_v;const Me=Object.assign(Gu,{Group:dd,Control:wv,Floating:Sv,Check:Gl,Switch:Tv,Label:xv,Text:Cv,Range:kv,Select:Ev,FloatingLabel:Nv});var ul;function pa(e){if((!ul&&ul!==0||e)&&Vn){var t=document.createElement("div");t.style.position="absolute",t.style.top="-9999px",t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t),ul=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return ul}function Wo(e){e===void 0&&(e=po());try{var t=e.activeElement;return!t||!t.nodeName?null:t}catch{return e.body}}function jv(e=document){const t=e.defaultView;return Math.abs(t.innerWidth-e.documentElement.clientWidth)}const ma=vv("modal-open");class Rv{constructor({ownerDocument:t,handleContainerOverflow:n=!0,isRTL:r=!1}={}){this.handleContainerOverflow=n,this.isRTL=r,this.modals=[],this.ownerDocument=t}getScrollbarWidth(){return jv(this.ownerDocument)}getElement(){return(this.ownerDocument||document).body}setModalAttributes(t){}removeModalAttributes(t){}setContainerStyle(t){const n={overflow:"hidden"},r=this.isRTL?"paddingLeft":"paddingRight",l=this.getElement();t.style={overflow:l.style.overflow,[r]:l.style[r]},t.scrollBarWidth&&(n[r]=`${parseInt(Xt(l,r)||"0",10)+t.scrollBarWidth}px`),l.setAttribute(ma,""),Xt(l,n)}reset(){[...this.modals].forEach(t=>this.remove(t))}removeContainerStyle(t){const n=this.getElement();n.removeAttribute(ma),Object.assign(n.style,t.style)}add(t){let n=this.modals.indexOf(t);return n!==-1||(n=this.modals.length,this.modals.push(t),this.setModalAttributes(t),n!==0)||(this.state={scrollBarWidth:this.getScrollbarWidth(),style:{}},this.handleContainerOverflow&&this.setContainerStyle(this.state)),n}remove(t){const n=this.modals.indexOf(t);n!==-1&&(this.modals.splice(n,1),!this.modals.length&&this.handleContainerOverflow&&this.removeContainerStyle(this.state),this.removeModalAttributes(t))}isTopModal(t){return!!this.modals.length&&this.modals[this.modals.length-1]===t}}const Yu=Rv,Vo=(e,t)=>Vn?e==null?(t||po()).body:(typeof e=="function"&&(e=e()),e&&"current"in e&&(e=e.current),e&&("nodeType"in e||e.getBoundingClientRect)?e:null):null;function Lv(e,t){const n=Qu(),[r,l]=y.useState(()=>Vo(e,n==null?void 0:n.document));if(!r){const o=Vo(e);o&&l(o)}return y.useEffect(()=>{t&&r&&t(r)},[t,r]),y.useEffect(()=>{const o=Vo(e);o!==r&&l(o)},[e,r]),r}function Pv({children:e,in:t,onExited:n,mountOnEnter:r,unmountOnExit:l}){const o=y.useRef(null),i=y.useRef(t),u=Fe(n);y.useEffect(()=>{t?i.current=!0:u(o.current)},[t,u]);const s=mo(o,e.ref),a=y.cloneElement(e,{ref:s});return t?a:l||!i.current&&r?null:a}function Ov({in:e,onTransition:t}){const n=y.useRef(null),r=y.useRef(!0),l=Fe(t);return ca(()=>{if(!n.current)return;let o=!1;return l({in:e,element:n.current,initial:r.current,isStale:()=>o}),()=>{o=!0}},[e,l]),ca(()=>(r.current=!1,()=>{r.current=!0}),[]),n}function Fv({children:e,in:t,onExited:n,onEntered:r,transition:l}){const[o,i]=y.useState(!t);t&&o&&i(!1);const u=Ov({in:!!t,onTransition:a=>{const h=()=>{a.isStale()||(a.in?r==null||r(a.element,a.initial):(i(!0),n==null||n(a.element)))};Promise.resolve(l(a)).then(h,p=>{throw a.in||i(!0),p})}}),s=mo(u,e.ref);return o&&!t?null:y.cloneElement(e,{ref:s})}function ha(e,t,n){return e?f.jsx(e,Object.assign({},n)):t?f.jsx(Fv,Object.assign({},n,{transition:t})):f.jsx(Pv,Object.assign({},n))}function Mv(e){return e.code==="Escape"||e.keyCode===27}const zv=["show","role","className","style","children","backdrop","keyboard","onBackdropClick","onEscapeKeyDown","transition","runTransition","backdropTransition","runBackdropTransition","autoFocus","enforceFocus","restoreFocus","restoreFocusOptions","renderDialog","renderBackdrop","manager","container","onShow","onHide","onExit","onExited","onExiting","onEnter","onEntering","onEntered"];function $v(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}let Qo;function Dv(e){return Qo||(Qo=new Yu({ownerDocument:e==null?void 0:e.document})),Qo}function Iv(e){const t=Qu(),n=e||Dv(t),r=y.useRef({dialog:null,backdrop:null});return Object.assign(r.current,{add:()=>n.add(r.current),remove:()=>n.remove(r.current),isTopModal:()=>n.isTopModal(r.current),setDialogRef:y.useCallback(l=>{r.current.dialog=l},[]),setBackdropRef:y.useCallback(l=>{r.current.backdrop=l},[])})}const wd=y.forwardRef((e,t)=>{let{show:n=!1,role:r="dialog",className:l,style:o,children:i,backdrop:u=!0,keyboard:s=!0,onBackdropClick:a,onEscapeKeyDown:h,transition:p,runTransition:d,backdropTransition:S,runBackdropTransition:g,autoFocus:x=!0,enforceFocus:R=!0,restoreFocus:m=!0,restoreFocusOptions:c,renderDialog:v,renderBackdrop:w=K=>f.jsx("div",Object.assign({},K)),manager:E,container:T,onShow:N,onHide:j=()=>{},onExit:U,onExited:O,onExiting:ie,onEnter:Ke,onEntering:Ge,onEntered:on}=e,Qn=$v(e,zv);const je=Qu(),Ye=Lv(T),C=Iv(E),L=Yh(),P=Xh(n),[D,A]=y.useState(!n),fe=y.useRef(null);y.useImperativeHandle(t,()=>C,[C]),Vn&&!P&&n&&(fe.current=Wo(je==null?void 0:je.document)),n&&D&&A(!1);const Re=Fe(()=>{if(C.add(),sn.current=Ql(document,"keydown",ho),un.current=Ql(document,"focus",()=>setTimeout(Le),!0),N&&N(),x){var K,Hr;const Yn=Wo((K=(Hr=C.dialog)==null?void 0:Hr.ownerDocument)!=null?K:je==null?void 0:je.document);C.dialog&&Yn&&!da(C.dialog,Yn)&&(fe.current=Yn,C.dialog.focus())}}),et=Fe(()=>{if(C.remove(),sn.current==null||sn.current(),un.current==null||un.current(),m){var K;(K=fe.current)==null||K.focus==null||K.focus(c),fe.current=null}});y.useEffect(()=>{!n||!Ye||Re()},[n,Ye,Re]),y.useEffect(()=>{D&&et()},[D,et]),ed(()=>{et()});const Le=Fe(()=>{if(!R||!L()||!C.isTopModal())return;const K=Wo(je==null?void 0:je.document);C.dialog&&K&&!da(C.dialog,K)&&C.dialog.focus()}),mt=Fe(K=>{K.target===K.currentTarget&&(a==null||a(K),u===!0&&j())}),ho=Fe(K=>{s&&Mv(K)&&C.isTopModal()&&(h==null||h(K),K.defaultPrevented||j())}),un=y.useRef(),sn=y.useRef(),Kn=(...K)=>{A(!0),O==null||O(...K)};if(!Ye)return null;const Br=Object.assign({role:r,ref:C.setDialogRef,"aria-modal":r==="dialog"?!0:void 0},Qn,{style:o,className:l,tabIndex:-1});let Gn=v?v(Br):f.jsx("div",Object.assign({},Br,{children:y.cloneElement(i,{role:"document"})}));Gn=ha(p,d,{unmountOnExit:!0,mountOnEnter:!0,appear:!0,in:!!n,onExit:U,onExiting:ie,onExited:Kn,onEnter:Ke,onEntering:Ge,onEntered:on,children:Gn});let It=null;return u&&(It=w({ref:C.setBackdropRef,onClick:mt}),It=ha(S,g,{in:!!n,appear:!0,mountOnEnter:!0,unmountOnExit:!0,children:It})),f.jsx(f.Fragment,{children:Nn.createPortal(f.jsxs(f.Fragment,{children:[It,Gn]}),Ye)})});wd.displayName="Modal";const Av=Object.assign(wd,{Manager:Yu});function Uv(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function Bv(e,t){e.classList?e.classList.add(t):Uv(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function va(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function Hv(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=va(e.className,t):e.setAttribute("class",va(e.className&&e.className.baseVal||"",t))}const pn={FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top",NAVBAR_TOGGLER:".navbar-toggler"};class Wv extends Yu{adjustAndStore(t,n,r){const l=n.style[t];n.dataset[t]=l,Xt(n,{[t]:`${parseFloat(Xt(n,t))+r}px`})}restore(t,n){const r=n.dataset[t];r!==void 0&&(delete n.dataset[t],Xt(n,{[t]:r}))}setContainerStyle(t){super.setContainerStyle(t);const n=this.getElement();if(Bv(n,"modal-open"),!t.scrollBarWidth)return;const r=this.isRTL?"paddingLeft":"paddingRight",l=this.isRTL?"marginLeft":"marginRight";dn(n,pn.FIXED_CONTENT).forEach(o=>this.adjustAndStore(r,o,t.scrollBarWidth)),dn(n,pn.STICKY_CONTENT).forEach(o=>this.adjustAndStore(l,o,-t.scrollBarWidth)),dn(n,pn.NAVBAR_TOGGLER).forEach(o=>this.adjustAndStore(l,o,t.scrollBarWidth))}removeContainerStyle(t){super.removeContainerStyle(t);const n=this.getElement();Hv(n,"modal-open");const r=this.isRTL?"paddingLeft":"paddingRight",l=this.isRTL?"marginLeft":"marginRight";dn(n,pn.FIXED_CONTENT).forEach(o=>this.restore(r,o)),dn(n,pn.STICKY_CONTENT).forEach(o=>this.restore(l,o)),dn(n,pn.NAVBAR_TOGGLER).forEach(o=>this.restore(l,o))}}let Ko;function Vv(e){return Ko||(Ko=new Wv(e)),Ko}const Sd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"modal-body"),f.jsx(n,{ref:l,className:M(e,t),...r})));Sd.displayName="ModalBody";const Qv=Sd,Kv=y.createContext({onHide(){}}),xd=Kv,kd=y.forwardRef(({bsPrefix:e,className:t,contentClassName:n,centered:r,size:l,fullscreen:o,children:i,scrollable:u,...s},a)=>{e=H(e,"modal");const h=`${e}-dialog`,p=typeof o=="string"?`${e}-fullscreen-${o}`:`${e}-fullscreen`;return f.jsx("div",{...s,ref:a,className:M(h,t,l&&`${e}-${l}`,r&&`${h}-centered`,u&&`${h}-scrollable`,o&&p),children:f.jsx("div",{className:M(`${e}-content`,n),children:i})})});kd.displayName="ModalDialog";const Ed=kd,Cd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"modal-footer"),f.jsx(n,{ref:l,className:M(e,t),...r})));Cd.displayName="ModalFooter";const Gv=Cd,Yv=y.forwardRef(({closeLabel:e="Close",closeVariant:t,closeButton:n=!1,onHide:r,children:l,...o},i)=>{const u=y.useContext(xd),s=Fe(()=>{u==null||u.onHide(),r==null||r()});return f.jsxs("div",{ref:i,...o,children:[l,n&&f.jsx(Jf,{"aria-label":e,variant:t,onClick:s})]})}),Xv=Yv,Td=y.forwardRef(({bsPrefix:e,className:t,closeLabel:n="Close",closeButton:r=!1,...l},o)=>(e=H(e,"modal-header"),f.jsx(Xv,{ref:o,...l,className:M(t,e),closeLabel:n,closeButton:r})));Td.displayName="ModalHeader";const Zv=Td,Jv=Qf("h4"),Nd=y.forwardRef(({className:e,bsPrefix:t,as:n=Jv,...r},l)=>(t=H(t,"modal-title"),f.jsx(n,{ref:l,className:M(e,t),...r})));Nd.displayName="ModalTitle";const qv=Nd;function bv(e){return f.jsx(Kl,{...e,timeout:null})}function ey(e){return f.jsx(Kl,{...e,timeout:null})}const _d=y.forwardRef(({bsPrefix:e,className:t,style:n,dialogClassName:r,contentClassName:l,children:o,dialogAs:i=Ed,"aria-labelledby":u,"aria-describedby":s,"aria-label":a,show:h=!1,animation:p=!0,backdrop:d=!0,keyboard:S=!0,onEscapeKeyDown:g,onShow:x,onHide:R,container:m,autoFocus:c=!0,enforceFocus:v=!0,restoreFocus:w=!0,restoreFocusOptions:E,onEntered:T,onExit:N,onExiting:j,onEnter:U,onEntering:O,onExited:ie,backdropClassName:Ke,manager:Ge,...on},Qn)=>{const[je,Ye]=y.useState({}),[C,L]=y.useState(!1),P=y.useRef(!1),D=y.useRef(!1),A=y.useRef(null),[fe,Re]=Gh(),et=mo(Qn,Re),Le=Fe(R),mt=xh();e=H(e,"modal");const ho=y.useMemo(()=>({onHide:Le}),[Le]);function un(){return Ge||Vv({isRTL:mt})}function sn($){if(!Vn)return;const an=un().getScrollbarWidth()>0,Zu=$.scrollHeight>po($).documentElement.clientHeight;Ye({paddingRight:an&&!Zu?pa():void 0,paddingLeft:!an&&Zu?pa():void 0})}const Kn=Fe(()=>{fe&&sn(fe.dialog)});ed(()=>{Ki(window,"resize",Kn),A.current==null||A.current()});const Br=()=>{P.current=!0},Gn=$=>{P.current&&fe&&$.target===fe.dialog&&(D.current=!0),P.current=!1},It=()=>{L(!0),A.current=Vf(fe.dialog,()=>{L(!1)})},K=$=>{$.target===$.currentTarget&&It()},Hr=$=>{if(d==="static"){K($);return}if(D.current||$.target!==$.currentTarget){D.current=!1;return}R==null||R()},Yn=$=>{S?g==null||g($):($.preventDefault(),d==="static"&&It())},Dd=($,an)=>{$&&sn($),U==null||U($,an)},Id=$=>{A.current==null||A.current(),N==null||N($)},Ad=($,an)=>{O==null||O($,an),Wf(window,"resize",Kn)},Ud=$=>{$&&($.style.display=""),ie==null||ie($),Ki(window,"resize",Kn)},Bd=y.useCallback($=>f.jsx("div",{...$,className:M(`${e}-backdrop`,Ke,!p&&"show")}),[p,Ke,e]),Xu={...n,...je};Xu.display="block";const Hd=$=>f.jsx("div",{role:"dialog",...$,style:Xu,className:M(t,e,C&&`${e}-static`,!p&&"show"),onClick:d?Hr:void 0,onMouseUp:Gn,"aria-label":a,"aria-labelledby":u,"aria-describedby":s,children:f.jsx(i,{...on,onMouseDown:Br,className:r,contentClassName:l,children:o})});return f.jsx(xd.Provider,{value:ho,children:f.jsx(Av,{show:h,ref:et,backdrop:d,container:m,keyboard:!0,autoFocus:c,enforceFocus:v,restoreFocus:w,restoreFocusOptions:E,onEscapeKeyDown:Yn,onShow:x,onHide:R,onEnter:Dd,onEntering:Ad,onEntered:T,onExit:Id,onExiting:j,onExited:Ud,manager:un(),transition:p?bv:void 0,backdropTransition:p?ey:void 0,renderBackdrop:Bd,renderDialog:Hd})})});_d.displayName="Modal";const ye=Object.assign(_d,{Body:Qv,Header:Zv,Title:qv,Footer:Gv,Dialog:Ed,TRANSITION_DURATION:300,BACKDROP_TRANSITION_DURATION:150}),ya=1e3;function ty(e,t,n){const r=(e-t)/(n-t)*100;return Math.round(r*ya)/ya}function ga({min:e,now:t,max:n,label:r,visuallyHidden:l,striped:o,animated:i,className:u,style:s,variant:a,bsPrefix:h,...p},d){return f.jsx("div",{ref:d,...p,role:"progressbar",className:M(u,`${h}-bar`,{[`bg-${a}`]:a,[`${h}-bar-animated`]:i,[`${h}-bar-striped`]:i||o}),style:{width:`${ty(t,e,n)}%`,...s},"aria-valuenow":t,"aria-valuemin":e,"aria-valuemax":n,children:l?f.jsx("span",{className:"visually-hidden",children:r}):r})}const jd=y.forwardRef(({isChild:e=!1,...t},n)=>{const r={min:0,max:100,animated:!1,visuallyHidden:!1,striped:!1,...t};if(r.bsPrefix=H(r.bsPrefix,"progress"),e)return ga(r,n);const{min:l,now:o,max:i,label:u,visuallyHidden:s,striped:a,animated:h,bsPrefix:p,variant:d,className:S,children:g,...x}=r;return f.jsx("div",{ref:n,...x,className:M(S,p),children:g?cv(g,R=>y.cloneElement(R,{isChild:!0})):ga({min:l,now:o,max:i,label:u,visuallyHidden:s,striped:a,animated:h,bsPrefix:p,variant:d},n)})});jd.displayName="ProgressBar";const ny=jd,Rd=y.forwardRef(({bsPrefix:e,className:t,as:n="div",...r},l)=>{const o=H(e,"row"),i=Df(),u=If(),s=`${o}-cols`,a=[];return i.forEach(h=>{const p=r[h];delete r[h];let d;p!=null&&typeof p=="object"?{cols:d}=p:d=p;const S=h!==u?`-${h}`:"";d!=null&&a.push(`${s}${S}-${d}`)}),f.jsx(n,{ref:l,...r,className:M(t,o,...a)})});Rd.displayName="Row";const Ld=Rd,Pd=y.forwardRef(({bsPrefix:e,variant:t,animation:n="border",size:r,as:l="div",className:o,...i},u)=>{e=H(e,"spinner");const s=`${e}-${n}`;return f.jsx(l,{ref:u,...i,className:M(o,s,r&&`${s}-${r}`,t&&`text-${t}`)})});Pd.displayName="Spinner";const Un=Pd,Sl="initializing",wa="paused",Od="live",ry="error",ln=y.createContext({listTorrents:()=>{throw new Error("Function not implemented.")},getTorrentDetails:()=>{throw new Error("Function not implemented.")},getTorrentStats:()=>{throw new Error("Function not implemented.")},uploadTorrent:()=>{throw new Error("Function not implemented.")},pause:()=>{throw new Error("Function not implemented.")},start:()=>{throw new Error("Function not implemented.")},forget:()=>{throw new Error("Function not implemented.")},delete:()=>{throw new Error("Function not implemented.")}}),Ur=y.createContext({setCloseableError:e=>{},refreshTorrents:()=>{}}),Fd=y.createContext({refresh:()=>{}}),Go=({className:e,onClick:t,disabled:n,color:r})=>{const l=o=>{o.stopPropagation(),!n&&t()};return f.jsx("a",{className:`bi ${e} p-1`,onClick:l,href:"#"})},ly=({id:e,show:t,onHide:n})=>{if(!t)return null;const[r,l]=y.useState(!1),[o,i]=y.useState(null),[u,s]=y.useState(!1),a=y.useContext(Ur),h=y.useContext(ln),p=()=>{l(!1),i(null),s(!1),n()},d=()=>{s(!0),(r?h.delete:h.forget)(e).then(()=>{a.refreshTorrents(),p()}).catch(g=>{i({text:`Error deleting torrent id=${e}`,details:g}),s(!1)})};return f.jsxs(ye,{show:t,onHide:p,children:[f.jsx(ye.Header,{closeButton:!0,children:"Delete torrent"}),f.jsxs(ye.Body,{children:[f.jsx(Me,{children:f.jsx(Me.Group,{controlId:"delete-torrent",children:f.jsx(Me.Check,{type:"checkbox",label:"Also delete files",checked:r,onChange:()=>l(!r)})})}),o&&f.jsx(Mr,{error:o})]}),f.jsxs(ye.Footer,{children:[u&&f.jsx(Un,{}),f.jsx(tn,{variant:"primary",onClick:d,disabled:u,children:"OK"}),f.jsx(tn,{variant:"secondary",onClick:p,children:"Cancel"})]})]})},oy=({id:e,statsResponse:t})=>{let n=t.state,[r,l]=y.useState(!1),[o,i]=y.useState(!1),u=y.useContext(Fd);const s=n=="live",a=n=="paused"||n=="error",h=y.useContext(Ur),p=y.useContext(ln),d=()=>{l(!0),p.start(e).then(()=>{u.refresh()},R=>{h.setCloseableError({text:`Error starting torrent id=${e}`,details:R})}).finally(()=>l(!1))},S=()=>{l(!0),p.pause(e).then(()=>{u.refresh()},R=>{h.setCloseableError({text:`Error pausing torrent id=${e}`,details:R})}).finally(()=>l(!1))},g=()=>{l(!0),i(!0)},x=()=>{l(!1),i(!1)};return f.jsx(Ld,{children:f.jsxs(Vu,{children:[a&&f.jsx(Go,{className:"bi-play-circle",onClick:d,disabled:r,color:"success"}),s&&f.jsx(Go,{className:"bi-pause-circle",onClick:S,disabled:r}),f.jsx(Go,{className:"bi-x-circle",onClick:g,disabled:r,color:"danger"}),f.jsx(ly,{id:e,show:o,onHide:x})]})})},iy=({id:e,detailsResponse:t,statsResponse:n})=>{const r=(n==null?void 0:n.state)??"",l=n==null?void 0:n.error,o=(n==null?void 0:n.total_bytes)??1,i=(n==null?void 0:n.progress_bytes)??0,u=(n==null?void 0:n.finished)||!1,s=l?100:i/o*100,a=(r==Sl||r==Od)&&!u,h=l?"Error":`${s.toFixed(2)}%`,p=l?"danger":u?"success":r==Sl?"warning":"primary",d=()=>{var R;let x=(R=n==null?void 0:n.live)==null?void 0:R.snapshot.peer_stats;return x?`${x.live} / ${x.seen}`:""},S=()=>{var x;if(u)return"Completed";switch(r){case wa:return"Paused";case Sl:return"Checking files";case ry:return"Error"}return((x=n==null?void 0:n.live)==null?void 0:x.download_speed.human_readable)??"N/A"};let g=[];return l?g.push("bg-warning"):e%2==0&&g.push("bg-light"),f.jsxs(Ld,{className:g.join(" "),children:[f.jsx(vt,{size:3,label:"Name",children:t?f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"text-truncate",children:yy(t)}),l&&f.jsxs("p",{className:"text-danger",children:[f.jsx("strong",{children:"Error:"})," ",l]})]}):f.jsx(Un,{})}),n?f.jsxs(f.Fragment,{children:[f.jsx(vt,{label:"Size",children:`${zd(o)} `}),f.jsx(vt,{size:2,label:(r==wa,"Progress"),children:f.jsx(ny,{now:s,label:h,animated:a,variant:p})}),f.jsx(vt,{size:2,label:"Down Speed",children:S()}),f.jsx(vt,{label:"ETA",children:gy(n)}),f.jsx(vt,{size:2,label:"Peers",children:d()}),f.jsx(vt,{label:"Actions",children:f.jsx(oy,{id:e,statsResponse:n})})]}):f.jsx(vt,{label:"Loading stats",size:8,children:f.jsx(Un,{})})]})},vt=({size:e,label:t,children:n})=>f.jsxs(Vu,{md:e||1,className:"py-3",children:[f.jsx("div",{className:"fw-bold",children:t}),n]}),uy=({id:e,torrent:t})=>{const[n,r]=y.useState(null),[l,o]=y.useState(null),[i,u]=y.useState(0),s=y.useContext(ln),a=()=>{u(i+1)};return y.useEffect(()=>{if(n===null)return Sy(async()=>{await s.getTorrentDetails(t.id).then(r)},1e3)},[n]),y.useEffect(()=>$d(async()=>s.getTorrentStats(t.id).then(g=>(o(g),g)).then(g=>g.finished?1e4:g.state==Sl||g.state==Od?1e3:1e4,()=>1e4),0),[i]),f.jsx(Fd.Provider,{value:{refresh:a},children:f.jsx(iy,{id:e,detailsResponse:n,statsResponse:l})})},sy=e=>{if(e.torrents===null&&e.loading)return f.jsx(Un,{});if(e.torrents!==null)return e.torrents.length===0?f.jsx("div",{className:"text-center",children:f.jsx("p",{children:"No existing torrents found. Add them through buttons below."})}):f.jsx(f.Fragment,{children:e.torrents.map(t=>f.jsx(uy,{id:t.id,torrent:t},t.id))})},ay=()=>{const[e,t]=y.useState(null),[n,r]=y.useState(null),[l,o]=y.useState(null),[i,u]=y.useState(!1),s=y.useContext(ln),a=async()=>{u(!0);let p=await s.listTorrents().finally(()=>u(!1));o(p.torrents)};y.useEffect(()=>$d(async()=>a().then(()=>(r(null),5e3),p=>(r({text:"Error refreshing torrents",details:p}),console.error(p),5e3)),0),[]);const h={setCloseableError:t,refreshTorrents:a};return f.jsx(Ur.Provider,{value:h,children:f.jsxs("div",{className:"text-center",children:[f.jsx("h1",{className:"mt-3 mb-4",children:"rqbit web 4.0.0-beta.0"}),f.jsx(vy,{closeableError:e,otherError:n,torrents:l,torrentsLoading:i})]})})},cy=e=>{let{details:t}=e;return t?f.jsxs(f.Fragment,{children:[f.jsx("p",{children:t.status&&f.jsxs("strong",{children:[t.status," ",t.statusText]})}),f.jsx("pre",{children:t.text})]}):null},Mr=e=>{let{error:t,remove:n}=e;return t==null?null:f.jsxs(fa,{variant:"danger",onClose:n,dismissible:n!=null,children:[f.jsx(fa.Heading,{children:t.text}),f.jsx(cy,{details:t.details})]})},Md=({buttonText:e,onClick:t,data:n,resetData:r,variant:l})=>{const[o,i]=y.useState(!1),[u,s]=y.useState(null),[a,h]=y.useState(null),p=y.useContext(ln);y.useEffect(()=>{if(n===null)return;let S=setTimeout(async()=>{i(!0);try{const g=await p.uploadTorrent(n,{list_only:!0});s(g)}catch(g){h({text:"Error listing torrent files",details:g})}finally{i(!1)}},0);return()=>clearTimeout(S)},[n]);const d=()=>{r(),h(null),s(null),i(!1)};return f.jsxs(f.Fragment,{children:[f.jsx(tn,{variant:l,onClick:t,className:"m-1",children:e}),n&&f.jsx(my,{onHide:d,listTorrentError:a,listTorrentResponse:u,data:n,listTorrentLoading:o})]})},fy=({show:e,setUrl:t,cancel:n})=>{let[r,l]=y.useState("");return f.jsxs(ye,{show:e,onHide:n,size:"lg",children:[f.jsx(ye.Header,{closeButton:!0,children:f.jsx(ye.Title,{children:"Add torrent"})}),f.jsx(ye.Body,{children:f.jsx(Me,{children:f.jsxs(Me.Group,{className:"mb-3",controlId:"url",children:[f.jsx(Me.Label,{children:"Enter magnet or HTTP(S) URL to the .torrent"}),f.jsx(Me.Control,{value:r,placeholder:"magnet:?xt=urn:btih:...",onChange:o=>{l(o.target.value)}})]})})}),f.jsxs(ye.Footer,{children:[f.jsx(tn,{variant:"primary",onClick:()=>{t(r),l("")},disabled:r.length==0,children:"OK"}),f.jsx(tn,{variant:"secondary",onClick:n,children:"Cancel"})]})]})},dy=()=>{let[e,t]=y.useState(null),[n,r]=y.useState(!1);return f.jsxs(f.Fragment,{children:[f.jsx(Md,{variant:"primary",buttonText:"Add Torrent from Magnet / URL",onClick:()=>{r(!0)},data:e,resetData:()=>t(null)}),f.jsx(fy,{show:n,setUrl:l=>{r(!1),t(l)},cancel:()=>{r(!1),t(null)}})]})},py=()=>{const e=y.useRef(),[t,n]=y.useState(null),r=async()=>{var u;if(!((u=e==null?void 0:e.current)!=null&&u.files))return;const i=e.current.files[0];n(i)},l=()=>{e!=null&&e.current&&(e.current.value="",n(null))},o=()=>{e!=null&&e.current&&e.current.click()};return f.jsxs(f.Fragment,{children:[f.jsx("input",{type:"file",ref:e,accept:".torrent",onChange:r,className:"d-none"}),f.jsx(Md,{variant:"secondary",buttonText:"Upload .torrent File",onClick:o,data:t,resetData:l})]})},my=e=>{let{onHide:t,listTorrentResponse:n,listTorrentError:r,listTorrentLoading:l,data:o}=e;const[i,u]=y.useState([]),[s,a]=y.useState(!1),[h,p]=y.useState(null),[d,S]=y.useState(!1),g=y.useContext(Ur),x=y.useContext(ln);y.useEffect(()=>{u(n?n.details.files.map((w,E)=>E):[])},[n]);const R=()=>{t(),u([]),p(null),a(!1)},m=w=>{i.includes(w)?u(i.filter(E=>E!==w)):u([...i,w])},c=async()=>{if(!n)return;a(!0);let w=n.seen_peers?n.seen_peers.slice(0,32):null,E={overwrite:!0,only_files:i,initial_peers:w};d&&(E.peer_opts={connect_timeout:20,read_write_timeout:60}),x.uploadTorrent(o,E).then(()=>{t(),g.refreshTorrents()},T=>{p({text:"Error starting torrent",details:T})}).finally(()=>a(!1))},v=()=>{if(l)return f.jsx(Un,{});if(r)return f.jsx(Mr,{error:r});if(n)return f.jsxs(Me,{children:[f.jsxs("fieldset",{className:"mb-5",children:[f.jsx("legend",{children:"Pick the files to download"}),n.details.files.map((w,E)=>f.jsx(Me.Group,{controlId:`check-${E}`,children:f.jsx(Me.Check,{type:"checkbox",label:`${w.name} (${zd(w.length)})`,checked:i.includes(E),onChange:()=>m(E)})},E))]}),f.jsxs("fieldset",{children:[f.jsx("legend",{children:"Other options"}),f.jsxs(Me.Group,{controlId:"unpopular-torrent",children:[f.jsx(Me.Check,{type:"checkbox",label:"Increase timeouts",checked:d,onChange:()=>S(!d)}),f.jsx("small",{id:"emailHelp",className:"form-text text-muted",children:"This might be useful for unpopular torrents with few peers. It will slow down fast torrents though."})]})]})]})};return f.jsxs(ye,{show:!0,onHide:R,size:"lg",children:[f.jsx(ye.Header,{closeButton:!0,children:f.jsx(ye.Title,{children:"Add torrent"})}),f.jsxs(ye.Body,{children:[v(),f.jsx(Mr,{error:h})]}),f.jsxs(ye.Footer,{children:[s&&f.jsx(Un,{}),f.jsx(tn,{variant:"primary",onClick:c,disabled:l||s||i.length==0,children:"OK"}),f.jsx(tn,{variant:"secondary",onClick:R,children:"Cancel"})]})]})},hy=()=>f.jsxs("div",{id:"buttons-container",className:"mt-3",children:[f.jsx(dy,{}),f.jsx(py,{})]}),vy=e=>{let t=y.useContext(Ur);return f.jsxs(pv,{children:[f.jsx(Mr,{error:e.closeableError,remove:()=>t.setCloseableError(null)}),f.jsx(Mr,{error:e.otherError}),f.jsx(sy,{torrents:e.torrents,loading:e.torrentsLoading}),f.jsx(hy,{})]})};function zd(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,r)).toFixed(2))+" "+n[r]}function yy(e){return e.files.filter(n=>n.included).reduce((n,r)=>n.length>r.length?n:r).name}function gy(e){var n,r,l;let t=(l=(r=(n=e==null?void 0:e.live)==null?void 0:n.time_remaining)==null?void 0:r.duration)==null?void 0:l.secs;return t==null?"N/A":wy(t)}function wy(e){const t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60,l=(o,i)=>o>0?`${o}${i}`:"";return t>0?`${l(t,"h")} ${l(n,"m")}`.trim():n>0?`${l(n,"m")} ${l(r,"s")}`.trim():`${l(r,"s")}`.trim()}function $d(e,t){let n,r=t;const l=async()=>{if(r=await e(),r==null)throw"asyncCallback returned null or undefined";o()};let o=()=>{n=setTimeout(l,r)};return o(),()=>{clearTimeout(n)}}function Sy(e,t){let n;const r=async()=>{await e().then(()=>!1,()=>!0)&&l()};let l=o=>{n=setTimeout(r,o!==void 0?o:t)};return l(0),()=>clearTimeout(n)}const xy=window.origin==="null"||window.origin==="http://localhost:3031"?"http://localhost:3030":"",yt=async(e,t,n)=>{console.log(e,t);const r=xy+t,l={method:e,headers:{Accept:"application/json"},body:n};let o={method:e,path:t,text:""},i;try{i=await fetch(r,l)}catch{return o.text="network error",Promise.reject(o)}if(o.status=i.status,o.statusText=i.statusText,!i.ok){const s=await i.text();try{const a=JSON.parse(s);o.text=a.human_readable!==void 0?a.human_readable:JSON.stringify(a,null,2)}catch{o.text=s}return Promise.reject(o)}return await i.json()},ky={listTorrents:()=>yt("GET","/torrents"),getTorrentDetails:e=>yt("GET",`/torrents/${e}`),getTorrentStats:e=>yt("GET",`/torrents/${e}/stats/v1`),uploadTorrent:(e,t)=>{var r,l;let n="/torrents?&overwrite=true";return t!=null&&t.list_only&&(n+="&list_only=true"),(t==null?void 0:t.only_files)!=null&&(n+=`&only_files=${t.only_files.join(",")}`),(r=t==null?void 0:t.peer_opts)!=null&&r.connect_timeout&&(n+=`&peer_connect_timeout=${t.peer_opts.connect_timeout}`),(l=t==null?void 0:t.peer_opts)!=null&&l.read_write_timeout&&(n+=`&peer_read_write_timeout=${t.peer_opts.read_write_timeout}`),t!=null&&t.initial_peers&&(n+=`&initial_peers=${t.initial_peers.join(",")}`),typeof e=="string"&&(n+="&is_url=true"),yt("POST",n,e)},pause:e=>yt("POST",`/torrents/${e}/pause`),start:e=>yt("POST",`/torrents/${e}/start`),forget:e=>yt("POST",`/torrents/${e}/forget`),delete:e=>yt("POST",`/torrents/${e}/delete`)};Yo.createRoot(document.getElementById("app")).render(f.jsx(y.StrictMode,{children:f.jsx(ln.Provider,{value:ky,children:f.jsx(ay,{})})})); +*/(function(e){(function(){var t={}.hasOwnProperty;function n(){for(var r=[],l=0;l=0)&&(n[l]=e[l]);return n}function ia(e){return"default"+e.charAt(0).toUpperCase()+e.substr(1)}function mh(e){var t=hh(e,"string");return typeof t=="symbol"?t:String(t)}function hh(e,t){if(typeof e!="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vh(e,t,n){var r=y.useRef(e!==void 0),l=y.useState(t),o=l[0],i=l[1],u=e!==void 0,s=r.current;return r.current=u,!u&&s&&o!==t&&i(t),[u?e:o,y.useCallback(function(a){for(var m=arguments.length,h=new Array(m>1?m-1:0),f=1;f{o.target===e&&(l(),t(o))},n+r)}function Uh(e){e.offsetHeight}const aa=e=>!e||typeof e=="function"?e:t=>{e.current=t};function Bh(e,t){const n=aa(e),r=aa(t);return l=>{n&&n(l),r&&r(l)}}function mo(e,t){return y.useMemo(()=>Bh(e,t),[e,t])}function Hh(e){return e&&"setState"in e?Tn.findDOMNode(e):e??null}const Wh=Wt.forwardRef(({onEnter:e,onEntering:t,onEntered:n,onExit:r,onExiting:l,onExited:o,addEndListener:i,children:u,childRef:s,...a},m)=>{const h=y.useRef(null),f=mo(h,s),w=E=>{f(Hh(E))},g=E=>N=>{E&&h.current&&E(h.current,N)},x=y.useCallback(g(e),[e]),R=y.useCallback(g(t),[t]),p=y.useCallback(g(n),[n]),c=y.useCallback(g(r),[r]),v=y.useCallback(g(l),[l]),S=y.useCallback(g(o),[o]),T=y.useCallback(g(i),[i]);return d.jsx(zh,{ref:m,...a,onEnter:x,onEntered:p,onEntering:R,onExit:c,onExited:S,onExiting:v,addEndListener:T,nodeRef:h,children:typeof u=="function"?(E,N)=>u(E,{...N,ref:w}):Wt.cloneElement(u,{ref:w})})}),Vh=Wh;function Qh(e){const t=y.useRef(e);return y.useEffect(()=>{t.current=e},[e]),t}function Me(e){const t=Qh(e);return y.useCallback(function(...n){return t.current&&t.current(...n)},[t])}const Qf=e=>y.forwardRef((t,n)=>d.jsx("div",{...t,ref:n,className:M(t.className,e)})),Kf=Qf("h4");Kf.displayName="DivStyledAsH4";const Gf=y.forwardRef(({className:e,bsPrefix:t,as:n=Kf,...r},l)=>(t=H(t,"alert-heading"),d.jsx(n,{ref:l,className:M(e,t),...r})));Gf.displayName="AlertHeading";const Kh=Gf;function Gh(){return y.useState(null)}function Yh(){const e=y.useRef(!0),t=y.useRef(()=>e.current);return y.useEffect(()=>(e.current=!0,()=>{e.current=!1}),[]),t.current}function Xh(e){const t=y.useRef(null);return y.useEffect(()=>{t.current=e}),t.current}const Zh=typeof global<"u"&&global.navigator&&global.navigator.product==="ReactNative",Jh=typeof document<"u",ca=Jh||Zh?y.useLayoutEffect:y.useEffect,qh=["as","disabled"];function bh(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}function ev(e){return!e||e.trim()==="#"}function Hu({tagName:e,disabled:t,href:n,target:r,rel:l,role:o,onClick:i,tabIndex:u=0,type:s}){e||(n!=null||r!=null||l!=null?e="a":e="button");const a={tagName:e};if(e==="button")return[{type:s||"button",disabled:t},a];const m=f=>{if((t||e==="a"&&ev(n))&&f.preventDefault(),t){f.stopPropagation();return}i==null||i(f)},h=f=>{f.key===" "&&(f.preventDefault(),m(f))};return e==="a"&&(n||(n="#"),t&&(n=void 0)),[{role:o??"button",disabled:void 0,tabIndex:t?void 0:u,href:n,target:e==="a"?r:void 0,"aria-disabled":t||void 0,rel:e==="a"?l:void 0,onClick:m,onKeyDown:h},a]}const tv=y.forwardRef((e,t)=>{let{as:n,disabled:r}=e,l=bh(e,qh);const[o,{tagName:i}]=Hu(Object.assign({tagName:n,disabled:r},l));return d.jsx(i,Object.assign({},l,o,{ref:t}))});tv.displayName="Button";const nv=["onKeyDown"];function rv(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}function lv(e){return!e||e.trim()==="#"}const Yf=y.forwardRef((e,t)=>{let{onKeyDown:n}=e,r=rv(e,nv);const[l]=Hu(Object.assign({tagName:"a"},r)),o=Me(i=>{l.onKeyDown(i),n==null||n(i)});return lv(r.href)||r.role==="button"?d.jsx("a",Object.assign({ref:t},r,l,{onKeyDown:o})):d.jsx("a",Object.assign({ref:t},r,{onKeyDown:n}))});Yf.displayName="Anchor";const ov=Yf,Xf=y.forwardRef(({className:e,bsPrefix:t,as:n=ov,...r},l)=>(t=H(t,"alert-link"),d.jsx(n,{ref:l,className:M(e,t),...r})));Xf.displayName="AlertLink";const iv=Xf,uv={[St]:"show",[Ht]:"show"},Zf=y.forwardRef(({className:e,children:t,transitionClasses:n={},onEnter:r,...l},o)=>{const i={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,appear:!1,...l},u=y.useCallback((s,a)=>{Uh(s),r==null||r(s,a)},[r]);return d.jsx(Vh,{ref:o,addEndListener:Ah,...i,onEnter:u,childRef:t.ref,children:(s,a)=>y.cloneElement(t,{...a,className:M("fade",e,t.props.className,uv[s],n[s])})})});Zf.displayName="Fade";const Kl=Zf,sv={"aria-label":it.string,onClick:it.func,variant:it.oneOf(["white"])},Wu=y.forwardRef(({className:e,variant:t,"aria-label":n="Close",...r},l)=>d.jsx("button",{ref:l,type:"button",className:M("btn-close",t&&`btn-close-${t}`,e),"aria-label":n,...r}));Wu.displayName="CloseButton";Wu.propTypes=sv;const Jf=Wu,qf=y.forwardRef((e,t)=>{const{bsPrefix:n,show:r=!0,closeLabel:l="Close alert",closeVariant:o,className:i,children:u,variant:s="primary",onClose:a,dismissible:m,transition:h=Kl,...f}=yh(e,{show:"onClose"}),w=H(n,"alert"),g=Me(p=>{a&&a(!1,p)}),x=h===!0?Kl:h,R=d.jsxs("div",{role:"alert",...x?void 0:f,ref:t,className:M(i,w,s&&`${w}-${s}`,m&&`${w}-dismissible`),children:[m&&d.jsx(Jf,{onClick:g,"aria-label":l,variant:o}),u]});return x?d.jsx(x,{unmountOnExit:!0,...f,ref:void 0,in:r,children:R}):r?R:null});qf.displayName="Alert";const fa=Object.assign(qf,{Link:iv,Heading:Kh}),bf=y.forwardRef(({as:e,bsPrefix:t,variant:n="primary",size:r,active:l=!1,disabled:o=!1,className:i,...u},s)=>{const a=H(t,"btn"),[m,{tagName:h}]=Hu({tagName:e,disabled:o,...u}),f=h;return d.jsx(f,{...m,...u,ref:s,disabled:o,className:M(i,a,l&&"active",n&&`${a}-${n}`,r&&`${a}-${r}`,u.href&&o&&"disabled")})});bf.displayName="Button";const tn=bf;function av(e){const t=y.useRef(e);return t.current=e,t}function ed(e){const t=av(e);y.useEffect(()=>()=>t.current(),[])}function cv(e,t){let n=0;return y.Children.map(e,r=>y.isValidElement(r)?t(r,n++):r)}function fv(e,t){return y.Children.toArray(e).some(n=>y.isValidElement(n)&&n.type===t)}function dv({as:e,bsPrefix:t,className:n,...r}){t=H(t,"col");const l=Df(),o=If(),i=[],u=[];return l.forEach(s=>{const a=r[s];delete r[s];let m,h,f;typeof a=="object"&&a!=null?{span:m,offset:h,order:f}=a:m=a;const w=s!==o?`-${s}`:"";m&&i.push(m===!0?`${t}${w}`:`${t}${w}-${m}`),f!=null&&u.push(`order${w}-${f}`),h!=null&&u.push(`offset${w}-${h}`)}),[{...r,className:M(n,...i,...u)},{as:e,bsPrefix:t,spans:i}]}const td=y.forwardRef((e,t)=>{const[{className:n,...r},{as:l="div",bsPrefix:o,spans:i}]=dv(e);return d.jsx(l,{...r,ref:t,className:M(n,!i.length&&o)})});td.displayName="Col";const Vu=td,nd=y.forwardRef(({bsPrefix:e,fluid:t=!1,as:n="div",className:r,...l},o)=>{const i=H(e,"container"),u=typeof t=="string"?`-${t}`:"-fluid";return d.jsx(n,{ref:o,...l,className:M(r,t?`${i}${u}`:i)})});nd.displayName="Container";const pv=nd;var mv=Function.prototype.bind.call(Function.prototype.call,[].slice);function dn(e,t){return mv(e.querySelectorAll(t))}function da(e,t){if(e.contains)return e.contains(t);if(e.compareDocumentPosition)return e===t||!!(e.compareDocumentPosition(t)&16)}const hv="data-rr-ui-";function vv(e){return`${hv}${e}`}const rd=y.createContext(Vn?window:void 0);rd.Provider;function Qu(){return y.useContext(rd)}const yv={type:it.string,tooltip:it.bool,as:it.elementType},Ku=y.forwardRef(({as:e="div",className:t,type:n="valid",tooltip:r=!1,...l},o)=>d.jsx(e,{...l,ref:o,className:M(t,`${n}-${r?"tooltip":"feedback"}`)}));Ku.displayName="Feedback";Ku.propTypes=yv;const ld=Ku,gv=y.createContext({}),ft=gv,od=y.forwardRef(({id:e,bsPrefix:t,className:n,type:r="checkbox",isValid:l=!1,isInvalid:o=!1,as:i="input",...u},s)=>{const{controlId:a}=y.useContext(ft);return t=H(t,"form-check-input"),d.jsx(i,{...u,ref:s,type:r,id:e||a,className:M(n,t,l&&"is-valid",o&&"is-invalid")})});od.displayName="FormCheckInput";const id=od,ud=y.forwardRef(({bsPrefix:e,className:t,htmlFor:n,...r},l)=>{const{controlId:o}=y.useContext(ft);return e=H(e,"form-check-label"),d.jsx("label",{...r,ref:l,htmlFor:n||o,className:M(t,e)})});ud.displayName="FormCheckLabel";const Gi=ud,sd=y.forwardRef(({id:e,bsPrefix:t,bsSwitchPrefix:n,inline:r=!1,reverse:l=!1,disabled:o=!1,isValid:i=!1,isInvalid:u=!1,feedbackTooltip:s=!1,feedback:a,feedbackType:m,className:h,style:f,title:w="",type:g="checkbox",label:x,children:R,as:p="input",...c},v)=>{t=H(t,"form-check"),n=H(n,"form-switch");const{controlId:S}=y.useContext(ft),T=y.useMemo(()=>({controlId:e||S}),[S,e]),E=!R&&x!=null&&x!==!1||fv(R,Gi),N=d.jsx(id,{...c,type:g==="switch"?"checkbox":g,ref:v,isValid:i,isInvalid:u,disabled:o,as:p});return d.jsx(ft.Provider,{value:T,children:d.jsx("div",{style:f,className:M(h,E&&t,r&&`${t}-inline`,l&&`${t}-reverse`,g==="switch"&&n),children:R||d.jsxs(d.Fragment,{children:[N,E&&d.jsx(Gi,{title:w,children:x}),a&&d.jsx(ld,{type:m,tooltip:s,children:a})]})})})});sd.displayName="FormCheck";const Gl=Object.assign(sd,{Input:id,Label:Gi}),ad=y.forwardRef(({bsPrefix:e,type:t,size:n,htmlSize:r,id:l,className:o,isValid:i=!1,isInvalid:u=!1,plaintext:s,readOnly:a,as:m="input",...h},f)=>{const{controlId:w}=y.useContext(ft);return e=H(e,"form-control"),d.jsx(m,{...h,type:t,size:r,ref:f,readOnly:a,id:l||w,className:M(o,s?`${e}-plaintext`:e,n&&`${e}-${n}`,t==="color"&&`${e}-color`,i&&"is-valid",u&&"is-invalid")})});ad.displayName="FormControl";const wv=Object.assign(ad,{Feedback:ld}),cd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"form-floating"),d.jsx(n,{ref:l,className:M(e,t),...r})));cd.displayName="FormFloating";const Sv=cd,fd=y.forwardRef(({controlId:e,as:t="div",...n},r)=>{const l=y.useMemo(()=>({controlId:e}),[e]);return d.jsx(ft.Provider,{value:l,children:d.jsx(t,{...n,ref:r})})});fd.displayName="FormGroup";const dd=fd,pd=y.forwardRef(({as:e="label",bsPrefix:t,column:n=!1,visuallyHidden:r=!1,className:l,htmlFor:o,...i},u)=>{const{controlId:s}=y.useContext(ft);t=H(t,"form-label");let a="col-form-label";typeof n=="string"&&(a=`${a} ${a}-${n}`);const m=M(l,t,r&&"visually-hidden",n&&a);return o=o||s,n?d.jsx(Vu,{ref:u,as:"label",className:m,htmlFor:o,...i}):d.jsx(e,{ref:u,className:m,htmlFor:o,...i})});pd.displayName="FormLabel";const xv=pd,md=y.forwardRef(({bsPrefix:e,className:t,id:n,...r},l)=>{const{controlId:o}=y.useContext(ft);return e=H(e,"form-range"),d.jsx("input",{...r,type:"range",ref:l,className:M(t,e),id:n||o})});md.displayName="FormRange";const kv=md,hd=y.forwardRef(({bsPrefix:e,size:t,htmlSize:n,className:r,isValid:l=!1,isInvalid:o=!1,id:i,...u},s)=>{const{controlId:a}=y.useContext(ft);return e=H(e,"form-select"),d.jsx("select",{...u,size:n,ref:s,className:M(r,e,t&&`${e}-${t}`,l&&"is-valid",o&&"is-invalid"),id:i||a})});hd.displayName="FormSelect";const Ev=hd,vd=y.forwardRef(({bsPrefix:e,className:t,as:n="small",muted:r,...l},o)=>(e=H(e,"form-text"),d.jsx(n,{...l,ref:o,className:M(t,e,r&&"text-muted")})));vd.displayName="FormText";const Cv=vd,yd=y.forwardRef((e,t)=>d.jsx(Gl,{...e,ref:t,type:"switch"}));yd.displayName="Switch";const Nv=Object.assign(yd,{Input:Gl.Input,Label:Gl.Label}),gd=y.forwardRef(({bsPrefix:e,className:t,children:n,controlId:r,label:l,...o},i)=>(e=H(e,"form-floating"),d.jsxs(dd,{ref:i,className:M(t,e),controlId:r,...o,children:[n,d.jsx("label",{htmlFor:r,children:l})]})));gd.displayName="FloatingLabel";const Tv=gd,_v={_ref:it.any,validated:it.bool,as:it.elementType},Gu=y.forwardRef(({className:e,validated:t,as:n="form",...r},l)=>d.jsx(n,{...r,ref:l,className:M(e,t&&"was-validated")}));Gu.displayName="Form";Gu.propTypes=_v;const pe=Object.assign(Gu,{Group:dd,Control:wv,Floating:Sv,Check:Gl,Switch:Nv,Label:xv,Text:Cv,Range:kv,Select:Ev,FloatingLabel:Tv});var ul;function pa(e){if((!ul&&ul!==0||e)&&Vn){var t=document.createElement("div");t.style.position="absolute",t.style.top="-9999px",t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t),ul=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return ul}function Wo(e){e===void 0&&(e=po());try{var t=e.activeElement;return!t||!t.nodeName?null:t}catch{return e.body}}function jv(e=document){const t=e.defaultView;return Math.abs(t.innerWidth-e.documentElement.clientWidth)}const ma=vv("modal-open");class Rv{constructor({ownerDocument:t,handleContainerOverflow:n=!0,isRTL:r=!1}={}){this.handleContainerOverflow=n,this.isRTL=r,this.modals=[],this.ownerDocument=t}getScrollbarWidth(){return jv(this.ownerDocument)}getElement(){return(this.ownerDocument||document).body}setModalAttributes(t){}removeModalAttributes(t){}setContainerStyle(t){const n={overflow:"hidden"},r=this.isRTL?"paddingLeft":"paddingRight",l=this.getElement();t.style={overflow:l.style.overflow,[r]:l.style[r]},t.scrollBarWidth&&(n[r]=`${parseInt(Xt(l,r)||"0",10)+t.scrollBarWidth}px`),l.setAttribute(ma,""),Xt(l,n)}reset(){[...this.modals].forEach(t=>this.remove(t))}removeContainerStyle(t){const n=this.getElement();n.removeAttribute(ma),Object.assign(n.style,t.style)}add(t){let n=this.modals.indexOf(t);return n!==-1||(n=this.modals.length,this.modals.push(t),this.setModalAttributes(t),n!==0)||(this.state={scrollBarWidth:this.getScrollbarWidth(),style:{}},this.handleContainerOverflow&&this.setContainerStyle(this.state)),n}remove(t){const n=this.modals.indexOf(t);n!==-1&&(this.modals.splice(n,1),!this.modals.length&&this.handleContainerOverflow&&this.removeContainerStyle(this.state),this.removeModalAttributes(t))}isTopModal(t){return!!this.modals.length&&this.modals[this.modals.length-1]===t}}const Yu=Rv,Vo=(e,t)=>Vn?e==null?(t||po()).body:(typeof e=="function"&&(e=e()),e&&"current"in e&&(e=e.current),e&&("nodeType"in e||e.getBoundingClientRect)?e:null):null;function Lv(e,t){const n=Qu(),[r,l]=y.useState(()=>Vo(e,n==null?void 0:n.document));if(!r){const o=Vo(e);o&&l(o)}return y.useEffect(()=>{t&&r&&t(r)},[t,r]),y.useEffect(()=>{const o=Vo(e);o!==r&&l(o)},[e,r]),r}function Ov({children:e,in:t,onExited:n,mountOnEnter:r,unmountOnExit:l}){const o=y.useRef(null),i=y.useRef(t),u=Me(n);y.useEffect(()=>{t?i.current=!0:u(o.current)},[t,u]);const s=mo(o,e.ref),a=y.cloneElement(e,{ref:s});return t?a:l||!i.current&&r?null:a}function Pv({in:e,onTransition:t}){const n=y.useRef(null),r=y.useRef(!0),l=Me(t);return ca(()=>{if(!n.current)return;let o=!1;return l({in:e,element:n.current,initial:r.current,isStale:()=>o}),()=>{o=!0}},[e,l]),ca(()=>(r.current=!1,()=>{r.current=!0}),[]),n}function Fv({children:e,in:t,onExited:n,onEntered:r,transition:l}){const[o,i]=y.useState(!t);t&&o&&i(!1);const u=Pv({in:!!t,onTransition:a=>{const m=()=>{a.isStale()||(a.in?r==null||r(a.element,a.initial):(i(!0),n==null||n(a.element)))};Promise.resolve(l(a)).then(m,h=>{throw a.in||i(!0),h})}}),s=mo(u,e.ref);return o&&!t?null:y.cloneElement(e,{ref:s})}function ha(e,t,n){return e?d.jsx(e,Object.assign({},n)):t?d.jsx(Fv,Object.assign({},n,{transition:t})):d.jsx(Ov,Object.assign({},n))}function Mv(e){return e.code==="Escape"||e.keyCode===27}const zv=["show","role","className","style","children","backdrop","keyboard","onBackdropClick","onEscapeKeyDown","transition","runTransition","backdropTransition","runBackdropTransition","autoFocus","enforceFocus","restoreFocus","restoreFocusOptions","renderDialog","renderBackdrop","manager","container","onShow","onHide","onExit","onExited","onExiting","onEnter","onEntering","onEntered"];function $v(e,t){if(e==null)return{};var n={},r=Object.keys(e),l,o;for(o=0;o=0)&&(n[l]=e[l]);return n}let Qo;function Dv(e){return Qo||(Qo=new Yu({ownerDocument:e==null?void 0:e.document})),Qo}function Iv(e){const t=Qu(),n=e||Dv(t),r=y.useRef({dialog:null,backdrop:null});return Object.assign(r.current,{add:()=>n.add(r.current),remove:()=>n.remove(r.current),isTopModal:()=>n.isTopModal(r.current),setDialogRef:y.useCallback(l=>{r.current.dialog=l},[]),setBackdropRef:y.useCallback(l=>{r.current.backdrop=l},[])})}const wd=y.forwardRef((e,t)=>{let{show:n=!1,role:r="dialog",className:l,style:o,children:i,backdrop:u=!0,keyboard:s=!0,onBackdropClick:a,onEscapeKeyDown:m,transition:h,runTransition:f,backdropTransition:w,runBackdropTransition:g,autoFocus:x=!0,enforceFocus:R=!0,restoreFocus:p=!0,restoreFocusOptions:c,renderDialog:v,renderBackdrop:S=K=>d.jsx("div",Object.assign({},K)),manager:T,container:E,onShow:N,onHide:j=()=>{},onExit:U,onExited:P,onExiting:ie,onEnter:Ke,onEntering:Ge,onEntered:on}=e,Qn=$v(e,zv);const Re=Qu(),Ye=Lv(E),C=Iv(T),L=Yh(),O=Xh(n),[D,A]=y.useState(!n),fe=y.useRef(null);y.useImperativeHandle(t,()=>C,[C]),Vn&&!O&&n&&(fe.current=Wo(Re==null?void 0:Re.document)),n&&D&&A(!1);const Le=Me(()=>{if(C.add(),sn.current=Ql(document,"keydown",ho),un.current=Ql(document,"focus",()=>setTimeout(Oe),!0),N&&N(),x){var K,Hr;const Yn=Wo((K=(Hr=C.dialog)==null?void 0:Hr.ownerDocument)!=null?K:Re==null?void 0:Re.document);C.dialog&&Yn&&!da(C.dialog,Yn)&&(fe.current=Yn,C.dialog.focus())}}),et=Me(()=>{if(C.remove(),sn.current==null||sn.current(),un.current==null||un.current(),p){var K;(K=fe.current)==null||K.focus==null||K.focus(c),fe.current=null}});y.useEffect(()=>{!n||!Ye||Le()},[n,Ye,Le]),y.useEffect(()=>{D&&et()},[D,et]),ed(()=>{et()});const Oe=Me(()=>{if(!R||!L()||!C.isTopModal())return;const K=Wo(Re==null?void 0:Re.document);C.dialog&&K&&!da(C.dialog,K)&&C.dialog.focus()}),mt=Me(K=>{K.target===K.currentTarget&&(a==null||a(K),u===!0&&j())}),ho=Me(K=>{s&&Mv(K)&&C.isTopModal()&&(m==null||m(K),K.defaultPrevented||j())}),un=y.useRef(),sn=y.useRef(),Kn=(...K)=>{A(!0),P==null||P(...K)};if(!Ye)return null;const Br=Object.assign({role:r,ref:C.setDialogRef,"aria-modal":r==="dialog"?!0:void 0},Qn,{style:o,className:l,tabIndex:-1});let Gn=v?v(Br):d.jsx("div",Object.assign({},Br,{children:y.cloneElement(i,{role:"document"})}));Gn=ha(h,f,{unmountOnExit:!0,mountOnEnter:!0,appear:!0,in:!!n,onExit:U,onExiting:ie,onExited:Kn,onEnter:Ke,onEntering:Ge,onEntered:on,children:Gn});let It=null;return u&&(It=S({ref:C.setBackdropRef,onClick:mt}),It=ha(w,g,{in:!!n,appear:!0,mountOnEnter:!0,unmountOnExit:!0,children:It})),d.jsx(d.Fragment,{children:Tn.createPortal(d.jsxs(d.Fragment,{children:[It,Gn]}),Ye)})});wd.displayName="Modal";const Av=Object.assign(wd,{Manager:Yu});function Uv(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function Bv(e,t){e.classList?e.classList.add(t):Uv(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function va(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function Hv(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=va(e.className,t):e.setAttribute("class",va(e.className&&e.className.baseVal||"",t))}const pn={FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top",NAVBAR_TOGGLER:".navbar-toggler"};class Wv extends Yu{adjustAndStore(t,n,r){const l=n.style[t];n.dataset[t]=l,Xt(n,{[t]:`${parseFloat(Xt(n,t))+r}px`})}restore(t,n){const r=n.dataset[t];r!==void 0&&(delete n.dataset[t],Xt(n,{[t]:r}))}setContainerStyle(t){super.setContainerStyle(t);const n=this.getElement();if(Bv(n,"modal-open"),!t.scrollBarWidth)return;const r=this.isRTL?"paddingLeft":"paddingRight",l=this.isRTL?"marginLeft":"marginRight";dn(n,pn.FIXED_CONTENT).forEach(o=>this.adjustAndStore(r,o,t.scrollBarWidth)),dn(n,pn.STICKY_CONTENT).forEach(o=>this.adjustAndStore(l,o,-t.scrollBarWidth)),dn(n,pn.NAVBAR_TOGGLER).forEach(o=>this.adjustAndStore(l,o,t.scrollBarWidth))}removeContainerStyle(t){super.removeContainerStyle(t);const n=this.getElement();Hv(n,"modal-open");const r=this.isRTL?"paddingLeft":"paddingRight",l=this.isRTL?"marginLeft":"marginRight";dn(n,pn.FIXED_CONTENT).forEach(o=>this.restore(r,o)),dn(n,pn.STICKY_CONTENT).forEach(o=>this.restore(l,o)),dn(n,pn.NAVBAR_TOGGLER).forEach(o=>this.restore(l,o))}}let Ko;function Vv(e){return Ko||(Ko=new Wv(e)),Ko}const Sd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"modal-body"),d.jsx(n,{ref:l,className:M(e,t),...r})));Sd.displayName="ModalBody";const Qv=Sd,Kv=y.createContext({onHide(){}}),xd=Kv,kd=y.forwardRef(({bsPrefix:e,className:t,contentClassName:n,centered:r,size:l,fullscreen:o,children:i,scrollable:u,...s},a)=>{e=H(e,"modal");const m=`${e}-dialog`,h=typeof o=="string"?`${e}-fullscreen-${o}`:`${e}-fullscreen`;return d.jsx("div",{...s,ref:a,className:M(m,t,l&&`${e}-${l}`,r&&`${m}-centered`,u&&`${m}-scrollable`,o&&h),children:d.jsx("div",{className:M(`${e}-content`,n),children:i})})});kd.displayName="ModalDialog";const Ed=kd,Cd=y.forwardRef(({className:e,bsPrefix:t,as:n="div",...r},l)=>(t=H(t,"modal-footer"),d.jsx(n,{ref:l,className:M(e,t),...r})));Cd.displayName="ModalFooter";const Gv=Cd,Yv=y.forwardRef(({closeLabel:e="Close",closeVariant:t,closeButton:n=!1,onHide:r,children:l,...o},i)=>{const u=y.useContext(xd),s=Me(()=>{u==null||u.onHide(),r==null||r()});return d.jsxs("div",{ref:i,...o,children:[l,n&&d.jsx(Jf,{"aria-label":e,variant:t,onClick:s})]})}),Xv=Yv,Nd=y.forwardRef(({bsPrefix:e,className:t,closeLabel:n="Close",closeButton:r=!1,...l},o)=>(e=H(e,"modal-header"),d.jsx(Xv,{ref:o,...l,className:M(t,e),closeLabel:n,closeButton:r})));Nd.displayName="ModalHeader";const Zv=Nd,Jv=Qf("h4"),Td=y.forwardRef(({className:e,bsPrefix:t,as:n=Jv,...r},l)=>(t=H(t,"modal-title"),d.jsx(n,{ref:l,className:M(e,t),...r})));Td.displayName="ModalTitle";const qv=Td;function bv(e){return d.jsx(Kl,{...e,timeout:null})}function ey(e){return d.jsx(Kl,{...e,timeout:null})}const _d=y.forwardRef(({bsPrefix:e,className:t,style:n,dialogClassName:r,contentClassName:l,children:o,dialogAs:i=Ed,"aria-labelledby":u,"aria-describedby":s,"aria-label":a,show:m=!1,animation:h=!0,backdrop:f=!0,keyboard:w=!0,onEscapeKeyDown:g,onShow:x,onHide:R,container:p,autoFocus:c=!0,enforceFocus:v=!0,restoreFocus:S=!0,restoreFocusOptions:T,onEntered:E,onExit:N,onExiting:j,onEnter:U,onEntering:P,onExited:ie,backdropClassName:Ke,manager:Ge,...on},Qn)=>{const[Re,Ye]=y.useState({}),[C,L]=y.useState(!1),O=y.useRef(!1),D=y.useRef(!1),A=y.useRef(null),[fe,Le]=Gh(),et=mo(Qn,Le),Oe=Me(R),mt=xh();e=H(e,"modal");const ho=y.useMemo(()=>({onHide:Oe}),[Oe]);function un(){return Ge||Vv({isRTL:mt})}function sn($){if(!Vn)return;const an=un().getScrollbarWidth()>0,Zu=$.scrollHeight>po($).documentElement.clientHeight;Ye({paddingRight:an&&!Zu?pa():void 0,paddingLeft:!an&&Zu?pa():void 0})}const Kn=Me(()=>{fe&&sn(fe.dialog)});ed(()=>{Ki(window,"resize",Kn),A.current==null||A.current()});const Br=()=>{O.current=!0},Gn=$=>{O.current&&fe&&$.target===fe.dialog&&(D.current=!0),O.current=!1},It=()=>{L(!0),A.current=Vf(fe.dialog,()=>{L(!1)})},K=$=>{$.target===$.currentTarget&&It()},Hr=$=>{if(f==="static"){K($);return}if(D.current||$.target!==$.currentTarget){D.current=!1;return}R==null||R()},Yn=$=>{w?g==null||g($):($.preventDefault(),f==="static"&&It())},Dd=($,an)=>{$&&sn($),U==null||U($,an)},Id=$=>{A.current==null||A.current(),N==null||N($)},Ad=($,an)=>{P==null||P($,an),Wf(window,"resize",Kn)},Ud=$=>{$&&($.style.display=""),ie==null||ie($),Ki(window,"resize",Kn)},Bd=y.useCallback($=>d.jsx("div",{...$,className:M(`${e}-backdrop`,Ke,!h&&"show")}),[h,Ke,e]),Xu={...n,...Re};Xu.display="block";const Hd=$=>d.jsx("div",{role:"dialog",...$,style:Xu,className:M(t,e,C&&`${e}-static`,!h&&"show"),onClick:f?Hr:void 0,onMouseUp:Gn,"aria-label":a,"aria-labelledby":u,"aria-describedby":s,children:d.jsx(i,{...on,onMouseDown:Br,className:r,contentClassName:l,children:o})});return d.jsx(xd.Provider,{value:ho,children:d.jsx(Av,{show:m,ref:et,backdrop:f,container:p,keyboard:!0,autoFocus:c,enforceFocus:v,restoreFocus:S,restoreFocusOptions:T,onEscapeKeyDown:Yn,onShow:x,onHide:R,onEnter:Dd,onEntering:Ad,onEntered:E,onExit:Id,onExiting:j,onExited:Ud,manager:un(),transition:h?bv:void 0,backdropTransition:h?ey:void 0,renderBackdrop:Bd,renderDialog:Hd})})});_d.displayName="Modal";const ge=Object.assign(_d,{Body:Qv,Header:Zv,Title:qv,Footer:Gv,Dialog:Ed,TRANSITION_DURATION:300,BACKDROP_TRANSITION_DURATION:150}),ya=1e3;function ty(e,t,n){const r=(e-t)/(n-t)*100;return Math.round(r*ya)/ya}function ga({min:e,now:t,max:n,label:r,visuallyHidden:l,striped:o,animated:i,className:u,style:s,variant:a,bsPrefix:m,...h},f){return d.jsx("div",{ref:f,...h,role:"progressbar",className:M(u,`${m}-bar`,{[`bg-${a}`]:a,[`${m}-bar-animated`]:i,[`${m}-bar-striped`]:i||o}),style:{width:`${ty(t,e,n)}%`,...s},"aria-valuenow":t,"aria-valuemin":e,"aria-valuemax":n,children:l?d.jsx("span",{className:"visually-hidden",children:r}):r})}const jd=y.forwardRef(({isChild:e=!1,...t},n)=>{const r={min:0,max:100,animated:!1,visuallyHidden:!1,striped:!1,...t};if(r.bsPrefix=H(r.bsPrefix,"progress"),e)return ga(r,n);const{min:l,now:o,max:i,label:u,visuallyHidden:s,striped:a,animated:m,bsPrefix:h,variant:f,className:w,children:g,...x}=r;return d.jsx("div",{ref:n,...x,className:M(w,h),children:g?cv(g,R=>y.cloneElement(R,{isChild:!0})):ga({min:l,now:o,max:i,label:u,visuallyHidden:s,striped:a,animated:m,bsPrefix:h,variant:f},n)})});jd.displayName="ProgressBar";const ny=jd,Rd=y.forwardRef(({bsPrefix:e,className:t,as:n="div",...r},l)=>{const o=H(e,"row"),i=Df(),u=If(),s=`${o}-cols`,a=[];return i.forEach(m=>{const h=r[m];delete r[m];let f;h!=null&&typeof h=="object"?{cols:f}=h:f=h;const w=m!==u?`-${m}`:"";f!=null&&a.push(`${s}${w}-${f}`)}),d.jsx(n,{ref:l,...r,className:M(t,o,...a)})});Rd.displayName="Row";const Ld=Rd,Od=y.forwardRef(({bsPrefix:e,variant:t,animation:n="border",size:r,as:l="div",className:o,...i},u)=>{e=H(e,"spinner");const s=`${e}-${n}`;return d.jsx(l,{ref:u,...i,className:M(o,s,r&&`${s}-${r}`,t&&`text-${t}`)})});Od.displayName="Spinner";const Un=Od,Sl="initializing",wa="paused",Pd="live",ry="error",ln=y.createContext({listTorrents:()=>{throw new Error("Function not implemented.")},getTorrentDetails:()=>{throw new Error("Function not implemented.")},getTorrentStats:()=>{throw new Error("Function not implemented.")},uploadTorrent:()=>{throw new Error("Function not implemented.")},pause:()=>{throw new Error("Function not implemented.")},start:()=>{throw new Error("Function not implemented.")},forget:()=>{throw new Error("Function not implemented.")},delete:()=>{throw new Error("Function not implemented.")}}),Ur=y.createContext({setCloseableError:e=>{},refreshTorrents:()=>{}}),Fd=y.createContext({refresh:()=>{}}),Go=({className:e,onClick:t,disabled:n,color:r})=>{const l=o=>{o.stopPropagation(),!n&&t()};return d.jsx("a",{className:`bi ${e} p-1`,onClick:l,href:"#"})},ly=({id:e,show:t,onHide:n})=>{if(!t)return null;const[r,l]=y.useState(!1),[o,i]=y.useState(null),[u,s]=y.useState(!1),a=y.useContext(Ur),m=y.useContext(ln),h=()=>{l(!1),i(null),s(!1),n()},f=()=>{s(!0),(r?m.delete:m.forget)(e).then(()=>{a.refreshTorrents(),h()}).catch(g=>{i({text:`Error deleting torrent id=${e}`,details:g}),s(!1)})};return d.jsxs(ge,{show:t,onHide:h,children:[d.jsx(ge.Header,{closeButton:!0,children:"Delete torrent"}),d.jsxs(ge.Body,{children:[d.jsx(pe,{children:d.jsx(pe.Group,{controlId:"delete-torrent",children:d.jsx(pe.Check,{type:"checkbox",label:"Also delete files",checked:r,onChange:()=>l(!r)})})}),o&&d.jsx(Mr,{error:o})]}),d.jsxs(ge.Footer,{children:[u&&d.jsx(Un,{}),d.jsx(tn,{variant:"primary",onClick:f,disabled:u,children:"OK"}),d.jsx(tn,{variant:"secondary",onClick:h,children:"Cancel"})]})]})},oy=({id:e,statsResponse:t})=>{let n=t.state,[r,l]=y.useState(!1),[o,i]=y.useState(!1),u=y.useContext(Fd);const s=n=="live",a=n=="paused"||n=="error",m=y.useContext(Ur),h=y.useContext(ln),f=()=>{l(!0),h.start(e).then(()=>{u.refresh()},R=>{m.setCloseableError({text:`Error starting torrent id=${e}`,details:R})}).finally(()=>l(!1))},w=()=>{l(!0),h.pause(e).then(()=>{u.refresh()},R=>{m.setCloseableError({text:`Error pausing torrent id=${e}`,details:R})}).finally(()=>l(!1))},g=()=>{l(!0),i(!0)},x=()=>{l(!1),i(!1)};return d.jsx(Ld,{children:d.jsxs(Vu,{children:[a&&d.jsx(Go,{className:"bi-play-circle",onClick:f,disabled:r,color:"success"}),s&&d.jsx(Go,{className:"bi-pause-circle",onClick:w,disabled:r}),d.jsx(Go,{className:"bi-x-circle",onClick:g,disabled:r,color:"danger"}),d.jsx(ly,{id:e,show:o,onHide:x})]})})},iy=({id:e,detailsResponse:t,statsResponse:n})=>{const r=(n==null?void 0:n.state)??"",l=n==null?void 0:n.error,o=(n==null?void 0:n.total_bytes)??1,i=(n==null?void 0:n.progress_bytes)??0,u=(n==null?void 0:n.finished)||!1,s=l?100:i/o*100,a=(r==Sl||r==Pd)&&!u,m=l?"Error":`${s.toFixed(2)}%`,h=l?"danger":u?"success":r==Sl?"warning":"primary",f=()=>{var R;let x=(R=n==null?void 0:n.live)==null?void 0:R.snapshot.peer_stats;return x?`${x.live} / ${x.seen}`:""},w=()=>{var x;if(u)return"Completed";switch(r){case wa:return"Paused";case Sl:return"Checking files";case ry:return"Error"}return((x=n==null?void 0:n.live)==null?void 0:x.download_speed.human_readable)??"N/A"};let g=[];return l?g.push("bg-warning"):e%2==0&&g.push("bg-light"),d.jsxs(Ld,{className:g.join(" "),children:[d.jsx(vt,{size:3,label:"Name",children:t?d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"text-truncate",children:yy(t)}),l&&d.jsxs("p",{className:"text-danger",children:[d.jsx("strong",{children:"Error:"})," ",l]})]}):d.jsx(Un,{})}),n?d.jsxs(d.Fragment,{children:[d.jsx(vt,{label:"Size",children:`${zd(o)} `}),d.jsx(vt,{size:2,label:(r==wa,"Progress"),children:d.jsx(ny,{now:s,label:m,animated:a,variant:h})}),d.jsx(vt,{size:2,label:"Down Speed",children:w()}),d.jsx(vt,{label:"ETA",children:gy(n)}),d.jsx(vt,{size:2,label:"Peers",children:f()}),d.jsx(vt,{label:"Actions",children:d.jsx(oy,{id:e,statsResponse:n})})]}):d.jsx(vt,{label:"Loading stats",size:8,children:d.jsx(Un,{})})]})},vt=({size:e,label:t,children:n})=>d.jsxs(Vu,{md:e||1,className:"py-3",children:[d.jsx("div",{className:"fw-bold",children:t}),n]}),uy=({id:e,torrent:t})=>{const[n,r]=y.useState(null),[l,o]=y.useState(null),[i,u]=y.useState(0),s=y.useContext(ln),a=()=>{u(i+1)};return y.useEffect(()=>{if(n===null)return Sy(async()=>{await s.getTorrentDetails(t.id).then(r)},1e3)},[n]),y.useEffect(()=>$d(async()=>s.getTorrentStats(t.id).then(g=>(o(g),g)).then(g=>g.finished?1e4:g.state==Sl||g.state==Pd?1e3:1e4,()=>1e4),0),[i]),d.jsx(Fd.Provider,{value:{refresh:a},children:d.jsx(iy,{id:e,detailsResponse:n,statsResponse:l})})},sy=e=>{if(e.torrents===null&&e.loading)return d.jsx(Un,{});if(e.torrents!==null)return e.torrents.length===0?d.jsx("div",{className:"text-center",children:d.jsx("p",{children:"No existing torrents found. Add them through buttons below."})}):d.jsx(d.Fragment,{children:e.torrents.map(t=>d.jsx(uy,{id:t.id,torrent:t},t.id))})},ay=e=>{const[t,n]=y.useState(null),[r,l]=y.useState(null),[o,i]=y.useState(null),[u,s]=y.useState(!1),a=y.useContext(ln),m=async()=>{s(!0);let f=await a.listTorrents().finally(()=>s(!1));i(f.torrents)};y.useEffect(()=>$d(async()=>m().then(()=>(l(null),5e3),f=>(l({text:"Error refreshing torrents",details:f}),console.error(f),5e3)),0),[]);const h={setCloseableError:n,refreshTorrents:m};return d.jsx(Ur.Provider,{value:h,children:d.jsxs("div",{className:"text-center",children:[d.jsx("h1",{className:"mt-3 mb-4",children:e.title}),d.jsx(vy,{closeableError:t,otherError:r,torrents:o,torrentsLoading:u})]})})},cy=e=>{let{details:t}=e;return t?d.jsxs(d.Fragment,{children:[d.jsx("p",{children:t.status&&d.jsxs("strong",{children:[t.status," ",t.statusText]})}),d.jsx("pre",{children:t.text})]}):null},Mr=e=>{let{error:t,remove:n}=e;return t==null?null:d.jsxs(fa,{variant:"danger",onClose:n,dismissible:n!=null,children:[d.jsx(fa.Heading,{children:t.text}),d.jsx(cy,{details:t.details})]})},Md=({buttonText:e,onClick:t,data:n,resetData:r,variant:l})=>{const[o,i]=y.useState(!1),[u,s]=y.useState(null),[a,m]=y.useState(null),h=y.useContext(ln);y.useEffect(()=>{if(n===null)return;let w=setTimeout(async()=>{i(!0);try{const g=await h.uploadTorrent(n,{list_only:!0});s(g)}catch(g){m({text:"Error listing torrent files",details:g})}finally{i(!1)}},0);return()=>clearTimeout(w)},[n]);const f=()=>{r(),m(null),s(null),i(!1)};return d.jsxs(d.Fragment,{children:[d.jsx(tn,{variant:l,onClick:t,className:"m-1",children:e}),n&&d.jsx(my,{onHide:f,listTorrentError:a,listTorrentResponse:u,data:n,listTorrentLoading:o})]})},fy=({show:e,setUrl:t,cancel:n})=>{let[r,l]=y.useState("");return d.jsxs(ge,{show:e,onHide:n,size:"lg",children:[d.jsx(ge.Header,{closeButton:!0,children:d.jsx(ge.Title,{children:"Add torrent"})}),d.jsx(ge.Body,{children:d.jsx(pe,{children:d.jsxs(pe.Group,{className:"mb-3",controlId:"url",children:[d.jsx(pe.Label,{children:"Enter magnet or HTTP(S) URL to the .torrent"}),d.jsx(pe.Control,{value:r,placeholder:"magnet:?xt=urn:btih:...",onChange:o=>{l(o.target.value)}})]})})}),d.jsxs(ge.Footer,{children:[d.jsx(tn,{variant:"primary",onClick:()=>{t(r),l("")},disabled:r.length==0,children:"OK"}),d.jsx(tn,{variant:"secondary",onClick:n,children:"Cancel"})]})]})},dy=()=>{let[e,t]=y.useState(null),[n,r]=y.useState(!1);return d.jsxs(d.Fragment,{children:[d.jsx(Md,{variant:"primary",buttonText:"Add Torrent from Magnet / URL",onClick:()=>{r(!0)},data:e,resetData:()=>t(null)}),d.jsx(fy,{show:n,setUrl:l=>{r(!1),t(l)},cancel:()=>{r(!1),t(null)}})]})},py=()=>{const e=y.useRef(),[t,n]=y.useState(null),r=async()=>{var u;if(!((u=e==null?void 0:e.current)!=null&&u.files))return;const i=e.current.files[0];n(i)},l=()=>{e!=null&&e.current&&(e.current.value="",n(null))},o=()=>{e!=null&&e.current&&e.current.click()};return d.jsxs(d.Fragment,{children:[d.jsx("input",{type:"file",ref:e,accept:".torrent",onChange:r,className:"d-none"}),d.jsx(Md,{variant:"secondary",buttonText:"Upload .torrent File",onClick:o,data:t,resetData:l})]})},my=e=>{let{onHide:t,listTorrentResponse:n,listTorrentError:r,listTorrentLoading:l,data:o}=e;const[i,u]=y.useState([]),[s,a]=y.useState(!1),[m,h]=y.useState(null),[f,w]=y.useState(!1),[g,x]=y.useState(""),R=y.useContext(Ur),p=y.useContext(ln);y.useEffect(()=>{console.log(n),u(n?n.details.files.map((E,N)=>N):[]),x((n==null?void 0:n.output_folder)||"")},[n]);const c=()=>{t(),u([]),h(null),a(!1)},v=E=>{i.includes(E)?u(i.filter(N=>N!==E)):u([...i,E])},S=async()=>{if(!n)return;a(!0);let E=n.seen_peers?n.seen_peers.slice(0,32):null,N={overwrite:!0,only_files:i,initial_peers:E,output_folder:g};f&&(N.peer_opts={connect_timeout:20,read_write_timeout:60}),p.uploadTorrent(o,N).then(()=>{t(),R.refreshTorrents()},j=>{h({text:"Error starting torrent",details:j})}).finally(()=>a(!1))},T=()=>{if(l)return d.jsx(Un,{});if(r)return d.jsx(Mr,{error:r});if(n)return d.jsxs(pe,{children:[d.jsxs("fieldset",{className:"mb-4",children:[d.jsx("legend",{children:"Pick the files to download"}),n.details.files.map((E,N)=>d.jsx(pe.Group,{controlId:`check-${N}`,children:d.jsx(pe.Check,{type:"checkbox",label:`${E.name} (${zd(E.length)})`,checked:i.includes(N),onChange:()=>v(N)})},N))]}),d.jsxs("fieldset",{children:[d.jsx("legend",{children:"Options"}),d.jsxs(pe.Group,{controlId:"output-folder",className:"mb-3",children:[d.jsx(pe.Label,{children:"Output folder"}),d.jsx(pe.Control,{type:"text",value:g,onChange:E=>x(E.target.value)})]}),d.jsxs(pe.Group,{controlId:"unpopular-torrent",className:"mb-3",children:[d.jsx(pe.Check,{type:"checkbox",label:"Increase timeouts",checked:f,onChange:()=>w(!f)}),d.jsx("small",{id:"emailHelp",className:"form-text text-muted",children:"This might be useful for unpopular torrents with few peers. It will slow down fast torrents though."})]})]})]})};return d.jsxs(ge,{show:!0,onHide:c,size:"lg",children:[d.jsx(ge.Header,{closeButton:!0,children:d.jsx(ge.Title,{children:"Add torrent"})}),d.jsxs(ge.Body,{children:[T(),d.jsx(Mr,{error:m})]}),d.jsxs(ge.Footer,{children:[s&&d.jsx(Un,{}),d.jsx(tn,{variant:"primary",onClick:S,disabled:l||s||i.length==0,children:"OK"}),d.jsx(tn,{variant:"secondary",onClick:c,children:"Cancel"})]})]})},hy=()=>d.jsxs("div",{id:"buttons-container",className:"mt-3",children:[d.jsx(dy,{}),d.jsx(py,{})]}),vy=e=>{let t=y.useContext(Ur);return d.jsxs(pv,{children:[d.jsx(Mr,{error:e.closeableError,remove:()=>t.setCloseableError(null)}),d.jsx(Mr,{error:e.otherError}),d.jsx(sy,{torrents:e.torrents,loading:e.torrentsLoading}),d.jsx(hy,{})]})};function zd(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,r)).toFixed(2))+" "+n[r]}function yy(e){return e.files.filter(n=>n.included).reduce((n,r)=>n.length>r.length?n:r).name}function gy(e){var n,r,l;let t=(l=(r=(n=e==null?void 0:e.live)==null?void 0:n.time_remaining)==null?void 0:r.duration)==null?void 0:l.secs;return t==null?"N/A":wy(t)}function wy(e){const t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60,l=(o,i)=>o>0?`${o}${i}`:"";return t>0?`${l(t,"h")} ${l(n,"m")}`.trim():n>0?`${l(n,"m")} ${l(r,"s")}`.trim():`${l(r,"s")}`.trim()}function $d(e,t){let n,r=t;const l=async()=>{if(r=await e(),r==null)throw"asyncCallback returned null or undefined";o()};let o=()=>{n=setTimeout(l,r)};return o(),()=>{clearTimeout(n)}}function Sy(e,t){let n;const r=async()=>{await e().then(()=>!1,()=>!0)&&l()};let l=o=>{n=setTimeout(r,o!==void 0?o:t)};return l(0),()=>clearTimeout(n)}const xy=window.origin==="null"||window.origin==="http://localhost:3031"?"http://localhost:3030":"",yt=async(e,t,n)=>{console.log(e,t);const r=xy+t,l={method:e,headers:{Accept:"application/json"},body:n};let o={method:e,path:t,text:""},i;try{i=await fetch(r,l)}catch{return o.text="network error",Promise.reject(o)}if(o.status=i.status,o.statusText=i.statusText,!i.ok){const s=await i.text();try{const a=JSON.parse(s);o.text=a.human_readable!==void 0?a.human_readable:JSON.stringify(a,null,2)}catch{o.text=s}return Promise.reject(o)}return await i.json()},ky={listTorrents:()=>yt("GET","/torrents"),getTorrentDetails:e=>yt("GET",`/torrents/${e}`),getTorrentStats:e=>yt("GET",`/torrents/${e}/stats/v1`),uploadTorrent:(e,t)=>{var r,l;let n="/torrents?&overwrite=true";return t!=null&&t.list_only&&(n+="&list_only=true"),(t==null?void 0:t.only_files)!=null&&(n+=`&only_files=${t.only_files.join(",")}`),(r=t==null?void 0:t.peer_opts)!=null&&r.connect_timeout&&(n+=`&peer_connect_timeout=${t.peer_opts.connect_timeout}`),(l=t==null?void 0:t.peer_opts)!=null&&l.read_write_timeout&&(n+=`&peer_read_write_timeout=${t.peer_opts.read_write_timeout}`),t!=null&&t.initial_peers&&(n+=`&initial_peers=${t.initial_peers.join(",")}`),t!=null&&t.output_folder&&(n+=`&output_folder=${t.output_folder}`),typeof e=="string"&&(n+="&is_url=true"),yt("POST",n,e)},pause:e=>yt("POST",`/torrents/${e}/pause`),start:e=>yt("POST",`/torrents/${e}/start`),forget:e=>yt("POST",`/torrents/${e}/forget`),delete:e=>yt("POST",`/torrents/${e}/delete`)};Yo.createRoot(document.getElementById("app")).render(d.jsx(y.StrictMode,{children:d.jsx(ln.Provider,{value:ky,children:d.jsx(ay,{title:"rqbit web UI - version 4.0.0-beta.3"})})})); diff --git a/crates/librqbit/webui/dist/manifest.json b/crates/librqbit/webui/dist/manifest.json index 544e31c7..716bea50 100644 --- a/crates/librqbit/webui/dist/manifest.json +++ b/crates/librqbit/webui/dist/manifest.json @@ -4,7 +4,7 @@ "src": "assets/logo.svg" }, "index.html": { - "file": "assets/index-386e9e08.js", + "file": "assets/index-3e661b92.js", "isEntry": true, "src": "index.html" } diff --git a/crates/librqbit/webui/src/api-types.ts b/crates/librqbit/webui/src/api-types.ts index 4ab0de97..afa103c7 100644 --- a/crates/librqbit/webui/src/api-types.ts +++ b/crates/librqbit/webui/src/api-types.ts @@ -19,6 +19,7 @@ export interface TorrentDetails { export interface AddTorrentResponse { id: number | null; details: TorrentDetails; + output_folder: string, seen_peers?: Array; } diff --git a/crates/librqbit/webui/src/http-api.ts b/crates/librqbit/webui/src/http-api.ts index 8b19ab09..a69ad8c6 100644 --- a/crates/librqbit/webui/src/http-api.ts +++ b/crates/librqbit/webui/src/http-api.ts @@ -72,6 +72,9 @@ export const API: RqbitAPI = { if (opts?.initial_peers) { url += `&initial_peers=${opts.initial_peers.join(',')}`; } + if (opts?.output_folder) { + url += `&output_folder=${opts.output_folder}`; + } if (typeof data === 'string') { url += '&is_url=true'; } diff --git a/crates/librqbit/webui/src/main.tsx b/crates/librqbit/webui/src/main.tsx index 9b5dd598..3fc435f8 100644 --- a/crates/librqbit/webui/src/main.tsx +++ b/crates/librqbit/webui/src/main.tsx @@ -6,7 +6,7 @@ import { API } from "./http-api"; ReactDOM.createRoot(document.getElementById('app') as HTMLInputElement).render( - + ); diff --git a/crates/librqbit/webui/src/rqbit-web.tsx b/crates/librqbit/webui/src/rqbit-web.tsx index ec7c953c..1c3fd553 100644 --- a/crates/librqbit/webui/src/rqbit-web.tsx +++ b/crates/librqbit/webui/src/rqbit-web.tsx @@ -349,7 +349,7 @@ const TorrentsList = (props: { torrents: Array | null, loading: boole ; }; -export const RqbitWebUI = () => { +export const RqbitWebUI = (props: { title: string }) => { const [closeableError, setCloseableError] = useState(null); const [otherError, setOtherError] = useState(null); @@ -382,7 +382,7 @@ export const RqbitWebUI = () => { return

-

rqbit web 4.0.0-beta.0

+

{props.title}

(null); const [unpopularTorrent, setUnpopularTorrent] = useState(false); + const [outputFolder, setOutputFolder] = useState(''); const ctx = useContext(AppContext); const API = useContext(APIContext); useEffect(() => { + console.log(listTorrentResponse); setSelectedFiles(listTorrentResponse ? listTorrentResponse.details.files.map((_, id) => id) : []); + setOutputFolder(listTorrentResponse?.output_folder || ''); }, [listTorrentResponse]); const clear = () => { @@ -623,6 +626,7 @@ const FileSelectionModal = (props: { overwrite: true, only_files: selectedFiles, initial_peers: initialPeers, + output_folder: outputFolder, }; if (unpopularTorrent) { opts.peer_opts = { @@ -647,7 +651,7 @@ const FileSelectionModal = (props: { return ; } else if (listTorrentResponse) { return
-
+
Pick the files to download {listTorrentResponse.details.files.map((file, index) => ( @@ -661,9 +665,16 @@ const FileSelectionModal = (props: { ))}
- Other options - - + Options + + Output folder + setOutputFolder(e.target.value)} + /> + + This might be useful for unpopular torrents with few peers. It will slow down fast torrents though.
- + } }; diff --git a/crates/librqbit_core/Cargo.toml b/crates/librqbit_core/Cargo.toml index a486508f..37e6d188 100644 --- a/crates/librqbit_core/Cargo.toml +++ b/crates/librqbit_core/Cargo.toml @@ -29,6 +29,7 @@ buffers = {path="../buffers", package="librqbit-buffers", version = "2.2.1"} bencode = {path = "../bencode", default-features=false, package="librqbit-bencode", version="2.2.1"} clone_to_owned = {path="../clone_to_owned", package="librqbit-clone-to-owned", version = "2.2.1"} itertools = "0.12" +directories = "5" [dev-dependencies] -serde_json = "1" \ No newline at end of file +serde_json = "1" diff --git a/crates/librqbit_core/src/directories.rs b/crates/librqbit_core/src/directories.rs new file mode 100644 index 00000000..88b6b469 --- /dev/null +++ b/crates/librqbit_core/src/directories.rs @@ -0,0 +1,6 @@ +use anyhow::Context; + +pub fn get_configuration_directory(application: &str) -> anyhow::Result { + directories::ProjectDirs::from("com", "rqbit", application) + .with_context(|| format!("cannot determine project directory for com.rqbit.{application}")) +} diff --git a/crates/librqbit_core/src/lib.rs b/crates/librqbit_core/src/lib.rs index 16e42d3b..7a17daa2 100644 --- a/crates/librqbit_core/src/lib.rs +++ b/crates/librqbit_core/src/lib.rs @@ -1,4 +1,5 @@ pub mod constants; +pub mod directories; pub mod id20; pub mod lengths; pub mod magnet;